
/* ===== SOURCE: css/stable-bundle-000.css ===== */
/* === SOURCE: css/000-anonymous.css === */

:root{
  --bg:#0d0d0f; --panel:#161618; --panel2:#1b1b1e; --panel3:#202024;
  --text:#f0f0ee; --muted:#929299; --line:#303035;
  --gold:#d0ad58; --gold2:#f0d48d; --danger:#e67a70; --ok:#c9d7a3;
  --high:#e49a90; --medium:#e0b35e; --low:#a8c0a2; --discount:#d3db8c;
  --radius:16px; --shadow:0 16px 44px rgba(0,0,0,.24); --card-pad:16px;
  --space-card:12px;
  --radius-card:16px;
  --radius-control:10px;
  --pad-card-x:16px;
  --fs-section:16px;
  --fs-label:15px;
  --fs-control:16px;
  --fs-secondary:11px;
  --fs-summary:24px;
  --slider-track:5px;
  --slider-thumb:18px;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","PingFang SC","Segoe UI","Microsoft YaHei",Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;color:var(--text);background:linear-gradient(180deg,#0a0a0c,#101012 48%,#0c0c0e);min-height:100vh}
button,input,select{font:inherit}
.level-value,.level-bottom strong,.ap-total .big,.ap-stat .v,.special-cost,.attr-ap,.stepper input,.category-cost,.mobile-summary-item .v,.mobile-apitem .v{font-variant-numeric:tabular-nums lining-nums}
button{cursor:pointer}
.shell{
  width:100%;
  max-width:none;
  margin:0;
  padding:24px clamp(20px,1.5vw,32px) 76px
}
.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--gold);font-weight:700;margin-bottom:7px}
h1{font-size:clamp(28px,3.5vw,46px);line-height:1;margin:0;letter-spacing:-.035em}
.subtitle{margin-top:9px;color:var(--muted);font-size:13px}
.version{font-size:11px;color:#77777e;border:1px solid var(--line);border-radius:999px;padding:7px 10px;white-space:nowrap}

.workspace{
  display:grid;
  grid-template-columns:clamp(300px,18vw,330px) minmax(0,1fr);
  gap:18px;
  align-items:start
}
.sidebar{position:sticky;top:14px;display:grid;gap:var(--space-card)}
.panel,.category-card,.toolbar{background:rgba(22,22,24,.95);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow)}
.panel{padding:var(--pad-card-x)}
.label{display:block;font-size:var(--fs-label);color:#c7c7cc;font-weight:600;margin-bottom:7px;line-height:1.25}
select{width:100%;height:42px;border:1px solid #38383d;background:#111113;color:var(--text);border-radius:var(--radius-control);padding:0 12px;outline:none}
select:focus{border-color:var(--gold)}
.model-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px}
.position-pill{font-size:var(--fs-secondary);font-weight:600;background:#29261d;color:#dbc785;border:1px solid #4a4025;border-radius:999px;padding:5px 8px}

.level-row{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center}
.level-value{height:40px;display:flex;align-items:center;justify-content:center;border:1px solid #4d4328;background:#1b1811;color:var(--gold2);border-radius:var(--radius-control);font-weight:700;font-size:var(--fs-control);font-variant-numeric:tabular-nums}
input[type="range"]{width:100%;accent-color:var(--gold)}
.level-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:7px;color:var(--muted);font-size:10px}
.level-bottom strong{color:#ddd;font-size:13px}

.status-panel{padding:0;overflow:hidden}
.status-level{
  display:grid;
  grid-template-columns:64px 56px minmax(80px,1fr) 62px;
  gap:9px;
  align-items:center;
  padding:14px 15px;
  border-bottom:1px solid var(--line)
}
.status-level .label{margin:0}
.status-level-ap{
  color:#ddd;
  font-size:var(--fs-control);
  text-align:right;
  white-space:nowrap;
  font-variant-numeric:tabular-nums
}

.status-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-areas:
    "a b c"
    "bar bar bar";
  background:#141416
}
.status-stat{padding:12px 12px 10px;min-width:0}
.status-stat:nth-child(1){grid-area:a}
.status-stat:nth-child(2){grid-area:b}
.status-stat:nth-child(3){grid-area:c}
.status-stat+.status-stat{border-left:1px solid var(--line)}
.status-stat .k{font-size:var(--fs-secondary);color:var(--muted);font-weight:600;white-space:nowrap}
.status-stat .v{font-size:22px;line-height:1.05;margin-top:5px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.status-stat .u{font-size:var(--fs-secondary);color:#777}
.status-stat.remaining .v{color:var(--ok)}
.status-stat.remaining.negative .v{color:var(--danger)}
.status-progress{
  grid-area:bar;
  padding:0 12px 12px;
  border-top:1px solid rgba(255,255,255,.03)
}
.status-progress-rail{
  height:8px;
  border-radius:999px;
  background:#252529;
  overflow:hidden;
  display:flex
}
.status-progress-used{
  width:0%;
  background:linear-gradient(90deg,#d8b25b,#f0d48d)
}
.status-progress-remaining{
  width:100%;
  background:linear-gradient(90deg,#98b87b,#c9d7a3)
}
.status-progress.over .status-progress-rail{
  box-shadow:0 0 0 1px rgba(230,122,112,.35) inset
}


.ap-panel{padding:0;overflow:hidden}
.ap-total{padding:16px;background:linear-gradient(180deg,#1b1913,#151411);border-bottom:1px solid #3d351f}
.ap-total .small{font-size:10px;color:#9b8c61;font-weight:800}
.ap-total .big{font-size:32px;line-height:1;margin-top:5px;font-weight:800;color:var(--gold2);font-variant-numeric:tabular-nums}
.ap-total .big span{font-size:11px;color:#81734f;margin-left:4px}
.ap-stats{display:grid;grid-template-columns:1fr 1fr}
.ap-stat{padding:13px 15px}
.ap-stat+.ap-stat{border-left:1px solid var(--line)}
.ap-stat .k{font-size:10px;color:var(--muted);font-weight:800}
.ap-stat .v{font-size:23px;margin-top:4px;font-weight:800;font-variant-numeric:tabular-nums}
.ap-stat.remaining .v{color:var(--ok)}
.ap-stat.remaining.negative .v{color:var(--danger)}
.ap-stat .u{font-size:10px;color:#777;margin-left:3px}

.special-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}
.special-title strong{font-size:13px}
.special-title span{font-size:10px;color:var(--muted)}
.special-row{padding:10px 0;border-top:1px solid #29292e}
.special-row:first-of-type{border-top:0}
.special-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.special-name{font-size:var(--fs-label);font-weight:600}
.special-cost{font-size:var(--fs-control);color:#d7bc76;font-weight:700}
.star-buttons{display:flex;gap:5px;margin-top:8px;flex-wrap:wrap}
.star-buttons button{height:30px;min-width:42px;padding:0 8px;border:1px solid #35353a;background:#1b1b1e;color:#85858d;border-radius:var(--radius-control);font-size:11px;font-weight:700}
.star-buttons button.base-star{cursor:pointer;background:#242117;color:#b9aa7e;border-color:#4b432d;opacity:1}
.star-buttons button.base-star.current-base{box-shadow:inset 0 0 0 1px #8e7742}
.star-buttons button.added-star{border-color:#8e7742;background:#302916;color:#f0d48d}
.star-buttons button.available-star{color:#8d8d94}
.star-buttons button.cap-disabled:disabled{cursor:not-allowed;background:#141416;color:#48484e;border-color:#29292d;opacity:.5}
.range-note{font-size:9px;color:#696970;margin-top:6px}
.reset-btn{height:40px;width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:#1a1a1d;color:#cfcfd2;font-size:12px;font-weight:700}
.reset-btn:hover{border-color:#4a4a50;background:#202023}

.main{min-width:0}


/* 属性区辅助设置：紧凑双卡片 */
.attribute-tools{
  margin-bottom:var(--space-card);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px
}
.view-switch-row,
.cost-help{
  background:rgba(22,22,24,.95);
  border:1px solid var(--line);
  border-radius:var(--radius-card);
  box-shadow:var(--shadow);
  overflow:hidden
}
.view-switch-row{
  min-height:56px;
  padding:0 var(--pad-card-x);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px
}
.tool-title{
  min-width:0;
  font-size:13px;
  font-weight:600;
  color:#e5e5e8;
  line-height:1;
  white-space:nowrap
}
.tool-copy{min-width:0}
.tool-sub{display:none}


/* Apple 风格开关；启用色改为网站金色 */
.ios-switch{
  position:relative;
  flex:0 0 auto;
  width:44px;
  height:26px;
  cursor:pointer
}
.ios-switch input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none
}
.switch-track{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:#3a3a3f;
  border:1px solid #46464c;
  transition:background .18s ease,border-color .18s ease
}
.switch-thumb{
  position:absolute;
  top:2px;
  left:2px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#f4f4f5;
  box-shadow:0 1px 3px rgba(0,0,0,.35);
  transition:transform .18s ease
}
.ios-switch input:checked + .switch-track{
  background:#9b7b32;
  border-color:#b18f3f
}
.ios-switch input:checked + .switch-track .switch-thumb{
  transform:translateX(18px)
}
.ios-switch input:focus-visible + .switch-track{
  outline:2px solid rgba(208,173,88,.45);
  outline-offset:2px
}


.cost-help summary{
  list-style:none;
  min-height:56px;
  padding:0 var(--pad-card-x);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  color:#e5e5e8;
  font-size:13px;
  font-weight:600
}

.cost-help summary::-webkit-details-marker{display:none}
.cost-help-chevron{
  color:#73737a;
  font-size:18px;
  line-height:1;
  transform:rotate(0deg);
  transition:transform .16s ease
}
.cost-help[open] .cost-help-chevron{transform:rotate(90deg)}
.cost-help-body{
  padding:0 var(--pad-card-x) 14px;
  color:#86868d
}
.cost-legend{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding-top:2px
}
.cost-legend-item{
  min-width:0;
  padding:8px 9px;
  border:1px solid #2c2c31;
  border-radius:10px;
  background:#141416
}
.cost-legend-name{
  display:flex;
  align-items:center;
  gap:6px;
  color:#c9c9ce;
  font-size:11px;
  font-weight:600
}
.cost-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  flex:0 0 auto
}
.cost-dot.high{background:var(--high)}
.cost-dot.medium{background:var(--medium)}
.cost-dot.low{background:var(--low)}
.cost-dot.discount{background:var(--discount)}
.cost-legend-desc{
  margin-top:4px;
  color:#6f6f76;
  font-size:9px;
  line-height:1.35
}
.cost-help-note{
  margin-top:9px;
  font-size:9px;
  line-height:1.45;
  color:#696970
}

.attr-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-card);align-items:start}
.attr-column{display:flex;flex-direction:column;gap:var(--space-card);min-width:0}
.category-card{overflow:hidden;box-shadow:none}
.category-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad-card-x);border-bottom:1px solid var(--line);background:#1d1d20}
.category-name{font-size:var(--fs-section);font-weight:600;letter-spacing:0}
.category-cost{font-size:14px;color:#cbb474;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em}
.attr-list{padding:2px 0}
.attr-row{border-bottom:1px solid #28282d}
.attr-row:last-child{border-bottom:0}
.attr-row.hidden{display:none}
.attr-main{display:grid;grid-template-columns:148px minmax(120px,1fr) 98px;gap:10px;align-items:center;padding:8px var(--pad-card-x);min-height:50px}
.attr-row.changed .attr-main{background:linear-gradient(90deg,rgba(208,173,88,.055),transparent 55%)}
.attr-name-wrap{min-width:0;width:148px}
.attr-line{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap}
.attr-name{font-size:var(--fs-label);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tier{display:inline-flex;align-items:center;gap:4px;height:16px;padding:0;font-size:var(--fs-secondary);font-weight:500;color:#77777e;background:transparent;border:0;opacity:.72;flex:0 0 auto}
.tier::before{content:"";width:5px;height:5px;border-radius:50%;background:#77777e;opacity:.72}
.tier.high::before{background:var(--high)}
.tier.medium::before{background:var(--medium)}
.tier.low::before{background:var(--low)}
.tier.discount::before{background:var(--discount)}
.stepper{display:grid;grid-template-columns:28px 42px 28px;height:32px;border:1px solid #37373c;border-radius:var(--radius-control);overflow:hidden;background:#111113}
.stepper button{border:0;background:#1d1d20;color:#bcbcc2;font-weight:800;padding:0}
.stepper button:hover{background:#29292d;color:#fff}
.stepper input{width:42px;border:0;background:#111113;color:#eee;text-align:center;font-size:var(--fs-control);font-weight:700;outline:none;appearance:textfield}
.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.attr-ap{display:none}
.attr-row.changed .attr-ap{color:#efd48e}
.attr-ap span{display:block;font-size:8px;color:#68686e;margin-top:1px}
.mini-slider{display:grid;grid-template-columns:24px minmax(0,1fr) 24px;gap:6px;align-items:center;min-width:0}
.mini-slider input[type="range"]{width:100%;margin:0;accent-color:#8f7a45}
.mini-slider .endpoint{font-size:9px;color:#6a6a71;font-variant-numeric:tabular-nums;text-align:center}

/* 属性滑杆：固定显示到99；金色=已购买，浅色=当前AP还能购买，灰色=暂不可购买，深灰=模型硬上限之后 */
.mini-slider input[type="range"]{
  -webkit-appearance:none;
  appearance:none;
  height:var(--slider-track);
  border-radius:999px;
  outline:none;
  background:#303036;
}
.mini-slider input[type="range"]::-webkit-slider-runnable-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}
.mini-slider input[type="range"]::-moz-range-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}
.mini-slider input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid #d8ba6b;
  background:#c5a24f;
  margin-top:calc((var(--slider-track) - var(--slider-thumb))/2);
  box-shadow:none;
}
.mini-slider input[type="range"]::-moz-range-thumb{
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid #d8ba6b;
  background:#c5a24f;
  box-shadow:none;
}
.mini-slider input[type="range"]:focus-visible::-webkit-slider-thumb{
  box-shadow:0 0 0 4px rgba(208,173,88,.22)
}
.stepper button:disabled{cursor:not-allowed;color:#55555b;background:#171719}


/* 统一人物等级与属性滑杆 */
#levelSlider{
  -webkit-appearance:none;
  appearance:none;
  height:var(--slider-track);
  border-radius:999px;
  outline:none;
  background:linear-gradient(to right,#d4ae54 0%,#d4ae54 100%);
}
#levelSlider::-webkit-slider-runnable-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}
#levelSlider::-moz-range-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}
#levelSlider::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid #d8ba6b;
  background:#c5a24f;
  margin-top:calc((var(--slider-track) - var(--slider-thumb))/2);
  box-shadow:none;
}
#levelSlider::-moz-range-thumb{
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid #d8ba6b;
  background:#c5a24f;
  box-shadow:none;
}
#levelSlider:focus-visible::-webkit-slider-thumb{
  box-shadow:0 0 0 4px rgba(208,173,88,.18)
}

.empty{display:none;border:1px dashed #333338;border-radius:14px;padding:28px;text-align:center;color:var(--muted);font-size:12px}

.mobile-apbar{display:none}
.footer{margin-top:22px;padding-top:15px;border-top:1px solid #252529;color:#696970;font-size:10px;line-height:1.65}
.footer strong{color:#8f8f96}


.mobile-compact-summary{display:none}
.mobile-filter-toggle{display:none}
.mobile-filter-panel{display:contents}
.category-toggle{display:none}


@media(min-width:1600px){
  .workspace{gap:20px}
  .attr-columns{gap:16px}
  .attr-column{gap:16px}
}

@media(max-width:1060px){
  .workspace{grid-template-columns:260px minmax(0,1fr)}
  .attr-columns{grid-template-columns:1fr}
}
@media(max-width:760px){
  :root{
    --m-fs-primary:15px;
    --m-fs-control:16px;
    --m-fs-secondary:11px;
    --m-fs-tiny:10px;
    --m-fs-summary:24px;
    --m-card-gap:12px;
    --m-card-pad:16px;
  }

  .shell{padding:12px 10px 112px}
  .topbar{display:none}
  .workspace{display:block}

  /* ===== Mobile top control stack ===== */
  .sidebar{
    position:static;
    display:grid;
    grid-template-columns:1fr;
    gap:var(--m-card-gap);
    margin-bottom:var(--m-card-gap)
  }
  .panel{padding:10px var(--m-card-pad);border-radius:var(--radius-card)}
  .label{
    margin:0;
    font-size:var(--m-fs-primary);
    line-height:1;
    font-weight:700;
    color:#c5c5ca;
    white-space:nowrap
  }

  /* 手机端顶部控制顺序：人物等级优先，原型选择第二 */
  .status-panel{order:1}
  .model-panel{order:2}
  .special-panel{order:3}
  .reset-panel{order:4}

  /* 原型：严格一行，仅“原型 + 下拉框” */
  .model-panel{
    display:grid;
    grid-template-columns:64px minmax(0,1fr);
    gap:10px;
    align-items:center
  }
  .model-panel .label{grid-column:auto}
  .model-panel select{
    height:38px;
    font-size:var(--m-fs-control);
    padding:0 10px;
    min-width:0
  }
  .model-meta{display:none}

  /* 人物等级：人物等级 | Lv40 | slider | 962 AP */
  .status-panel{padding:0}
  .status-level{
    grid-template-columns:64px 62px minmax(64px,1fr) 60px;
    gap:8px;
    padding:10px var(--m-card-pad);
    border-bottom:0
  }
  .status-level .label{grid-column:auto}
  .level-value{
    width:62px;
    height:36px;
    border-radius:var(--radius-control);
    font-size:var(--fs-control)
  }
  .status-level input[type="range"]{
    min-width:0;
    width:100%
  }
  .status-level-ap{
    font-size:var(--fs-control);
    line-height:1;
    white-space:nowrap;
    text-align:right
  }
  .status-stats{display:none}

  
  /* 移动端紧凑摘要：三数值 + 细进度条 */
  .mobile-compact-summary{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-areas:
      "a b c"
      "bar bar bar";
    gap:1px;
    margin-bottom:var(--m-card-gap);
    border:1px solid #3c3523;
    border-radius:var(--radius-card);
    overflow:hidden;
    background:#2f281a
  }
  .mobile-summary-item{padding:8px var(--m-card-pad);background:#171611}
  .mobile-summary-item:nth-child(1){grid-area:a}
  .mobile-summary-item:nth-child(2){grid-area:b}
  .mobile-summary-item:nth-child(3){grid-area:c}
  .mobile-summary-item .k{
    font-size:var(--m-fs-tiny);
    color:#8c8060;
    font-weight:800
  }
  .mobile-summary-item .v{
    font-size:22px;
    font-weight:800;
    margin-top:2px;
    color:#e8e8e6;
    font-variant-numeric:tabular-nums
  }
  .mobile-summary-item.remaining .v{color:var(--ok)}
  .mobile-summary-item.remaining.negative .v{color:var(--danger)}
  .mobile-summary-progress{
    grid-area:bar;
    background:#171611;
    padding:0 var(--m-card-pad) 10px
  }
  .mobile-summary-rail{
    height:7px;
    border-radius:999px;
    background:#252529;
    overflow:hidden;
    display:flex
  }
  .mobile-summary-used{
    width:0%;
    background:linear-gradient(90deg,#d8b25b,#f0d48d)
  }
  .mobile-summary-remaining{
    width:100%;
    background:linear-gradient(90deg,#98b87b,#c9d7a3)
  }
  .mobile-compact-summary.over .mobile-summary-rail{
    box-shadow:0 0 0 1px rgba(230,122,112,.35) inset
  }


  /* 花式/逆足：无总标题，每项严格为“名称 | 五星 | AP” */
  .special-panel{padding:7px var(--m-card-pad)}
  .special-title{display:none}
  .special-row{
    display:grid;
    grid-template-columns:68px minmax(0,1fr) 52px;
    grid-template-areas:"name stars cost";
    align-items:center;
    gap:7px;
    padding:7px 0;
    border-top:0 !important
  }
  .special-row + .special-row{
    border-top:1px solid #29292e !important
  }
  .special-head{display:contents}
  .special-name{
    grid-area:name;
    font-size:var(--fs-label);
    font-weight:600;
    white-space:nowrap
  }
  .special-cost{
    grid-area:cost;
    text-align:right;
    font-size:var(--fs-control);
    font-weight:700;
    white-space:nowrap
  }
  .star-buttons{
    grid-area:stars;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:3px;
    margin:0;
    min-width:0
  }
  .star-buttons button{
    width:100%;
    height:28px;
    min-width:0;
    padding:0 2px;
    font-size:var(--m-fs-secondary);
    font-weight:700
  }
  .range-note{display:none}
  .reset-panel{display:none}

  
  /* ===== Mobile attribute tools ===== */
  .attribute-tools{
    margin-bottom:var(--m-card-gap);
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px
  }
  .view-switch-row{
    min-height:52px;
    padding:0 var(--m-card-pad)
  }
  .tool-title{font-size:13px}
  .cost-help summary{
    min-height:52px;
    padding:0 var(--m-card-pad);
    font-size:13px
  }
  .cost-help-body{padding:0 var(--m-card-pad) 14px}
  .cost-legend{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px
  }
  .cost-legend-item{padding:8px 9px}
  .cost-legend-name{font-size:11px}
  .cost-legend-desc{font-size:9px}


  /* ===== Attribute categories ===== */
  .attr-columns{grid-template-columns:1fr;gap:var(--m-card-gap)}
  .attr-column{gap:var(--m-card-gap)}
  .category-card{border-radius:var(--radius-card)}
  .category-head{
    min-height:40px;
    height:auto;
    padding:0 var(--m-card-pad);
    cursor:pointer;
    background:#202024
  }
  .category-toggle{
    display:inline-flex;
    margin-left:6px;
    color:#6f6f76;
    font-size:var(--m-fs-secondary)
  }
  .category-card.collapsed .attr-list{display:none}
  .category-card.collapsed .category-toggle{transform:rotate(-90deg)}
  .category-name{
    display:flex;
    align-items:center;
    font-size:var(--fs-section);
    font-weight:600
  }
  .category-cost{
    font-size:14px;
    color:#cbb474;
    font-weight:700
  }

  /* 属性：真正单行布局 */
  .attr-main{
    display:grid;
    grid-template-columns:118px minmax(104px,1fr) 84px;
    grid-template-areas:"title control stepper";
    gap:6px;
    align-items:center;
    padding:8px var(--m-card-pad);
    min-height:52px
  }
  .attr-name-wrap{
    grid-area:title;
    min-width:0;
    width:118px
  }
  .attr-line{
    display:flex;
    align-items:center;
    gap:4px;
    min-width:0
  }
  .attr-name{
    font-size:var(--fs-label);
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
  }
  .tier{
    font-size:var(--m-fs-tiny);
    opacity:.50;
    white-space:nowrap
  }
  .tier::before{width:4px;height:4px}

  .mini-slider{
    grid-area:control;
    display:grid;
    grid-template-columns:20px minmax(0,1fr) 20px;
    gap:4px;
    align-items:center;
    min-width:0;
    padding-right:0
  }
  .mini-slider input[type="range"]{
    width:100%;
    min-width:0;
    margin:0;
    accent-color:#8f7a45
  }
  .mini-slider .endpoint{
    font-size:var(--m-fs-secondary);
    color:#707077;
    text-align:center
  }

  .stepper{
    grid-area:stepper;
    width:86px;
    grid-template-columns:24px 38px 24px;
    height:30px;
    justify-self:end
  }
  .stepper button{
    font-size:var(--m-fs-control);
    padding:0
  }
  .stepper input{
    width:38px;
    font-size:var(--m-fs-control)
  }

  .attr-ap{display:none}
  .attr-row{position:relative}

  /* ===== Persistent bottom AP bar ===== */
  .mobile-apbar{
    position:fixed;
    left:8px;
    right:8px;
    bottom:8px;
    z-index:30;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 72px;
    grid-template-areas:
      "progress progress progress"
      "used remain reset";
    gap:1px;
    background:#30291a;
    border:1px solid #695a32;
    border-radius:var(--radius-card);
    overflow:hidden;
    box-shadow:0 14px 40px rgba(0,0,0,.45)
  }
  .mobile-ap-progress{
    grid-area:progress;
    padding:8px 11px 0;
    background:#171611
  }
  .mobile-ap-rail{
    height:7px;
    border-radius:999px;
    background:#2a2a2e;
    overflow:hidden;
    display:flex
  }
  .mobile-ap-used-fill{
    width:0%;
    background:linear-gradient(90deg,#D6B94F,#F0D48D)
  }
  .mobile-ap-remain-fill{
    width:100%;
    background:linear-gradient(90deg,#8FB570,#C9D7A3)
  }
  .mobile-apbar.over .mobile-ap-rail{
    box-shadow:0 0 0 1px rgba(230,122,112,.45) inset
  }
  .mobile-apitem{
    padding:7px 11px 9px;
    background:#171611
  }
  .mobile-apitem.used{grid-area:used}
  .mobile-apitem.remaining{grid-area:remain;border-left:1px solid #4a4026}
  .mobile-apitem .k{font-size:var(--m-fs-tiny);color:#8f815e;font-weight:800}
  .mobile-apitem .v{
    font-size:22px;
    font-weight:800;
    color:#f0d48d;
    font-variant-numeric:tabular-nums;
    margin-top:2px;
    white-space:nowrap
  }
  .mobile-apitem.remaining .v{color:var(--ok)}
  .mobile-apitem.remaining.negative .v{color:var(--danger)}
  .mobile-reset-btn{
    grid-area:reset;
    border:0;
    border-left:1px solid #4a4026;
    background:#1b1a16;
    color:#aaa39a;
    font-size:11px;
    font-weight:700;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    padding:0
  }
  .mobile-reset-btn .reset-icon{
    font-size:18px;
    line-height:1;
    color:#d4bd83
  }
  .mobile-reset-btn:active{
    background:#27241b;
    color:#e1d4b4
  }

  .footer{font-size:var(--m-fs-tiny);margin-top:14px;padding-top:10px}
}
@media(max-width:430px){
  .shell{padding-left:8px;padding-right:8px}
  .model-panel{grid-template-columns:60px minmax(0,1fr);gap:8px}
  .status-level{
    grid-template-columns:60px 58px minmax(54px,1fr) 56px;
    gap:6px
  }
  .level-value{width:58px}
  .special-row{
    grid-template-columns:64px minmax(0,1fr) 48px;
    gap:5px
  }
  .star-buttons{gap:2px}
  .star-buttons button{font-size:9px;padding:0 1px}

  .attr-main{
    grid-template-columns:112px minmax(92px,1fr) 80px;
    gap:5px;
    padding:7px 8px
  }
  .mini-slider{
    grid-template-columns:19px minmax(0,1fr) 19px;
    gap:3px
  }
  .stepper{
    width:82px;
    grid-template-columns:23px 36px 23px
  }
  .stepper input{width:36px}
}
@media(max-width:380px){
  .attr-main{
    grid-template-columns:104px minmax(82px,1fr) 76px;
    gap:4px;
    padding:7px 7px
  }
  .attr-name{font-size:11px;white-space:nowrap}
  .tier{font-size:8px}
  .mini-slider{
    grid-template-columns:18px minmax(0,1fr) 18px;
    gap:2px
  }
  .mini-slider .endpoint{font-size:9px}
  .stepper{
    width:78px;
    grid-template-columns:22px 34px 22px
  }
  .stepper input{width:34px}
}

/* === SOURCE: css/001-v29-slider-overrides.css === */

:root{
  --slider-track:7px;
  --slider-thumb:18px;
  --slider-touch:44px;
  /* iOS / Apple-system inspired colors */
  --fc-gold:#D6B94F;
  --fc-orange:#E79A32;
  --fc-green:#55C98B;
  --track-affordable:#D8D8DC;
  --track-unavailable:#5B5B63;
  --track-beyond:#2C2C32;
  --track-gap:1px;
}

/* Attribute and level sliders share the same geometry and touch target. */
.range-shell,
.level-range-shell{
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
  height:var(--slider-touch);
}
.level-range-shell{width:100%;}

/* ProClubsHQ-like pill construction: the base is a dark rounded rail; each
   semantic segment is its own rounded pill. */
.visual-track,
.level-visual-track{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:var(--slider-track);
  transform:translateY(-50%);
  border-radius:999px;
  background:var(--track-beyond);
  pointer-events:none;
  overflow:visible;
}
.track-seg,
.level-filled{
  position:absolute;
  top:0;
  bottom:0;
  border-radius:999px;
  transition:left .08s linear,width .08s linear,background-color .10s ease;
}
.track-seg.purchased{background:var(--active-color,var(--fc-gold))}
.track-seg.affordable{background:var(--track-affordable)}
.track-seg.unavailable{background:var(--track-unavailable)}
.track-seg.beyond-cap{display:none}
.level-filled{left:0;background:#C9A34E}

/* Native range is the invisible 44px interaction layer. */
.mini-slider input[type="range"],
#levelSlider{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  height:var(--slider-touch) !important;
  margin:0;
  padding:0;
  cursor:pointer;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
  background:transparent !important;
  position:relative;
  z-index:2;
}
.mini-slider input[type="range"]::-webkit-slider-runnable-track,
#levelSlider::-webkit-slider-runnable-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}
.mini-slider input[type="range"]::-moz-range-track,
#levelSlider::-moz-range-track{
  height:var(--slider-track);
  border-radius:999px;
  background:transparent;
}

/* ProClubsHQ-like thumb: white center, only the ring follows the attribute color. */
.mini-slider input[type="range"]::-webkit-slider-thumb,
#levelSlider::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid transparent;
  background:#F5F5F7;
  margin-top:calc((var(--slider-track) - var(--slider-thumb))/2);
  box-shadow:0 1px 2px rgba(0,0,0,.20);
  opacity:0;
  transition:opacity .12s ease,border-color .12s ease;
}
.mini-slider input[type="range"]::-moz-range-thumb,
#levelSlider::-moz-range-thumb{
  width:var(--slider-thumb);
  height:var(--slider-thumb);
  border-radius:50%;
  border:1.5px solid transparent;
  background:#F5F5F7;
  box-shadow:0 1px 2px rgba(0,0,0,.20);
  opacity:0;
  transition:opacity .12s ease,border-color .12s ease;
}
.mini-slider input[type="range"].is-interacting::-webkit-slider-thumb,
#levelSlider.is-interacting::-webkit-slider-thumb,
.mini-slider input[type="range"]:focus-visible::-webkit-slider-thumb,
#levelSlider:focus-visible::-webkit-slider-thumb{
  opacity:1;
  border-color:var(--thumb-stroke,#C9A34E);
}
.mini-slider input[type="range"].is-interacting::-moz-range-thumb,
#levelSlider.is-interacting::-moz-range-thumb,
.mini-slider input[type="range"]:focus-visible::-moz-range-thumb,
#levelSlider:focus-visible::-moz-range-thumb{
  opacity:1;
  border-color:var(--thumb-stroke,#C9A34E);
}
@media (hover:hover) and (pointer:fine){
  .mini-slider input[type="range"]:hover::-webkit-slider-thumb,
  #levelSlider:hover::-webkit-slider-thumb{
    opacity:1;
    border-color:var(--thumb-stroke,#C9A34E);
  }
  .mini-slider input[type="range"]:hover::-moz-range-thumb,
  #levelSlider:hover::-moz-range-thumb{
    opacity:1;
    border-color:var(--thumb-stroke,#C9A34E);
  }
}

.mini-slider{min-height:var(--slider-touch)}
@media(max-width:760px){
  .attr-main{min-height:56px}
  .mini-slider{height:var(--slider-touch)}
  .range-shell,.level-range-shell{height:var(--slider-touch)}
  .status-level{min-height:56px}
}

/* === SOURCE: css/002-v30-dark-glass.css === */

:root{
  --bg:#06090e;
  --panel:rgba(17,23,31,.64);
  --panel2:rgba(23,29,38,.70);
  --panel3:rgba(30,37,47,.72);
  --text:#f4f5f7;
  --muted:#9aa1aa;
  --line:rgba(255,255,255,.075);
  --gold:#d5b666;
  --gold2:#e7cd88;
  --danger:#e78178;
  --ok:#a9c987;

  --glass-bg:rgba(15,21,29,.60);
  --glass-bg-strong:rgba(18,24,33,.74);
  --glass-head:rgba(255,255,255,.032);
  --glass-border:rgba(255,255,255,.085);
  --glass-highlight:rgba(255,255,255,.045);
  --glass-shadow:0 18px 50px rgba(0,0,0,.26);
  --glass-blur:18px;

  --radius-card:20px;
  --radius-control:12px;
  --space-card:14px;
  --pad-card-x:18px;
}

/* Cinematic FC background: no image assets, only restrained light/atmosphere. */
html{
  background:#05080d;
}
body{
  position:relative;
  isolation:isolate;
  color:var(--text);
  background:
    radial-gradient(72vw 54vh at 76% 2%, rgba(46,76,105,.16), transparent 66%),
    radial-gradient(52vw 38vh at 18% 34%, rgba(28,50,72,.10), transparent 72%),
    linear-gradient(180deg,#0a111a 0%,#070b11 46%,#05070b 100%);
  min-height:100vh;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.58;
  background:
    linear-gradient(90deg,
      transparent 0%,
      rgba(89,117,144,.025) 12%,
      transparent 22%,
      rgba(89,117,144,.035) 36%,
      transparent 48%,
      rgba(89,117,144,.022) 64%,
      transparent 78%,
      rgba(89,117,144,.03) 90%,
      transparent 100%);
  filter:blur(10px);
}
body::after{
  content:"";
  position:fixed;
  inset:-10%;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(ellipse at center, transparent 30%, rgba(0,0,0,.18) 68%, rgba(0,0,0,.50) 100%);
}
.shell{position:relative;z-index:1}

/* Header stays open and quiet rather than becoming another glass box. */
.topbar{
  align-items:center;
  margin-bottom:18px;
  padding:4px 4px 18px;
  border-bottom:1px solid rgba(255,255,255,.055)
}
.eyebrow{
  color:#bca56c;
  letter-spacing:.20em;
  font-size:10px;
  font-weight:700
}
h1{
  font-size:clamp(30px,2.6vw,40px);
  letter-spacing:-.04em;
  color:#f7f8fa
}
.subtitle{
  color:#7f8995;
  font-size:12px
}
.version{
  color:#84909d;
  background:rgba(255,255,255,.025);
  border-color:rgba(255,255,255,.07);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px)
}

/* PC: one integrated glass control slab on the left. */
.workspace{
  grid-template-columns:clamp(324px,19vw,360px) minmax(0,1fr);
  gap:20px
}
.sidebar{
  top:18px;
  gap:0;
  padding:18px;
  border:1px solid var(--glass-border);
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012) 38%,transparent 72%),
    var(--glass-bg);
  box-shadow:var(--glass-shadow);
  backdrop-filter:blur(var(--glass-blur)) saturate(118%);
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(118%)
}
.build-control-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:2px 2px 14px;
  border-bottom:1px solid rgba(255,255,255,.06);
  margin-bottom:2px
}
.build-control-eyebrow{
  font-size:11px;
  letter-spacing:.16em;
  color:#d7c18a;
  font-weight:700
}
.build-control-note{
  color:#68727e;
  font-size:10px
}

/* Child panels become sections of one glass slab rather than separate boxes. */
.sidebar > .panel{
  padding:16px 2px;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none
}
.sidebar > .model-panel,
.sidebar > .status-panel{
  border-bottom:1px solid rgba(255,255,255,.055)
}
.sidebar .reset-panel{
  padding:14px 2px 2px
}
.label{
  color:#b7bec8;
  font-size:13px;
  font-weight:600
}
select{
  height:46px;
  color:#f1f3f6;
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.085);
  border-radius:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)
}
select:hover{border-color:rgba(255,255,255,.13)}
select:focus{
  border-color:rgba(213,182,102,.62);
  box-shadow:0 0 0 3px rgba(213,182,102,.09)
}
.position-pill{
  color:#bfae7e;
  background:rgba(213,182,102,.075);
  border-color:rgba(213,182,102,.16)
}

/* Level and AP become one quieter tool module. */
.status-level{
  padding:2px 0 14px;
  border-bottom:1px solid rgba(255,255,255,.045)
}
.level-value{
  background:rgba(213,182,102,.07);
  border-color:rgba(213,182,102,.20);
  color:#e7cc84
}
.status-level-ap{color:#d8dde3}
.status-stats{
  margin-top:12px;
  background:transparent;
  border:1px solid rgba(255,255,255,.055);
  border-radius:14px;
  overflow:hidden
}
.status-stat{
  padding:10px 10px 8px;
  background:rgba(255,255,255,.018)
}
.status-stat+.status-stat{border-left-color:rgba(255,255,255,.05)}
.status-stat .k{
  color:#7f8994;
  font-size:10px
}
.status-stat .v{
  font-size:20px;
  color:#eef1f4
}
.status-progress{
  padding:0 10px 10px;
  border-top:0;
  background:rgba(255,255,255,.018)
}
.status-progress-rail{
  height:6px;
  background:#252c35
}
.status-progress-used{
  background:linear-gradient(90deg,#c4a451,#e0c57c)
}
.status-progress-remaining{
  background:linear-gradient(90deg,#71955f,#9fbe80)
}

/* Star controls: flatter, lighter, system-like. */
.special-title{margin-bottom:6px}
.special-title strong{
  color:#cfd5dc;
  font-size:12px
}
.special-title span{color:#6d7782}
.special-row{
  padding:11px 0;
  border-color:rgba(255,255,255,.045)
}
.special-name{font-size:14px}
.special-cost{color:#cbb474;font-size:14px}
.star-buttons{gap:4px;margin-top:7px}
.star-buttons button{
  height:28px;
  min-width:38px;
  border-color:rgba(255,255,255,.065);
  background:rgba(255,255,255,.025);
  color:#7e8792;
  border-radius:10px
}
.star-buttons button.base-star{
  background:rgba(213,182,102,.055);
  color:#a99564;
  border-color:rgba(213,182,102,.11)
}
.star-buttons button.base-star.current-base{
  box-shadow:inset 0 0 0 1px rgba(213,182,102,.35)
}
.star-buttons button.added-star{
  border-color:rgba(213,182,102,.34);
  background:rgba(213,182,102,.10);
  color:#e4ca84
}
.star-buttons button.available-star{color:#89929d}
.range-note{color:#5f6974}

.reset-btn{
  height:38px;
  color:#9da6b0;
  border-color:rgba(255,255,255,.065);
  background:rgba(255,255,255,.025)
}
.reset-btn:hover{
  color:#e0e5ea;
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.045)
}

/* Main auxiliary controls are light glass chips. */
.attribute-tools{
  gap:12px;
  margin-bottom:14px
}
.view-switch-row,
.cost-help{
  background:
    linear-gradient(145deg,rgba(255,255,255,.034),rgba(255,255,255,.012)),
    rgba(17,23,31,.48);
  border-color:rgba(255,255,255,.075);
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.15);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px)
}
.tool-title,
.cost-help summary{
  color:#cbd2da
}
.switch-track{
  background:#333a44;
  border-color:#454d58
}
.ios-switch input:checked + .switch-track{
  background:#8b7436;
  border-color:#aa8e45
}

/* Attribute cards carry the main glass material. */
.category-card{
  border:1px solid var(--glass-border);
  border-radius:20px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.032),transparent 42%),
    rgba(15,21,29,.57);
  box-shadow:0 14px 36px rgba(0,0,0,.18);
  backdrop-filter:blur(16px) saturate(112%);
  -webkit-backdrop-filter:blur(16px) saturate(112%);
  overflow:hidden
}
.category-head{
  height:48px;
  padding:0 18px;
  background:rgba(255,255,255,.028);
  border-bottom-color:rgba(255,255,255,.055)
}
.category-name{
  color:#edf0f3;
  font-size:16px;
  font-weight:600
}
.category-cost{
  color:#cdb77a;
  font-size:14px;
  font-weight:700
}
.attr-list{padding:0}
.attr-row{
  border-bottom-color:rgba(255,255,255,.045)
}
.attr-row.changed .attr-main{
  background:linear-gradient(90deg,rgba(213,182,102,.032),transparent 54%)
}
.attr-main{
  min-height:60px;
  padding:8px 18px
}
.attr-name{color:#eef1f4}
.tier{
  opacity:.52;
  color:#78818c
}
.stepper{
  height:34px;
  border-color:rgba(255,255,255,.07);
  background:rgba(9,13,18,.42);
  border-radius:11px
}
.stepper button{
  color:#a4adb7;
  background:rgba(255,255,255,.025)
}
.stepper button:hover{
  color:#fff;
  background:rgba(255,255,255,.055)
}
.stepper input{
  background:rgba(5,9,14,.34);
  color:#f5f6f8
}

/* Cost explanation uses the same quiet glass language. */
.cost-help-body{color:#868f9a}
.cost-legend-item{
  background:rgba(255,255,255,.022);
  border-color:rgba(255,255,255,.055)
}
.cost-legend-name{color:#c7ced6}
.cost-legend-desc,.cost-help-note{color:#69737e}

/* Footer disappears into the background instead of looking like another section. */
.footer{
  border-top-color:rgba(255,255,255,.045);
  color:#59636e
}
.footer strong{color:#77818c}

/* Subtle hover feedback only on precise pointers. */
@media (hover:hover) and (pointer:fine){
  .category-card{
    transition:border-color .18s ease,background-color .18s ease,transform .18s ease
  }
  .category-card:hover{
    border-color:rgba(255,255,255,.105)
  }
}

/* Large desktop gets a little more breathing room without stretching controls excessively. */
@media(min-width:1700px){
  .shell{padding-left:30px;padding-right:30px}
  .workspace{grid-template-columns:350px minmax(0,1fr);gap:22px}
  .attr-columns{gap:18px}
  .attr-column{gap:18px}
}

/* Mobile: keep proven layout/interaction, apply the same material language. */
@media(max-width:760px){
  body{
    background:
      radial-gradient(120vw 52vh at 78% 0%,rgba(45,75,103,.14),transparent 68%),
      linear-gradient(180deg,#09111a 0%,#070b11 46%,#05070b 100%)
  }
  body::before{opacity:.35}

  .sidebar{
    position:static;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    gap:var(--m-card-gap)
  }
  .build-control-heading{display:none}

  .sidebar > .panel,
  .mobile-compact-summary,
  .category-card{
    background:
      linear-gradient(145deg,rgba(255,255,255,.035),transparent 46%),
      rgba(15,21,29,.64);
    border:1px solid rgba(255,255,255,.075);
    border-radius:18px;
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    backdrop-filter:blur(14px) saturate(110%);
    -webkit-backdrop-filter:blur(14px) saturate(110%)
  }
  .sidebar > .panel{
    padding:10px var(--m-card-pad);
  }
  .sidebar > .model-panel,
  .sidebar > .status-panel{
    border-bottom:1px solid rgba(255,255,255,.075)
  }
  .status-panel{padding:0 !important}
  .status-level{
    padding:10px var(--m-card-pad);
    border-bottom:0
  }
  .status-stats{display:none}

  .mobile-compact-summary{
    border-color:rgba(255,255,255,.07);
    background:rgba(15,21,29,.64)
  }
  .mobile-summary-item,
  .mobile-summary-progress{
    background:transparent
  }
  .mobile-summary-item .k{color:#7f8994}
  .mobile-summary-item .v{color:#eef1f4}

  .attribute-tools{gap:8px}
  .view-switch-row,.cost-help{
    background:rgba(15,21,29,.58);
    border-color:rgba(255,255,255,.07);
    box-shadow:0 10px 24px rgba(0,0,0,.14)
  }

  .category-head{
    min-height:44px;
    padding:0 var(--m-card-pad);
    background:rgba(255,255,255,.03)
  }
  .attr-main{
    min-height:58px;
    padding:8px var(--m-card-pad)
  }

  /* Floating glass dock at the bottom. */
  .mobile-apbar{
    left:10px;
    right:10px;
    bottom:10px;
    border-color:rgba(255,255,255,.09);
    background:rgba(12,18,25,.72);
    box-shadow:0 18px 44px rgba(0,0,0,.36);
    backdrop-filter:blur(22px) saturate(120%);
    -webkit-backdrop-filter:blur(22px) saturate(120%)
  }
  .mobile-ap-progress,
  .mobile-apitem{
    background:transparent
  }
  .mobile-apitem.remaining{
    border-left-color:rgba(255,255,255,.055)
  }
  .mobile-reset-btn{
    background:rgba(255,255,255,.02);
    border-left-color:rgba(255,255,255,.055);
    color:#a4adb7
  }
  .mobile-reset-btn .reset-icon{color:#cdb77a}
}

/* Narrow phones: keep labels readable, avoid over-glass styling. */
@media(max-width:430px){
  .attribute-tools{gap:7px}
  .view-switch-row,.cost-help{border-radius:16px}
  .tool-title,.cost-help summary{font-size:12px}
}

/* === SOURCE: css/003-darkglass-v304-targeted-tuning.css === */

/* =========================================================
   1. 原型下拉框
   - 金色边框常驻
   - 打开/聚焦时边框略增强
   - 下拉选项改为与 DarkGlass 和谐的深色底
   ========================================================= */
#modelSelect{
  color-scheme:dark;
  background:#111113;
  color:#F0F0EE;
  border:1px solid rgba(208,173,88,.72);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 0 0 1px rgba(208,173,88,.055),
    0 0 14px rgba(208,173,88,.045);
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    background-color .16s ease;
}

#modelSelect:hover{
  border-color:rgba(224,190,102,.82);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(208,173,88,.075),
    0 0 16px rgba(208,173,88,.055);
}

#modelSelect:focus,
#modelSelect:focus-visible{
  outline:none;
  background:#131315;
  border-color:rgba(240,212,141,.95);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 0 0 1px rgba(208,173,88,.20),
    0 0 0 3px rgba(208,173,88,.075),
    0 0 20px rgba(208,173,88,.09);
}

/* Chrome / Edge / Firefox 的原生选项菜单 */
#modelSelect option,
#modelSelect optgroup{
  background:#141416;
  color:#F0F0EE;
}

#modelSelect optgroup{
  color:#D0AD58;
  font-weight:700;
}

/* 某些桌面浏览器会采用选中项背景 */
#modelSelect option:checked{
  background:#262218;
  color:#F0D48D;
}

/* =========================================================
   2. 重置模型
   - 金边常驻
   - 平时完全静止
   - 仅鼠标移入时出现 NeoGlass 式扫光
   ========================================================= */
#resetBtn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(208,173,88,.72);
  background:
    linear-gradient(180deg,rgba(29,29,32,.97),rgba(23,23,26,.97));
  color:#E7E5DF;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(208,173,88,.045),
    0 0 13px rgba(208,173,88,.035);
  transition:
    border-color .18s ease,
    background-color .18s ease,
    box-shadow .20s ease,
    transform .18s ease,
    color .18s ease;
}

/* 平时不显示动态层 */
#resetBtn::before{
  content:"";
  position:absolute;
  z-index:0;
  top:-125%;
  left:-42%;
  width:34%;
  height:350%;
  transform:rotate(17deg);
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,246,213,.03) 25%,
    rgba(255,239,190,.24) 43%,
    rgba(191,170,255,.19) 56%,
    rgba(139,121,218,.07) 70%,
    transparent 100%
  );
  filter:blur(5px);
  opacity:0;
  pointer-events:none;
}

#resetBtn::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  border-radius:inherit;
  opacity:0;
  background:
    radial-gradient(
      70% 150% at 50% -15%,
      rgba(208,173,88,.075),
      transparent 60%
    );
  transition:opacity .18s ease;
  pointer-events:none;
}

#resetBtn > *{
  position:relative;
  z-index:1;
}

#resetBtn:hover{
  color:#FFFDF7;
  border-color:rgba(240,212,141,.95);
  transform:translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 0 0 1px rgba(208,173,88,.12),
    0 0 20px rgba(208,173,88,.10),
    0 0 30px rgba(115,96,185,.055);
}

#resetBtn:hover::before{
  opacity:1;
  animation:darkglass304Sweep 1.35s cubic-bezier(.22,.61,.36,1) both;
}

#resetBtn:hover::after{
  opacity:1;
}

#resetBtn:active{
  transform:translateY(0) scale(.995);
}

@keyframes darkglass304Sweep{
  from{
    left:-42%;
    opacity:0;
  }
  16%{
    opacity:.45;
  }
  48%{
    opacity:.78;
  }
  82%{
    opacity:.30;
  }
  to{
    left:112%;
    opacity:0;
  }
}

/* =========================================================
   3. 去掉原型下方“前锋 / 中场 / 后卫 / 门将”信息
   保留 DOM 供现有 JS 使用，视觉上彻底移除，避免改动功能逻辑。
   ========================================================= */
.model-meta,
#positionPill{
  display:none!important;
}

/* 删除 model-meta 后，不留下多余空白 */
.model-panel{
  padding-bottom:var(--pad-card-x);
}

/* 移动端沿用相同规则 */
@media(max-width:760px){
  #modelSelect{
    border-color:rgba(208,173,88,.70);
  }

  #resetBtn:hover{
    transform:none;
  }
}

/* 用户开启“减少动态效果”时禁用扫光 */
@media(prefers-reduced-motion:reduce){
  #resetBtn:hover::before{
    animation:none!important;
    opacity:0!important;
  }
}

/* === SOURCE: css/004-darkglass-v310-one-screen-pc.css === */

/* =========================================================
   DarkGlass v3.1.0 — PC One Screen Build
   Mobile <=760px keeps the existing v3.0.4 layout.
   ========================================================= */

@media(min-width:761px){
  /* Three attribute columns on PC */
  .attr-columns{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:start;
  }
  .attr-column{
    gap:14px!important;
    min-width:0;
  }

  /* The tool block is moved by JS into column 1 on desktop.
     Stack the two tools so they compensate for the shorter column. */
  .attr-column > .attribute-tools{
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .attr-column > .attribute-tools .view-switch-row,
  .attr-column > .attribute-tools .cost-help{
    min-height:54px;
    border-radius:var(--radius-card);
  }
  .attr-column > .attribute-tools .cost-help > summary{
    min-height:54px;
  }

  /* Three columns need slightly more efficient row geometry,
     but keep the same controls and interaction sizes. */
  .attr-main{
    grid-template-columns:122px minmax(96px,1fr) 88px;
    gap:8px;
    padding-left:14px;
    padding-right:14px;
  }
  .attr-name-wrap{
    width:122px;
  }
  .category-head{
    padding-left:14px;
    padding-right:14px;
  }

  /* Preserve comfortable spacing on large displays */
  @media(min-width:1600px){
    .attr-columns,
    .attr-column{
      gap:16px!important;
    }
    .attr-main{
      grid-template-columns:132px minmax(110px,1fr) 92px;
      gap:9px;
      padding-left:15px;
      padding-right:15px;
    }
    .attr-name-wrap{width:132px}
    .category-head{
      padding-left:15px;
      padding-right:15px;
    }
  }
}

/* Existing mobile layout stays one column and keeps the tool block above attributes. */
@media(max-width:760px){
  .attr-columns{
    grid-template-columns:1fr!important;
  }
}

/* === SOURCE: css/005-darkglass-v311-absolute-slider-pc.css === */

@media(min-width:761px){
  :root{
    --pc-slider-track:5px;
    --pc-slider-touch:36px;
        --pc-affordable:#858992;
    --pc-unavailable:#50535B;
    --pc-beyond:#2C2F36;
  }

  /* Remove the two repeated endpoint numbers and give the track all available width. */
  .mini-slider{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    min-height:var(--pc-slider-touch)!important;
  }
  .mini-slider .endpoint{
    display:none!important;
  }

  /* Slightly denser PC rows. */
  .attr-main{
    min-height:54px!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }

  /* Thinner visible track, while keeping a larger invisible mouse target. */
  .mini-slider .range-shell{
    height:var(--pc-slider-touch)!important;
  }
  .mini-slider .visual-track{
    height:var(--pc-slider-track)!important;
    background:var(--pc-beyond)!important;
  }
  .mini-slider input[type="range"]{
    height:var(--pc-slider-touch)!important;
  }
  .mini-slider input[type="range"]::-webkit-slider-runnable-track{
    height:var(--pc-slider-track)!important;
  }
  .mini-slider input[type="range"]::-moz-range-track{
    height:var(--pc-slider-track)!important;
  }

  /* Unpurchased states are intentionally darker than owned <60 white. */
  .mini-slider .track-seg.affordable{
    background:var(--pc-affordable)!important;
  }
  .mini-slider .track-seg.unavailable{
    background:var(--pc-unavailable)!important;
  }

  /* Keep the interaction thumb compact and unobtrusive. */
  .mini-slider input[type="range"]::-webkit-slider-thumb{
    margin-top:calc((var(--pc-slider-track) - var(--slider-thumb))/2)!important;
  }
}

/* === SOURCE: css/006-darkglass-v312-solid-value-colors-pc.css === */

@media(min-width:761px){
  :root{
    /* restrained four-state attribute palette */
    --pc-owned-red:#B85D5A;
    --pc-owned-orange:#D18445;
    --pc-owned-yellow:#D3B84F;
    --pc-owned-green:#55B982;

    /* keep future-buy segment neutral, clearly separate from owned colors */
    --pc-affordable:#B9BBC2;
    --pc-unavailable:#555861;
    --pc-beyond:#2C2F36;
  }

  .mini-slider .track-seg.affordable{
    background:var(--pc-affordable)!important;
  }
  .mini-slider .track-seg.unavailable{
    background:var(--pc-unavailable)!important;
  }
}

/* === SOURCE: css/007-darkglass-v313-pc-microtune.css === */

@media(min-width:761px){
  /* 1) Remove category subtotal number entirely to reduce noise */
  .category-cost,
  [data-cat-cost]{
    display:none!important;
  }
  .category-head{
    justify-content:flex-start!important;
  }

  /* 2) Pull the slider slightly left and give the stepper more breathing room */
  .attr-main{
    grid-template-columns:112px minmax(0,1fr) 96px!important;
    column-gap:12px!important;
  }
  .attr-name-wrap{
    width:112px!important;
  }
  .mini-slider{
    margin-right:4px!important;
  }

  /* 3) Make plus / number / minus box more balanced */
  .stepper{
    grid-template-columns:28px 40px 28px!important;
    height:34px!important;
    min-height:34px!important;
    border-radius:17px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  .stepper button,
  .stepper input{
    height:34px!important;
    min-height:34px!important;
    line-height:1!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    vertical-align:middle!important;
  }
  .stepper button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:18px!important;
    font-weight:700!important;
  }
  .stepper input{
    width:40px!important;
    display:block!important;
    text-align:center!important;
    font-size:17px!important;
    font-weight:700!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
}

/* === SOURCE: css/008-darkglass-v321-mobile-slider-sync.css === */

@media(max-width:760px){
  :root{
    --mobile-slider-track:5px;
  }

  /* Match PC logic: remove repeated endpoint numbers and give the rail the width. */
  .mini-slider{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    min-width:0!important;
  }
  .mini-slider .endpoint{
    display:none!important;
  }

  /* Thin visual rail, keep the existing large touch target. */
  .mini-slider .visual-track{
    height:var(--mobile-slider-track)!important;
  }
  .mini-slider input[type="range"]::-webkit-slider-runnable-track{
    height:var(--mobile-slider-track)!important;
  }
  .mini-slider input[type="range"]::-moz-range-track{
    height:var(--mobile-slider-track)!important;
  }
  .mini-slider input[type="range"]::-webkit-slider-thumb{
    margin-top:calc((var(--mobile-slider-track) - var(--slider-thumb))/2)!important;
  }

  /* Use the freed endpoint space for a longer rail.
     Keep the one-line mobile structure. */
  .attr-main{
    grid-template-columns:112px minmax(0,1fr) 84px!important;
    gap:6px!important;
  }
  .attr-name-wrap{
    width:112px!important;
  }

  /* Keep the numeric stepper symmetric and vertically centered. */
  .stepper{
    width:84px!important;
    grid-template-columns:24px 36px 24px!important;
    height:32px!important;
    min-height:32px!important;
    align-items:stretch!important;
    border-radius:16px!important;
  }
  .stepper button,
  .stepper input{
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0!important;
    line-height:1!important;
    box-sizing:border-box!important;
  }
  .stepper button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .stepper input{
    width:36px!important;
    text-align:center!important;
  }
}

@media(max-width:430px){
  .attr-main{
    grid-template-columns:106px minmax(0,1fr) 82px!important;
    gap:5px!important;
  }
  .attr-name-wrap{width:106px!important}
  .stepper{
    width:82px!important;
    grid-template-columns:23px 36px 23px!important;
  }
}

@media(max-width:380px){
  .attr-main{
    grid-template-columns:98px minmax(0,1fr) 78px!important;
    gap:4px!important;
  }
  .attr-name-wrap{width:98px!important}
  .stepper{
    width:78px!important;
    grid-template-columns:22px 34px 22px!important;
  }
  .stepper input{width:34px!important}
}

/* === SOURCE: css/009-v322-mobile-docked-summary-overrides.css === */

.mobile-summary-sentinel{display:none}
@media(max-width:760px){
  .mobile-summary-sentinel{display:block;height:1px;width:100%;margin:0;padding:0}
  .mobile-compact-summary{
    position:sticky;
    top:8px;
    z-index:28;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-areas:
      "bar bar"
      "used remain";
    gap:1px;
    margin-bottom:10px;
    border:1px solid #5f5231;
    border-radius:20px;
    overflow:hidden;
    background:rgba(49,41,23,.94);
    box-shadow:0 10px 30px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.02);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    transition:border-color .22s ease, box-shadow .22s ease, transform .22s ease, background .22s ease;
  }
  .mobile-compact-summary .mobile-summary-progress{
    grid-area:bar;
    background:#151410;
    padding:9px 10px 0;
    transition:padding .22s ease, background .22s ease;
  }
  .mobile-compact-summary .mobile-summary-rail{
    height:7px;
    border-radius:999px;
    background:#28282d;
    overflow:hidden;
    display:flex;
    transition:height .22s ease, box-shadow .22s ease;
  }
  .mobile-compact-summary .mobile-summary-item{
    min-height:0;
    padding:6px 12px 9px;
    background:#151410;
    transition:max-height .22s ease, padding .22s ease, opacity .18s ease, transform .22s ease, margin .22s ease, background .22s ease;
  }
  .mobile-compact-summary .mobile-summary-item.used{grid-area:used}
  .mobile-compact-summary .mobile-summary-item.remaining{grid-area:remain;border-left:1px solid #453b24}
  .mobile-compact-summary .mobile-summary-item .k{
    font-size:11px;
    line-height:1.1;
    color:#91835e;
    font-weight:800;
  }
  .mobile-compact-summary .mobile-summary-item .v{
    font-size:18px;
    line-height:1.05;
    font-weight:800;
    margin-top:2px;
    color:#f1d58a;
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
  }
  .mobile-compact-summary .mobile-summary-item.remaining .v{color:var(--ok)}
  .mobile-compact-summary .mobile-summary-item.remaining.negative .v{color:var(--danger)}
  .mobile-compact-summary.over .mobile-summary-rail{box-shadow:0 0 0 1px rgba(230,122,112,.4) inset}

  /* docked / condensed state */
  .mobile-compact-summary.is-docked{
    border-color:#6a5a33;
    box-shadow:0 12px 34px rgba(0,0,0,.42), 0 0 0 1px rgba(255,255,255,.02) inset;
    background:rgba(42,35,22,.94);
  }
  .mobile-compact-summary.is-docked .mobile-summary-progress{
    padding:7px 10px;
  }
  .mobile-compact-summary.is-docked .mobile-summary-rail{
    height:8px;
  }
  .mobile-compact-summary.is-docked .mobile-summary-item{
    opacity:0;
    max-height:0;
    padding-top:0;
    padding-bottom:0;
    margin:0;
    overflow:hidden;
    pointer-events:none;
    transform:translateY(-4px);
    border-left-color:transparent;
  }
  .mobile-compact-summary.is-docked .mobile-summary-item .k,
  .mobile-compact-summary.is-docked .mobile-summary-item .v{
    display:none;
  }

  /* the old bottom duplicate bar is removed on mobile */
  .mobile-apbar{display:none!important}
}

/* === SOURCE: css/010-v324-ap-color-language.css === */

:root{
  /* AP budget language — deliberately separate from attribute red/orange/yellow/green */
  --ap-used:#8877CC;
  --ap-used-soft:#A79BE0;
  --ap-remaining:#C7CAD2;
  --ap-remaining-soft:#E0E2E7;
  --ap-track:#292C33;
  --ap-used-text:#B8ADEB;
  --ap-remaining-text:#E1E3E8;
}

/* ===== PC AP summary ===== */
.status-progress-rail{
  background:var(--ap-track)!important;
}
.status-progress-used{
  background:linear-gradient(90deg,var(--ap-used),var(--ap-used-soft))!important;
}
.status-progress-remaining{
  background:linear-gradient(90deg,#B9BDC6,var(--ap-remaining-soft))!important;
}
#usedAP{
  color:var(--ap-used-text);
}
#remainingStat:not(.negative) .v,
#remainingStat:not(.negative) #remainingAP{
  color:var(--ap-remaining-text)!important;
}

/* ===== Mobile compact / docked AP summary ===== */
@media(max-width:760px){
  .mobile-compact-summary{
    border-color:rgba(136,119,204,.30)!important;
    background:rgba(25,26,31,.94)!important;
    box-shadow:
      0 10px 30px rgba(0,0,0,.30),
      inset 0 1px 0 rgba(255,255,255,.025)!important;
  }
  .mobile-compact-summary .mobile-summary-progress,
  .mobile-compact-summary .mobile-summary-item{
    background:#15171C!important;
  }
  .mobile-compact-summary .mobile-summary-item.remaining{
    border-left-color:rgba(255,255,255,.07)!important;
  }
  .mobile-compact-summary .mobile-summary-item .k{
    color:#858A95!important;
  }
  .mobile-compact-summary .mobile-summary-item.used .v,
  #mobileUsedTop{
    color:var(--ap-used-text)!important;
  }
  .mobile-compact-summary .mobile-summary-item.remaining:not(.negative) .v,
  #mobileRemainingTopBox:not(.negative) #mobileRemainingTop{
    color:var(--ap-remaining-text)!important;
  }

  .mobile-summary-rail{
    background:var(--ap-track)!important;
  }
  .mobile-summary-used{
    background:linear-gradient(90deg,var(--ap-used),var(--ap-used-soft))!important;
  }
  .mobile-summary-remaining{
    background:linear-gradient(90deg,#B9BDC6,var(--ap-remaining-soft))!important;
  }

  /* When the summary becomes a dock, keep the same language and remove old gold framing. */
  .mobile-compact-summary.is-docked{
    border-color:rgba(136,119,204,.36)!important;
    background:rgba(20,21,26,.95)!important;
    box-shadow:
      0 12px 34px rgba(0,0,0,.44),
      0 0 0 1px rgba(136,119,204,.035) inset!important;
  }

  /* Legacy bottom bar is already hidden, but keep its palette aligned if ever reused. */
  .mobile-ap-rail{
    background:var(--ap-track)!important;
  }
  .mobile-ap-used-fill{
    background:linear-gradient(90deg,var(--ap-used),var(--ap-used-soft))!important;
  }
  .mobile-ap-remain-fill{
    background:linear-gradient(90deg,#B9BDC6,var(--ap-remaining-soft))!important;
  }
  .mobile-apitem.used .v{color:var(--ap-used-text)!important}
  .mobile-apitem.remaining:not(.negative) .v{color:var(--ap-remaining-text)!important}
}

/* === SOURCE: css/011-v325-ap-usage-heat.css === */

:root{
  --ap-track:#2A2D33;
  --ap-remaining:#D2D6DC;
  --ap-remaining-soft:#ECEEF2;
  --ap-used-current:#53B86C;
  --ap-used-current-soft:#71C987;
  --ap-used-text:#71C987;
  --ap-remaining-text:#E7EAF0;
}

.status-progress-rail,.mobile-summary-rail,.mobile-ap-rail{
  background:var(--ap-track)!important;
}
.status-progress-used,.mobile-summary-used,.mobile-ap-used-fill{
  background:linear-gradient(90deg,var(--ap-used-current),var(--ap-used-current-soft))!important;
}
.status-progress-remaining,.mobile-summary-remaining,.mobile-ap-remain-fill{
  background:linear-gradient(90deg,var(--ap-remaining),var(--ap-remaining-soft))!important;
}
#usedAP,.mobile-summary-item.used .v,#mobileUsedTop{
  color:var(--ap-used-text)!important;
}
#remainingStat:not(.negative) #remainingAP,
.mobile-summary-item.remaining:not(.negative) .v,
#mobileRemainingTopBox:not(.negative) #mobileRemainingTop{
  color:var(--ap-remaining-text)!important;
}

/* === SOURCE: css/012-v330-point-cost-feedback.css === */

/* ===== transient marginal AP feedback ===== */
.ap-point-toast{
  position:fixed;
  z-index:80;
  left:0;
  top:0;
  display:flex;
  align-items:center;
  gap:6px;
  min-height:28px;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:10px;
  background:rgba(10,13,17,.94);
  box-shadow:0 8px 22px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  pointer-events:none;
  opacity:0;
  transform:translate(-50%,-100%) translateY(-5px) scale(.96);
  transition:opacity .12s ease, transform .14s ease;
  white-space:nowrap;
}
.ap-point-toast.show{
  opacity:1;
  transform:translate(-50%,-100%) translateY(-8px) scale(1);
}
.ap-point-toast.below{
  transform:translate(-50%,0) translateY(5px) scale(.96);
}
.ap-point-toast.below.show{
  transform:translate(-50%,0) translateY(8px) scale(1);
}
.ap-point-toast .transition{
  color:#8F98A4;
  font-size:10px;
  font-weight:700;
  letter-spacing:.01em;
  font-variant-numeric:tabular-nums;
}
.ap-point-toast .cost{
  color:#E7CB80;
  font-size:12px;
  font-weight:850;
  font-variant-numeric:tabular-nums;
}
.ap-point-toast.refund .cost{
  color:#C6CCD3;
}

/* PC: visual dot remains 18px. The extra grab area is implemented in JS,
   so the perfect v3.1.3/v3.2.x slider geometry does not change. */
@media(min-width:761px){
  .mini-slider .range-shell{
    touch-action:none;
  }
}

/* === SOURCE: css/013-v331-click-feedback-tune.css === */

.ap-point-toast.cost-only{
  gap:0;
  min-width:0;
  padding-left:9px;
  padding-right:9px;
}
.ap-point-toast.cost-only .transition{
  display:none;
}
.ap-point-toast.cost-only .cost{
  font-size:13px;
  letter-spacing:.01em;
}

/* === SOURCE: css/014-v334-mobile-sticky-controls.css === */

.mobile-sticky-controls{display:contents}

@media(max-width:760px){
  .mobile-summary-sentinel{
    display:block;
    width:100%;
    height:1px;
    margin:0;
    padding:0;
  }

  /* AP status + filter + tier help become one sticky control dock. */
  .mobile-sticky-controls{
    position:sticky;
    top:8px;
    z-index:36;
    display:block;
    margin-bottom:var(--m-card-gap);
    padding:0;
    isolation:isolate;
  }

  .mobile-sticky-controls::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:-4px;
    right:-4px;
    top:-5px;
    bottom:-4px;
    border-radius:22px;
    background:linear-gradient(180deg,rgba(6,9,14,.97),rgba(6,9,14,.88) 82%,rgba(6,9,14,0));
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease;
  }
  .mobile-sticky-controls.is-docked::before{opacity:1}

  /* Wrapper owns sticky; summary only owns full/compact visual state. */
  .mobile-sticky-controls .mobile-compact-summary{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
    margin-bottom:7px!important;
  }

  .mobile-sticky-controls .attribute-tools{
    position:relative;
    z-index:1;
    margin-bottom:0!important;
  }

  .mobile-sticky-controls.is-docked .view-switch-row,
  .mobile-sticky-controls.is-docked .cost-help{
    background:rgba(15,21,29,.93);
    box-shadow:0 8px 20px rgba(0,0,0,.22);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
  }
}

@media(max-width:430px){
  .mobile-sticky-controls{top:6px}
  .mobile-sticky-controls .mobile-compact-summary{margin-bottom:6px!important}
}

/* === SOURCE: css/015-v335-pc-category-fold.css === */

@media(min-width:761px){
  .category-head{
    cursor:pointer;
    user-select:none;
    -webkit-user-select:none;
  }
  .category-name{
    display:flex;
    align-items:center;
  }
  .category-toggle{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    margin-left:7px;
    color:#6f747c;
    font-size:10px;
    line-height:1;
    transform:rotate(0deg);
    transform-origin:center;
    transition:transform .16s ease,color .16s ease;
  }
  .category-head:hover .category-toggle{
    color:#b7bdc5;
  }
  .category-card.collapsed .attr-list{
    display:none;
  }
  .category-card.collapsed .category-toggle{
    transform:rotate(-90deg);
  }
  .category-card.collapsed .category-head{
    border-bottom-color:transparent;
  }
}

/* === SOURCE: css/016-v370-body-module.css === */

/* =========================================================
   v3.7.3 — Body axis labels + compact mobile body layout
   ========================================================= */
.body-panel{position:relative}
.body-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.body-title{font-size:13px;font-weight:760;letter-spacing:.08em;color:#eef0f3}
.body-data-badge{margin-top:3px;font-size:9px;color:#81765d;letter-spacing:.04em}
.body-segment-row{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.body-segment{display:inline-flex;padding:2px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.025)}
.body-segment button{appearance:none;border:0;background:transparent;color:#77818d;font:700 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;padding:6px 8px;border-radius:7px;cursor:pointer;transition:.15s ease}
.body-segment button:hover{color:#bbc2ca}
.body-segment button.active{color:#f2dfaa;background:rgba(205,169,82,.13);box-shadow:inset 0 0 0 1px rgba(216,179,88,.18)}
.body-segment button:disabled{opacity:.34;cursor:not-allowed;color:#5f6872;background:transparent;box-shadow:none}
.body-plot{position:relative;height:176px;margin:4px 4px 10px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:linear-gradient(180deg,rgba(20,31,40,.62),rgba(10,15,21,.72));overflow:hidden;cursor:crosshair;touch-action:none;user-select:none}
.body-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:25% 25%;mask-image:linear-gradient(to bottom,rgba(0,0,0,.78),rgba(0,0,0,.42))}
.body-plot::before,.body-plot::after{content:"";position:absolute;pointer-events:none;background:rgba(213,181,100,.17)}
.body-plot::before{left:50%;top:10px;bottom:10px;width:1px}
.body-plot::after{top:50%;left:10px;right:10px;height:1px}
.body-axis{display:none}
.body-range-label{position:absolute;z-index:2;font-size:8px;font-weight:650;color:#737d88;pointer-events:none;font-variant-numeric:tabular-nums;line-height:1;padding:2px 3px;border-radius:4px;background:rgba(10,15,21,.34);white-space:nowrap}
.body-range-top{top:8px;left:50%;transform:translateX(-50%)}
.body-range-bottom{bottom:8px;left:50%;transform:translateX(-50%)}
.body-range-left{left:7px;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:center}
.body-range-right{right:7px;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:center}
.body-content{display:block}
.body-side{min-width:0}
.body-dot{position:absolute;z-index:4;width:26px;height:26px;padding:0;border:0;border-radius:50%;transform:translate(-50%,-50%);background:rgba(224,191,105,.15);box-shadow:0 0 0 1px rgba(228,195,107,.55),0 0 0 6px rgba(217,178,81,.07),0 7px 18px rgba(0,0,0,.40);cursor:grab;transition:box-shadow .15s ease}
.body-dot:active{cursor:grabbing}.body-dot:focus-visible{outline:2px solid rgba(240,207,122,.75);outline-offset:4px}
.body-dot span{position:absolute;inset:7px;border-radius:50%;background:#e3c16d;box-shadow:0 0 12px rgba(224,184,83,.34)}
.body-values{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;align-items:stretch;margin-bottom:9px}
.body-value-card{min-width:0;padding:8px 9px;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.018)}
.body-value-card span{display:block;font-size:9px;color:#69737e;margin-bottom:3px}.body-value-card strong{display:block;font-size:13px;color:#e8ebef;font-variant-numeric:tabular-nums;white-space:nowrap}
.body-reset{min-width:46px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.025);color:#89939e;font-size:10px;font-weight:700;cursor:pointer}.body-reset:hover{color:#d8dde3;border-color:rgba(255,255,255,.12)}
.body-accelerate{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 10px;margin-bottom:8px;border:1px solid rgba(255,255,255,.055);border-radius:12px;background:rgba(255,255,255,.018)}
.body-accelerate-label{font-size:9px;color:#78838e;font-weight:700;letter-spacing:.06em}.body-accelerate-types{display:flex;align-items:center;gap:6px;font-size:11px}.body-accelerate-types span{color:#818c97}.body-accelerate-types strong{color:#dbe0e5}.body-accelerate-types strong.changed{color:#e2c170}.body-accelerate-arrow{color:#665b42!important}
.body-modifier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.body-mod{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:6px 7px;border:1px solid rgba(255,255,255,.045);border-radius:9px;background:rgba(255,255,255,.015);font-size:9px;color:#737e89}.body-mod strong{font-size:11px;font-variant-numeric:tabular-nums;color:#7f8994}.body-mod.positive strong{color:#b8d493}.body-mod.negative strong{color:#e18f86}.body-mod.neutral{opacity:.58}
.body-footnote{margin-top:8px;font-size:8px;line-height:1.45;color:#5e6872}
@media(min-width:761px){
}

/* v3.7.1 — Body is a standalone module below the complete archetype/control slab. */
.left-stack{min-width:0;align-self:start;display:grid;gap:12px}
@media(min-width:761px){
  .left-stack{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow-y:auto;overflow-x:hidden;padding-right:2px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}
  .left-stack > .sidebar{position:static!important;top:auto!important}
  .standalone-body-panel{padding:13px!important;border:1px solid var(--glass-border)!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012) 42%,transparent 76%),var(--glass-bg)!important;box-shadow:var(--glass-shadow)!important;backdrop-filter:blur(var(--glass-blur)) saturate(118%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(118%)}
}
@media(max-width:760px){
  .left-stack{display:grid;gap:var(--m-card-gap);margin-bottom:var(--m-card-gap)}
  .standalone-body-panel{padding:14px var(--m-card-pad)!important;background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 46%),rgba(15,21,29,.64);border:1px solid rgba(255,255,255,.075);border-radius:18px;box-shadow:0 12px 30px rgba(0,0,0,.18);backdrop-filter:blur(14px) saturate(110%);-webkit-backdrop-filter:blur(14px) saturate(110%)}

  .body-panel{padding:14px var(--m-card-pad)!important}
  .body-head{align-items:center;margin-bottom:10px}
  .body-title{font-size:15px}.body-data-badge{font-size:9px}
  .body-content{display:grid;grid-template-columns:minmax(142px,.94fr) minmax(164px,1.06fr);gap:9px;align-items:start}
  .body-plot{width:100%;height:auto;aspect-ratio:1/1;margin:0;border-radius:14px}
  .body-side{display:flex;flex-direction:column;gap:6px}
  .body-values{grid-template-columns:1fr 1fr;gap:5px;margin:0}
  .body-value-card{padding:7px 8px;border-radius:10px}
  .body-value-card span{font-size:8px;margin-bottom:2px}
  .body-value-card strong{font-size:13px}
  .body-reset{grid-column:1/-1;min-width:0;min-height:32px;border-radius:10px}
  .body-accelerate{padding:7px 8px;margin:0;border-radius:10px}
  .body-accelerate-label{font-size:8px}.body-accelerate-types{font-size:11px}
  .body-modifier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .body-mod{font-size:8px;padding:6px 7px;border-radius:8px}.body-mod strong{font-size:11px}
  .body-footnote{margin-top:8px}
  .body-range-label{font-size:7px}
  .body-range-left{left:4px}.body-range-right{right:4px}
}
@media(max-width:430px){
  .body-head{align-items:flex-start;gap:8px}
  .body-segment-row{gap:4px}
  .body-segment button{font-size:9px;padding:5px 7px}
  .body-content{grid-template-columns:minmax(132px,.9fr) minmax(154px,1.1fr);gap:8px}
  .body-value-card{padding:6px 7px}
  .body-value-card strong{font-size:12px}
  .body-mod{padding:5px 6px}
}

/* === SOURCE: css/017-v375-tablet-layout.css === */

/* =========================================================
   v3.7.5 — Dedicated iPad / tablet layout
   761–1279px no longer inherits the narrow PC hybrid layout.
   ========================================================= */
@media (min-width:761px) and (max-width:1279px){
  .shell{padding:18px 16px 64px}
  .topbar{margin-bottom:14px}

  /* Tablet becomes its own one-column workspace. */
  .workspace{display:block!important}
  .left-stack{
    position:static!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
    margin-bottom:14px!important;
    gap:14px!important
  }

  /* Controls use a clean 2-column tablet grid instead of a squeezed PC sidebar. */
  .sidebar{
    position:static!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important
  }
  .build-control-heading{display:none!important}
  .sidebar > .panel,
  .sidebar > .reset-panel{
    background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 46%),rgba(15,21,29,.64)!important;
    border:1px solid rgba(255,255,255,.075)!important;
    border-radius:18px!important;
    box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
    backdrop-filter:blur(14px) saturate(110%)!important;
    -webkit-backdrop-filter:blur(14px) saturate(110%)!important
  }
  .sidebar > .model-panel,
  .sidebar > .status-panel{border-bottom:1px solid rgba(255,255,255,.075)!important}
  .sidebar > .special-panel{grid-column:1/-1}
  .sidebar > .reset-panel{display:none!important}
  .model-panel{padding:14px 16px!important}
  .status-panel{padding:0!important;overflow:hidden}
  .special-panel{padding:12px 16px!important}

  /* Keep body as a separate full-width module; square plot left, details right. */
  .standalone-body-panel{padding:16px!important}
  .body-content{
    display:grid!important;
    grid-template-columns:minmax(260px,.9fr) minmax(300px,1.1fr)!important;
    gap:16px!important;
    align-items:start!important
  }
  .body-plot{
    width:min(100%,340px)!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    margin:0 auto!important;
    border-radius:16px!important
  }
  .body-side{display:flex!important;flex-direction:column!important;gap:8px!important}
  .body-values{grid-template-columns:1fr 1fr auto!important;gap:7px!important;margin:0!important}
  .body-accelerate{margin:0!important}
  .body-modifier-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

  /* Attribute area: 2 columns is much more readable on iPad widths. */
  .main{min-width:0!important}
  .attr-columns{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important
  }
  .attr-column{gap:12px!important}

  /* Tablet keeps desktop summary behavior; mobile-only sticky UI remains hidden. */
  .mobile-compact-summary,
  .mobile-filter-toggle,
  .mobile-apbar,
  .mobile-sticky-controls{display:none!important}
}

/* Narrow iPad portrait / small tablets: retain 2-column attributes but slightly tighten the body split. */
@media (min-width:761px) and (max-width:860px){
  .body-content{grid-template-columns:minmax(235px,.88fr) minmax(280px,1.12fr)!important;gap:12px!important}
  .body-plot{width:min(100%,300px)!important}
  .status-level{grid-template-columns:72px 60px minmax(70px,1fr) 70px!important;gap:7px!important}
  .attr-main{grid-template-columns:112px minmax(86px,1fr) 82px!important;gap:7px!important}
  .attr-name-wrap{width:112px!important}
}

/* === SOURCE: css/018-v380-advanced-mastery.css === */

.editor-view-tabs{display:flex;align-items:center;gap:8px;padding:7px;margin:0 0 16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(9,14,19,.62);box-shadow:inset 0 1px rgba(255,255,255,.03);overflow-x:auto;scrollbar-width:none}.editor-view-tabs::-webkit-scrollbar{display:none}
.editor-view-tab{overflow:visible;appearance:none;border:0;flex:0 0 auto;min-height:44px;padding:0 24px;border-radius:13px;background:transparent;color:#8d97a5;font:800 15px/1 inherit;cursor:pointer;transition:.18s ease;white-space:nowrap}
.editor-view-tab.active{background:linear-gradient(180deg,rgba(215,181,90,.18),rgba(215,181,90,.08));color:#f2df9e;box-shadow:inset 0 0 0 1px rgba(215,181,90,.32)}

.advanced-effects-master{display:inline-flex;align-items:center;gap:6px;padding:0 8px 0 2px;color:#9a8757;font-size:10px;font-weight:800;white-space:nowrap;flex:0 0 auto}
.effect-switch{display:inline-flex;align-items:center;gap:7px;cursor:pointer;user-select:none;white-space:nowrap}.effect-switch input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.effect-switch-track{position:relative;width:38px;height:22px;border-radius:999px;background:#17202a;border:1px solid rgba(255,255,255,.11);box-shadow:inset 0 2px 5px rgba(0,0,0,.25);transition:.18s ease}.effect-switch-track::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#77818e;box-shadow:0 2px 5px rgba(0,0,0,.35);transition:.18s ease}.effect-switch input:checked + .effect-switch-track{background:rgba(215,181,90,.17);border-color:rgba(215,181,90,.38)}.effect-switch input:checked + .effect-switch-track::after{transform:translateX(16px);background:#d8b85f}.effect-switch-text{font-size:10px;color:#7d8795;font-weight:800}.effect-switch input:checked ~ .effect-switch-text{color:#dbc77f}
.advanced-card.effects-paused{opacity:.70}.advanced-card.effects-paused>header{background:linear-gradient(90deg,rgba(215,181,90,.025),transparent)}.advanced-card.effects-paused .mastery-node.active{filter:saturate(.55);opacity:.68}.advanced-card.effects-paused .advanced-badge{color:#b67d72;border-color:rgba(201,116,96,.18)}
.advanced-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.module-switch{padding:5px 8px;border:1px solid rgba(255,255,255,.075);border-radius:999px;background:rgba(255,255,255,.025)}
.advanced-panel{margin-top:2px}.advanced-panel[hidden]{display:none!important}
.feature-panel{margin-top:2px}.feature-panel[hidden]{display:none!important}.feature-page-card{border:1px solid rgba(255,255,255,.085);border-radius:20px;background:linear-gradient(180deg,rgba(17,24,32,.95),rgba(10,16,22,.94));overflow:hidden}.feature-page-card>header{padding:20px;border-bottom:1px solid rgba(255,255,255,.07)}.feature-page-card h2{margin:3px 0 0;font-size:22px;color:#edf1f6}.feature-page-body{min-height:360px;padding:26px 20px;display:flex;flex-direction:column;justify-content:center;gap:9px;background:radial-gradient(circle at 20% 20%,rgba(211,177,79,.05),transparent 42%)}.feature-page-body strong{font-size:17px;color:#d4dae2}.feature-page-body p{max-width:720px;margin:0;color:#778291;font-size:12px;line-height:1.75}
.advanced-status-strip{display:grid;grid-template-columns:1fr .7fr .8fr minmax(220px,1.45fr);gap:10px;align-items:stretch;margin-bottom:14px}
.advanced-status-strip>div{min-height:58px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(13,19,26,.78);padding:10px 14px;display:flex;flex-direction:column;justify-content:center}
.advanced-status-strip span{font-size:11px;color:#737e8d}.advanced-status-strip strong{font-size:16px;color:#e9edf4;margin-top:3px}.advanced-status-strip .advanced-global-note{font-size:12px;color:#9aa4b2;line-height:1.5}
.advanced-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.advanced-card{min-width:0;border:1px solid rgba(255,255,255,.085);border-radius:20px;background:linear-gradient(180deg,rgba(17,24,32,.95),rgba(10,16,22,.94));box-shadow:0 12px 40px rgba(0,0,0,.18);overflow:hidden}
.advanced-card>header{min-height:84px;padding:18px 20px 15px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.07)}
.advanced-kicker{font-size:10px;letter-spacing:.15em;color:#81704c;font-weight:800}.advanced-card h2{font-size:20px;margin:3px 0 0;color:#edf1f6}.advanced-card header p{font-size:11px;color:#737f8d;margin:5px 0 0;line-height:1.45}
.advanced-badge{font-size:10px;color:#7c8795;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:5px 8px;white-space:nowrap}
.advanced-placeholder-body{min-height:230px;padding:22px 20px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;background:radial-gradient(circle at 20% 20%,rgba(211,177,79,.05),transparent 40%)}
.advanced-placeholder-body strong{color:#cfd5de;font-size:15px}.advanced-placeholder-body p{max-width:430px;margin:0;color:#707b89;font-size:12px;line-height:1.7}
.mastery-card{grid-column:1 / 2}.mastery-head{align-items:center!important}.mastery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.065)}
.mastery-toolbar-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;flex:1 1 auto}.mastery-metric{display:flex;align-items:center;gap:8px;min-width:0;height:42px;padding:0 12px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.022);white-space:nowrap}.mastery-metric span{display:inline;color:#75818f;font-size:11px;line-height:1}.mastery-metric strong{display:inline;margin:0;color:#e3e8ef;font-size:16px;line-height:1}
.mastery-toolbar-tools{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;justify-content:flex-end;flex:0 0 auto}.mastery-bulk-btn{height:36px;min-width:72px;padding:0 12px;border:1px solid rgba(255,255,255,.078);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.016));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);color:#d7deea;font:700 12px/1 inherit;letter-spacing:.02em;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease}.mastery-bulk-btn:hover:not(:disabled){color:#efe6c4;border-color:rgba(215,181,90,.22);background:linear-gradient(180deg,rgba(215,181,90,.075),rgba(255,255,255,.02));transform:translateY(-1px)}.mastery-bulk-btn:active:not(:disabled){transform:translateY(0)}.mastery-bulk-btn:disabled{opacity:.30;cursor:not-allowed;transform:none}.mastery-toolbar-toggle{height:36px;padding:0 10px;border:1px solid rgba(255,255,255,.078);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.030),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);display:flex;align-items:center;justify-content:center;cursor:pointer}.mastery-toolbar-toggle .effect-switch-track{width:32px;height:18px}.mastery-toolbar-toggle .effect-switch-track::after{width:10px;height:10px;left:3px;top:3px}.mastery-toolbar-toggle input:checked + .effect-switch-track::after{transform:translateX(14px)}
.mastery-list{padding:14px 18px 18px;max-height:620px;overflow:auto;scrollbar-width:thin;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"def att" "mid gk";gap:12px}.mastery-group{min-width:0;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.024),rgba(255,255,255,.012));overflow:hidden}.mastery-group-gk{grid-area:gk}.mastery-group-def{grid-area:def}.mastery-group-mid{grid-area:mid}.mastery-group-att{grid-area:att}
.mastery-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 14px 10px;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(90deg,rgba(255,255,255,.018),transparent)}.mastery-group-head strong{font-size:14px;color:#e4e9ef;letter-spacing:.01em}.mastery-group-head span{font-size:10px;color:#778291;letter-spacing:.08em;text-transform:uppercase}
.mastery-group-list{padding:6px 8px 8px}.mastery-row{position:relative;display:grid;grid-template-columns:minmax(150px,.88fr) minmax(0,1fr) minmax(0,.86fr);gap:10px;align-items:center;min-height:58px;margin:6px 0;padding:8px 10px 8px 14px;border:1px solid transparent;border-radius:14px;background:rgba(255,255,255,.014);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.mastery-row::before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:3px;border-radius:999px;background:rgba(215,181,90,.95);opacity:0;transition:opacity .16s ease}.mastery-row.selected::before{opacity:1}.mastery-row.selected{background:linear-gradient(90deg,rgba(215,181,90,.10),rgba(255,255,255,.02) 38%,rgba(255,255,255,.012));border-color:rgba(215,181,90,.14)}.mastery-row.current-model:not(.selected){background:linear-gradient(90deg,rgba(98,130,176,.08),rgba(255,255,255,.016));border-color:rgba(121,160,216,.12)}
.mastery-model{display:flex;align-items:center;min-width:0;gap:10px}.mastery-logo-shell{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:999px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.022);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.mastery-logo-shell img{width:31px;height:31px;object-fit:contain;display:block}.mastery-logo-shell.disruptor-logo img{width:31px;height:31px;transform:none}.mastery-row.selected .mastery-logo-shell{border-color:rgba(215,181,90,.18);background:rgba(215,181,90,.07);box-shadow:inset 0 0 0 1px rgba(215,181,90,.03)}.mastery-model-copy{min-width:0}.mastery-model-copy strong,.mastery-model-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mastery-model-copy strong{font-size:12px;color:#dce2ea}.mastery-model-copy small{font-size:9px;color:#667381;margin-top:2px}
.mastery-node{appearance:none;border:0;background:transparent;color:#909aa7;text-align:left;padding:0;min-height:auto;cursor:pointer;transition:color .16s ease,transform .16s ease;display:flex;align-items:flex-start;gap:8px;line-height:1.35;justify-content:flex-start}.mastery-node:hover{color:#ddd0a1;transform:translateY(-1px)}.mastery-node.active{color:#ece3c9}.mastery-node-level{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:38px;height:22px;padding:0 7px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(255,255,255,.03);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#8a95a2}.mastery-node.active .mastery-node-level{color:#d8b85f;border-color:rgba(215,181,90,.20);background:rgba(215,181,90,.10)}.mastery-node-stats{font-size:10.5px;line-height:1.4;color:#a9b1bc}.mastery-node.active .mastery-node-stats{color:#d8cfb7}.mastery-node-stats em{font-style:normal;font-weight:700;color:#f2e5b6}.mastery-node-stats .mastery-divider{padding:0 5px;color:#738091}

/* Both Lv10 + Lv30 complete: subtle archetype completion treatment. */
.mastery-row.fully-mastered{box-shadow:inset 0 0 0 1px rgba(215,181,90,.04)}
.mastery-row.fully-mastered .mastery-model-copy strong{color:#e4ca76;text-shadow:0 0 10px rgba(215,181,90,.11)}
.mastery-row.fully-mastered .mastery-logo-shell img{filter:drop-shadow(0 0 5px rgba(215,181,90,.28))}
.mastery-row.fully-mastered .mastery-model{position:relative;overflow:hidden}
.mastery-row.mastery-complete-pulse .mastery-model::after{content:"";position:absolute;top:0;bottom:0;width:34%;left:-44%;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(243,217,133,.16),transparent);transform:skewX(-16deg);animation:masteryCompleteSweep .72s ease-out 1}
@keyframes masteryCompleteSweep{from{left:-44%;opacity:0}18%{opacity:1}to{left:112%;opacity:0}}
body.non-attribute-editor-active #attributes,body.non-attribute-editor-active #emptyState{display:none!important}
@media (min-width:1280px){.mastery-card{grid-column:1 / 2}.advanced-placeholder-body{min-height:250px}}
@media (max-width:1180px){.advanced-status-strip{grid-template-columns:repeat(3,1fr)}.advanced-global-note{grid-column:1/-1}.mastery-row{grid-template-columns:minmax(132px,.88fr) minmax(0,1fr) minmax(0,.9fr)}.mastery-list{gap:12px}}
@media (max-width:860px){.mastery-toolbar{flex-direction:column;align-items:stretch}.mastery-toolbar-tools{justify-content:flex-end;flex-wrap:wrap}.mastery-list{grid-template-columns:1fr;grid-template-areas:none}.mastery-group{grid-area:auto!important}}
@media (max-width:760px){
  .editor-view-tabs{margin:0 0 10px;padding:5px;border-radius:15px;position:relative;z-index:3;gap:5px}.editor-view-tab{flex:0 0 auto;min-height:39px;padding:0 12px;font-size:13px}
  .advanced-effects-master{padding:0 3px 0 0;gap:4px}.advanced-effects-master>span:first-child{display:none}.advanced-effects-master .effect-switch-track{width:34px;height:20px}.advanced-effects-master .effect-switch-track::after{width:12px;height:12px}.advanced-effects-master .effect-switch input:checked + .effect-switch-track::after{transform:translateX(14px)}.advanced-effects-master .effect-switch-text{display:none}
  .advanced-card-actions{gap:5px}.module-switch{padding:4px 6px}.module-switch .effect-switch-text{display:none}
  .advanced-status-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:9px}.advanced-status-strip>div{min-height:48px;padding:7px 8px;border-radius:11px}.advanced-status-strip strong{font-size:13px}.advanced-status-strip .advanced-global-note{display:none}
  .advanced-grid{grid-template-columns:1fr;gap:9px}.advanced-card{border-radius:16px}.advanced-card>header{min-height:70px;padding:14px 14px 12px}.advanced-card h2{font-size:17px}.advanced-placeholder-body{min-height:118px;padding:15px 14px}.advanced-placeholder-body p{font-size:11px}
  .mastery-card{grid-column:auto}.mastery-toolbar{padding:9px 12px}.mastery-toolbar-stats{gap:6px}.mastery-metric{flex:1 1 120px;min-width:0;height:38px;padding:0 9px}.mastery-toolbar-tools{width:100%;justify-content:space-between;flex-wrap:nowrap}.mastery-bulk-btn{flex:1 1 auto;min-width:0}.mastery-toolbar-toggle{height:36px;padding:0 10px}.mastery-list{padding:8px 10px 12px;max-height:none;gap:10px}.mastery-group-head{padding:10px 12px 9px}.mastery-group-list{padding:5px 6px 6px}.mastery-row{grid-template-columns:1fr;gap:6px;min-height:0;padding:10px 10px 10px 14px}.mastery-model{gap:8px}.mastery-logo-shell{width:30px;height:30px;flex-basis:30px}.mastery-logo-shell img{width:27px;height:27px}.mastery-model-copy strong{font-size:11px}.mastery-model-copy small{font-size:8px}.mastery-node{gap:7px}.mastery-node-level{min-width:36px;height:21px;font-size:9px}.mastery-node-stats{font-size:9px}
}

/* === SOURCE: css/019-v383-nav-refresh.css === */

/* v3.8.3 · text-first navigation */
.editor-view-tabs{
  gap:0!important;
  padding:0 14px!important;
  min-height:64px;
  border-radius:16px!important;
  overflow-x:auto;
}
.editor-view-tab{
  min-height:64px!important;
  padding:0 16px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#8f99a7!important;
  font-size:15px!important;
  position:relative;
}
.editor-view-tab:hover{color:#c7ced8!important}
.editor-view-tab.active{
  color:#ead58d!important;
  background:transparent!important;
  box-shadow:none!important;
}
.editor-view-tab.active::after{
  content:"";
  position:absolute;
  left:16px;right:16px;bottom:0;
  height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,#d7b55a 20%,#d7b55a 80%,transparent);
}
.editor-view-sep{
  flex:0 0 auto;
  color:rgba(255,255,255,.14);
  font-size:16px;
  line-height:64px;
  user-select:none;
}
.editor-advanced-group{display:flex;align-items:center;flex:0 0 auto;white-space:nowrap}
.editor-advanced-group .editor-view-tab{padding-right:8px!important}
.advanced-effects-master{
  padding:0 10px 0 0!important;
  margin:0!important;
  gap:0!important;
}
.advanced-effects-master .effect-switch-track{width:32px;height:18px}
.advanced-effects-master .effect-switch-track::after{width:10px;height:10px;left:3px;top:3px}
.advanced-effects-master input:checked + .effect-switch-track::after{transform:translateX(14px)}
.editor-view-action{display:flex;align-items:center;gap:6px}
.editor-beta{font-size:8px;letter-spacing:.08em;color:#b7a15e;border:1px solid rgba(215,181,90,.25);border-radius:999px;padding:2px 5px;line-height:1}

/* Hover breakdown for aggregate Mastery bonus */
.mastery-summary-hover{position:relative;cursor:help}
.mastery-summary-hover::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;bottom:calc(100% + 10px);
  transform:translate(-50%,6px);
  width:max-content;max-width:360px;
  padding:9px 11px;
  border:1px solid rgba(215,181,90,.20);
  border-radius:10px;
  background:rgba(8,13,18,.97);
  color:#cfd6df;
  font-size:10px;line-height:1.55;
  white-space:pre-line;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
  opacity:0;pointer-events:none;
  transition:.15s ease;
  z-index:50;
}
.mastery-summary-hover::before{
  content:"";position:absolute;left:50%;bottom:calc(100% + 5px);
  width:8px;height:8px;background:rgba(8,13,18,.97);
  border-right:1px solid rgba(215,181,90,.20);border-bottom:1px solid rgba(215,181,90,.20);
  transform:translateX(-50%) rotate(45deg);opacity:0;pointer-events:none;transition:.15s ease;z-index:51
}
.mastery-summary-hover:hover::after{opacity:1;transform:translate(-50%,0)}
.mastery-summary-hover:hover::before{opacity:1}

@media (max-width:760px){
  .editor-view-tabs{min-height:50px;padding:0 8px!important}
  .editor-view-tab{min-height:50px!important;padding:0 10px!important;font-size:12px!important}
  .editor-view-tab.active::after{left:10px;right:10px}
  .editor-view-sep{line-height:50px;font-size:12px}
  .advanced-effects-master{padding-right:6px!important}
  .advanced-effects-master .effect-switch-track{width:28px;height:17px}
  .advanced-effects-master .effect-switch-track::after{width:9px;height:9px}
  .advanced-effects-master input:checked + .effect-switch-track::after{transform:translateX(11px)}
  .editor-beta{font-size:7px;padding:2px 4px}
  .mastery-summary-hover::after{max-width:260px;left:0;transform:translate(0,6px)}
  .mastery-summary-hover:hover::after{transform:translate(0,0)}
  .mastery-summary-hover::before{left:20px}
}

/* === SOURCE: css/020-v384-advanced-viewport-linked-switches.css === */

/* v3.8.4 · Advanced workspace: no status strip, linked switches, internal scroll */
.advanced-panel{margin-top:0}
.advanced-grid{margin-top:0}
.module-switch{padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}
.module-switch .effect-switch-text{display:none!important}
.advanced-card-actions .module-switch{flex:0 0 auto}

@media (min-width:761px){
  .advanced-panel{height:var(--advanced-viewport-height,auto);min-height:0;overflow:hidden}
  .advanced-grid{height:100%;min-height:0;align-items:stretch}
  .advanced-card{height:100%;min-height:0;display:flex;flex-direction:column}
  .advanced-card>header{flex:0 0 auto}
  .mastery-summary,.mastery-list-head{flex:0 0 auto}
  .mastery-list{flex:1 1 auto;min-height:0;max-height:none!important;overflow-y:auto;overscroll-behavior:contain}
  .advanced-placeholder-body{flex:1 1 auto;min-height:0!important;overflow-y:auto;overscroll-behavior:contain}
}

@media (max-width:760px){
  .advanced-panel{height:auto!important;overflow:visible!important}
  .advanced-grid{height:auto!important}
  .advanced-card{height:auto!important}
}

/* === SOURCE: css/021-v387-overflow-warning-ux.css === */

/* Cap overflow belongs to the combined Mastery + Body layer. Keep warnings compact. */
.mastery-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.attr-tab-overflow-warning{display:inline-flex;align-items:center;margin-left:7px;color:#e7a356;font-size:10px;font-weight:800;letter-spacing:.01em;vertical-align:middle;white-space:nowrap}
.attr-tab-overflow-warning[hidden]{display:none!important}
.attr-overflow-badge{
  position:absolute!important;
  top:-3px!important;
  right:auto!important;
  left:calc(50% + 14px)!important;
  transform:translateX(-50%);
  z-index:3;
  width:10px!important;
  height:10px!important;
  min-width:10px!important;
  min-height:10px!important;
  flex:0 0 10px!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  border-radius:999px!important;
  background:#ff4d4f!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:0 1px 6px rgba(255,77,79,.20);
  cursor:help;
}

/* === SOURCE: css/022-v394-stepper-clip-fix.css === */

/* v3.8.22 · gold mastery states and completion sweep */
.editor-view-tab[data-editor-view="attributes"]{overflow:visible!important}
.attribute-tab-label{
  position:relative;
  display:inline-block;
  line-height:1;
}
.attr-tab-overflow-warning{
  position:absolute!important;
  top:-11px!important;
  right:-12px!important;
  z-index:3;
  min-width:16px;
  height:16px;
  display:grid!important;
  place-items:center;
  margin:0!important;
  padding:0 3px!important;
  border:none!important;
  border-radius:999px!important;
  background:#c85a60!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:650!important;
  line-height:1!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  box-shadow:0 1px 6px rgba(200,90,96,.18);
  cursor:help;
  pointer-events:auto;
}
.attr-tab-overflow-warning[hidden]{display:none!important}

.stepper-wrap{
  position:relative;
  justify-self:end;
  width:max-content;
  overflow:visible;
}
.stepper{
  position:relative;
  overflow:hidden!important;
}
.attr-overflow-badge{
  position:absolute!important;
  top:4px!important;
  right:auto!important;
  left:calc(50% + 14px)!important;
  transform:translateX(-50%);
  z-index:3;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  min-height:8px!important;
  flex:0 0 8px!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  border-radius:999px!important;
  background:#c85a60!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:0 1px 5px rgba(200,90,96,.16);
  cursor:help;
}
@media (max-width:760px){
  .stepper-wrap{
    grid-area:stepper;
    width:86px;
  }
  .stepper{
    grid-area:auto!important;
    width:86px!important;
    justify-self:stretch!important;
  }
  .attr-tab-overflow-warning{
    top:-10px!important;
    right:-11px!important;
    min-width:15px;
    height:15px;
    padding:0 3px!important;
    font-size:9px!important
  }
  .attr-overflow-badge{
    top:4px!important;
    left:calc(50% + 12px)!important;
    transform:translateX(-50%);
    width:8px!important;
    height:8px!important;
    min-width:8px!important;
    min-height:8px!important;
    flex-basis:8px!important;
    padding:0!important;
    font-size:0!important
  }
}

/* === SOURCE: css/023-v4110k12-floating-inspector-stable.css === */

/* k12: keep the 30+6 selector full-width; reuse the existing k8 inspector as a floating card. */
@media(min-width:1001px){
  #playstylesPanel .ps-page-k6{position:relative!important}
  #playstylesPanel .ps-page-k6 .ps-page-head{padding-right:270px!important;min-height:62px!important}
  #playstylesPanel .ps-page-k6 .ps-library-stats{
    position:absolute!important;
    top:7px!important;
    right:4px!important;
    z-index:4!important;
    display:flex!important;
    gap:10px!important;
    margin:0!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-stat{
    min-width:112px!important;
    padding:9px 13px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.025)!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-stat small{font-size:9px!important}
  #playstylesPanel .ps-page-k6 .ps-library-stat strong{font-size:18px!important}

  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{display:block!important}
  #playstylesPanel .ps-page-k6 .ps-library-main{
    display:block!important;
    grid-template-columns:none!important;
    overflow:visible!important;
  }
  #playstylesPanel .ps-page-k6 .ps-category-list{width:100%!important;min-width:0!important}

  #playstylesPanel .ps-page-k6 #psHoverDetail{
    position:fixed!important;
    z-index:2147483000!important;
    width:372px!important;
    min-height:0!important;
    max-height:calc(100vh - 24px)!important;
    top:0!important;
    left:0!important;
    margin:0!important;
    overflow:auto!important;
    display:none!important;
    visibility:hidden!important;
    pointer-events:auto!important;
    border:1px solid rgba(151,174,191,.24)!important;
    border-radius:15px!important;
    background:linear-gradient(145deg,rgba(34,53,73,.99),rgba(18,31,43,.995))!important;
    box-shadow:0 22px 58px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.025) inset!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }
  #playstylesPanel .ps-page-k6 #psHoverDetail.active{
    display:block!important;
    visibility:visible!important;
  }
  #playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-inner{padding:17px 18px 16px!important}
}
@media(max-width:1000px){
  #playstylesPanel .ps-page-k6 .ps-library-stats{position:static!important}
}

/* === SOURCE: css/024-facility-header-v4612.css === */

body.facility-drawer-open .facility-selector-head{align-items:center!important;justify-content:space-between!important;padding:14px 18px 4px!important;gap:10px!important;}
body.facility-drawer-open .facility-selector-head h3{margin:0!important;color:#eef2f5!important;font-size:26px!important;line-height:1.1!important;font-weight:800!important;letter-spacing:-.02em!important;}
body.facility-drawer-open .facility-selector-head p{margin:6px 0 0!important;color:rgba(232,238,244,.60)!important;font-size:14px!important;line-height:1.35!important;font-weight:500!important;}
body.facility-drawer-open .facility-drawer-close{width:34px!important;height:34px!important;border:0!important;background:transparent!important;color:rgba(205,214,224,.72)!important;font-size:22px!important;line-height:1!important;cursor:pointer!important;border-radius:10px!important;}
body.facility-drawer-open .facility-drawer-close:hover{background:rgba(255,255,255,.04)!important;color:#f1f5f8!important;}
body.facility-drawer-open .facility-selector-tools{display:grid!important;grid-template-columns:minmax(340px,1fr) minmax(320px,.82fr)!important;gap:16px!important;padding:4px 18px 12px!important;border-bottom:1px solid rgba(255,255,255,.065)!important;align-items:center!important;}
body.facility-drawer-open .facility-selector-meter{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:14px!important;}
body.facility-drawer-open .facility-selector-meter .facility-budget-rail{margin:0!important;height:8px!important;}
body.facility-drawer-open .facility-selector-meter strong{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:7px!important;min-width:122px!important;text-align:right!important;color:#dbe2e9!important;}
body.facility-drawer-open .facility-selector-meter strong span{font-size:13px!important;line-height:1!important;font-weight:600!important;color:rgba(224,231,238,.66)!important;}
body.facility-drawer-open .facility-selector-meter strong em{font-style:normal!important;font-size:20px!important;line-height:1!important;font-weight:700!important;color:inherit!important;letter-spacing:-.01em!important;}
body.facility-drawer-open .facility-selector-tools .facility-search{margin:0!important;height:42px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:14px!important;background:rgba(8,14,20,.92)!important;color:#dce3ea!important;padding:0 16px!important;font:500 16px/1 inherit!important;outline:none!important;}
body.facility-drawer-open .facility-selector-tools .facility-search::placeholder{color:rgba(219,226,234,.45)!important;}
body.facility-drawer-open .facility-selector-tools .facility-search:focus{border-color:rgba(215,181,90,.28)!important;box-shadow:0 0 0 1px rgba(215,181,90,.10) inset!important;}
@media(max-width:900px){
  body.facility-drawer-open .facility-selector-head{padding:14px 16px 4px!important;}
  body.facility-drawer-open .facility-selector-head h3{font-size:24px!important;}
  body.facility-drawer-open .facility-selector-head p{font-size:13px!important;line-height:1.38!important;margin-top:9px!important;}
  body.facility-drawer-open .facility-selector-tools{grid-template-columns:1fr!important;gap:12px!important;padding:4px 16px 12px!important;}
  body.facility-drawer-open .facility-selector-meter strong{justify-content:flex-start!important;min-width:0!important;}
}

/* === SOURCE: css/025-facility-header-v4613.css === */

body.facility-drawer-open .facility-selector-head{align-items:center!important;justify-content:space-between!important;padding:18px 18px 6px!important;gap:10px!important;}
body.facility-drawer-open .facility-selector-head h3{margin:0!important;color:#eef2f5!important;font-size:24px!important;line-height:1.12!important;font-weight:750!important;letter-spacing:-.018em!important;}
body.facility-drawer-open .facility-selector-head p{margin:10px 0 0!important;color:rgba(228,235,241,.62)!important;font-size:14px!important;line-height:1.4!important;font-weight:520!important;}
body.facility-drawer-open .facility-drawer-close{width:32px!important;height:32px!important;background:transparent!important;color:rgba(202,211,220,.68)!important;font-size:21px!important;border-radius:10px!important;}
body.facility-drawer-open .facility-drawer-close:hover{background:rgba(255,255,255,.035)!important;color:#eef3f7!important;}
body.facility-drawer-open .facility-selector-tools{display:grid!important;grid-template-columns:minmax(420px,1.08fr) minmax(300px,.86fr)!important;gap:14px!important;padding:2px 18px 10px!important;border-bottom:1px solid rgba(255,255,255,.06)!important;align-items:center!important;}
body.facility-drawer-open .facility-selector-meter{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:12px!important;}
body.facility-drawer-open .facility-selector-meter .facility-budget-rail{margin:0!important;height:9px!important;filter:saturate(.96)!important;}
body.facility-drawer-open .facility-selector-meter strong{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:8px!important;min-width:118px!important;text-align:right!important;color:#dbe2e9!important;margin-right:2px!important;}
body.facility-drawer-open .facility-selector-meter strong span{font-size:12px!important;line-height:1!important;font-weight:600!important;color:rgba(224,231,238,.58)!important;letter-spacing:.01em!important;}
body.facility-drawer-open .facility-selector-meter strong em{font-style:normal!important;font-size:19px!important;line-height:1!important;font-weight:700!important;color:inherit!important;letter-spacing:-.01em!important;}
body.facility-drawer-open .facility-selector-tools .facility-search{margin:0!important;height:38px!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:14px!important;background:rgba(8,14,20,.9)!important;color:#dce3ea!important;padding:0 16px!important;font-size:15px!important;line-height:1!important;font-weight:500!important;outline:none!important;}
body.facility-drawer-open .facility-selector-tools .facility-search::placeholder{color:rgba(219,226,234,.40)!important;font-size:15px!important;}
body.facility-drawer-open .facility-selector-tools .facility-search:focus{border-color:rgba(215,181,90,.24)!important;box-shadow:0 0 0 1px rgba(215,181,90,.08) inset!important;}
body.facility-drawer-open #facilityToast{bottom:20px!important;}
@media(max-width:900px){
  body.facility-drawer-open .facility-selector-head{padding:16px 16px 6px!important;}
  body.facility-drawer-open .facility-selector-head h3{font-size:22px!important;}
  body.facility-drawer-open .facility-selector-head p{font-size:13px!important;line-height:1.38!important;margin-top:9px!important;}
  body.facility-drawer-open .facility-selector-tools{grid-template-columns:1fr!important;gap:10px!important;padding:2px 16px 10px!important;}
  body.facility-drawer-open .facility-selector-meter strong{justify-content:flex-start!important;min-width:0!important;}
}

/* === SOURCE: css/026-v553-attributes-workspace-uplift-preview.css === */

/* v5.5.3 · Attribute-page-only workspace uplift preview.
   Compress the non-interactive chrome so the first editable controls start higher.
   Scoped to attributes-workspace-compact so reverting is one file/version away. */
@media (min-width:761px){
  body.attributes-workspace-compact .shell{
    padding-top:12px!important;
  }
  body.attributes-workspace-compact .topbar{
    min-height:36px!important;
    margin-bottom:10px!important;
    align-items:center!important;
  }
  body.attributes-workspace-compact .topbar>div:first-child{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    min-width:0!important;
  }
  body.attributes-workspace-compact .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .subtitle{
    display:none!important;
  }
  body.attributes-workspace-compact .topbar h1{
    font-size:24px!important;
    line-height:1!important;
    letter-spacing:-.025em!important;
    white-space:nowrap!important;
  }
  body.attributes-workspace-compact .topbar .version{
    padding:5px 9px!important;
    font-size:9px!important;
    opacity:.72!important;
  }

  body.attributes-workspace-compact .editor-view-tabs{
    min-height:48px!important;
    margin:0 0 9px!important;
    padding:0 10px!important;
    border-radius:14px!important;
  }
  body.attributes-workspace-compact .editor-view-tab{
    min-height:48px!important;
    padding:0 13px!important;
    font-size:13px!important;
  }
  body.attributes-workspace-compact .editor-view-tab.active::after{
    left:13px!important;
    right:13px!important;
  }
  body.attributes-workspace-compact .editor-view-sep{
    line-height:48px!important;
    font-size:13px!important;
  }

  body.attributes-workspace-compact .attribute-tools{
    margin-bottom:8px!important;
    gap:8px!important;
  }
  body.attributes-workspace-compact .view-switch-row{
    min-height:46px!important;
    padding:0 13px!important;
    border-radius:13px!important;
  }
  body.attributes-workspace-compact .tool-title{
    font-size:12px!important;
  }
  body.attributes-workspace-compact .cost-help{
    border-radius:13px!important;
  }
  body.attributes-workspace-compact .cost-help>summary{
    min-height:46px!important;
    padding:0 13px!important;
  }
  body.attributes-workspace-compact .ios-switch{
    width:40px!important;
    height:24px!important;
  }

  /* Keep the global Archetype Overview aligned with the higher workspace start. */
  body.attributes-workspace-compact .global-archetype-overview-card{
    top:12px!important;
  }
}

/* === SOURCE: css/027-v555-balanced-branded-header.css === */

/* v5.5.5 · restore a useful branded masthead without returning to the oversized intro header. */
@media (min-width:761px){
  .shell{padding-top:12px!important;}
  .topbar{
    min-height:60px!important;
    height:60px!important;
    margin-bottom:8px!important;
    padding:5px 4px 7px!important;
    align-items:center!important;
    border-bottom:1px solid rgba(255,255,255,.055)!important;
  }
  .topbar>.site-brand{
    display:flex!important;
    align-items:center!important;
    gap:13px!important;
    min-width:0!important;
  }
  .site-logo{
    display:block!important;
    width:112px!important;
    height:38px!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
    opacity:.96!important;
  }
  .site-brand-copy{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:3px!important;
  }
  .topbar .eyebrow{
    display:block!important;
    margin:0!important;
    color:#74684d!important;
    font-size:7px!important;
    font-weight:820!important;
    letter-spacing:.16em!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .topbar h1{
    margin:0!important;
    font-size:20px!important;
    line-height:1.05!important;
    letter-spacing:-.02em!important;
  }
  .topbar .subtitle{display:none!important;}
  .topbar .version{
    padding:5px 8px!important;
    font-size:8px!important;
    line-height:1!important;
  }
  .editor-view-tabs{
    min-height:43px!important;
    height:43px!important;
    margin-bottom:6px!important;
  }
}
@media (min-width:761px) and (max-height:800px){
  .topbar{min-height:54px!important;height:54px!important;padding-top:3px!important;padding-bottom:5px!important;margin-bottom:6px!important;}
  .site-logo{width:100px!important;height:34px!important;}
  .topbar h1{font-size:18px!important;}
}

/* === SOURCE: css/028-v5570-critical-first-paint.css === */

/* Critical first-paint guard.
   This file has many late override styles/scripts; do not expose intermediate
   legacy DOM while the parser is still working through the single-file bundle. */
html.fc27-booting,
html.fc27-booting body{
  background:#070b10!important;
}
html.fc27-booting .shell{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html.fc27-boot-ready .shell{
  animation:fc27BootReveal .14s ease-out both;
}
@keyframes fc27BootReveal{
  from{opacity:0}
  to{opacity:1}
}


/* ===== SOURCE: css/stable-bundle-001.css ===== */
/* === SOURCE: css/029-v337-pc-sidebar-refine.css === */

  .build-control-heading{
    padding:4px 2px 16px;
    margin-bottom:6px;
    justify-content:flex-start;
  }
  .build-control-eyebrow{
    font-size:14px;
    letter-spacing:.16em;
    color:#d7c18a;
  }
  .build-control-note{display:none!important;}
  .model-panel .label,
  .status-level .label{
    margin-bottom:8px;
  }
  #modelSelect,
  .reset-btn{
    width:100%;
    min-height:68px;
    height:68px;
    border-radius:24px;
  }
  #modelSelect{
    background:rgba(7,10,15,.88)!important;
    border:1.5px solid rgba(210,174,87,.88)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.04),
      0 0 0 1px rgba(210,174,87,.16);
  }
  .reset-btn{
    border:1.5px solid rgba(210,174,87,.86)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.04),
      0 0 0 1px rgba(210,174,87,.16);
  }
  .compact-status{
    padding:14px 16px 16px!important;
    border-radius:24px;
    overflow:hidden;
  }
  .compact-status .status-inline-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:10px;
  }
  .compact-status .status-inline{
    display:flex;
    align-items:baseline;
    gap:8px;
    min-width:0;
  }
  .compact-status .status-inline .k{
    font-size:14px;
    color:#96a0aa;
    font-weight:600;
    white-space:nowrap;
  }
  .compact-status .status-inline .v{
    font-size:20px;
    line-height:1;
    font-weight:800;
    color:#eef1f5;
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
  }
  .compact-status .status-inline .u{
    font-size:.72em;
    opacity:.82;
    margin-left:2px;
  }
  .compact-status .status-inline.used .v{
    color:var(--ap-used-text)!important;
  }
  .compact-status .status-inline.remaining:not(.negative) .v,
  .compact-status #remainingStat:not(.negative) .v{
    color:var(--ap-remaining-text)!important;
  }
  .compact-status .status-progress{
    padding:0!important;
    margin:0!important;
    background:transparent!important;
  }
  .compact-status .status-progress-rail{
    height:12px;
    border-radius:999px;
    overflow:hidden;
    display:flex;
    background:rgba(255,255,255,.075);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }

  .compact-special-panel{
    padding-top:12px!important;
    padding-bottom:10px!important;
  }
  .special-row.compact{
    padding:16px 0;
    border-top:1px solid rgba(255,255,255,.055);
  }
  .special-row.compact:first-child{
    border-top:0;
    padding-top:0;
  }
  .special-inline{
    display:grid;
    grid-template-columns:120px minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
  }
  .special-inline-name{
    font-size:var(--fs-label);
    font-weight:700;
    color:#eef1f4;
    white-space:nowrap;
  }
  .special-inline-controls{
    min-width:0;
  }
  .star-rating-row{
    display:flex;
    gap:8px;
    flex-wrap:nowrap;
  }
  .star-rate-btn{
    min-width:56px;
    height:46px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.10);
    color:#9da6b2;
    background:rgba(255,255,255,.035);
    font-size:16px;
    font-weight:700;
    font-variant-numeric:tabular-nums;
    transition:transform .15s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease, opacity .18s ease;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  }
  .star-rate-btn[data-tier="1"].active{background:rgba(210,174,87,.10); border-color:rgba(210,174,87,.28); color:#d7c18a;}
  .star-rate-btn[data-tier="2"].active{background:rgba(210,174,87,.14); border-color:rgba(210,174,87,.34); color:#dcc688;}
  .star-rate-btn[data-tier="3"].active{background:rgba(210,174,87,.18); border-color:rgba(210,174,87,.42); color:#e2cb87;}
  .star-rate-btn[data-tier="4"].active{background:rgba(210,174,87,.24); border-color:rgba(210,174,87,.50); color:#e8d084;}
  .star-rate-btn[data-tier="5"].active{
    background:linear-gradient(180deg, rgba(218,183,96,.34), rgba(210,174,87,.24));
    border-color:rgba(224,191,106,.66);
    color:#f0d995;
    box-shadow:0 0 0 1px rgba(224,191,106,.14), 0 8px 20px rgba(210,174,87,.10);
  }
  .star-rate-btn.current{
    transform:translateY(-1px);
    box-shadow:0 0 0 1px rgba(224,191,106,.16), 0 10px 20px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.03);
  }
  .star-rate-btn:hover:not(.cap-disabled){
    border-color:rgba(224,191,106,.62);
    color:#f1d993;
  }
  .star-rate-btn.cap-disabled{
    opacity:.42;
    cursor:not-allowed;
    filter:saturate(.55);
  }
  .special-inline-cost{
    font-size:20px;
    font-weight:800;
    color:#d7bc76;
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
  }

  @media (max-width: 980px){
    .special-inline{
      grid-template-columns:1fr;
      gap:10px;
    }
    .special-inline-name,
    .special-inline-cost{
      white-space:normal;
    }
    .special-inline-cost{
      justify-self:end;
    }
    .star-rating-row{
      flex-wrap:wrap;
    }
    .star-rate-btn{
      min-width:58px;
      flex:1 1 calc(20% - 8px);
    }
  }

/* === SOURCE: css/030-v338-compact-sidebar.css === */

/* =========================================================
   v3.3.8 — Compact PC sidebar
   No fixed sidebar height: the slab now follows real content height.
   ========================================================= */
@media(min-width:761px){
  .sidebar{
    height:auto!important;
    min-height:0!important;
    align-self:start;
    padding:14px!important;
  }

  .build-control-heading{
    padding:1px 2px 10px!important;
    margin-bottom:0!important;
  }
  .build-control-eyebrow{
    font-size:13px!important;
    letter-spacing:.13em!important;
  }

  /* Heading already says 原型选择, so hide the duplicate visual label on PC only. */
  .model-panel > .label{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
  }

  .sidebar > .panel{
    padding:11px 2px!important;
  }
  .sidebar > .model-panel,
  .sidebar > .status-panel{
    border-bottom-color:rgba(255,255,255,.05)!important;
  }
  .sidebar .reset-panel{
    padding:10px 2px 1px!important;
  }

  /* Select + reset use the same compact footprint. */
  #modelSelect,
  .reset-btn{
    width:100%!important;
    min-height:52px!important;
    height:52px!important;
    border-radius:18px!important;
  }
  #modelSelect{
    padding-left:14px!important;
    padding-right:14px!important;
    font-size:15px!important;
  }
  .reset-btn{
    font-size:12px!important;
  }

  /* Level line: trim vertical air without changing the familiar layout. */
  .status-level{
    grid-template-columns:68px 52px minmax(74px,1fr) 66px!important;
    gap:7px!important;
    padding:8px 0 10px!important;
    border-bottom:0!important;
  }
  .status-level .label{
    margin:0!important;
    font-size:12px!important;
  }
  .level-value{
    width:52px!important;
    height:36px!important;
    border-radius:12px!important;
    font-size:15px!important;
  }
  .status-level-ap{
    font-size:15px!important;
  }

  /* AP summary: one text row + thin capacity bar. */
  .compact-status{
    margin-top:0!important;
    padding:9px 10px 10px!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.015)!important;
  }
  .compact-status .status-inline-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin-bottom:7px!important;
  }
  .compact-status .status-inline{
    display:flex!important;
    align-items:baseline!important;
    gap:5px!important;
    min-width:0!important;
  }
  .compact-status .status-inline .k{
    font-size:11px!important;
    color:#89939e!important;
    font-weight:650!important;
  }
  .compact-status .status-inline .v{
    font-size:16px!important;
    line-height:1!important;
    font-weight:800!important;
  }
  .compact-status .status-inline .u{
    font-size:10px!important;
    margin-left:1px!important;
  }
  .compact-status .status-progress-rail{
    height:7px!important;
  }

  /* Star rows: name | five stars | AP — guaranteed to fit even at min sidebar width. */
  .compact-special-panel{
    padding-top:10px!important;
    padding-bottom:8px!important;
  }
  .special-row.compact{
    padding:10px 0!important;
  }
  .special-row.compact:first-child{
    padding-top:0!important;
  }
  .special-inline{
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr) 44px!important;
    gap:4px!important;
    align-items:center!important;
  }
  .special-inline-name{
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.1!important;
  }
  .special-inline-controls{
    min-width:0!important;
  }
  .star-rating-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:3px!important;
    width:100%!important;
  }
  .star-rate-btn{
    width:100%!important;
    min-width:0!important;
    height:32px!important;
    padding:0!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1!important;
    transform:none!important;
  }

  /* Always show a subtle 1→5 depth ramp; selected/owned stars intensify it. */
  .star-rate-btn[data-tier="1"]{background:rgba(210,174,87,.045)!important;border-color:rgba(210,174,87,.13)!important;}
  .star-rate-btn[data-tier="2"]{background:rgba(210,174,87,.065)!important;border-color:rgba(210,174,87,.17)!important;}
  .star-rate-btn[data-tier="3"]{background:rgba(210,174,87,.085)!important;border-color:rgba(210,174,87,.21)!important;}
  .star-rate-btn[data-tier="4"]{background:rgba(210,174,87,.11)!important;border-color:rgba(210,174,87,.25)!important;}
  .star-rate-btn[data-tier="5"]{background:rgba(210,174,87,.14)!important;border-color:rgba(210,174,87,.30)!important;}

  .star-rate-btn[data-tier="1"].active{background:rgba(210,174,87,.10)!important;border-color:rgba(210,174,87,.28)!important;}
  .star-rate-btn[data-tier="2"].active{background:rgba(210,174,87,.14)!important;border-color:rgba(210,174,87,.34)!important;}
  .star-rate-btn[data-tier="3"].active{background:rgba(210,174,87,.18)!important;border-color:rgba(210,174,87,.42)!important;}
  .star-rate-btn[data-tier="4"].active{background:rgba(210,174,87,.23)!important;border-color:rgba(210,174,87,.50)!important;}
  .star-rate-btn[data-tier="5"].active{
    background:linear-gradient(180deg,rgba(224,190,104,.34),rgba(210,174,87,.24))!important;
    border-color:rgba(229,196,111,.68)!important;
    color:#f3dc98!important;
  }
  .star-rate-btn.current{
    box-shadow:0 0 0 1px rgba(232,200,118,.20),0 5px 12px rgba(0,0,0,.20)!important;
  }
  .star-rate-btn[data-tier="5"].current{
    box-shadow:0 0 0 1px rgba(237,207,128,.30),0 7px 16px rgba(210,174,87,.13)!important;
  }
  .star-rate-btn.cap-disabled{
    opacity:.38!important;
  }

  .special-inline-cost{
    justify-self:end!important;
    font-size:12px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }
}

/* v3.3.7 made some compact-PC rules global. Restore the proven mobile scale. */
@media(max-width:760px){
  #modelSelect{
    min-height:38px!important;
    height:38px!important;
    border-radius:var(--radius-control)!important;
    font-size:var(--m-fs-control)!important;
  }

  .compact-special-panel{
    padding:7px var(--m-card-pad)!important;
  }
  .special-row.compact{
    padding:7px 0!important;
  }
  .special-inline{
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr) 46px!important;
    gap:5px!important;
    align-items:center!important;
  }
  .special-inline-name{
    font-size:var(--m-fs-primary)!important;
    white-space:nowrap!important;
  }
  .star-rating-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:2px!important;
  }
  .star-rate-btn{
    min-width:0!important;
    width:100%!important;
    height:28px!important;
    padding:0!important;
    border-radius:9px!important;
    font-size:9px!important;
  }
  .special-inline-cost{
    justify-self:end!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }
}

/* === SOURCE: css/031-v339-star-state-visuals.css === */

/* =========================================================
   Star visual language
   - initial owned: already lit, progressively brighter from 1★ to base star
   - upgraded owned: more saturated
   - available: lights off, clickable
   - model hard cap: darkest, permanently non-interactive
   ========================================================= */

.star-rate-btn{
  position:relative;
  color:#8f98a3!important;
  background:rgba(255,255,255,.028)!important;
  border-color:rgba(255,255,255,.085)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  opacity:1!important;
}

/* Available but not bought: "lamp off". */
.star-rate-btn.available-off{
  color:#9aa2ac!important;
  background:rgba(255,255,255,.032)!important;
  border-color:rgba(255,255,255,.095)!important;
  cursor:pointer;
}
.star-rate-btn.available-off:hover{
  color:#d9c17e!important;
  border-color:rgba(215,193,126,.42)!important;
  background:rgba(210,174,87,.075)!important;
}

/* Initial owned stars: 1→5 progressively more luminous even before upgrades. */
.star-rate-btn.owned-initial[data-tier="1"]{
  color:#b69f65!important;
  background:rgba(210,174,87,.085)!important;
  border-color:rgba(210,174,87,.20)!important;
}
.star-rate-btn.owned-initial[data-tier="2"]{
  color:#c4ad70!important;
  background:rgba(210,174,87,.12)!important;
  border-color:rgba(210,174,87,.28)!important;
}
.star-rate-btn.owned-initial[data-tier="3"]{
  color:#d8be78!important;
  background:rgba(210,174,87,.17)!important;
  border-color:rgba(210,174,87,.38)!important;
}
.star-rate-btn.owned-initial[data-tier="4"]{
  color:#e3ca82!important;
  background:rgba(210,174,87,.22)!important;
  border-color:rgba(210,174,87,.48)!important;
}
.star-rate-btn.owned-initial[data-tier="5"]{
  color:#edd58d!important;
  background:rgba(210,174,87,.27)!important;
  border-color:rgba(224,191,106,.58)!important;
}

/* Bought upgrades: stronger saturation than archetype-owned stars. */
.star-rate-btn.owned-upgrade[data-tier="2"],
.star-rate-btn.owned-upgrade[data-tier="3"]{
  color:#e7ce83!important;
  background:rgba(218,182,91,.24)!important;
  border-color:rgba(224,190,101,.52)!important;
}
.star-rate-btn.owned-upgrade[data-tier="4"]{
  color:#f0d68b!important;
  background:rgba(220,182,88,.31)!important;
  border-color:rgba(232,198,111,.66)!important;
}
.star-rate-btn.owned-upgrade[data-tier="5"]{
  color:#f6df98!important;
  background:linear-gradient(180deg,rgba(229,194,105,.42),rgba(210,174,87,.30))!important;
  border-color:rgba(239,207,126,.78)!important;
  box-shadow:
    0 0 0 1px rgba(238,205,124,.16),
    0 7px 18px rgba(210,174,87,.13),
    inset 0 1px 0 rgba(255,255,255,.055)!important;
}

/* Current selected level gets an extra precise ring. */
.star-rate-btn.current:not(.hard-cap):not(.budget-locked){
  box-shadow:
    0 0 0 1px rgba(235,203,121,.26),
    0 6px 15px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.04)!important;
}

/* Lower-than-base stars remain visibly owned, but cannot be clicked downward. */
.star-rate-btn.base-floor:disabled{
  cursor:default!important;
  opacity:1!important;
  filter:none!important;
}

/* Budget locked: currently unavailable, but visually distinguish from a true model cap. */
.star-rate-btn.budget-locked:disabled{
  color:#59616b!important;
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(255,255,255,.055)!important;
  opacity:.62!important;
  cursor:not-allowed!important;
}

/* Hard model cap: permanently darkest. */
.star-rate-btn.hard-cap:disabled{
  color:#3f464f!important;
  background:rgba(255,255,255,.012)!important;
  border-color:rgba(255,255,255,.035)!important;
  opacity:.42!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
}

/* Ensure disabled owned base stars don't inherit the generic disabled dimming. */
.star-rate-btn.owned-initial.base-floor:disabled{
  opacity:1!important;
}

@media(max-width:760px){
  .star-rate-btn.available-off:hover{
    background:rgba(255,255,255,.032)!important;
    color:#9aa2ac!important;
    border-color:rgba(255,255,255,.095)!important;
  }
}

/* === SOURCE: css/032-v340-narrow-sidebar.css === */

/* ===== PC: sidebar ~15% narrower, released width goes to the three attribute columns ===== */
@media(min-width:761px){
  .workspace{
    grid-template-columns:clamp(276px,16vw,306px) minmax(0,1fr)!important;
    gap:18px!important;
  }

  /* Large desktop keeps the same ~15% reduction instead of jumping back to 350px. */
  .shell{--v340-sidebar-max:306px}

  .sidebar{
    padding:13px!important;
  }

  /* Shorter labels let the compact sidebar breathe. */
  .status-level{
    grid-template-columns:38px 50px minmax(64px,1fr) 62px!important;
    gap:6px!important;
  }
  .special-inline{
    grid-template-columns:38px minmax(0,1fr) 42px!important;
    gap:4px!important;
  }
  .special-inline-name{
    font-size:12px!important;
  }
  .special-inline-cost{
    font-size:11px!important;
  }

  /* More of each released pixel now reaches the attribute slider. */
  .attr-main{
    grid-template-columns:104px minmax(0,1fr) 92px!important;
    column-gap:10px!important;
  }
  .attr-name-wrap{
    width:104px!important;
  }

  /* Model select + reset: same font size as right-side attribute names. */
  #modelSelect,
  #resetBtn{
    font-size:var(--fs-label)!important;
    font-weight:700!important;
    letter-spacing:0!important;
  }

  /* Center selected archetype text within the control, not left aligned. */
  #modelSelect{
    text-align:center!important;
    text-align-last:center!important;
    padding-left:36px!important;
    padding-right:36px!important;
  }
  #modelSelect option,
  #modelSelect optgroup{
    text-align:left;
  }

  #resetBtn{
    text-align:center!important;
  }
}

/* Override the old 1700px rule that widened the sidebar again. */
@media(min-width:1700px){
  .workspace{
    grid-template-columns:306px minmax(0,1fr)!important;
    gap:18px!important;
  }
}

/* AP-shortage feedback for temporarily unaffordable star upgrades. */
.star-budget-toast{
  position:fixed;
  z-index:100;
  left:0;
  top:0;
  transform:translate(-50%,-100%) translateY(-5px) scale(.96);
  padding:5px 9px;
  border-radius:9px;
  border:1px solid rgba(214,183,79,.34);
  background:rgba(13,16,20,.96);
  color:#e7cc84;
  box-shadow:0 8px 22px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  pointer-events:none;
  opacity:0;
  transition:opacity .10s ease,transform .12s ease;
}
.star-budget-toast.show{
  opacity:1;
  transform:translate(-50%,-100%) translateY(-8px) scale(1);
}

/* Budget lock is visually dark but still intentionally clickable for the explanation. */
.star-rate-btn.budget-locked{
  cursor:pointer!important;
}
.star-rate-btn.budget-locked:hover{
  color:#7e7561!important;
  background:rgba(210,174,87,.035)!important;
  border-color:rgba(210,174,87,.12)!important;
}

/* Hard cap remains the darkest and truly non-interactive. */
.star-rate-btn.hard-cap:disabled{
  cursor:not-allowed!important;
}

/* Keep mobile width/layout untouched; only the shorter wording is shared. */
@media(max-width:760px){
  #modelSelect{
    text-align:left!important;
    text-align-last:auto!important;
  }
}

/* === SOURCE: css/033-v341-compact-controls-star-toggle.css === */

/* ===== PC: reduce vertical waste and soften gold framing ===== */
@media(min-width:761px){
  #modelSelect,
  #resetBtn{
    min-height:44px!important;
    height:44px!important;
    border-radius:14px!important;
    border-width:1px!important;
  }

  #modelSelect{
    border-color:rgba(210,174,87,.58)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  #resetBtn{
    border-color:rgba(210,174,87,.56)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  .model-panel{
    padding-top:9px!important;
    padding-bottom:9px!important;
  }

  .sidebar .reset-panel{
    padding-top:8px!important;
  }

  .compact-special-panel{
    padding-top:8px!important;
    padding-bottom:6px!important;
  }

  .special-row.compact{
    padding:9px 0!important;
  }
}

/* ===== Star state + toggle visual language, shared by PC and mobile ===== */

/* Initial stars: visibly lit and progressively stronger, but permanently owned. */
.star-rate-btn.owned-initial[data-tier="1"]{
  color:#b69f65!important;
  background:rgba(210,174,87,.085)!important;
  border-color:rgba(210,174,87,.20)!important;
}
.star-rate-btn.owned-initial[data-tier="2"]{
  color:#c4ad70!important;
  background:rgba(210,174,87,.12)!important;
  border-color:rgba(210,174,87,.28)!important;
}
.star-rate-btn.owned-initial[data-tier="3"]{
  color:#d8be78!important;
  background:rgba(210,174,87,.17)!important;
  border-color:rgba(210,174,87,.38)!important;
}
.star-rate-btn.owned-initial[data-tier="4"]{
  color:#e3ca82!important;
  background:rgba(210,174,87,.22)!important;
  border-color:rgba(210,174,87,.48)!important;
}
.star-rate-btn.owned-initial[data-tier="5"]{
  color:#edd58d!important;
  background:rgba(210,174,87,.27)!important;
  border-color:rgba(224,191,106,.58)!important;
}
.star-rate-btn.owned-initial.base-floor:disabled{
  opacity:1!important;
  filter:none!important;
  cursor:default!important;
}

/* Purchased upgrades are more saturated than initial-owned levels. */
.star-rate-btn.owned-upgrade{
  color:#efd486!important;
  background:rgba(220,182,88,.28)!important;
  border-color:rgba(232,198,111,.62)!important;
}
.star-rate-btn.owned-upgrade[data-tier="5"]{
  color:#f6df98!important;
  background:linear-gradient(180deg,rgba(229,194,105,.42),rgba(210,174,87,.30))!important;
  border-color:rgba(239,207,126,.78)!important;
  box-shadow:
    0 0 0 1px rgba(238,205,124,.14),
    0 7px 18px rgba(210,174,87,.12),
    inset 0 1px 0 rgba(255,255,255,.05)!important;
}

/* Available upgrade, still off. */
.star-rate-btn.available-off{
  color:#949ca6!important;
  background:rgba(255,255,255,.028)!important;
  border-color:rgba(255,255,255,.085)!important;
  cursor:pointer!important;
}
.star-rate-btn.available-off:hover{
  color:#d9c17e!important;
  background:rgba(210,174,87,.07)!important;
  border-color:rgba(210,174,87,.34)!important;
}

/* Temporary AP lock: dark, but clickable to show the reason. */
.star-rate-btn.budget-locked{
  color:#59616b!important;
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(255,255,255,.055)!important;
  opacity:.68!important;
  cursor:pointer!important;
}
.star-rate-btn.budget-locked:hover{
  color:#887d63!important;
  background:rgba(210,174,87,.035)!important;
  border-color:rgba(210,174,87,.12)!important;
}

/* Hard model cap: darkest + truly non-interactive. */
.star-rate-btn.hard-cap:disabled{
  color:#3e454d!important;
  background:rgba(255,255,255,.010)!important;
  border-color:rgba(255,255,255,.030)!important;
  opacity:.40!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
}

/* Current selected upgrade ring. */
.star-rate-btn.current:not(.base-floor):not(.hard-cap):not(.budget-locked){
  box-shadow:
    0 0 0 1px rgba(235,203,121,.24),
    0 5px 14px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.04)!important;
}

/* ===== Mobile: use the exact same semantics, fix cramped/garbled row ===== */
@media(max-width:760px){
  .compact-special-panel{
    padding:7px var(--m-card-pad)!important;
  }

  .special-row.compact{
    padding:8px 0!important;
  }

  .special-inline{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 40px!important;
    gap:4px!important;
    align-items:center!important;
  }

  .special-inline-name{
    font-size:11px!important;
    font-weight:700!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .star-rating-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:3px!important;
    min-width:0!important;
  }

  .star-rate-btn{
    width:100%!important;
    min-width:0!important;
    height:30px!important;
    padding:0!important;
    border-radius:9px!important;
    font-size:10px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  .special-inline-cost{
    justify-self:end!important;
    font-size:10px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }

  /* touch devices: don't leave a fake hover state */
  .star-rate-btn.available-off:hover{
    color:#949ca6!important;
    background:rgba(255,255,255,.028)!important;
    border-color:rgba(255,255,255,.085)!important;
  }
}

/* === SOURCE: css/034-v342-star-tooltip-mobile-fix.css === */

/* Reset button copy is intentionally quieter. */
#resetBtn{
  font-weight:400!important;
}

/* One compact hover language for star actions. */
.star-rate-btn[data-tip]{
  position:relative;
}
@media(hover:hover) and (pointer:fine){
  .star-rate-btn[data-tip]::after{
    content:attr(data-tip);
    position:absolute;
    left:50%;
    bottom:calc(100% + 7px);
    transform:translateX(-50%) translateY(3px);
    z-index:120;
    min-width:max-content;
    padding:4px 7px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:7px;
    background:rgba(10,13,17,.96);
    color:#d9dde3;
    box-shadow:0 7px 18px rgba(0,0,0,.32);
    font-size:10px;
    font-weight:650;
    line-height:1.1;
    white-space:nowrap;
    opacity:0;
    pointer-events:none;
    transition:opacity .09s ease,transform .10s ease;
  }
  .star-rate-btn[data-tip]::before{
    content:"";
    position:absolute;
    left:50%;
    bottom:calc(100% + 3px);
    transform:translateX(-50%);
    z-index:119;
    width:7px;
    height:7px;
    background:rgba(10,13,17,.96);
    border-right:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);
    rotate:45deg;
    opacity:0;
    pointer-events:none;
    transition:opacity .09s ease;
  }
  .star-rate-btn[data-tip]:hover::after{
    opacity:1;
    transform:translateX(-50%) translateY(0);
  }
  .star-rate-btn[data-tip]:hover::before{
    opacity:1;
  }
}

/* AP-locked star uses the same hover popup style, not a separate visual language. */
.star-rate-btn.budget-locked[data-tip]::after{
  color:#e5cb86;
}

/* Mobile garble fix:
   old mobile .special-row is itself a 3-column grid. The new v3.4.x DOM puts
   one .special-inline grid inside it, so that outer grid was squeezing the
   entire row into its first column. Force the compact row back to a full-width
   block before laying out name | five stars | AP. */
@media(max-width:760px){
  .special-row.compact{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    grid-template-columns:none!important;
    grid-template-areas:none!important;
    gap:0!important;
  }

  .special-inline{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 40px!important;
    gap:4px!important;
    align-items:center!important;
  }

  .special-inline-controls,
  .star-rating-row{
    width:100%!important;
    min-width:0!important;
  }

  .star-rating-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:3px!important;
  }

  .star-rate-btn{
    min-width:0!important;
    width:100%!important;
    height:30px!important;
    padding:0!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-family:inherit!important;
    font-size:10px!important;
    line-height:30px!important;
  }

  .special-inline-name,
  .special-inline-cost{
    min-width:0!important;
    white-space:nowrap!important;
  }

  /* Touch has no persistent hover; AP shortage is shown via the matching 0.5s toast. */
  .star-rate-btn[data-tip]::after,
  .star-rate-btn[data-tip]::before{
    display:none!important;
  }
}

/* Touch AP-shortage toast matches the desktop hover bubble. */
.star-budget-toast{
  padding:4px 7px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:7px!important;
  background:rgba(10,13,17,.96)!important;
  color:#e5cb86!important;
  box-shadow:0 7px 18px rgba(0,0,0,.32)!important;
  font-size:10px!important;
  font-weight:650!important;
}

/* === SOURCE: css/035-v343-mobile-ap-bar-star-tone.css === */

/* =========================================================
   1) Star colors: keep the 1→5 progression, but make it much more restrained.
   ========================================================= */

/* Initial-owned stars: same gold family, only a small luminance/saturation ramp. */
.star-rate-btn.owned-initial[data-tier="1"]{
  color:#c4ad73!important;
  background:rgba(210,174,87,.10)!important;
  border-color:rgba(210,174,87,.22)!important;
}
.star-rate-btn.owned-initial[data-tier="2"]{
  color:#c9b176!important;
  background:rgba(210,174,87,.115)!important;
  border-color:rgba(210,174,87,.245)!important;
}
.star-rate-btn.owned-initial[data-tier="3"]{
  color:#ceb679!important;
  background:rgba(210,174,87,.13)!important;
  border-color:rgba(210,174,87,.27)!important;
}
.star-rate-btn.owned-initial[data-tier="4"]{
  color:#d3bb7c!important;
  background:rgba(210,174,87,.145)!important;
  border-color:rgba(210,174,87,.295)!important;
}
.star-rate-btn.owned-initial[data-tier="5"]{
  color:#d8c080!important;
  background:rgba(210,174,87,.16)!important;
  border-color:rgba(210,174,87,.32)!important;
}

/* Bought upgrades: slightly fuller than initial-owned, but no big jump. */
.star-rate-btn.owned-upgrade[data-tier="2"],
.star-rate-btn.owned-upgrade[data-tier="3"]{
  color:#d9c17f!important;
  background:rgba(214,178,89,.18)!important;
  border-color:rgba(222,188,101,.36)!important;
}
.star-rate-btn.owned-upgrade[data-tier="4"]{
  color:#dec683!important;
  background:rgba(216,180,90,.20)!important;
  border-color:rgba(225,191,104,.40)!important;
}
.star-rate-btn.owned-upgrade[data-tier="5"]{
  color:#e3cb87!important;
  background:rgba(218,182,92,.22)!important;
  border-color:rgba(228,195,108,.44)!important;
  box-shadow:
    0 0 0 1px rgba(228,195,108,.08),
    0 5px 12px rgba(210,174,87,.06),
    inset 0 1px 0 rgba(255,255,255,.035)!important;
}

/* Current selected level: precise ring, not a large visual jump. */
.star-rate-btn.current:not(.base-floor):not(.hard-cap):not(.budget-locked){
  box-shadow:
    0 0 0 1px rgba(230,199,116,.18),
    0 4px 10px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.035)!important;
}

/* =========================================================
   2) Mobile AP summary: storage-capacity feel.
      Thicker main rail + one-line text below it.
   ========================================================= */
@media(max-width:760px){
  .mobile-compact-summary{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "bar bar"
      "used remain"!important;
    gap:0!important;
    overflow:hidden!important;
  }

  .mobile-compact-summary .mobile-summary-progress{
    grid-area:bar!important;
    padding:10px 12px 7px!important;
    background:#15171C!important;
  }

  .mobile-compact-summary .mobile-summary-rail{
    height:14px!important;
    border-radius:999px!important;
    background:var(--ap-track)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.035),
      inset 0 -1px 0 rgba(0,0,0,.22)!important;
  }

  .mobile-compact-summary .mobile-summary-item{
    min-height:28px!important;
    padding:2px 12px 8px!important;
    display:flex!important;
    align-items:baseline!important;
    gap:6px!important;
    background:#15171C!important;
  }

  .mobile-compact-summary .mobile-summary-item.used{
    grid-area:used!important;
    justify-content:flex-start!important;
  }

  .mobile-compact-summary .mobile-summary-item.remaining{
    grid-area:remain!important;
    justify-content:flex-end!important;
    border-left:0!important;
  }

  .mobile-compact-summary .mobile-summary-item .k{
    font-size:11px!important;
    line-height:1!important;
    margin:0!important;
    color:#858A95!important;
    font-weight:750!important;
    white-space:nowrap!important;
  }

  .mobile-compact-summary .mobile-summary-item .v{
    font-size:16px!important;
    line-height:1!important;
    margin:0!important;
    font-weight:850!important;
    white-space:nowrap!important;
  }

  /* Docked: text disappears, but the capacity rail keeps enough visual presence. */
  .mobile-compact-summary.is-docked .mobile-summary-progress{
    padding:8px 10px!important;
  }

  .mobile-compact-summary.is-docked .mobile-summary-rail{
    height:12px!important;
  }

  .mobile-compact-summary.is-docked .mobile-summary-item{
    min-height:0!important;
    max-height:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    opacity:0!important;
    overflow:hidden!important;
  }

  /* Make the storage bar itself the hero; no extra tall empty shell. */
  .mobile-compact-summary.is-docked{
    min-height:0!important;
  }
}

@media(max-width:430px){
  .mobile-compact-summary .mobile-summary-progress{
    padding:9px 10px 6px!important;
  }
  .mobile-compact-summary .mobile-summary-rail{
    height:13px!important;
  }
  .mobile-compact-summary .mobile-summary-item{
    padding:2px 10px 7px!important;
  }
  .mobile-compact-summary .mobile-summary-item .k{
    font-size:10px!important;
  }
  .mobile-compact-summary .mobile-summary-item .v{
    font-size:15px!important;
  }
  .mobile-compact-summary.is-docked .mobile-summary-rail{
    height:11px!important;
  }
}

/* === SOURCE: css/036-v345-mobile-star-333-style.css === */

@media(max-width:760px){
  /* Keep the longer mobile labels but use the roomier 3.3.3 style layout. */
  .special-inline{
    grid-template-columns:72px minmax(0,1fr) 48px!important;
    gap:8px!important;
    align-items:center!important;
  }
  .special-inline-name{
    font-size:var(--m-fs-primary)!important;
    line-height:1!important;
    font-weight:700!important;
    color:#c5c5ca!important;
    white-space:nowrap!important;
  }
  .special-inline-controls{
    min-width:0!important;
  }
  .star-rating-row{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
  }
  .star-rate-btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:34px!important;
    padding:0 8px!important;
    border-radius:12px!important;
    font-size:12px!important;
    line-height:34px!important;
    justify-content:center!important;
  }
  .special-inline-cost{
    width:48px!important;
    justify-self:end!important;
    text-align:right!important;
    font-size:10px!important;
    font-weight:800!important;
  }

  /* Mobile model select: thinner restrained gold line + centered selected value. */
  #modelSelect{
    border:1px solid rgba(208,173,88,.36)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
    text-align:center!important;
    text-align-last:center!important;
    padding-left:28px!important;
    padding-right:28px!important;
  }
  #modelSelect:hover{
    border-color:rgba(208,173,88,.44)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.022)!important;
  }
  #modelSelect:focus,
  #modelSelect:focus-visible{
    border-color:rgba(224,190,102,.54)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 0 0 1px rgba(208,173,88,.04)!important;
  }
}

@media(max-width:430px){
  .special-inline{
    grid-template-columns:68px minmax(0,1fr) 44px!important;
    gap:7px!important;
  }
  .star-rating-row{gap:5px!important;}
  .star-rate-btn{
    height:33px!important;
    border-radius:11px!important;
    font-size:11px!important;
    line-height:33px!important;
    padding:0 6px!important;
  }
  .special-inline-cost{
    width:44px!important;
    font-size:10px!important;
  }
}

@media(max-width:390px){
  .special-inline{
    grid-template-columns:64px minmax(0,1fr) 40px!important;
    gap:6px!important;
  }
  .star-rating-row{gap:4px!important;}
  .star-rate-btn{
    height:32px!important;
    border-radius:11px!important;
    font-size:11px!important;
    line-height:32px!important;
    padding:0 5px!important;
  }
  .special-inline-cost{
    width:40px!important;
    font-size:9px!important;
  }
}

@media(max-width:360px){
  .special-inline{
    grid-template-columns:60px minmax(0,1fr) 36px!important;
    gap:5px!important;
  }
  .special-inline-name{
    font-size:14px!important;
  }
  .star-rate-btn{
    height:30px!important;
    border-radius:10px!important;
    font-size:10px!important;
    line-height:30px!important;
    padding:0 4px!important;
  }
  .special-inline-cost{
    width:36px!important;
    font-size:9px!important;
  }
}

/* === SOURCE: css/037-v349-full-archetype-logos.css === */

/* One icon-capable archetype picker for PC + mobile. Native select stays as data source. */
#modelSelect{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  clip:rect(0,0,0,0)!important;
}
.model-panel{position:relative;overflow:visible!important}
.mobile-model-picker{display:block;position:relative;min-width:0;width:100%}
.mobile-model-trigger{
  position:relative;
  width:100%;
  height:44px;
  padding:0 46px 0 18px;
  border:1px solid rgba(208,173,88,.30);
  border-radius:14px;
  background:#111113;
  color:#f0f0ee;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
  font-size:var(--fs-label);
  font-weight:600;
  text-align:center;
  overflow:hidden;
}
.mobile-model-trigger-content{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-width:0;
}
.mobile-model-trigger-icon{width:24px;height:24px;object-fit:contain;flex:0 0 auto;opacity:.96}
.mobile-model-trigger-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-model-trigger-chevron{
  position:absolute;right:14px;top:50%;transform:translateY(-52%);
  color:#d8dce1;font-size:18px;font-weight:500;pointer-events:none
}
.mobile-model-picker.open .mobile-model-trigger{
  border-color:rgba(224,190,102,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 0 0 1px rgba(208,173,88,.04)
}
.mobile-model-menu{
  position:absolute;z-index:120;left:0;right:0;top:calc(100% + 7px);
  max-height:min(62vh,480px);overflow:auto;padding:7px;
  border:1px solid rgba(255,255,255,.09);border-radius:14px;
  background:rgba(14,17,21,.985);box-shadow:0 16px 38px rgba(0,0,0,.48);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  opacity:0;visibility:hidden;transform:translateY(-4px) scale(.99);transform-origin:top center;
  transition:opacity .12s ease,transform .12s ease,visibility .12s ease
}
.mobile-model-picker.open .mobile-model-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.mobile-model-group{
  padding:8px 10px 5px;color:#727b86;font-size:10px;font-weight:800;letter-spacing:.08em;text-align:left
}
.mobile-model-option{
  width:100%;min-height:40px;padding:0 10px;border:0;border-radius:9px;background:transparent;
  color:#e8ebef;display:flex;align-items:center;justify-content:flex-start;text-align:left;
  font-size:13px;font-weight:600
}
.mobile-model-option + .mobile-model-option{margin-top:1px}
.mobile-model-option:hover{background:rgba(255,255,255,.045)}
.mobile-model-option.selected{background:rgba(210,174,87,.10);color:#efd58f}
.mobile-model-option-inner{display:flex;align-items:center;gap:10px;width:100%;min-width:0}
.mobile-model-option-icon{width:22px;height:22px;object-fit:contain;flex:0 0 auto;opacity:.96}
.mobile-model-option-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:760px){
  .mobile-model-trigger{
    height:38px;padding:0 34px 0 14px;border-radius:var(--radius-control);
    border-color:rgba(208,173,88,.28);font-size:var(--m-fs-control)
  }
  .mobile-model-trigger-content{gap:8px}
  .mobile-model-trigger-icon{width:20px;height:20px}
  .mobile-model-trigger-chevron{right:11px;font-size:18px}
  .mobile-model-menu{top:calc(100% + 6px);max-height:min(58vh,420px);padding:6px;border-radius:14px}
  .mobile-model-group{padding:7px 9px 5px;font-size:10px}
  .mobile-model-option{min-height:38px;padding:0 9px;font-size:14px}
  .mobile-model-option-inner{gap:9px}
  .mobile-model-option-icon{width:19px;height:19px}
}

/* === SOURCE: css/038-v3410-logo-safe-mobile-overlay.css === */

/* Give every logo its own safety box. This prevents visual cropping even when
   individual source artwork reaches close to its transparent-canvas edge. */
.archetype-icon-safe{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible!important;
}
.archetype-icon-safe.option-safe{
  width:26px;
  height:26px;
  flex-basis:26px;
}
.mobile-model-trigger-icon,
.mobile-model-option-icon{
  display:block;
  width:88%!important;
  height:88%!important;
  max-width:88%!important;
  max-height:88%!important;
  object-fit:contain!important;
  object-position:center!important;
  flex:0 0 auto!important;
  overflow:visible!important;
  transform:none!important;
}

/* Also allow the icon row itself to breathe. */
.mobile-model-option-inner,
.mobile-model-trigger-content{
  overflow:visible!important;
}

/* Menu can open either inside the picker (desktop) or as a body-level portal
   (mobile). Both states use the same visual appearance. */
.mobile-model-menu.is-open{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
}

@media(max-width:760px){
  .model-panel,
  .sidebar,
  .workspace,
  .shell{
    overflow:visible!important;
  }

  .model-panel:has(.mobile-model-picker.open),
  .mobile-model-picker.open{
    position:relative!important;
    z-index:99990!important;
  }

  .archetype-icon-safe{
    width:24px;
    height:24px;
    flex-basis:24px;
  }
  .archetype-icon-safe.option-safe{
    width:23px;
    height:23px;
    flex-basis:23px;
  }

  /* The dropdown is physically moved under <body> while open, so no card,
     sticky dock, backdrop-filter or parent stacking context can cover it. */
  .mobile-model-menu.model-menu-portaled{
    position:fixed!important;
    z-index:99999!important;
    right:auto!important;
    margin:0!important;
    transform-origin:top center!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
}

/* === SOURCE: css/039-v3411-mobile-sticky-reset.css === */

.mobile-sticky-reset-btn{display:none}

@media(max-width:760px){
  .mobile-sticky-controls .attribute-tools{
    position:relative;
    display:grid!important;
    grid-template-columns:minmax(0,1.38fr) minmax(0,1.05fr) 62px!important;
    gap:6px!important;
    align-items:stretch!important;
  }

  .mobile-sticky-controls .view-switch-row,
  .mobile-sticky-controls .cost-help,
  .mobile-sticky-reset-btn{
    min-width:0!important;
    min-height:46px!important;
    height:46px!important;
    border-radius:14px!important;
  }

  .mobile-sticky-controls .view-switch-row{
    padding:0 9px!important;
    gap:6px!important;
  }

  .mobile-sticky-controls .tool-title{
    font-size:11px!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
  }

  .mobile-sticky-controls .ios-switch{
    width:36px!important;
    height:22px!important;
  }
  .mobile-sticky-controls .switch-thumb{
    width:16px!important;
    height:16px!important;
    top:2px!important;
    left:2px!important;
  }
  .mobile-sticky-controls .ios-switch input:checked + .switch-track .switch-thumb{
    transform:translateX(14px)!important;
  }

  .mobile-sticky-controls .cost-help{
    overflow:visible!important;
  }

  .mobile-sticky-controls .cost-help summary{
    min-height:46px!important;
    height:46px!important;
    padding:0 9px!important;
    gap:5px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }

  .mobile-sticky-controls .cost-help-chevron{
    font-size:15px!important;
    flex:0 0 auto!important;
  }

  /* Keep the second-row width compact, but let the help body open full-width
     below the row so its explanatory content doesn't get squeezed. */
  .mobile-sticky-controls .cost-help-body{
    position:absolute!important;
    z-index:18!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 6px)!important;
    padding:10px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:14px!important;
    background:rgba(13,18,25,.98)!important;
    box-shadow:0 14px 34px rgba(0,0,0,.34)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }

  .mobile-sticky-reset-btn{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    padding:0;
    border:1px solid rgba(255,255,255,.07);
    background:rgba(15,21,29,.58);
    color:#a7afb8;
    box-shadow:0 10px 24px rgba(0,0,0,.14);
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }

  .mobile-sticky-reset-icon{
    color:#d2bb78;
    font-size:17px;
    line-height:1;
    font-weight:500;
  }

  .mobile-sticky-reset-label{
    font-size:9px;
    line-height:1;
    font-weight:500;
    color:#969faa;
  }

  .mobile-sticky-reset-btn:active{
    transform:scale(.97);
    background:rgba(210,174,87,.055);
    border-color:rgba(210,174,87,.20);
  }

  .mobile-sticky-controls.is-docked .mobile-sticky-reset-btn{
    background:rgba(15,21,29,.93);
    box-shadow:0 8px 20px rgba(0,0,0,.22);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
  }
}

@media(max-width:430px){
  .mobile-sticky-controls .attribute-tools{
    grid-template-columns:minmax(0,1.45fr) minmax(0,.98fr) 56px!important;
    gap:5px!important;
  }
  .mobile-sticky-controls .view-switch-row,
  .mobile-sticky-controls .cost-help,
  .mobile-sticky-reset-btn{
    min-height:44px!important;
    height:44px!important;
    border-radius:13px!important;
  }
  .mobile-sticky-controls .cost-help summary{
    min-height:44px!important;
    height:44px!important;
    padding:0 7px!important;
    font-size:10px!important;
  }
  .mobile-sticky-controls .view-switch-row{
    padding:0 7px!important;
  }
  .mobile-sticky-controls .tool-title{
    font-size:10px!important;
  }
  .mobile-sticky-controls .ios-switch{
    width:34px!important;
    height:21px!important;
  }
  .mobile-sticky-controls .switch-thumb{
    width:15px!important;
    height:15px!important;
  }
  .mobile-sticky-controls .ios-switch input:checked + .switch-track .switch-thumb{
    transform:translateX(13px)!important;
  }
  .mobile-sticky-reset-icon{font-size:16px}
  .mobile-sticky-reset-label{font-size:8px}
}

/* === SOURCE: css/040-v350-ut-similarity-demo.css === */

.ut-sim-panel{display:none}

@media(min-width:761px){
  .ut-sim-panel{
    display:block;
    margin-top:12px;
    padding:12px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:18px;
    background:rgba(16,21,28,.66);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  }

  .ut-sim-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    margin-bottom:10px;
  }

  .ut-sim-title{
    font-size:13px;
    font-weight:800;
    color:#eef1f4;
  }

  .ut-sim-sub{
    margin-top:3px;
    font-size:9px;
    color:#737d88;
  }

  .ut-sim-demo-badge{
    padding:3px 6px;
    border:1px solid rgba(210,174,87,.22);
    border-radius:999px;
    color:#cbb477;
    background:rgba(210,174,87,.06);
    font-size:8px;
    font-weight:850;
    letter-spacing:.07em;
  }

  .ut-sim-mode{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
    padding:3px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:11px;
    background:rgba(0,0,0,.15);
  }

  .ut-mode-btn{
    height:30px;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#858f9a;
    font-size:10px;
    font-weight:750;
  }

  .ut-mode-btn.active{
    background:rgba(210,174,87,.11);
    color:#ddc27d;
    box-shadow:inset 0 0 0 1px rgba(210,174,87,.16);
  }

  .ut-sim-rule{
    margin:8px 2px;
    color:#76808a;
    font-size:9px;
    line-height:1.35;
    text-align:center;
  }

  .ut-match-btn{
    width:100%;
    height:34px;
    border:1px solid rgba(210,174,87,.26);
    border-radius:11px;
    background:rgba(210,174,87,.065);
    color:#e2ca88;
    font-size:10px;
    font-weight:800;
  }

  .ut-match-btn:hover{
    border-color:rgba(210,174,87,.40);
    background:rgba(210,174,87,.09);
  }

  .ut-match-result{
    margin-top:10px;
  }

  .ut-match-empty{
    min-height:44px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    padding:8px;
    border:1px dashed rgba(255,255,255,.06);
    border-radius:11px;
    color:#717b85;
    font-size:9px;
    text-align:center;
  }

  .ut-match-empty strong{
    color:#9da6af;
    font-size:10px;
  }

  .ut-match-kicker{
    margin-bottom:5px;
    color:#707a84;
    font-size:8px;
    font-weight:800;
    letter-spacing:.04em;
  }

  .ut-top-match{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 42px;
    gap:8px;
    align-items:center;
    padding:9px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:13px;
    background:rgba(255,255,255,.025);
    text-decoration:none;
    color:inherit;
  }

  .ut-top-match:hover{
    border-color:rgba(210,174,87,.18);
    background:rgba(210,174,87,.035);
  }

  .ut-top-rating{
    width:38px;
    height:42px;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:linear-gradient(180deg,rgba(210,174,87,.18),rgba(210,174,87,.07));
    border:1px solid rgba(210,174,87,.25);
    color:#e4ca84;
    font-size:18px;
    font-weight:900;
  }

  .ut-top-copy{
    min-width:0;
  }

  .ut-top-name{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#f0f2f5;
    font-size:11px;
    font-weight:800;
  }

  .ut-top-meta{
    margin-top:4px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#7d8791;
    font-size:8px;
  }

  .ut-top-score{
    text-align:right;
  }

  .ut-top-score strong{
    display:block;
    color:#76d08f;
    font-size:15px;
    line-height:1;
  }

  .ut-top-score span{
    display:block;
    margin-top:4px;
    color:#737d87;
    font-size:8px;
  }

  .ut-match-metrics{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:4px;
    margin-top:5px;
  }

  .ut-match-metrics span{
    padding:5px 3px;
    border-radius:8px;
    background:rgba(255,255,255,.022);
    color:#68727c;
    font-size:8px;
    text-align:center;
  }

  .ut-match-metrics b{
    color:#cbd1d7;
    font-weight:800;
  }

  .ut-alt-list{
    margin-top:6px;
    border-top:1px solid rgba(255,255,255,.045);
  }

  .ut-alt-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:6px;
    align-items:center;
    min-height:29px;
    text-decoration:none;
    color:#8d97a1;
    font-size:8px;
    border-bottom:1px solid rgba(255,255,255,.035);
  }

  .ut-alt-row span:first-child{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#b8c0c8;
  }

  .ut-alt-row b{
    color:#a9cdb2;
  }

  .ut-demo-note{
    margin-top:7px;
    color:#5f6872;
    font-size:7px;
    text-align:center;
  }

  .ut-sim-panel.disabled .ut-sim-mode,
  .ut-sim-panel.disabled .ut-sim-rule,
  .ut-sim-panel.disabled .ut-match-btn{
    opacity:.35;
    pointer-events:none;
  }
}

/* === SOURCE: css/041-v351-ea-official-db.css === */

@media(min-width:761px){
  .ut-db-line{
    display:grid;
    grid-template-columns:7px minmax(0,1fr) auto;
    gap:6px;
    align-items:center;
    min-height:25px;
    margin:7px 1px;
    padding:0 5px;
    border-radius:8px;
    background:rgba(255,255,255,.018);
  }

  .ut-db-dot{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#5e6771;
    box-shadow:0 0 0 2px rgba(94,103,113,.10);
  }
  .ut-db-dot.loading{
    background:#d1ad57;
    box-shadow:0 0 0 2px rgba(209,173,87,.12);
    animation:utDbPulse 1s ease-in-out infinite;
  }
  .ut-db-dot.ready{
    background:#62ba80;
    box-shadow:0 0 0 2px rgba(98,186,128,.12);
  }
  .ut-db-dot.error{
    background:#b85d5a;
    box-shadow:0 0 0 2px rgba(184,93,90,.12);
  }

  @keyframes utDbPulse{
    0%,100%{opacity:.5}
    50%{opacity:1}
  }

  .ut-db-status-text{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#707a84;
    font-size:8px;
  }

  .ut-db-refresh{
    border:0;
    background:transparent;
    color:#83745b;
    padding:2px 3px;
    font-size:8px;
    font-weight:700;
  }
  .ut-db-refresh:hover{color:#d5bc7b}

  .ut-match-btn:disabled{
    cursor:wait;
    opacity:.68;
  }
}

/* === SOURCE: css/042-v352-similar-player-drawer.css === */

/* ===== PC post-build actions ===== */
.post-build-tools{display:none}

@media(min-width:761px){
  .post-build-tools{
    display:grid;
    grid-template-columns:minmax(0,1.22fr) minmax(0,.92fr);
    gap:7px;
    min-height:38px;
  }

  .post-build-action{
    min-width:0;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:12px;
    background:rgba(18,21,26,.72);
    color:#aeb6bf;
    font-size:10px;
    font-weight:750;
    letter-spacing:.01em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.022);
  }

  .similarity-action{
    border-color:rgba(210,174,87,.16);
    color:#d8dde2;
  }
  .similarity-action:hover{
    border-color:rgba(210,174,87,.32);
    background:rgba(210,174,87,.045);
    color:#f0f2f4;
  }

  .post-build-beta{
    display:inline-flex;
    align-items:center;
    height:15px;
    padding:0 5px;
    border-radius:999px;
    border:1px solid rgba(210,174,87,.13);
    background:rgba(210,174,87,.045);
    color:#9f916f;
    font-size:6.5px;
    line-height:1;
    letter-spacing:.08em;
    font-weight:850;
  }

  .player-card-action{
    color:#727c86;
    background:rgba(15,18,22,.52);
    cursor:default;
  }
}

/* ===== Drawer ===== */
.ut-drawer-backdrop{
  position:fixed;
  inset:0;
  z-index:99970;
  background:rgba(0,0,0,.42);
  opacity:0;
  pointer-events:none;
  transition:opacity .20s ease;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}

.ut-drawer-backdrop.open{
  opacity:1;
  pointer-events:auto;
}

.ut-sim-drawer{
  position:fixed;
  z-index:99980;
  top:0;
  right:0;
  width:min(420px,calc(100vw - 28px));
  height:100vh;
  transform:translateX(104%);
  transition:transform .24s cubic-bezier(.22,.8,.24,1);
  background:
    radial-gradient(circle at 82% 8%,rgba(210,174,87,.045),transparent 24%),
    linear-gradient(180deg,rgba(16,20,26,.99),rgba(9,12,17,.995));
  border-left:1px solid rgba(255,255,255,.085);
  box-shadow:-28px 0 70px rgba(0,0,0,.42);
  overflow:hidden;
}

.ut-sim-drawer.open{transform:translateX(0)}
body.ut-drawer-open{overflow:hidden}

.ut-drawer-head{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:0 22px;
  border-bottom:1px solid rgba(255,255,255,.06);
}

.ut-drawer-title-wrap{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.ut-drawer-title{
  color:#eef1f4;
  font-size:17px;
  font-weight:820;
  letter-spacing:-.02em;
}

.ut-drawer-beta{
  display:inline-flex;
  align-items:center;
  height:17px;
  padding:0 6px;
  border:1px solid rgba(210,174,87,.14);
  border-radius:999px;
  background:rgba(210,174,87,.045);
  color:#9d906f;
  font-size:7px;
  font-weight:850;
  letter-spacing:.08em;
}

.ut-drawer-close{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  padding:0 0 2px;
  border:1px solid rgba(255,255,255,.065);
  border-radius:10px;
  background:rgba(255,255,255,.025);
  color:#7f8994;
  font-size:20px;
  font-weight:300;
}
.ut-drawer-close:hover{
  color:#d9dee3;
  background:rgba(255,255,255,.045);
}

.ut-drawer-body{
  height:calc(100vh - 76px);
  overflow:auto;
  padding:18px 20px 30px;
}

.ut-drawer-mode{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  padding:4px;
  border:1px solid rgba(255,255,255,.065);
  border-radius:13px;
  background:rgba(0,0,0,.18);
}

.ut-drawer-mode-btn{
  height:38px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#76808a;
  font-size:11px;
  font-weight:760;
  transition:.15s ease;
}

.ut-drawer-mode-btn.active{
  background:rgba(210,174,87,.105);
  color:#e1ca8a;
  box-shadow:inset 0 0 0 1px rgba(210,174,87,.16);
}

.ut-generate-btn{
  width:100%;
  height:45px;
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(210,174,87,.28);
  border-radius:13px;
  background:
    linear-gradient(180deg,rgba(210,174,87,.11),rgba(210,174,87,.055));
  color:#e5cd8b;
  font-size:12px;
  font-weight:820;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 10px 28px rgba(0,0,0,.12);
}
.ut-generate-btn:hover{
  border-color:rgba(210,174,87,.40);
  background:linear-gradient(180deg,rgba(210,174,87,.15),rgba(210,174,87,.075));
}
.ut-generate-btn:disabled{
  cursor:wait;
  opacity:.58;
}
.ut-generate-icon{
  color:#f0d994;
  font-size:13px;
}

.ut-drawer-result{
  margin-top:16px;
  min-height:250px;
}

.ut-result-idle{
  height:230px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  opacity:.42;
}
.ut-result-idle span{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#665d49;
}
.ut-result-idle span:nth-child(2){
  width:7px;
  height:7px;
  background:#8a7953;
}
.ut-result-idle span:nth-child(3){
  background:#665d49;
}

.ut-generation-loading{
  min-height:250px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:19px;
}

.ut-generation-orbit{
  position:relative;
  width:62px;
  height:62px;
  border:1px solid rgba(210,174,87,.11);
  border-radius:50%;
  animation:utOrbitRotate 2.1s linear infinite;
}
.ut-generation-orbit::before{
  content:"";
  position:absolute;
  inset:8px;
  border:1px solid rgba(255,255,255,.045);
  border-radius:50%;
}
.ut-generation-orbit i{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#c1a55d;
  box-shadow:0 0 15px rgba(193,165,93,.18);
}
.ut-generation-orbit i:nth-child(1){left:27px;top:-3px}
.ut-generation-orbit i:nth-child(2){right:1px;bottom:8px;opacity:.55}
.ut-generation-orbit i:nth-child(3){left:3px;bottom:8px;opacity:.30}

@keyframes utOrbitRotate{to{transform:rotate(360deg)}}

.ut-generation-status{
  color:#89939d;
  font-size:11px;
  font-weight:650;
  letter-spacing:.01em;
}

.ut-generation-error{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#818b95;
  font-size:11px;
  text-align:center;
}
.ut-generation-error>span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(184,93,90,.20);
  background:rgba(184,93,90,.055);
  color:#b87976;
}

.ut-result-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:7px;
  color:#68727c;
  font-size:8px;
  font-weight:760;
  letter-spacing:.045em;
  text-transform:uppercase;
}

.ut-result-hero{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 58px;
  gap:12px;
  align-items:center;
  min-height:82px;
  padding:12px;
  border:1px solid rgba(210,174,87,.14);
  border-radius:17px;
  background:
    radial-gradient(circle at 12% 50%,rgba(210,174,87,.08),transparent 30%),
    rgba(255,255,255,.026);
  text-decoration:none;
  color:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.ut-result-hero:hover{
  border-color:rgba(210,174,87,.27);
  background:
    radial-gradient(circle at 12% 50%,rgba(210,174,87,.11),transparent 31%),
    rgba(255,255,255,.034);
}

.ut-result-rating{
  width:58px;
  height:58px;
  border-radius:15px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(210,174,87,.22);
  background:linear-gradient(180deg,rgba(210,174,87,.16),rgba(210,174,87,.055));
}
.ut-result-rating strong{
  color:#ead08b;
  font-size:23px;
  line-height:1;
  font-weight:900;
}
.ut-result-rating span{
  margin-top:5px;
  color:#99885d;
  font-size:8px;
  font-weight:800;
}

.ut-result-copy{min-width:0}
.ut-result-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#f0f3f5;
  font-size:14px;
  font-weight:830;
}
.ut-result-meta{
  margin-top:6px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#75808b;
  font-size:8px;
}

.ut-result-score{text-align:right}
.ut-result-score strong{
  display:block;
  color:#70c489;
  font-size:18px;
  line-height:1;
  font-weight:900;
}
.ut-result-score span{
  display:block;
  margin-top:5px;
  color:#65707a;
  font-size:8px;
}

.ut-core-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:9px;
}
.ut-core-tags span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:#9ca6af;
  font-size:8px;
  font-weight:680;
}

.ut-other-results{
  margin-top:14px;
  border-top:1px solid rgba(255,255,255,.05);
}
.ut-other-row{
  min-height:43px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 40px;
  gap:10px;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.04);
  text-decoration:none;
  color:#7e8993;
  font-size:9px;
}
.ut-other-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#bdc5cc;
  font-size:10px;
  font-weight:700;
}
.ut-other-meta{white-space:nowrap}
.ut-other-row strong{
  color:#83b892;
  text-align:right;
  font-size:10px;
}

@media(max-width:760px){
  .post-build-tools,
  .ut-drawer-backdrop,
  .ut-sim-drawer{
    display:none!important;
  }
}

/* === SOURCE: css/043-v364-compact-similarity.css === */

.ut-db-readyline{display:flex;align-items:center;justify-content:center;gap:7px;min-height:26px;margin-top:7px;color:#6f7a84;font-size:8px;font-weight:680;letter-spacing:.02em}
.ut-db-ready-dot{width:6px;height:6px;border-radius:50%;background:#65bd82;box-shadow:0 0 0 3px rgba(101,189,130,.08)}
.ut-compact-list{display:grid;gap:8px;margin-top:12px}
.ut-compact-player{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:stretch;padding:10px 11px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018))}
.ut-compact-player.is-top{border-color:rgba(219,184,95,.28);background:linear-gradient(180deg,rgba(219,184,95,.075),rgba(255,255,255,.018));box-shadow:inset 0 0 0 1px rgba(219,184,95,.04)}
.ut-compact-rank{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.055);color:#78838d;font-size:11px;font-weight:850}.ut-compact-player.is-top .ut-compact-rank{color:#d6b86c;background:rgba(214,184,108,.09)}
.ut-compact-main{min-width:0}.ut-compact-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}.ut-compact-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#edf2f6;font-size:13px;font-weight:820}.ut-compact-meta{display:flex;align-items:baseline;gap:5px;color:#9aa5af}.ut-compact-meta strong{font-size:15px;color:#eef2f5}.ut-compact-meta span{font-size:9px;font-weight:800;letter-spacing:.06em}.ut-compact-score{display:flex;align-items:baseline;gap:4px;min-width:58px;justify-content:flex-end}.ut-compact-score strong{font-size:14px;color:#d8bd78}.ut-compact-score span{font-size:7px;color:#6f7b85}
.ut-compact-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:8px}.ut-compact-stat{display:flex;align-items:baseline;justify-content:center;gap:4px;padding:5px 4px;border-radius:8px;background:rgba(255,255,255,.028)}.ut-compact-stat span{font-size:7px;color:#69757f;font-weight:800;letter-spacing:.04em}.ut-compact-stat strong{font-size:11px;color:#c8d0d6}
.ut-official-footnote{margin-top:12px;color:#58636d;font-size:7.5px;line-height:1.45;text-align:center}
@media(max-width:560px){.ut-compact-head{grid-template-columns:minmax(0,1fr) auto}.ut-compact-score{grid-column:1/-1;justify-content:flex-start}.ut-compact-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* === SOURCE: css/044-v4110e-perk-description-text.css === */

.specialization-card,
.specialization-card.base-card{
  min-height:660px!important;
  height:auto!important;
}
.spec-info-block .signature-style + small{line-height:1.35}
.spec-perk-list.rich-list{gap:7px!important}
.spec-perk-row.rich{
  min-height:unset!important;
  align-items:stretch!important;
  padding:9px 10px!important;
}
.spec-perk-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.spec-perk-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.spec-perk-top span{display:block;min-width:0;color:#cdd5dc;font-size:10px;font-weight:800;line-height:1.25}
.spec-perk-top b{flex:0 0 auto;color:#85919c;font-size:8px;font-weight:800}
.spec-perk-desc{display:block;color:#7e8a95;font-size:8.5px;line-height:1.4;letter-spacing:.01em}
.spec-reward-row.perk-rich{align-items:stretch}
.spec-reward-row.perk-rich>div{display:flex;flex-direction:column;justify-content:flex-start}
.spec-reward-row.perk-rich strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.28}
.spec-reward-row .spec-reward-desc{display:block;margin-top:4px;color:#7f8a95;font-size:8px;line-height:1.4}
@media (max-width:1600px){
  .specialization-card,.specialization-card.base-card{min-height:642px!important}
}
@media (max-width:1360px){
  .specialization-card,.specialization-card.base-card{min-height:628px!important}
}
@media (max-width:760px){
  .specialization-card,.specialization-card.base-card{min-height:0!important;height:auto!important}
  .spec-perk-row.rich{padding:8px 9px!important}
  .spec-perk-top span{font-size:11px}
  .spec-perk-desc{font-size:9px}
  .spec-reward-row .spec-reward-desc{font-size:8.5px}
}


/* ===== SOURCE: css/stable-bundle-002.css ===== */
/* === SOURCE: css/045-v4110k-bugfix-tabs-dropdown.css === */

/* Independent Mastery / Facilities pages. */
#advancedPanel .advanced-grid{grid-template-columns:minmax(0,1fr)!important;}
#advancedPanel .advanced-card[hidden]{display:none!important;}
#advancedPanel .mastery-card{grid-column:auto!important;}

/* The archetype picker is portaled to body on desktop and mobile so the left
   scroll column cannot clip the final archetypes. */
.mobile-model-menu.model-menu-portaled{
  position:fixed!important;
  z-index:99999!important;
  right:auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}

/* The former top-level Advanced group no longer exists. */
.editor-advanced-group{display:none!important;}

/* === SOURCE: css/046-v4110k2-mastery-two-column.css === */

/* v4.1.10k2 · Mastery: compact two-column 7+6 layout on desktop. */
@media (min-width:1181px){
  #advancedPanel .mastery-card{
    width:100%;
  }
  #advancedPanel .mastery-list-head{
    display:none!important;
  }
  #advancedPanel .mastery-summary{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    padding:10px 14px!important;
  }
  #advancedPanel .mastery-summary>div{
    min-height:48px;
    padding:8px 11px!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  #advancedPanel .mastery-list{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(7,minmax(0,1fr))!important;
    grid-auto-flow:column!important;
    gap:7px 10px!important;
    padding:10px 12px 12px!important;
  }
  #advancedPanel .mastery-row{
    min-width:0;
    min-height:0;
    display:grid!important;
    grid-template-columns:minmax(108px,.72fr) minmax(0,1fr) minmax(0,.88fr)!important;
    gap:6px!important;
    align-items:stretch!important;
    padding:6px 7px!important;
    border:1px solid rgba(255,255,255,.055)!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.014);
    overflow:hidden;
  }
  #advancedPanel .mastery-row.current-model{
    border-color:rgba(213,177,73,.16)!important;
    background:linear-gradient(90deg,rgba(213,177,73,.065),rgba(255,255,255,.012) 60%)!important;
  }
  #advancedPanel .mastery-row.fully-mastered{
    border-color:rgba(215,181,90,.16)!important;
    background:linear-gradient(90deg,rgba(215,181,90,.075),rgba(215,181,90,.02) 48%,rgba(255,255,255,.01))!important;
  }
  #advancedPanel .mastery-model{
    gap:7px!important;
    padding:0 3px!important;
  }
  #advancedPanel .mastery-logo-shell{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
  #advancedPanel .mastery-logo-shell img{
    width:28px!important;
    height:28px!important;
  }
  #advancedPanel .mastery-model-copy strong{
    font-size:11px!important;
    line-height:1.12;
  }
  #advancedPanel .mastery-model-copy small{
    margin-top:2px!important;
    font-size:7.8px!important;
  }
  #advancedPanel .mastery-node{
    min-height:0!important;
    height:100%;
    padding:5px 7px!important;
    border-radius:10px!important;
    gap:2px!important;
  }
  #advancedPanel .mastery-node-level{
    font-size:8.5px!important;
    line-height:1.05;
  }
  #advancedPanel .mastery-node-stats{
    font-size:8.8px!important;
    line-height:1.22!important;
  }
}

/* Medium desktop/tablet: keep a single readable column rather than squeezing. */
@media (max-width:1180px) and (min-width:761px){
  #advancedPanel .mastery-list-head{display:none!important;}
  #advancedPanel .mastery-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:9px 10px 12px!important;
    overflow-y:auto!important;
  }
  #advancedPanel .mastery-row{
    border:1px solid rgba(255,255,255,.05)!important;
    border-radius:12px!important;
    padding:6px 7px!important;
  }
}

/* === SOURCE: css/047-v430-build-showcase-card.css === */

/* v4.3.0 · restrained FC-style Build showcase card */
@media(min-width:1500px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(205px,.70fr) minmax(275px,.84fr) minmax(430px,1.30fr) minmax(270px,.76fr)!important;
    gap:13px!important;
  }
}
@media(min-width:1100px) and (max-width:1499px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(185px,.62fr) minmax(245px,.78fr) minmax(360px,1.08fr) minmax(225px,.70fr)!important;
    gap:10px!important;
  }
}
.overview-showcase-column{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px 0;
  overflow:visible;
}
.fc-build-showcase-card{
  position:relative;
  width:min(100%,342px);
  aspect-ratio:576/800;
  isolation:isolate;
  filter:drop-shadow(0 22px 38px rgba(0,0,0,.34));
  font-variant-numeric:tabular-nums lining-nums;
}
.fc-build-card-frame{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  pointer-events:none;
}
.fc-build-card-player-stage{
  position:absolute;
  z-index:2;
  left:10.8%;
  right:9.4%;
  top:10.2%;
  height:55.5%;
  overflow:hidden;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
}
.fc-build-card-player{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  opacity:.985;
  filter:saturate(.94) contrast(1.045) brightness(.97);
  transform:scale(1.055);
  transform-origin:50% 48%;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 76%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 76%,transparent 100%);
}
.fc-build-card-player-fade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(7,7,8,.02) 0%,transparent 53%,rgba(7,8,10,.35) 72%,rgba(7,8,10,.96) 100%),
    linear-gradient(90deg,rgba(7,8,10,.28),transparent 16%,transparent 84%,rgba(7,8,10,.28));
}
.fc-build-card-level-lockup{
  position:absolute;
  z-index:4;
  left:17.5%;
  top:15.2%;
  min-width:74px;
  color:#ead58b;
  text-shadow:0 2px 10px rgba(0,0,0,.62);
}
.fc-build-card-level-lockup strong{
  display:block;
  font-size:clamp(17px,1.45vw,25px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.035em;
}
.fc-build-card-level-lockup span{
  display:block;
  margin-top:7px;
  color:#d4bf76;
  font-size:clamp(10px,.72vw,13px);
  line-height:1;
  font-weight:850;
  letter-spacing:.08em;
}
.fc-build-card-plus{
  position:absolute;
  z-index:5;
  left:5.3%;
  top:49.2%;
  width:49px;
  height:49px;
  transform:rotate(45deg);
  border:2px solid #d9bd63;
  background:linear-gradient(145deg,rgba(15,16,16,.98),rgba(38,31,12,.96));
  box-shadow:
    0 0 0 2px rgba(0,0,0,.78),
    0 0 0 3px rgba(222,192,96,.36),
    0 8px 18px rgba(0,0,0,.40);
}
.fc-build-card-plus::before{
  content:"";
  position:absolute;
  inset:4px;
  border:1px solid rgba(241,215,129,.45);
}
.fc-build-card-plus-inner{
  position:absolute;
  inset:6px;
  display:grid;
  place-items:center;
  transform:rotate(-45deg);
}
.fc-build-card-plus img{
  width:28px;
  height:28px;
  object-fit:contain;
  filter:sepia(1) saturate(1.25) brightness(1.28) drop-shadow(0 1px 3px rgba(0,0,0,.45));
}
.fc-build-card-plus span{
  display:none;
  color:#ead58b;
  font-size:10px;
  font-weight:900;
  letter-spacing:-.03em;
}
.fc-build-card-plus.is-silver{
  border-color:#c9d0d4;
  background:linear-gradient(145deg,rgba(17,20,23,.98),rgba(72,77,80,.90));
}
.fc-build-card-plus.is-silver::before{border-color:rgba(223,229,232,.38)}
.fc-build-card-plus.is-silver img{filter:grayscale(1) brightness(1.55) drop-shadow(0 1px 3px rgba(0,0,0,.45))}
.fc-build-card-plus.is-hidden{display:none}
.fc-build-card-identity{
  position:absolute;
  z-index:5;
  left:14%;
  right:10%;
  top:60.2%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  text-align:center;
  text-shadow:0 2px 9px rgba(0,0,0,.78);
}
.fc-build-card-logo{
  width:31px;
  height:31px;
  flex:0 0 31px;
  object-fit:contain;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.48));
}
.fc-build-card-identity.is-specialization .fc-build-card-logo{display:none}
.fc-build-card-name-lockup{min-width:0}
.fc-build-card-name-lockup strong{
  display:block;
  color:#ead58b;
  font-size:clamp(16px,1.20vw,22px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.035em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fc-build-card-name-lockup span{
  display:block;
  margin-top:4px;
  color:#c9b873;
  font-size:clamp(8px,.60vw,11px);
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fc-build-card-face-stats{
  position:absolute;
  z-index:5;
  left:12.4%;
  right:9.6%;
  top:70.5%;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1px;
}
.fc-build-card-face-stat{
  min-width:0;
  text-align:center;
  text-shadow:0 2px 7px rgba(0,0,0,.72);
}
.fc-build-card-face-stat span{
  display:block;
  color:#cdbb7e;
  font-size:clamp(7px,.50vw,10px);
  line-height:1;
  font-weight:800;
  letter-spacing:.025em;
}
.fc-build-card-face-stat strong{
  display:block;
  margin-top:5px;
  color:#ead58b;
  font-size:clamp(15px,1.10vw,21px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.025em;
}
@media(min-width:761px) and (max-width:1099px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(190px,.74fr) minmax(250px,.92fr) minmax(350px,1.26fr)!important;
  }
  .overview-showcase-column{grid-column:1/-1;padding:18px 0 2px}
  .fc-build-showcase-card{width:min(310px,38vw)}
}
@media(max-width:760px){
  .overview-showcase-column{padding:8px 0 2px}
  .fc-build-showcase-card{width:min(310px,88vw)}
  .fc-build-card-level-lockup strong{font-size:23px}
  .fc-build-card-level-lockup span{font-size:12px}
  .fc-build-card-name-lockup strong{font-size:20px}
  .fc-build-card-name-lockup span{font-size:10px}
  .fc-build-card-face-stat span{font-size:9px}
  .fc-build-card-face-stat strong{font-size:19px}
}


/* ===== SOURCE: css/stable-bundle-003.css ===== */
/* === SOURCE: css/048-v436-level-lockup-inset.css === */

/* v4.3.6 · pull Lv/position inward so it no longer touches the frame. */
body.build-overview-active .fc-build-card-level-lockup{
  left:19.8%!important;
  top:16.1%!important;
  min-width:70px!important;
}
body.build-overview-active .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.36vw,23px)!important;
}
body.build-overview-active .fc-build-card-level-lockup span{
  margin-top:6px!important;
}
@media(max-width:760px){
  body.build-overview-active .fc-build-card-level-lockup{left:20.2%!important; top:16.4%!important;}
  body.build-overview-active .fc-build-card-level-lockup strong{font-size:22px!important;}
}

/* === SOURCE: css/049-v437-build-card-refine-style.css === */

/* v4.3.7 · Build card polish based on user feedback */
body.build-overview-active .fc-build-card-logo{display:none!important;}
body.build-overview-active .fc-build-card-archetype-logo{
  display:block;
  width:34px;
  height:34px;
  margin-top:11px;
  object-fit:contain;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.42));
}
body.build-overview-active .fc-build-card-plus{
  left:0!important;
  top:52.2%!important;
  width:68px!important;
  height:68px!important;
  transform:translate(-50%,-50%)!important;
  background:linear-gradient(145deg,#f0d886,#b58d31)!important;
  border:1px solid rgba(249,226,142,.72)!important;
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)!important;
  box-shadow:0 0 12px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}
body.build-overview-active .fc-build-card-plus::before{
  content:"";
  position:absolute;
  inset:3px;
  border:1px solid rgba(255,245,200,.46);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
}
body.build-overview-active .fc-build-card-plus-inner{
  transform:none!important;
}
body.build-overview-active .fc-build-card-plus img{
  width:39px!important;
  height:39px!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  background:linear-gradient(145deg,#eceff2,#c6cbd1)!important;
  border-color:rgba(255,255,255,.48)!important;
}
body.build-overview-active .fc-build-card-plus.is-silver::before{
  border-color:rgba(255,255,255,.58)!important;
}
body.build-overview-active .fc-build-card-face-stats{
  left:14.4%!important;
  right:11.9%!important;
  top:74.2%!important;
}
body.build-overview-active .fc-build-card-face-stat span{
  font-size:clamp(9px,.60vw,11px)!important;
}
body.build-overview-active .fc-build-card-face-stat strong{
  margin-top:5px!important;
  font-size:clamp(18px,1.28vw,24px)!important;
}

/* === SOURCE: css/050-v438-build-card-layout-polish.css === */

/* v4.3.8 · badge shape, top-left lockup, horizontal handwritten name row */
body.build-overview-active .fc-build-card-level-lockup{
  left:16.8%!important;
  top:14.2%!important;
  min-width:96px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
}
body.build-overview-active .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.44vw,24px)!important;
  line-height:1!important;
}
body.build-overview-active .fc-build-card-level-lockup span{
  margin-top:8px!important;
  font-size:clamp(10px,.82vw,14px)!important;
  line-height:1!important;
}
body.build-overview-active .fc-build-card-archetype-logo{
  width:36px!important;
  height:36px!important;
  margin-top:10px!important;
}
body.build-overview-active .fc-build-card-plus{
  left:0!important;
  top:52.2%!important;
  width:76px!important;
  height:86px!important;
  transform:translate(-50%,-50%)!important;
  border:none!important;
  background:linear-gradient(180deg,#f4de94 0%,#dfbe58 100%)!important;
  clip-path:polygon(22% 0,78% 0,100% 31%,100% 55%,50% 100%,0 55%,0 31%)!important;
  box-shadow:0 0 12px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}
body.build-overview-active .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:3px!important;
  border:1px solid rgba(255,245,200,.48)!important;
  clip-path:polygon(22% 0,78% 0,100% 31%,100% 55%,50% 100%,0 55%,0 31%)!important;
}
body.build-overview-active .fc-build-card-plus img{
  width:36px!important;
  height:36px!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  background:linear-gradient(180deg,#eef2f5 0%,#c8ced5 100%)!important;
}
body.build-overview-active .fc-build-card-identity{
  left:14.6%!important;
  right:11.8%!important;
  top:63.0%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
body.build-overview-active .fc-build-card-name-lockup{
  min-width:0!important;
  max-width:100%!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:12px!important;
  flex-wrap:nowrap!important;
}
body.build-overview-active .fc-build-card-name-lockup strong,
body.build-overview-active .fc-build-card-name-lockup span{
  display:inline-block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 2px 9px rgba(0,0,0,.78)!important;
}
body.build-overview-active .fc-build-card-name-lockup strong{
  color:#ead58b!important;
  font-size:clamp(18px,1.34vw,24px)!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  font-family:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi",serif!important;
}
body.build-overview-active .fc-build-card-name-lockup span{
  color:#d9c47c!important;
  margin-top:0!important;
  font-size:clamp(17px,1.26vw,22px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  font-family:"Kaushan Script","Caveat","Segoe Script","Lucida Handwriting",cursive!important;
  text-transform:none!important;
}
body.build-overview-active .fc-build-card-face-stats{
  left:16.2%!important;
  right:13.7%!important;
  top:75.0%!important;
  column-gap:1px!important;
}
body.build-overview-active .fc-build-card-face-stat span{
  font-size:clamp(10px,.68vw,12px)!important;
  letter-spacing:.02em!important;
}
body.build-overview-active .fc-build-card-face-stat strong{
  margin-top:4px!important;
  font-size:clamp(19px,1.36vw,25px)!important;
}
@media(max-width:760px){
  body.build-overview-active .fc-build-card-level-lockup{left:17.6%!important;top:14.5%!important;min-width:84px!important;}
  body.build-overview-active .fc-build-card-plus{width:70px!important;height:80px!important;}
  body.build-overview-active .fc-build-card-name-lockup{gap:9px!important;}
}

/* === SOURCE: css/051-v439-playstyleplus-fcpro-style.css === */

/* v4.3.9 · PlayStyle+ badge restyled to match fcpro.club shell more closely */
body.build-overview-active .fc-build-card-plus{
  left:-0.4%!important;
  top:52.4%!important;
  width:78px!important;
  height:86px!important;
  transform:translate(-50%,-50%)!important;
  border:none!important;
  background:linear-gradient(180deg,#f4df98 0%,#e2c45e 58%,#d2ac3a 100%)!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  box-shadow:0 6px 14px rgba(0,0,0,.24), 0 0 0 1px rgba(233,208,120,.34) inset!important;
  overflow:hidden!important;
}
body.build-overview-active .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  background:linear-gradient(180deg,rgba(255,248,214,.35) 0%,rgba(255,248,214,.12) 28%,rgba(0,0,0,.05) 100%)!important;
  border:none!important;
}
body.build-overview-active .fc-build-card-plus::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  box-shadow:inset 0 0 0 1.5px rgba(120,82,12,.20), inset 0 -10px 16px rgba(115,82,19,.08)!important;
}
body.build-overview-active .fc-build-card-plus-inner{
  transform:none!important;
  position:relative!important;
  z-index:1!important;
}
body.build-overview-active .fc-build-card-plus img{
  width:34px!important;
  height:34px!important;
  object-fit:contain!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  background:linear-gradient(180deg,#eef2f5 0%,#d7dde3 55%,#bec6cf 100%)!important;
  box-shadow:0 6px 14px rgba(0,0,0,.22), 0 0 0 1px rgba(255,255,255,.26) inset!important;
}
body.build-overview-active .fc-build-card-plus.is-silver::before{
  background:linear-gradient(180deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.10) 30%,rgba(0,0,0,.04) 100%)!important;
}
body.build-overview-active .fc-build-card-plus.is-silver::after{
  box-shadow:inset 0 0 0 1.5px rgba(71,81,94,.16), inset 0 -10px 16px rgba(71,81,94,.05)!important;
}

/* === SOURCE: css/052-v440-fixed-svg-playstyle-badges.css === */

/* v4.4.0 · fixed SVG shells for PlayStyle and PlayStyle+ across builder card + PlayStyle page */
:root{
  --ps-shell-silver:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%27g%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23F1F4F7%27%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%2756%25%27%20stop-color%3D%27%23DDE2E7%27%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%23C0C7D0%27%2F%3E%0A%20%20%20%20%3C%2FlinearGradient%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%27h%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27rgba%28255%2C255%2C255%2C0.75%29%27%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27rgba%28255%2C255%2C255%2C0%29%27%2F%3E%0A%20%20%20%20%3C%2FlinearGradient%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V54L50%20100L0%2054V30L21%200Z%27%20fill%3D%27url%28%23g%29%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%202.2H79L97.8%2031V53.2L50%2097.4L2.2%2053.2V31L21%202.2Z%27%20fill%3D%27none%27%20stroke%3D%27rgba%28255%2C255%2C255%2C0.68%29%27%20stroke-width%3D%271.8%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V36H0V30L21%200Z%27%20fill%3D%27rgba%28255%2C255%2C255%2C0.18%29%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V54L50%20100L0%2054V30L21%200Z%27%20fill%3D%27none%27%20stroke%3D%27rgba%2884%2C95%2C108%2C0.18%29%27%20stroke-width%3D%271.2%27%2F%3E%0A%3C%2Fsvg%3E");
  --ps-shell-gold:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3ClinearGradient%20id%3D%27g%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23F6E29A%27%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%2756%25%27%20stop-color%3D%27%23E6C35D%27%2F%3E%0A%20%20%20%20%20%20%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%23CFA33A%27%2F%3E%0A%20%20%20%20%3C%2FlinearGradient%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V54L50%20100L0%2054V30L21%200Z%27%20fill%3D%27url%28%23g%29%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%202.2H79L97.8%2031V53.2L50%2097.4L2.2%2053.2V31L21%202.2Z%27%20fill%3D%27none%27%20stroke%3D%27rgba%28255%2C246%2C210%2C0.62%29%27%20stroke-width%3D%271.8%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V36H0V30L21%200Z%27%20fill%3D%27rgba%28255%2C255%2C255%2C0.16%29%27%2F%3E%0A%20%20%3Cpath%20d%3D%27M21%200H79L100%2030V54L50%20100L0%2054V30L21%200Z%27%20fill%3D%27none%27%20stroke%3D%27rgba%28118%2C82%2C12%2C0.16%29%27%20stroke-width%3D%271.2%27%2F%3E%0A%3C%2Fsvg%3E");
}

/* Core shell reset */
body.build-overview-active .ps-icon-shell,
#playstylesPanel .ps-icon-shell{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.build-overview-active .ps-icon-shell::before,
#playstylesPanel .ps-icon-shell::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  background-image:var(--ps-shell-silver)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  pointer-events:none!important;
}
body.build-overview-active .ps-icon-shell.plus::before,
#playstylesPanel .ps-icon-shell.plus::before{
  background-image:var(--ps-shell-gold)!important;
}
body.build-overview-active .ps-icon-shell img,
#playstylesPanel .ps-icon-shell img{
  position:relative!important;
  z-index:2!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
}
body.build-overview-active .ps-icon-fallback,
#playstylesPanel .ps-icon-fallback{
  position:relative!important;
  z-index:2!important;
  border:0!important;
  background:transparent!important;
  color:#151a1f!important;
  font-weight:900!important;
}

/* Build overview card left PlayStyle+ */
body.build-overview-active .fc-build-card-plus{
  left:-0.5%!important;
  top:52.4%!important;
  width:79px!important;
  height:88px!important;
  transform:translate(-50%,-50%)!important;
  background:none!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.build-overview-active .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background-image:var(--ps-shell-gold)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  border:0!important;
}
body.build-overview-active .fc-build-card-plus.is-silver::before{
  background-image:var(--ps-shell-silver)!important;
}
body.build-overview-active .fc-build-card-plus::after{display:none!important}
body.build-overview-active .fc-build-card-plus-inner{
  transform:none!important;
  position:relative!important;
  z-index:1!important;
}
body.build-overview-active .fc-build-card-plus img{
  width:34px!important;
  height:34px!important;
  filter:none!important;
}

/* PlayStyle selector tiles */
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{
  width:44px!important;
  height:50px!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{
  width:28px!important;
  height:28px!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-fallback{
  font-size:7px!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.locked .ps-icon-shell img{opacity:.45!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unreachable .ps-icon-shell img{opacity:.34!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unlocked .ps-icon-shell img,
#playstylesPanel .ps-page-k6 .ps-badge-tile.equipped .ps-icon-shell img,
#playstylesPanel .ps-page-k6 .ps-badge-tile.selected .ps-icon-shell img{opacity:1!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unlocked .ps-icon-shell::before,
#playstylesPanel .ps-page-k6 .ps-badge-tile.equipped .ps-icon-shell::before,
#playstylesPanel .ps-page-k6 .ps-badge-tile.selected .ps-icon-shell::before{
  filter:drop-shadow(0 5px 10px rgba(0,0,0,.16));
}

/* Signature + slots */
#playstylesPanel .ps-signature-card>.ps-icon-shell::before{width:30px!important;height:34px!important}
#playstylesPanel .ps-signature-card>.ps-icon-shell img{width:20px!important;height:20px!important}
#playstylesPanel .ps-slot .ps-icon-shell::before{width:24px!important;height:27px!important}
#playstylesPanel .ps-slot .ps-icon-shell img{width:16px!important;height:16px!important}
#playstylesPanel .ps-slot .ps-icon-fallback{font-size:5px!important}

/* Floating hover detail icon */
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell{
  position:relative!important;
  width:66px!important;
  height:66px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell::before{
  width:46px!important;
  height:52px!important;
}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell img{
  width:30px!important;
  height:30px!important;
  filter:none!important;
  opacity:1!important;
}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell .ps-icon-fallback{
  color:#171d22!important;
}

@media (max-width:1099px){
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{width:39px!important;height:45px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{width:25px!important;height:25px!important}
}
@media (max-width:760px){
  body.build-overview-active .fc-build-card-plus{width:72px!important;height:80px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{width:35px!important;height:40px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{width:22px!important;height:22px!important}
}

/* === SOURCE: css/053-v444-build-card-page-tuning.css === */

/* v4.4.4 · Build card page tuning per latest review */
/* 1) PlayStyle+ shrink ~8% and move slightly inward so the card edge cuts near the badge midline */
body.build-overview-active .fc-build-card-plus{
  --badge-h:66px!important;
  --badge-w:79.2px!important;
  --icon-box:39.5px!important;
  --gold-lift:3.93px!important;
  left:2.2%!important;
  top:52.3%!important;
  width:88px!important;
  height:78px!important;
  transform:translate(-50%,-50%)!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  --badge-w:66px!important;
  --icon-box:38.5px!important;
  --gold-lift:0px!important;
}

/* 2) Top-left lockup: real aligned module, moved down into the card */
body.build-overview-active .fc-build-card-level-lockup{
  left:16.9%!important;
  top:17.2%!important;
  min-width:96px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:0!important;
}
body.build-overview-active .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.42vw,24px)!important;
  line-height:1!important;
}
body.build-overview-active .fc-build-card-level-lockup span{
  margin-top:8px!important;
  font-size:clamp(10px,.82vw,14px)!important;
  line-height:1!important;
}
body.build-overview-active .fc-build-card-archetype-logo{
  position:absolute!important;
  left:16.9%!important;
  top:28.9%!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
  object-fit:contain!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.42))!important;
  z-index:6!important;
}

/* 3) Player portrait: scale down about 5% while keeping bottom baseline fixed */
body.build-overview-active .fc-build-card-player{
  bottom:1.5%!important;
  height:81.8%!important;
  transform:translateX(-50%)!important;
  object-position:center bottom!important;
}

/* 4) Name: Chinese only, centered */
body.build-overview-active #overviewBuildCardEnglish,
body.build-overview-active .fc-build-card-name-lockup span{
  display:none!important;
}
body.build-overview-active .fc-build-card-identity{
  left:14.8%!important;
  right:12.0%!important;
  top:63.2%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.build-overview-active .fc-build-card-name-lockup{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
body.build-overview-active .fc-build-card-name-lockup strong{
  width:100%!important;
  text-align:center!important;
  color:#ead58b!important;
  font-size:clamp(20px,1.48vw,26px)!important;
  line-height:1.04!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  font-family:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi",serif!important;
}

/* 5) Face stats: move up 2% */
body.build-overview-active .fc-build-card-face-stats{
  left:16.2%!important;
  right:13.7%!important;
  top:73.0%!important;
  column-gap:1px!important;
}

@media(max-width:1180px){
  body.build-overview-active .fc-build-card-plus{
    --badge-h:61px!important;
    --badge-w:73.2px!important;
    --icon-box:36.5px!important;
    --gold-lift:3.63px!important;
    width:82px!important;
    height:72px!important;
    left:2.4%!important;
  }
  body.build-overview-active .fc-build-card-plus.is-silver{
    --badge-w:61px!important;
    --icon-box:35.6px!important;
  }
  body.build-overview-active .fc-build-card-level-lockup{top:17.6%!important;left:17.2%!important;}
  body.build-overview-active .fc-build-card-archetype-logo{left:17.2%!important;top:29.4%!important;width:34px!important;height:34px!important;}
  body.build-overview-active .fc-build-card-player{height:80.6%!important;}
  body.build-overview-active .fc-build-card-face-stats{top:73.2%!important;}
}

/* === SOURCE: css/054-v445-build-card-fixes.css === */

/* v4.4.5 · Build card specific fixes */
/* Step 1: remove top-left lockup completely; keep only archetype logo at the bottom-center tip */
body.build-overview-active .fc-build-card-level-lockup{display:none!important}
body.build-overview-active .fc-build-card-archetype-logo{
  left:50%!important;
  top:auto!important;
  bottom:5.0%!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  transform-origin:center center!important;
  object-fit:contain!important;
  z-index:9!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.48))!important;
}
/* Step 2: rebuild the left PlayStyle+ anchor from the card edge, not from old offsets */
body.build-overview-active .fc-build-card-plus{
  --badge-h:66px!important;
  --badge-w:79.2px!important;
  --icon-box:39.5px!important;
  --gold-lift:3.93px!important;
  left:15.8%!important;
  top:52.0%!important;
  width:88px!important;
  height:78px!important;
  transform:translate(-50%,-50%)!important;
  z-index:8!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  --badge-w:66px!important;
  --icon-box:38.5px!important;
  --gold-lift:0px!important;
}
@media(max-width:1180px){
  body.build-overview-active .fc-build-card-archetype-logo{bottom:4.9%!important;width:22px!important;height:22px!important}
  body.build-overview-active .fc-build-card-plus{
    --badge-h:61px!important;
    --badge-w:73.2px!important;
    --icon-box:36.5px!important;
    --gold-lift:3.63px!important;
    left:16.1%!important;
    width:82px!important;
    height:72px!important;
  }
  body.build-overview-active .fc-build-card-plus.is-silver{--badge-w:61px!important;--icon-box:35.6px!important}
}


/* ===== SOURCE: css/055-v446-build-card-anchor-logo-fix.css ===== */

/* v4.4.6 · true frame-edge anchored badge + independent bottom archetype logo */
body.build-overview-active #overviewBuildCardPlus{display:none!important}
body.build-overview-active #overviewBuildCardArchetypeLogo{display:none!important}

body.build-overview-active .fc-build-card-plus-clone{
  --badge-h:66px;
  --badge-w:79.2px;
  --icon-box:39.5px;
  --gold-lift:3.93px;
  position:absolute!important;
  z-index:9!important;
  width:88px!important;
  height:78px!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  overflow:visible!important;
  pointer-events:none!important;
}
body.build-overview-active .fc-build-card-plus-clone::before{
  left:50%!important;
  top:50%!important;
}

body.build-overview-active .fc-build-card-bottom-logo{
  position:absolute!important;
  z-index:10!important;
  width:26px!important;
  height:26px!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.52))!important;
  pointer-events:none!important;
}
@media(max-width:1180px){
  body.build-overview-active .fc-build-card-plus-clone{
    --badge-h:61px;
    --badge-w:73.2px;
    --icon-box:36.5px;
    --gold-lift:3.63px;
    width:82px!important;
    height:72px!important;
  }
  body.build-overview-active .fc-build-card-bottom-logo{width:23px!important;height:23px!important}
}


/* ===== SOURCE: css/056-v460-facilities-ui.css ===== */

/* v4.6.1 · Facility Slots selector */
#facilitiesCard{grid-column:1/-1!important;height:100%;min-height:0;overflow:hidden}
#facilitiesCard .facilities-page-head{align-items:center!important;min-height:84px}
.facility-clear-btn{appearance:none;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.025);color:#8f99a6;border-radius:999px;padding:6px 10px;font:800 10px/1 inherit;cursor:pointer;transition:.16s ease}.facility-clear-btn:hover{color:#ead58d;border-color:rgba(215,181,90,.28);background:rgba(215,181,90,.06)}
.facilities-workspace{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 18% 12%,rgba(215,181,90,.045),transparent 34%)}
.facility-budget-strip{display:grid;grid-template-columns:170px minmax(260px,1fr) 132px 132px;gap:10px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.065);align-items:stretch}
.facility-budget-card{min-width:0;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.022);padding:9px 11px;display:flex;flex-direction:column;justify-content:center}.facility-budget-card>span,.facility-budget-head span{font-size:9px;color:#6f7b88;font-weight:700}.facility-budget-card>strong{margin-top:3px;color:#e3e7ed;font-size:16px}.facility-budget-card>strong em{font-style:normal;color:#7e8996;font-size:10px}.facility-level-select{margin-top:5px;width:100%;height:32px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#0e151d;color:#e8edf3;padding:0 8px;font:800 12px/1 inherit;outline:none;cursor:pointer}.facility-level-select:focus{border-color:rgba(215,181,90,.38)}
.facility-budget-main{padding:10px 12px}.facility-budget-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.facility-budget-head strong{font-size:15px;color:#e6eaf0}.facility-budget-head strong.over{color:#ef8a78}.facility-budget-rail{margin-top:9px;height:7px;border-radius:999px;background:rgba(255,255,255,.055);overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.35)}.facility-budget-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#b89645,#e0c46c);transition:width .22s ease}.facility-budget-fill.over{background:linear-gradient(90deg,#c86c58,#ef9178)}.facility-budget-foot{margin-top:6px;display:flex;justify-content:space-between;color:#65717e;font-size:8px}.facility-budget-foot .warn{color:#dd8a73}
.facility-selected-section{flex:1;min-height:0;display:flex;flex-direction:column;padding:13px 14px 14px;overflow:hidden}.facility-selected-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.facility-selected-title{display:flex;align-items:baseline;gap:8px}.facility-selected-title strong{font-size:13px;color:#dce2e9}.facility-selected-title span{font-size:9px;color:#687481}.facility-add-btn{appearance:none;border:1px solid rgba(215,181,90,.28);border-radius:11px;background:linear-gradient(180deg,rgba(215,181,90,.12),rgba(215,181,90,.045));color:#e6d28b;padding:8px 12px;font:900 11px/1 inherit;cursor:pointer;transition:.16s ease}.facility-add-btn:hover{border-color:rgba(215,181,90,.45);background:rgba(215,181,90,.12);transform:translateY(-1px)}
.facility-selected-list{flex:0 0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:196px;overflow:auto;padding-right:2px;scrollbar-width:thin}.facility-empty{grid-column:1/-1;min-height:112px;border:1px dashed rgba(255,255,255,.09);border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#687582;background:rgba(255,255,255,.012)}.facility-empty strong{font-size:12px;color:#929da9}.facility-empty span{font-size:9px}
.facility-selected-item{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:76px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));padding:8px 8px 8px 9px}.facility-selected-item.lv3{border-color:rgba(215,181,90,.19);background:linear-gradient(145deg,rgba(215,181,90,.055),rgba(255,255,255,.012))}.facility-selected-icon{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 4px 9px rgba(0,0,0,.28))}.facility-selected-copy{min-width:0}.facility-selected-copy strong,.facility-selected-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.facility-selected-copy strong{font-size:11px;color:#e0e5eb}.facility-selected-copy span{font-size:8px;color:#73808d;margin-top:3px}.facility-selected-copy small{display:block;margin-top:5px;color:#b6a36a;font-size:8px;font-weight:800}.facility-selected-side{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.facility-selected-cost{font-size:10px;color:#cbd2da;font-weight:900}.facility-remove-btn{width:23px;height:23px;border:0;border-radius:7px;background:rgba(255,255,255,.035);color:#76818d;font-size:14px;line-height:1;cursor:pointer}.facility-remove-btn:hover{background:rgba(199,91,73,.10);color:#e0907e}
.facility-bonus-preview{margin-top:10px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.75fr);gap:9px;min-height:0;flex:1}.facility-preview-card{min-height:0;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(255,255,255,.018);padding:10px 11px;overflow:auto}.facility-preview-card>strong{display:block;font-size:10px;color:#87929f;margin-bottom:7px}.facility-bonus-chips{display:flex;flex-wrap:wrap;gap:6px}.facility-bonus-chip{display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.06);border-radius:999px;background:rgba(255,255,255,.025);padding:5px 8px;color:#9ca6b1;font-size:9px}.facility-bonus-chip b{color:#62dca0;font-size:10px}.facility-ps-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.facility-ps-label{display:flex;align-items:center;gap:5px;border:1px solid rgba(215,181,90,.10);border-radius:9px;padding:4px 7px;background:rgba(215,181,90,.025)}.facility-ps-label span{font-size:8px;color:#9ba5b0}.facility-ps-label small{display:block;font-size:7px;color:#6e7986;margin-top:1px}
.facility-ps-badge{position:relative;width:39px;height:34px;display:grid;place-items:center;flex:0 0 auto}.facility-ps-badge::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);width:25px;height:25px;background:linear-gradient(#f0f3f6,#c9d0d7);box-shadow:0 3px 7px rgba(0,0,0,.22)}.facility-ps-badge.plus{width:42px}.facility-ps-badge.plus::before{transform:translate(-50%,-50%);width:35px;height:29px;clip-path:polygon(25% 0,75% 0,100% 33%,50% 100%,0 33%);background:linear-gradient(#ffe8a0,#f3c849)}.facility-ps-badge img{position:relative;z-index:2;width:18px;height:18px;object-fit:contain;filter:brightness(0);transform:translateY(0)}.facility-ps-badge.plus img{width:19px;height:19px;transform:translateY(-1.7px)}
.facility-drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:600;opacity:0;pointer-events:none;transition:.18s ease}.facility-drawer-backdrop.open{opacity:1;pointer-events:auto}.facility-drawer{position:fixed;right:0;top:0;bottom:0;width:min(680px,96vw);z-index:610;background:linear-gradient(180deg,#10161d,#0a0f14);border-left:1px solid rgba(255,255,255,.085);box-shadow:-24px 0 60px rgba(0,0,0,.42);transform:translateX(103%);transition:transform .24s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column}.facility-drawer.open{transform:translateX(0)}.facility-drawer-head{flex:0 0 auto;padding:18px 20px 14px;border-bottom:1px solid rgba(255,255,255,.07)}.facility-drawer-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.facility-drawer-title-row h3{margin:0;color:#edf1f5;font-size:21px}.facility-drawer-title-row p{margin:5px 0 0;color:#73808d;font-size:10px}.facility-drawer-close{width:32px;height:32px;border:0;background:transparent;color:#8d98a5;font-size:25px;line-height:1;cursor:pointer;border-radius:9px}.facility-drawer-close:hover{background:rgba(255,255,255,.05);color:#fff}.facility-drawer-meter{margin-top:12px;display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center}.facility-drawer-meter .facility-budget-rail{margin:0}.facility-drawer-meter strong{font-size:11px;color:#d7dde4;min-width:78px;text-align:right}.facility-search{margin-top:11px;width:100%;height:36px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#0b1117;color:#dce2e8;padding:0 11px;font:700 11px/1 inherit;outline:none}.facility-search:focus{border-color:rgba(215,181,90,.32)}.facility-drawer-list{flex:1;min-height:0;overflow:auto;padding:10px 12px 16px;scrollbar-width:thin}.facility-row{border:1px solid rgba(255,255,255,.07);border-radius:13px;overflow:hidden;background:rgba(255,255,255,.016);margin-bottom:7px}.facility-row.selected{border-color:rgba(215,181,90,.20)}.facility-row-head{width:100%;border:0;background:transparent;color:inherit;padding:10px 11px;display:grid;grid-template-columns:43px minmax(0,1fr) auto 20px;gap:10px;align-items:center;text-align:left;cursor:pointer}.facility-row-head:hover{background:rgba(255,255,255,.024)}.facility-row-icon{width:42px;height:42px;object-fit:contain}.facility-row-copy{min-width:0}.facility-row-copy strong{display:flex;align-items:center;gap:6px;color:#dce2e8;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.facility-current-pill{font-size:7px;color:#d7bb64;border:1px solid rgba(215,181,90,.22);border-radius:999px;padding:2px 5px}.facility-row-copy span{display:block;margin-top:3px;color:#6d7986;font-size:8px}.facility-row-chevron{color:#697684;font-size:16px;transition:.15s ease}.facility-row.expanded .facility-row-chevron{transform:rotate(180deg);color:#c7d0da}.facility-level-grid{display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:9px;border-top:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.014)}.facility-row.expanded .facility-level-grid{display:grid}.facility-level-card{appearance:none;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:#0c1218;color:#9aa5b1;padding:9px 7px;min-height:146px;text-align:center;cursor:pointer;transition:.15s ease;display:flex;flex-direction:column;align-items:center}.facility-level-card:hover:not(:disabled){border-color:rgba(215,181,90,.26);background:rgba(215,181,90,.04);transform:translateY(-1px)}.facility-level-card.current{border-color:rgba(215,181,90,.42);box-shadow:inset 0 0 0 1px rgba(215,181,90,.09);background:rgba(215,181,90,.06)}.facility-level-card:disabled{opacity:.35;cursor:not-allowed}.facility-level-card>strong{font-size:11px;color:#dce2e9}.facility-level-card.current>strong{color:#ead58d}.facility-level-boosts{width:100%;margin-top:8px;display:grid;gap:6px}.facility-level-boost{font-size:8px;color:#76818e}.facility-level-boost b{display:block;margin-top:2px;color:#58d799;font-size:13px}.facility-level-cost{margin-top:auto;padding-top:8px;font-size:8px;color:#727f8c}.facility-level-cost b{display:block;margin-top:2px;color:#dce2e8;font-size:12px}.facility-level-delta{margin-top:3px;min-height:11px;font-size:7px;color:#8d7f58}.facility-level-reward{margin-top:6px;display:flex;align-items:center;gap:4px;color:#9a8754;font-size:7px}.facility-level-unavailable{margin-top:5px;color:#d67668;font-size:7px}.facility-row-remove{grid-column:1/-1;display:flex;justify-content:flex-end;padding:0 9px 9px}.facility-row-remove button{border:0;background:transparent;color:#88716e;font:800 8px/1 inherit;cursor:pointer}.facility-row-remove button:hover{color:#e18c7c}
body.facility-drawer-open{overflow:hidden}
@media(max-width:1050px){.facility-budget-strip{grid-template-columns:150px 1fr 112px 112px}.facility-selected-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#facilitiesCard{height:auto!important}.facilities-workspace{overflow:visible}.facility-budget-strip{grid-template-columns:1fr 1fr;padding:9px;gap:6px}.facility-budget-main{grid-column:1/-1;order:3}.facility-selected-section{overflow:visible;padding:9px}.facility-selected-list{grid-template-columns:1fr 1fr;max-height:none}.facility-bonus-preview{grid-template-columns:1fr}.facility-drawer{width:100vw}.facility-drawer-head{padding:14px}.facility-drawer-list{padding:8px}.facility-row-head{grid-template-columns:38px minmax(0,1fr) auto 18px;padding:9px}.facility-row-icon{width:36px;height:36px}.facility-level-grid{gap:5px;padding:7px}.facility-level-card{padding:8px 4px;min-height:140px}.facility-selected-item{grid-template-columns:38px minmax(0,1fr) auto}.facility-selected-icon{width:36px;height:36px}}


/* ===== SOURCE: css/stable-bundle-004.css ===== */
/* === SOURCE: css/057-v462-facility-picker-hierarchy.css === */

/* v4.6.2 · facility picker hierarchy: name + attributes first, icon third, reward only on Lv3 */
body.facility-drawer-open .facility-selector-grid{gap:10px!important;padding:14px!important}
body.facility-drawer-open .facility-picker-tile{
  min-height:104px!important;
  padding:12px 12px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  border-radius:14px!important;
}
body.facility-drawer-open .facility-picker-copy{min-width:0!important;padding-right:2px!important}
body.facility-drawer-open .facility-picker-copy>strong{
  display:block!important;
  margin:0!important;
  color:#e7ebef!important;
  font-size:12px!important;
  line-height:1.22!important;
  font-weight:900!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  display:block!important;
  margin-top:7px!important;
  color:#a7b0ba!important;
  font-size:9.5px!important;
  line-height:1.2!important;
  font-weight:750!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.facility-drawer-open .facility-picker-foot{
  min-height:32px!important;
  margin-top:9px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:8px!important;
}
body.facility-drawer-open .facility-picker-icon{
  width:30px!important;
  height:30px!important;
  object-fit:contain!important;
  opacity:.88!important;
  flex:0 0 auto!important;
}
body.facility-drawer-open .facility-picker-current{
  align-self:center!important;
  font-size:8px!important;
  font-weight:900!important;
  color:#ead270!important;
  border:1px solid rgba(215,181,90,.32)!important;
  background:rgba(215,181,90,.06)!important;
  border-radius:999px!important;
  padding:4px 7px!important;
}
body.facility-drawer-open .facility-picker-hint{
  align-self:center!important;
  color:#56616c!important;
  font-size:7px!important;
  font-weight:750!important;
}
body.facility-drawer-open .facility-picker-reward{display:none!important}
body.facility-drawer-open .facility-picker-iconwrap{display:none!important}

body.facility-drawer-open .facility-detail-head{
  grid-template-columns:46px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  padding:2px 0 14px!important;
}
body.facility-drawer-open .facility-detail-head>img{width:42px!important;height:42px!important;opacity:.9!important}
body.facility-drawer-open .facility-detail-head strong{font-size:16px!important;line-height:1.15!important}
body.facility-drawer-open .facility-detail-head span{font-size:11px!important;color:#a5afb9!important;font-weight:750!important;margin-top:5px!important}
body.facility-drawer-open .facility-detail-head small{display:block!important;margin-top:6px!important;color:#66727d!important;font-size:8px!important;font-weight:700!important}
body.facility-drawer-open .facility-detail-head>.facility-ps-badge{display:none!important}

/* Lv3 reward is the only PlayStyle presentation inside the selector, so make it explicit */
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward{
  margin-top:2px!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
  justify-content:flex-end!important;
  gap:7px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward .facility-ps-badge{
  transform:scale(.86)!important;
  transform-origin:center!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward span{
  color:#cfd6dd!important;
  font-size:9px!important;
  font-weight:850!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-copy>strong{font-size:11.5px!important}
  body.facility-drawer-open .facility-picker-copy>span{font-size:9px!important}
}

/* === SOURCE: css/058-v4615-facility-toolbar.css === */

/* v4.6.15 · facility drawer toolbar actions */
body.facility-drawer-open .facility-selector-tools{grid-template-columns:minmax(300px,.88fr) minmax(420px,1.12fr)!important;gap:14px!important;padding:2px 18px 10px!important;}
body.facility-drawer-open .facility-selector-meter{max-width:560px!important;}
body.facility-drawer-open .facility-selector-searchrow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;min-width:0!important;}
body.facility-drawer-open .facility-selector-tools .facility-search{min-width:0!important;width:100%!important;}
body.facility-drawer-open .facility-tool-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex:0 0 auto!important;}
body.facility-drawer-open .facility-tool-btn,
body.facility-drawer-open .facility-tool-toggle{appearance:none!important;height:38px!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:13px!important;background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.016))!important;color:#c8d0d8!important;cursor:pointer!important;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;}
body.facility-drawer-open .facility-tool-btn{width:38px!important;display:grid!important;place-items:center!important;padding:0!important;}
body.facility-drawer-open .facility-tool-toggle{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:0 12px!important;min-width:88px!important;font-size:12px!important;font-weight:760!important;letter-spacing:-.01em!important;}
body.facility-drawer-open .facility-tool-btn-icon{font-size:16px!important;line-height:1!important;color:inherit!important;}
body.facility-drawer-open .facility-tool-toggle-label{white-space:nowrap!important;}
body.facility-drawer-open .facility-tool-btn:hover:not(:disabled),
body.facility-drawer-open .facility-tool-toggle:hover{border-color:rgba(215,181,90,.24)!important;background:linear-gradient(180deg,rgba(215,181,90,.08),rgba(255,255,255,.02))!important;color:#dde4ea!important;transform:translateY(-1px)!important;}
body.facility-drawer-open .facility-tool-btn:active:not(:disabled),
body.facility-drawer-open .facility-tool-toggle:active{transform:translateY(0)!important;}
body.facility-drawer-open .facility-tool-btn:disabled{opacity:.34!important;cursor:not-allowed!important;transform:none!important;}
body.facility-drawer-open .facility-tool-toggle.is-on{border-color:rgba(215,181,90,.26)!important;background:linear-gradient(180deg,rgba(215,181,90,.11),rgba(255,255,255,.018))!important;color:#e3d39b!important;}
body.facility-drawer-open .facility-tool-toggle.is-off{color:#9ca6b0!important;opacity:.88!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-card{position:relative!important;}
@media(max-width:1180px){
  body.facility-drawer-open .facility-selector-tools{grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr)!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-tools{grid-template-columns:1fr!important;gap:10px!important;padding:2px 16px 10px!important;}
  body.facility-drawer-open .facility-selector-searchrow{grid-template-columns:1fr!important;gap:10px!important;}
  body.facility-drawer-open .facility-tool-actions{justify-content:flex-start!important;flex-wrap:wrap!important;}
}

/* === SOURCE: css/059-v4616-selected-facility-priority.css === */

/* v4.6.16 · selected facilities: restrained gold ambience + persistent selected-first ordering */
body.facility-drawer-open .facility-picker-tile.selected{
  border-color:rgba(199,173,112,.30)!important;
  background:
    radial-gradient(circle at 16% 10%,rgba(199,173,112,.085),transparent 38%),
    linear-gradient(135deg,rgba(199,173,112,.055),rgba(199,173,112,.018) 52%,rgba(255,255,255,.012) 100%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(199,173,112,.022),
    inset 0 12px 34px rgba(199,173,112,.025)!important;
}
body.facility-drawer-open .facility-picker-tile.selected:hover{
  border-color:rgba(199,173,112,.38)!important;
  background:
    radial-gradient(circle at 16% 10%,rgba(199,173,112,.10),transparent 38%),
    linear-gradient(135deg,rgba(199,173,112,.065),rgba(199,173,112,.022) 52%,rgba(255,255,255,.014) 100%)!important;
}
body.facility-drawer-open .facility-picker-tile.selected.active{
  border-color:rgba(199,173,112,.52)!important;
  background:
    radial-gradient(circle at 16% 10%,rgba(199,173,112,.12),transparent 40%),
    linear-gradient(135deg,rgba(199,173,112,.075),rgba(199,173,112,.028) 54%,rgba(255,255,255,.014) 100%)!important;
  box-shadow:
    0 0 0 1px rgba(199,173,112,.08),
    0 10px 28px rgba(0,0,0,.16),
    inset 0 0 0 1px rgba(199,173,112,.03)!important;
}

/* === SOURCE: css/060-v4617-facility-header-inline-meta.css === */

/* v4.6.17 · put club/budget summary on the same row as the selector title */
body.facility-drawer-open .facility-selector-head{
  align-items:center!important;
  justify-content:space-between!important;
  padding:15px 18px 8px!important;
  min-height:0!important;
}
body.facility-drawer-open .facility-selector-titleline{
  min-width:0!important;
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:nowrap!important;
  gap:22px!important;
}
body.facility-drawer-open .facility-selector-titleline h3{
  flex:0 0 auto!important;
  margin:0!important;
  font-size:24px!important;
  line-height:1.08!important;
  font-weight:750!important;
  letter-spacing:-.018em!important;
}
body.facility-drawer-open .facility-selector-titleline p{
  min-width:0!important;
  margin:0!important;
  color:rgba(228,235,241,.58)!important;
  font-size:13.5px!important;
  line-height:1.2!important;
  font-weight:520!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-tools{
  padding-top:4px!important;
}
@media(max-width:900px){
  body.facility-drawer-open .facility-selector-head{padding:14px 16px 7px!important;}
  body.facility-drawer-open .facility-selector-titleline{gap:14px!important;flex-wrap:wrap!important;}
  body.facility-drawer-open .facility-selector-titleline h3{font-size:22px!important;}
  body.facility-drawer-open .facility-selector-titleline p{font-size:12.5px!important;}
}

/* === SOURCE: css/061-v4620-facility-level-width-fix.css === */

/* v4.6.20 · keep the detail panel at its original width; prevent level cards from forcing horizontal overflow */
body.facility-drawer-open .facility-selector-body,
body.facility-drawer-open .facility-selector-grid,
body.facility-drawer-open .facility-selector-detail,
body.facility-drawer-open .facility-detail-levels{
  min-width:0!important;
}
body.facility-drawer-open .facility-selector-detail{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  grid-template-columns:84px minmax(0,1fr) 102px!important;
  column-gap:12px!important;
  overflow:hidden!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-title,
body.facility-drawer-open .facility-selector-detail .facility-level-boosts,
body.facility-drawer-open .facility-selector-detail .facility-level-budget{
  min-width:0!important;
  max-width:100%!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boosts{
  width:100%!important;
  overflow:hidden!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost{
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost span{
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost b{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-budget{
  justify-self:stretch!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost,
body.facility-drawer-open .facility-selector-detail .facility-level-delta{
  max-width:100%!important;
  white-space:nowrap!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:72px minmax(0,1fr) 94px!important;
    column-gap:10px!important;
    padding:14px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{gap:8px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:64px minmax(0,1fr) 84px!important;
    column-gap:8px!important;
    padding:12px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{gap:7px!important;}
}

/* === SOURCE: css/062-v4649-mastery-compact-polish.css === */

/* v4.6.49 · compact Mastery workspace: one-line toolbar + independent columns. */
#masteryCard > .mastery-head{
  min-height:72px!important;
  padding:14px 20px 12px!important;
  align-items:center!important;
}
#masteryCard > .mastery-head h2{margin-top:2px!important;line-height:1.12!important}
#masteryCard > .mastery-head p{margin-top:4px!important;line-height:1.35!important}

#masteryCard .mastery-toolbar{
  min-height:48px!important;
  height:48px!important;
  padding:0 18px!important;
  gap:14px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.012),rgba(255,255,255,.004))!important;
}
#masteryCard .mastery-toolbar-stats{
  flex:1 1 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:nowrap!important;
  min-width:0!important;
}
#masteryCard .mastery-metric{
  height:auto!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
#masteryCard .mastery-metric span{
  color:#75808e!important;
  font-size:10.5px!important;
  line-height:1!important;
}
#masteryCard .mastery-metric strong{
  color:#e4e9ef!important;
  font-size:14.5px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.01em!important;
}
#masteryCard .mastery-metric-divider{
  width:1px!important;
  height:18px!important;
  flex:0 0 1px!important;
  background:rgba(255,255,255,.075)!important;
}
#masteryCard .mastery-toolbar-tools{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
}
#masteryCard .mastery-bulk-btn{
  height:34px!important;
  min-width:58px!important;
  padding:0 11px!important;
  border-radius:10px!important;
  font-size:11.5px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
}
#masteryCard .page-tool-button{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  flex-basis:34px!important;
  border-radius:10px!important;
  font-size:14px!important;
}
#masteryCard .mastery-visibility-btn{
  position:relative!important;
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.078)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
  color:#aeb7c0!important;
  cursor:pointer!important;
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease!important;
}
#masteryCard .mastery-visibility-btn:hover{
  color:#ddd4b1!important;
  border-color:rgba(215,181,90,.20)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.06),rgba(255,255,255,.015))!important;
  transform:translateY(-1px)!important;
}
#masteryCard .mastery-visibility-btn input{position:absolute!important;opacity:0!important;pointer-events:none!important}
#masteryCard .mastery-eye{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#masteryCard .mastery-eye-off{display:none!important}
#masteryCard .mastery-visibility-btn input:not(:checked) ~ .mastery-eye-on{display:none!important}
#masteryCard .mastery-visibility-btn input:not(:checked) ~ .mastery-eye-off{display:block!important}
#masteryCard .mastery-visibility-btn:has(input:checked){color:#d8b85f!important;border-color:rgba(215,181,90,.18)!important;background:rgba(215,181,90,.055)!important}

/* Independent left/right stacks prevent uneven group heights from creating overlaps or gaps. */
#advancedPanel #masteryList.mastery-list.mastery-groups{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:none!important;
  grid-template-areas:none!important;
  grid-auto-flow:row!important;
  align-items:start!important;
  gap:12px!important;
  padding:10px 18px 16px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
#advancedPanel #masteryList .mastery-column{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  align-self:start!important;
}
#advancedPanel #masteryList .mastery-group{
  grid-area:auto!important;
  align-self:auto!important;
  border-radius:14px!important;
}
#advancedPanel #masteryList .mastery-group-head{
  min-height:40px!important;
  padding:0 14px!important;
}
#advancedPanel #masteryList .mastery-group-head strong{font-size:13px!important}
#advancedPanel #masteryList .mastery-group-head span{font-size:9px!important;opacity:.70!important}
#advancedPanel #masteryList .mastery-group-list{padding:5px 7px 7px!important}
#advancedPanel #masteryList .mastery-row{
  min-height:54px!important;
  margin:5px 0!important;
  padding:7px 9px 7px 13px!important;
  border-radius:12px!important;
}
#advancedPanel #masteryList .mastery-node-level{
  min-width:36px!important;
  height:20px!important;
  padding:0 6px!important;
  font-size:9px!important;
}
#advancedPanel #masteryList .mastery-node-stats{font-size:10px!important}

@media (max-width:860px){
  #masteryCard .mastery-toolbar{height:auto!important;min-height:48px!important;padding:7px 12px!important;flex-wrap:wrap!important}
  #masteryCard .mastery-toolbar-stats{gap:9px!important}
  #masteryCard .mastery-toolbar-tools{margin-left:auto!important}
  #advancedPanel #masteryList.mastery-list.mastery-groups{grid-template-columns:1fr!important;padding:8px 10px 12px!important;gap:10px!important}
  #advancedPanel #masteryList .mastery-column{gap:10px!important}
}

/* === SOURCE: css/063-v4656-specialization-action-align.css === */

/* v4.6.56 — unify specialization primary action and local undo geometry/type. */
.spec-card .spec-card-actions{
  align-items:stretch!important;
}
.spec-card .spec-card-actions .spec-action-btn,
.spec-card .spec-card-actions .spec-local-reset-btn{
  box-sizing:border-box!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.02em!important;
}
.spec-card .spec-card-actions .spec-local-reset-btn{
  padding-left:10px!important;
  padding-right:10px!important;
}
.spec-card .spec-card-actions .spec-local-reset-icon{
  font-size:13px!important;
  line-height:1!important;
}
@media(max-width:760px){
  .spec-card .spec-card-actions .spec-action-btn,
  .spec-card .spec-card-actions .spec-local-reset-btn{
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    font-size:10.5px!important;
  }
}

/* === SOURCE: css/064-v4661-build-overview-three-column-flat.css === */

/* v4.6.61 · FUTBIN-inspired flat three-column final Match Attribute layout. */
body.build-overview-active .overview-detailed-stats.overview-flat-columns{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  margin-top:13px!important;
  align-items:start!important;
  min-width:0!important;
}
body.build-overview-active .overview-stat-column{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  padding:0 15px!important;
}
body.build-overview-active .overview-stat-column:first-child{padding-left:0!important;}
body.build-overview-active .overview-stat-column:last-child{padding-right:0!important;}
body.build-overview-active .overview-stat-column + .overview-stat-column{
  border-left:1px solid rgba(255,255,255,.055)!important;
}
body.build-overview-active .overview-stat-column .overview-stat-group{
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.build-overview-active .overview-stat-column .overview-stat-group h4{
  position:relative!important;
  margin:0 0 5px!important;
  padding:0 0 7px!important;
  color:#b4bdc5!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:780!important;
  letter-spacing:.015em!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
}
body.build-overview-active .overview-stat-column .overview-stat-group h4::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  bottom:-1px!important;
  width:24px!important;
  height:1px!important;
  background:rgba(215,181,90,.34)!important;
}
body.build-overview-active .overview-stat-column .overview-stat-list{display:grid!important;gap:0!important;}
body.build-overview-active .overview-stat-column .overview-stat-row{
  min-height:27px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:9px!important;
  padding:0 1px!important;
  border-bottom:1px solid rgba(255,255,255,.025)!important;
}
body.build-overview-active .overview-stat-column .overview-stat-row:last-child{border-bottom:0!important;}
body.build-overview-active .overview-stat-column .overview-stat-row>span{
  min-width:0!important;
  color:#929da7!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:500!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.build-overview-active .overview-stat-column .overview-stat-row strong.overview-final-value{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  min-width:46px!important;
  color:var(--overview-value-color,#e2e7eb)!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:820!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  transition:color .18s ease!important;
}
body.build-overview-active .overview-stat-column .overview-stat-row strong.overview-final-value .overview-value-number{
  display:inline-block!important;
  min-width:2ch!important;
  text-align:right!important;
}
body.build-overview-active .overview-stat-column .overview-stat-row strong.overview-final-value.over-cap{
  color:var(--overview-value-color,#e2e7eb)!important;
}
body.build-overview-active .overview-stat-column .overview-cap-plus{
  flex:0 0 auto!important;
  padding:2px 4px!important;
  border:1px solid rgba(215,181,90,.16)!important;
  border-radius:5px!important;
  color:#9f8c58!important;
  background:rgba(215,181,90,.03)!important;
  font-size:6.5px!important;
  line-height:1!important;
  font-weight:850!important;
}
@media(max-width:1180px) and (min-width:761px){
  body.build-overview-active .overview-stat-column{padding:0 9px!important;gap:10px!important;}
  body.build-overview-active .overview-stat-column .overview-stat-row{min-height:25px!important;gap:6px!important;}
  body.build-overview-active .overview-stat-column .overview-stat-row>span{font-size:10.5px!important;}
  body.build-overview-active .overview-stat-column .overview-stat-row strong.overview-final-value{font-size:15px!important;min-width:40px!important;}
  body.build-overview-active .overview-stat-column .overview-stat-group h4{font-size:11px!important;}
}
@media(max-width:760px){
  body.build-overview-active .overview-detailed-stats.overview-flat-columns{grid-template-columns:1fr!important;gap:14px!important;}
  body.build-overview-active .overview-stat-column{padding:0!important;gap:14px!important;border-left:0!important;}
}

/* === SOURCE: css/065-v502-game-cap-only.css === */

/* v5.0.2 · In-game 99 ceiling. Mastery details remain hover-only on 总加成. */
body.build-overview-active .overview-final-value.game-cap{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
}
body.build-overview-active .overview-game-cap-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:15px!important;
  padding:0 5px!important;
  border:1px solid rgba(222,177,78,.25)!important;
  border-radius:999px!important;
  background:rgba(222,177,78,.075)!important;
  color:#c9a65a!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  vertical-align:middle!important;
}

/* === SOURCE: css/066-v515-archetype-menu-full-list-style.css === */

/* v5.1.5 · Archetype selector: show the complete grouped list in one flow.
   Avoid the awkward near-complete nested scroll area; the controller itself
   remains the only scroll container when viewport height is limited. */
.ovc-model-menu{
  position:relative!important;
  z-index:50;
  left:auto!important;right:auto!important;top:auto!important;
  width:100%;
  box-sizing:border-box;
  max-height:none!important;
  overflow:visible!important;
  margin-top:10px;
}
.ovc-model-menu.open{display:block}
/* The list itself has no internal scrollbar. On short screens the surrounding
   overview controller scrolls as one continuous surface instead. */
.ovc-model-menu::-webkit-scrollbar{display:none}

/* === SOURCE: css/067-v542-amp-direct-modal-style.css === */

/* v5.4.2 · clean AMP modal, opened by direct binding on the dynamic DIY slot. */
#overviewAmpPicker{display:none!important}
.fc27-amp-modal-backdrop{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(2,5,8,.72);backdrop-filter:blur(7px)}
.fc27-amp-modal-backdrop.open{display:flex}
.fc27-amp-modal{width:min(520px,90vw);max-height:min(610px,84vh);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(216,184,95,.22);border-radius:15px;background:rgba(8,13,18,.985);box-shadow:0 24px 64px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.022),inset 0 1px 0 rgba(255,255,255,.03)}
.fc27-amp-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px 10px;border-bottom:1px solid rgba(255,255,255,.05)}
.fc27-amp-modal-title strong{display:block;color:#e6eaee;font-size:12px;font-weight:880}.fc27-amp-modal-title small{display:block;margin-top:2px;color:#7c8792;font-size:7px;font-weight:720}
.fc27-amp-modal-close{width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.065);border-radius:8px;background:rgba(255,255,255,.022);color:#8c97a1;font-size:16px;cursor:pointer}
.fc27-amp-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-bottom:1px solid rgba(255,255,255,.04)}
.fc27-amp-modal-tier{display:flex;gap:2px;padding:2px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(0,0,0,.20)}
.fc27-amp-modal-tier button{height:24px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:#6f7a84;font-size:8px;font-weight:820;cursor:pointer}.fc27-amp-modal-tier button.active{background:rgba(216,184,95,.10);color:#e0c97f;box-shadow:inset 0 0 0 1px rgba(216,184,95,.09)}
.fc27-amp-modal-note{color:#625a3f;font-size:7px;font-weight:760;white-space:nowrap}
.fc27-amp-modal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:9px 10px 10px;overflow:auto}
.fc27-amp-modal-choice{min-width:0;min-height:68px;padding:5px 3px;border:1px solid rgba(255,255,255,.05);border-radius:10px;background:rgba(255,255,255,.014);color:#96a0aa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:.14s ease}.fc27-amp-modal-choice:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(216,184,95,.26);background:rgba(216,184,95,.04);color:#d9dfe5}.fc27-amp-modal-choice:disabled{opacity:.24;cursor:not-allowed}.fc27-amp-modal-badge{--badge-h:29px;--badge-w:29px;--icon-box:16px;--gold-lift:0px;width:38px!important;height:38px!important}.fc27-amp-modal-badge.plus{--badge-w:34.8px;--icon-box:16.5px;--gold-lift:1.55px}.fc27-amp-modal-choice>span:last-child{max-width:100%;font-size:7px;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fc27-amp-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-top:1px solid rgba(255,255,255,.045);color:#68737d;font-size:7px}.fc27-amp-modal-clear{height:24px;padding:0 8px;border:1px solid rgba(255,255,255,.06);border-radius:7px;background:rgba(255,255,255,.018);color:#a68078;font-size:7px;font-weight:820;cursor:pointer}.fc27-amp-modal-clear:disabled{opacity:.3;cursor:default}
@media(max-width:760px){.fc27-amp-modal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fc27-amp-modal{width:min(92vw,500px)}}


/* ===== SOURCE: css/stable-bundle-005.css ===== */
/* === SOURCE: css/068-v545-archetype-overview-compact-306.css === */

/* v5.4.5 · Archetype Overview compact-width test.
   Goal: make the whole controller viable as the persistent ~306px left rail
   without changing any state/interaction logic. */
@media(min-width:1500px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(205px,.68fr) 306px minmax(430px,1.30fr) minmax(270px,.76fr)!important;
    gap:12px!important;
  }
}
@media(min-width:1280px) and (max-width:1499px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(180px,.58fr) 306px minmax(350px,1.08fr) minmax(220px,.66fr)!important;
    gap:10px!important;
  }
}
@media(min-width:1100px) and (max-width:1279px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(168px,.54fr) 286px minmax(330px,1.02fr) minmax(205px,.62fr)!important;
    gap:9px!important;
  }
}

/* tighter controller shell */
@media(min-width:1100px){
  body.build-overview-active .overview-middle-column{min-width:0!important;}
  body.build-overview-active .overview-profile-card .ovc-scroll{
    padding:13px 12px 12px!important;
  }
  body.build-overview-active .ovc-section{padding:10px 0!important;}
  body.build-overview-active .ovc-section:first-child{padding-top:0!important;}

  /* archetype selector */
  body.build-overview-active .ovc-model-trigger{
    grid-template-columns:38px minmax(0,1fr) auto!important;
    gap:7px!important;
    min-height:48px!important;
    margin:-2px -4px!important;
    width:calc(100% + 8px)!important;
    padding:6px 4px!important;
    border-radius:12px!important;
  }
  body.build-overview-active .ovc-model-logo{width:36px!important;height:36px!important;}
  body.build-overview-active .ovc-model-logo img{width:33px!important;height:33px!important;}
  body.build-overview-active .ovc-model-copy{gap:6px!important;}
  body.build-overview-active .ovc-model-copy strong{font-size:21px!important;}
  body.build-overview-active .ovc-model-copy span{font-size:8px!important;}
  body.build-overview-active .ovc-model-action{
    height:27px!important;padding:0 7px 0 8px!important;gap:4px!important;
  }
  body.build-overview-active .ovc-model-action-label{font-size:7.5px!important;}
  body.build-overview-active .ovc-model-action .ovc-chevron{width:10px!important;height:10px!important;flex-basis:10px!important;}
  body.build-overview-active .ovc-model-menu{top:52px!important;padding:7px!important;border-radius:13px!important;}
  body.build-overview-active .ovc-model-options{gap:4px!important;}
  body.build-overview-active .ovc-model-option{min-height:39px!important;grid-template-columns:24px minmax(0,1fr)!important;padding:4px 6px!important;gap:6px!important;}
  body.build-overview-active .ovc-model-option img{width:22px!important;height:22px!important;}

  /* level / AP */
  body.build-overview-active .ovc-level-section{padding-top:11px!important;padding-bottom:12px!important;}
  body.build-overview-active .ovc-dual-bars{gap:12px!important;}
  body.build-overview-active .ovc-meter-row{grid-template-columns:minmax(0,1fr) 72px!important;gap:8px!important;}
  body.build-overview-active .ovc-meter-label{margin-bottom:6px!important;font-size:7px!important;}
  body.build-overview-active .ovc-meter-meta span{font-size:7px!important;}
  body.build-overview-active .ovc-meter-meta strong{font-size:11px!important;}
  body.build-overview-active .ovc-meter-track{height:8px!important;}
  body.build-overview-active .ovc-level-console{margin-top:7px!important;}
  body.build-overview-active .ovc-level-float{width:48px!important;height:26px!important;font-size:8px!important;border-radius:5px!important;}
  body.build-overview-active #overviewLevelSlider::-webkit-slider-thumb{width:48px!important;height:26px!important;}
  body.build-overview-active #overviewLevelSlider::-moz-range-thumb{width:48px!important;height:26px!important;}

  /* stars */
  body.build-overview-active .ovc-stars-section{padding:8px 0!important;}
  body.build-overview-active .ovc-star-list{gap:5px!important;}
  body.build-overview-active .ovc-star-row{grid-template-columns:52px minmax(0,1fr)!important;gap:5px!important;min-height:25px!important;}
  body.build-overview-active .ovc-star-label{font-size:9px!important;}
  body.build-overview-active .ovc-star-track{gap:3px!important;min-height:27px!important;justify-content:flex-end!important;}
  body.build-overview-active .ovc-star{width:24px!important;height:27px!important;}
  body.build-overview-active .ovc-star svg{width:21px!important;height:21px!important;}

  /* body collapsed controller */
  body.build-overview-active .ovc-body-layout{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"summary accel" "actions quick"!important;
    column-gap:9px!important;row-gap:6px!important;
  }
  body.build-overview-active .ovc-body-summary{gap:9px!important;padding-left:0!important;align-items:baseline!important;}
  body.build-overview-active .ovc-body-chip{gap:5px!important;font-size:10px!important;}
  body.build-overview-active .ovc-body-chip b{font-size:14px!important;}
  body.build-overview-active .ovc-body-quick{gap:5px!important;justify-content:flex-end!important;}
  body.build-overview-active .ovc-body-actions{gap:5px!important;justify-content:flex-start!important;}
  body.build-overview-active .ovc-body-toggle,
  body.build-overview-active .ovc-body-reset{height:27px!important;padding:0 8px!important;border-radius:999px!important;}
  body.build-overview-active .ovc-body-toggle{padding-left:9px!important;}
  body.build-overview-active .ovc-body-toggle-label,
  body.build-overview-active .ovc-body-reset-label{font-size:8px!important;}
  body.build-overview-active .ovc-pill-switch{min-width:54px!important;height:25px!important;padding:2px!important;border-radius:999px!important;}
  body.build-overview-active .ovc-pill-switch[data-size="sm"]{min-width:48px!important;}
  body.build-overview-active .ovc-pill-switch .opt{padding:0 6px!important;font-size:8px!important;}
  body.build-overview-active .ovc-accelerate strong{min-width:84px!important;height:27px!important;padding:0 11px!important;font-size:10px!important;}

  /* 306px rail: expanded body stacks vertically rather than squeezing two columns */
  body.build-overview-active .ovc-body-expanded{grid-template-columns:1fr!important;gap:9px!important;margin-top:8px!important;}
  body.build-overview-active .ovc-body-section.expanded .ovc-body-expanded{max-height:760px!important;padding-top:9px!important;}
  body.build-overview-active .ovc-body-plot{aspect-ratio:1.45 / 1!important;border-radius:11px!important;}
  body.build-overview-active .ovc-body-dot{width:18px!important;height:18px!important;border-width:2px!important;}
  body.build-overview-active .ovc-body-mods{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;}
  body.build-overview-active .ovc-body-mod{padding:6px 8px!important;border-radius:9px!important;}
  body.build-overview-active .ovc-body-mod span{font-size:8px!important;}
  body.build-overview-active .ovc-body-mod strong{font-size:11px!important;}

  /* PlayStyle: keep signature + 3 regular slots + AMP usable on one line */
  body.build-overview-active .ovc-playstyle-section{padding:6px 0 0!important;}
  body.build-overview-active .ovc-ps-row{grid-template-columns:58px minmax(0,1fr)!important;gap:4px!important;min-height:37px!important;}
  body.build-overview-active .ovc-ps-row+.ovc-ps-row{margin-top:5px!important;}
  body.build-overview-active .ovc-ps-label{font-size:8px!important;}
  body.build-overview-active .ovc-ps-badges,
  body.build-overview-active .ovc-ps-prefix,
  body.build-overview-active .ovc-ps-track,
  body.build-overview-active .ovc-ps-extra,
  body.build-overview-active .ovc-ps-amp{gap:3px!important;}
  body.build-overview-active .ovc-ps-track{margin-left:-1px!important;}
  body.build-overview-active .ovc-ps-badge{width:36px!important;height:36px!important;flex-basis:36px!important;}
  body.build-overview-active .ovc-ps-badge .overview-badge-shell{--badge-h:29px;--badge-w:29px;--icon-box:16px;width:36px!important;height:36px!important;}
  body.build-overview-active .ovc-ps-row.gold .ovc-ps-badge .overview-badge-shell.plus{--badge-h:29px;--badge-w:34px;--icon-box:16px;--gold-lift:1.6px;width:36px!important;height:36px!important;}
  body.build-overview-active .ovc-ps-slot,
  body.build-overview-active .ovc-ps-add{width:31px!important;height:31px!important;flex-basis:31px!important;}
  body.build-overview-active .ovc-ps-slot .overview-badge-shell{--badge-h:28px;--badge-w:28px;--icon-box:15px;width:31px!important;height:31px!important;}
  body.build-overview-active .ovc-ps-slot-shell,
  body.build-overview-active .ovc-ps-add-shell{width:26px!important;height:26px!important;border-radius:4px!important;}
  body.build-overview-active .ovc-ps-slot-lock{width:11px!important;height:11px!important;}
  body.build-overview-active .ovc-ps-add-plus{font-size:15px!important;}
  body.build-overview-active .ovc-ps-separator{height:19px!important;margin:0 2px!important;}
  body.build-overview-active .ovc-signature-upgrade-hint{font-size:6.5px!important;}
}

/* === SOURCE: css/069-v5410-body-default-crosshair.css === */

/* v5.4.10 · The body plot uses a faint default-value crosshair, not edge axes.
   Crossing either line returns that single dimension to the archetype default. */
@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-plot::before{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    left:var(--ovc-body-default-x,50%)!important;
    top:5%!important;
    bottom:5%!important;
    right:auto!important;
    width:1px!important;
    height:auto!important;
    transform:translateX(-50%)!important;
    border:0!important;
    background:repeating-linear-gradient(
      to bottom,
      rgba(216,184,95,.15) 0 2px,
      rgba(216,184,95,.035) 2px 3px,
      transparent 3px 7px
    )!important;
    box-shadow:0 0 7px rgba(216,184,95,.075)!important;
    opacity:.78!important;
    pointer-events:none!important;
  }
  .global-archetype-overview-card .ovc-body-plot::after{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    left:4%!important;
    right:4%!important;
    top:var(--ovc-body-default-y,50%)!important;
    bottom:auto!important;
    width:auto!important;
    height:1px!important;
    transform:translateY(-50%)!important;
    border:0!important;
    background:repeating-linear-gradient(
      to right,
      rgba(216,184,95,.15) 0 2px,
      rgba(216,184,95,.035) 2px 3px,
      transparent 3px 7px
    )!important;
    box-shadow:0 0 7px rgba(216,184,95,.075)!important;
    opacity:.78!important;
    pointer-events:none!important;
  }
  /* Endpoint values already explain the two dimensions; remove the extra axis-name labels. */
  .global-archetype-overview-card .ovc-body-axis-name{display:none!important}
  /* Keep range endpoints quiet so the default crosshair remains the only accented guide. */
  .global-archetype-overview-card .ovc-body-axis{
    color:#7d8791!important;
    background:rgba(7,12,17,.48)!important;
  }
  .global-archetype-overview-card .ovc-body-axis.top,
  .global-archetype-overview-card .ovc-body-axis.bottom,
  .global-archetype-overview-card .ovc-body-axis.left,
  .global-archetype-overview-card .ovc-body-axis.right{color:#8e989f!important}
}

/* === SOURCE: css/070-v5412-body-crosshair-endpoints-smooth-drag.css === */

/* v5.4.12 · endpoint labels belong to the DEFAULT crosshair, not the card corners. */
@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-plot::before{
    top:8%!important;
    bottom:8%!important;
  }
  .global-archetype-overview-card .ovc-body-plot::after{
    left:6%!important;
    right:6%!important;
  }

  /* Height max/min sit at the two ends of the vertical default-weight guide. */
  .global-archetype-overview-card .ovc-body-axis.top{
    left:var(--ovc-body-default-x,50%)!important;
    top:2.5%!important;
    right:auto!important;bottom:auto!important;
    transform:translateX(-50%)!important;
  }
  .global-archetype-overview-card .ovc-body-axis.bottom{
    left:var(--ovc-body-default-x,50%)!important;
    bottom:2.5%!important;
    right:auto!important;top:auto!important;
    transform:translateX(-50%)!important;
  }

  /* Weight min/max sit at the two ends of the horizontal default-height guide. */
  .global-archetype-overview-card .ovc-body-axis.left{
    left:1.4%!important;
    top:var(--ovc-body-default-y,50%)!important;
    right:auto!important;bottom:auto!important;
    transform:translateY(-50%)!important;
  }
  .global-archetype-overview-card .ovc-body-axis.right{
    right:1.4%!important;
    top:var(--ovc-body-default-y,50%)!important;
    left:auto!important;bottom:auto!important;
    transform:translateY(-50%)!important;
  }

  .global-archetype-overview-card .ovc-body-axis{
    background:rgba(7,12,17,.58)!important;
    color:#8f989f!important;
    box-shadow:0 0 8px rgba(216,184,95,.025)!important;
  }

  /* Normal plot cursor stays quiet; only the control itself reads as draggable. */
  .global-archetype-overview-card .ovc-body-plot{cursor:default!important;}
  .global-archetype-overview-card .ovc-body-dot{
    pointer-events:auto!important;
    cursor:grab!important;
    transition:box-shadow .12s ease,filter .12s ease!important;
  }
  .global-archetype-overview-card .ovc-body-dot:hover{
    filter:brightness(1.05)!important;
    box-shadow:0 0 0 8px rgba(216,184,95,.09),0 5px 17px rgba(0,0,0,.48)!important;
  }
  .global-archetype-overview-card .ovc-body-plot.dragging,
  .global-archetype-overview-card .ovc-body-plot.dragging .ovc-body-dot{
    cursor:grabbing!important;
  }
}

/* === SOURCE: css/071-v5416-facility-selector-hard-restore.css === */

/* v5.4.16 · hard restore the facility selector detail layout.
   The markup/data are intact; the regression is a late CSS cascade/layout collision.
   Re-pin every child to the proven v5.4.5 3-column detail grid. */
body.facility-drawer-open #facilitySelectorDetail .facility-level-card{
  position:relative!important;
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  grid-template-columns:76px minmax(0,1fr) 96px!important;
  grid-template-rows:auto!important;
  column-gap:12px!important;
  row-gap:0!important;
  align-items:center!important;
  overflow:visible!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-title{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-boosts{
  grid-column:2!important;
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:center!important;
  justify-self:stretch!important;
  width:100%!important;
  max-width:184px!important;
  min-width:0!important;
  margin:0!important;
  gap:9px!important;
  overflow:visible!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-boost{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 40px!important;
  align-items:baseline!important;
  column-gap:12px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-boost span{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  text-align:left!important;
  white-space:nowrap!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-boost b{
  display:block!important;
  width:40px!important;
  min-width:40px!important;
  margin:0!important;
  text-align:right!important;
  white-space:nowrap!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-budget{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-cost{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
  color:rgba(195,205,215,.50)!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:500!important;
  white-space:nowrap!important;
  visibility:visible!important;
  opacity:1!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-cost span{
  display:block!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-cost b{
  display:block!important;
  margin-top:5px!important;
  color:#e5eaf0!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:750!important;
  font-variant-numeric:tabular-nums!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-delta{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:8px 0 0!important;
  min-height:0!important;
  color:#a79361!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:550!important;
  text-align:right!important;
  white-space:nowrap!important;
  visibility:visible!important;
  opacity:1!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-card[data-facility-level="3"]{
  grid-template-rows:auto auto!important;
  min-height:136px!important;
  row-gap:12px!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-card[data-facility-level="3"] .facility-level-reward{
  grid-column:2/4!important;
  grid-row:2!important;
  position:static!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:11px 0 0!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
  gap:12px!important;
  transform:none!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
  z-index:auto!important;
  pointer-events:none!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-reward>small{
  display:block!important;
  color:rgba(190,199,208,.48)!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:600!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-reward-main{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-reward-main .facility-ps-badge{
  display:grid!important;
  position:relative!important;
  transform:scale(.98)!important;
  transform-origin:center!important;
  margin:0!important;
  visibility:visible!important;
  opacity:1!important;
}
body.facility-drawer-open #facilitySelectorDetail .facility-level-reward-main>span{
  display:block!important;
  color:#d6dce2!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:650!important;
  white-space:nowrap!important;
}
/* The facility grid itself never shows PlayStyle badges; rewards only live in the detail panel. */
body.facility-drawer-open .facility-selector-grid .facility-picker-reward{display:none!important;}

@media(max-width:1100px){
  body.facility-drawer-open #facilitySelectorDetail .facility-level-card{
    grid-template-columns:70px minmax(0,1fr) 90px!important;
    column-gap:10px!important;
    padding:14px!important;
  }
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boosts{max-width:170px!important;}
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boost{grid-template-columns:minmax(0,1fr) 36px!important;column-gap:10px!important;}
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boost b{width:36px!important;min-width:36px!important;}
  body.facility-drawer-open #facilitySelectorDetail .facility-level-cost b{font-size:17px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open #facilitySelectorDetail .facility-level-card{
    grid-template-columns:62px minmax(0,1fr) 82px!important;
    column-gap:8px!important;
    padding:12px!important;
  }
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boosts{max-width:150px!important;}
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boost{grid-template-columns:minmax(0,1fr) 34px!important;column-gap:8px!important;}
  body.facility-drawer-open #facilitySelectorDetail .facility-level-boost b{width:34px!important;min-width:34px!important;}
}

/* === SOURCE: css/072-v548-archetype-overview-polish.css === */

/* v5.4.8 · Archetype Overview refinement pass:
   animated archetype drawer, tighter star rows, default-open body editor with
   explicit X/Y axes, and matched PlayStyle empty/locked placeholders. */
.ovc-body-axis-name{position:absolute;z-index:2;pointer-events:none;font-size:6.5px;font-weight:850;letter-spacing:.04em;opacity:.78}
.ovc-body-axis-name.y{left:3px;top:50%;transform:translateY(-50%) rotate(-90deg);color:#d6b85f}
.ovc-body-axis-name.x{left:50%;bottom:3px;transform:translateX(-50%);color:#71c894}
.ovc-body-plot::before,.ovc-body-plot::after{content:"";position:absolute;z-index:1;pointer-events:none;border-radius:999px}
.ovc-body-plot::before{left:28px;top:11px;bottom:22px;width:1px;background:linear-gradient(180deg,rgba(216,184,95,.72),rgba(216,184,95,.22))}
.ovc-body-plot::after{left:28px;right:10px;bottom:20px;height:1px;background:linear-gradient(90deg,rgba(105,205,147,.30),rgba(105,205,147,.72))}
.ovc-body-axis{z-index:2}
.ovc-body-axis.top{top:4px!important;left:34px!important;color:#d6b85f!important;transform:none!important}
.ovc-body-axis.bottom{bottom:22px!important;left:34px!important;color:#a99150!important;transform:none!important}
.ovc-body-axis.left{bottom:3px!important;left:28px!important;color:#71c894!important;transform:translateX(-50%)!important}
.ovc-body-axis.right{bottom:3px!important;right:10px!important;color:#71c894!important;transform:translateX(50%)!important}
.ovc-body-dot{z-index:3}

@media(min-width:761px){
  /* True in-flow drawer: remove the old relative top offset that created the
     large blank band above the first archetype group. */
  .global-archetype-overview-card .ovc-model-menu{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    max-height:0!important;
    overflow:hidden!important;
    margin-top:0!important;
    padding:0 6px!important;
    border-color:transparent!important;
    border-radius:12px!important;
    opacity:0!important;
    transform:translateY(-8px)!important;
    pointer-events:none!important;
    box-shadow:none!important;
    transition:max-height .34s cubic-bezier(.2,.8,.2,1),opacity .18s ease,transform .28s cubic-bezier(.2,.8,.2,1),margin-top .28s ease,padding .28s ease,border-color .18s ease,box-shadow .18s ease!important;
  }
  .global-archetype-overview-card .ovc-model-menu.open{
    max-height:620px!important;
    margin-top:4px!important;
    padding:5px 6px 6px!important;
    border-color:rgba(216,184,95,.20)!important;
    opacity:1!important;
    transform:translateY(0)!important;
    pointer-events:auto!important;
    box-shadow:0 14px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.025)!important;
  }
  .global-archetype-overview-card .ovc-model-group:first-child .ovc-model-group-label{padding-top:0!important}
  .global-archetype-overview-card .ovc-model-group-label{padding:1px 4px 4px!important;font-size:7px!important}
  .global-archetype-overview-card .ovc-model-group+.ovc-model-group{margin-top:6px!important;padding-top:6px!important}

  /* Shave another couple of pixels from the two star rows without changing
     their click/drag model. */
  .global-archetype-overview-card .ovc-stars-section{padding:6px 0!important}
  .global-archetype-overview-card .ovc-star-list{gap:3px!important}
  .global-archetype-overview-card .ovc-star-row{min-height:22px!important}
  .global-archetype-overview-card .ovc-star-track{min-height:23px!important;gap:3px!important}
  .global-archetype-overview-card .ovc-star{width:22px!important;height:23px!important}
  .global-archetype-overview-card .ovc-star svg{width:19px!important;height:19px!important}

  /* Body plot: keep the compact 306px rail, but make the axes legible. */
  .global-archetype-overview-card .ovc-body-plot{padding:0!important}
  .global-archetype-overview-card .ovc-body-axis{font-size:6.5px!important}
  .global-archetype-overview-card .ovc-body-axis-name{font-size:6px!important}

  /* Empty silver slots and level-locked slots now use the exact same shell size. */
  .global-archetype-overview-card .ovc-ps-slot.empty .ovc-ps-slot-shell,
  .global-archetype-overview-card .ovc-ps-slot.locked .ovc-ps-slot-shell{
    width:24px!important;height:24px!important;border-radius:4px!important;
  }
}


/* ===== SOURCE: css/073-v4110k3-playstyles-page.css ===== */

/* v4.1.10k3 · FC27 regular PlayStyle system */
#playstylesPanel{margin-top:2px;min-width:0}
.ps-page{display:flex;flex-direction:column;gap:14px;padding:0 2px 16px}
.ps-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;min-height:56px;padding:0 4px 2px}
.ps-page-title-line{display:flex;align-items:baseline;gap:10px;margin-top:2px}
.ps-page-title-line h2{margin:0;color:#eef2f6;font-size:24px;letter-spacing:-.025em}
.ps-page-title-line span{color:#66727d;font-size:10px;font-weight:800}
.ps-page-head p{margin:6px 0 0;color:#6f7b86;font-size:10px;line-height:1.45}
.ps-page-summary{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.ps-summary-pill{min-width:88px;padding:8px 11px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.018);text-align:right}
.ps-summary-pill span{display:block;color:#68737e;font-size:7.5px;font-weight:850;letter-spacing:.05em}
.ps-summary-pill strong{display:block;margin-top:2px;color:#dce2e7;font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}
.ps-summary-pill strong em{font-style:normal;color:#7b8792;font-size:10px}

.ps-loadout{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.85fr);gap:10px}
.ps-signature-card,.ps-slots-card{border:1px solid rgba(255,255,255,.07);border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.028),rgba(255,255,255,.009) 46%,transparent 72%),rgba(12,18,24,.92);box-shadow:0 12px 30px rgba(0,0,0,.15)}
.ps-signature-card{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;padding:13px 15px}
.ps-signature-card.plus{border-color:rgba(216,184,95,.22);background:linear-gradient(145deg,rgba(216,184,95,.055),rgba(255,255,255,.012) 47%,transparent 76%),rgba(12,18,24,.94)}
.ps-signature-copy small,.ps-slots-head small{display:block;color:#6b7680;font-size:7.5px;font-weight:900;letter-spacing:.07em}
.ps-signature-copy strong{display:block;margin-top:4px;color:#dce3e8;font-size:14px;font-weight:900}
.ps-signature-card.plus .ps-signature-copy strong{color:#dfc774}
.ps-signature-copy span{display:block;margin-top:4px;color:#7e8993;font-size:8.5px;line-height:1.35}

.ps-icon-shell{position:relative;width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(210,219,226,.18);border-radius:16px;background:radial-gradient(circle at 42% 32%,rgba(255,255,255,.08),transparent 46%),linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015));box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.ps-icon-shell.plus{border-color:rgba(216,184,95,.34);background:radial-gradient(circle at 42% 32%,rgba(232,205,117,.18),transparent 48%),linear-gradient(145deg,rgba(216,184,95,.13),rgba(216,184,95,.035));box-shadow:0 0 18px rgba(216,184,95,.08),inset 0 0 0 1px rgba(255,255,255,.025)}
.ps-icon-shell img{width:33px;height:33px;object-fit:contain;opacity:.82;filter:invert(86%) sepia(4%) saturate(260%) hue-rotate(169deg) brightness(96%)}
.ps-icon-shell.plus img{opacity:.94;filter:invert(81%) sepia(44%) saturate(555%) hue-rotate(357deg) brightness(94%)}
.ps-icon-fallback{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(220,227,233,.22);border-radius:50%;color:#bdc7d0;font-size:8px;font-weight:950;letter-spacing:.08em}
.ps-icon-shell.plus .ps-icon-fallback{color:#ddc676;border-color:rgba(216,184,95,.32)}

.ps-slots-card{padding:12px 13px}
.ps-slots-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px}
.ps-slots-head strong{color:#d9dfe5;font-size:11px}
.ps-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ps-slot{min-width:0;min-height:66px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;padding:8px 9px;border:1px solid rgba(255,255,255,.055);border-radius:12px;background:rgba(255,255,255,.014)}
.ps-slot.locked{opacity:.46}
.ps-slot.filled{border-color:rgba(205,214,222,.14);background:linear-gradient(180deg,rgba(205,214,222,.035),rgba(255,255,255,.012))}
.ps-slot .ps-icon-shell{width:38px;height:38px;border-radius:11px}
.ps-slot .ps-icon-shell img{width:24px;height:24px}
.ps-slot .ps-icon-fallback{width:23px;height:23px;font-size:6px}
.ps-slot-copy{min-width:0}
.ps-slot-copy small{display:block;color:#68737e;font-size:7px;font-weight:850}
.ps-slot-copy strong{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#cdd5dc;font-size:10px}
.ps-slot-copy span{display:block;margin-top:2px;color:#6f7b85;font-size:7.5px}

.ps-library-card{border:1px solid rgba(255,255,255,.065);border-radius:17px;background:rgba(11,17,23,.86);overflow:hidden}
.ps-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid rgba(255,255,255,.05)}
.ps-filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ps-filter-btn{height:27px;padding:0 10px;border:1px solid rgba(255,255,255,.065);border-radius:999px;background:rgba(255,255,255,.018);color:#7e8993;font:800 8px/1 inherit;cursor:pointer;transition:.16s ease}
.ps-filter-btn:hover{border-color:rgba(255,255,255,.12);color:#bac3cb}
.ps-filter-btn.active{border-color:rgba(204,213,221,.19);background:rgba(204,213,221,.06);color:#d8dfe5}
.ps-source-note{color:#65717b;font-size:7.5px;white-space:nowrap}
.ps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px}
.ps-card{position:relative;min-width:0;display:flex;flex-direction:column;min-height:168px;padding:11px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.022),rgba(255,255,255,.007) 58%,transparent),rgba(13,19,25,.80);transition:border-color .16s ease,background .16s ease,transform .16s ease,opacity .16s ease}
.ps-card:hover{border-color:rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.034),rgba(255,255,255,.009) 58%,transparent),rgba(13,19,25,.9)}
.ps-card.unreachable{opacity:.58}
.ps-card.equipped{border-color:rgba(205,214,222,.24);box-shadow:inset 0 0 0 1px rgba(220,228,235,.03)}
.ps-card-head{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;align-items:center}
.ps-card .ps-icon-shell{width:46px;height:46px;border-radius:13px}
.ps-card .ps-icon-shell img{width:29px;height:29px}
.ps-card-title{min-width:0}
.ps-card-title strong{display:block;color:#dce2e7;font-size:12px;font-weight:900;line-height:1.18;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-card-title span{display:block;margin-top:3px;color:#76818b;font-size:8px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-card-status{position:absolute;top:9px;right:9px;padding:4px 6px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(8,13,18,.72);color:#68737e;font-size:6.8px;font-weight:900}
.ps-card.equipped .ps-card-status{color:#cbd4dc;border-color:rgba(205,214,222,.16)}
.ps-card-status.pending{color:#b79f68;border-color:rgba(184,155,90,.18)}
.ps-reqs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:10px}
.ps-req{min-width:0;padding:6px 6px 5px;border:1px solid rgba(255,255,255,.04);border-radius:8px;background:rgba(255,255,255,.012)}
.ps-req span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#74808a;font-size:7px}
.ps-req strong{display:block;margin-top:2px;color:#d0d7dd;font-size:9.5px;font-weight:900;font-variant-numeric:tabular-nums}
.ps-req strong em{font-style:normal;color:#69747e;font-size:7px;font-weight:750}
.ps-req.missing strong{color:#d0928d}
.ps-card-actions{margin-top:auto;padding-top:9px}
.ps-card-action{width:100%;min-height:31px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.014));color:#9da8b2;font:800 8px/1 inherit;cursor:pointer;transition:.16s ease}
.ps-card-action:not(:disabled):hover{border-color:rgba(205,214,222,.18);color:#d9e0e6;background:linear-gradient(180deg,rgba(205,214,222,.055),rgba(255,255,255,.018));transform:translateY(-1px)}
.ps-card-action.equip{color:#c7d0d8;border-color:rgba(205,214,222,.14)}
.ps-card-action.remove{color:#aeb8c1}
.ps-card-action.match{color:#b7c1ca}
.ps-card-action:disabled{cursor:default;opacity:.45}
.ps-empty-filter{grid-column:1/-1;padding:34px;text-align:center;color:#707b85;font-size:10px}

@media(max-width:1500px) and (min-width:1001px){.ps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px) and (min-width:761px){.ps-loadout{grid-template-columns:1fr}.ps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-source-note{display:none}}
@media(max-width:760px){
  .ps-page{gap:10px;padding:0 0 14px}.ps-page-head{align-items:flex-start;min-height:auto;padding:0}.ps-page-title-line h2{font-size:20px}.ps-page-head p{font-size:9px}.ps-page-summary{display:none}
  .ps-loadout{grid-template-columns:1fr}.ps-signature-card{grid-template-columns:52px minmax(0,1fr);padding:11px 12px}.ps-icon-shell{width:46px;height:46px}.ps-slots{grid-template-columns:1fr}.ps-slot{min-height:56px}
  .ps-library-toolbar{align-items:flex-start;flex-direction:column;padding:10px}.ps-filter-row{gap:5px}.ps-source-note{white-space:normal}.ps-grid{grid-template-columns:1fr;padding:8px;gap:7px}.ps-card{min-height:156px}.ps-card-status{top:8px;right:8px}
}


/* ===== SOURCE: css/stable-bundle-006.css ===== */
/* === SOURCE: css/074-anonymous.css === */

.stepper{align-items:stretch}
.stepper button,
.stepper input{
  height:100%;
  min-height:0;
  padding-top:0;
  padding-bottom:0;
  line-height:1;
  vertical-align:middle;
}
.stepper button{
  display:flex;
  align-items:center;
  justify-content:center;
}
.stepper input{
  display:block;
  text-align:center;
}

/* === SOURCE: css/075-v400-build-overview.css === */

/* ===== v4.0 · Build Overview / full-width workspace transition ===== */
@media(min-width:761px){
  .workspace{
    transition:grid-template-columns .44s cubic-bezier(.22,.8,.22,1),gap .44s cubic-bezier(.22,.8,.22,1)!important;
  }
  .left-stack{
    min-width:0;
    transform:translateX(0);
    opacity:1;
    transition:transform .44s cubic-bezier(.22,.8,.22,1),opacity .26s ease;
    will-change:transform,opacity;
  }
  body.build-overview-active .workspace{
    grid-template-columns:0 minmax(0,1fr)!important;
    gap:0!important;
  }
  body.build-overview-active .left-stack{
    transform:translateX(calc(-100% - 36px));
    opacity:0;
    pointer-events:none;
  }
}
body.build-overview-active .main{min-width:0}
body.build-overview-active #mobileStickyControls{display:none!important}

.build-overview-panel{
  margin-top:2px;
  min-width:0;
}
body.build-overview-active .build-overview-panel{
  animation:buildOverviewIn .42s cubic-bezier(.22,.8,.22,1) both;
}
@keyframes buildOverviewIn{
  from{opacity:0;transform:translateX(30px)}
  to{opacity:1;transform:translateX(0)}
}

.build-overview-head{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:12px;
  padding:0 4px;
}
.build-overview-head h2{
  margin:3px 0 0;
  font-size:24px;
  letter-spacing:-.025em;
  color:#f0f3f6;
}
.build-overview-head-note{
  color:#68737e;
  font-size:10px;
  font-weight:750;
  letter-spacing:.03em;
}

.build-overview-grid{
  display:grid;
  grid-template-columns:minmax(220px,.82fr) minmax(290px,.9fr) minmax(520px,1.48fr);
  gap:14px;
  align-items:stretch;
  min-height:min(720px,calc(100vh - 210px));
}
.overview-card{
  min-width:0;
  border:1px solid rgba(255,255,255,.082);
  border-radius:22px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008) 46%,transparent 72%),
    rgba(12,18,24,.90);
  box-shadow:0 18px 46px rgba(0,0,0,.20);
  overflow:hidden;
}
.overview-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.overview-card-head h3{
  margin:3px 0 0;
  color:#e9edf2;
  font-size:18px;
  letter-spacing:-.018em;
}
.overview-source-note{
  color:#64707b;
  font-size:9px;
  font-weight:750;
  white-space:nowrap;
}

/* Column 1: visual identity */
.overview-portrait-card{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  background:
    radial-gradient(circle at 50% 28%,rgba(216,184,95,.08),transparent 36%),
    linear-gradient(180deg,rgba(20,27,35,.97),rgba(9,14,19,.98));
}
.overview-portrait-stage{
  position:relative;
  min-height:500px;
  overflow:hidden;
  isolation:isolate;
}
.overview-model-watermark{
  position:absolute;
  z-index:0;
  width:min(78%,260px);
  height:min(78%,260px);
  left:50%;
  top:15%;
  transform:translateX(-50%);
  object-fit:contain;
  opacity:.055;
  filter:grayscale(1) brightness(1.3) blur(.2px);
}
.overview-player-aura{
  position:absolute;
  z-index:0;
  left:50%;
  top:21%;
  width:72%;
  aspect-ratio:1;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(225,231,236,.055),rgba(225,231,236,.015) 42%,transparent 69%);
  filter:blur(3px);
}
.overview-player-silhouette{
  position:absolute;
  z-index:1;
  width:92%;
  max-width:330px;
  height:auto;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  opacity:.78;
}
.overview-portrait-fade{
  position:absolute;
  z-index:2;
  inset:auto 0 0;
  height:38%;
  background:linear-gradient(180deg,transparent,rgba(9,14,19,.75) 62%,rgba(9,14,19,.98));
}
.overview-portrait-badge{
  position:absolute;
  z-index:3;
  left:18px;
  right:18px;
  bottom:18px;
}
.overview-portrait-badge span{
  display:block;
  color:#69747f;
  font-size:8px;
  font-weight:850;
  letter-spacing:.13em;
}
.overview-portrait-badge strong{
  display:block;
  margin-top:5px;
  color:#c8cfd6;
  font-size:12px;
}
.overview-portrait-footer{
  min-height:72px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border-top:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
}
.overview-logo-shell{
  width:39px;
  height:39px;
  display:grid;
  place-items:center;
  flex:0 0 39px;
}
.overview-logo-shell img{width:36px;height:36px;object-fit:contain}
.overview-portrait-footer strong,
.overview-portrait-footer span{display:block}
.overview-portrait-footer strong{font-size:13px;color:#e3e7ec}
.overview-portrait-footer div>span{margin-top:2px;color:#69747f;font-size:8px;letter-spacing:.05em}

/* Column 2 */
.overview-middle-column{
  min-width:0;
  display:grid;
  grid-template-rows:minmax(0,.92fr) minmax(0,1.08fr);
  gap:14px;
}
.overview-profile-card,
.overview-playstyle-card,
.overview-stats-card{padding:18px}
.overview-position-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.025);
  color:#9ca6b1;
  font-size:9px;
  font-weight:800;
}
.overview-model-key{
  margin-top:5px;
  color:#5f6a75;
  font-size:9px;
  font-weight:750;
  letter-spacing:.08em;
}
.overview-profile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:17px;
}
.overview-profile-grid>div{
  min-height:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:12px;
  background:rgba(255,255,255,.018);
}
.overview-profile-grid span{
  color:#68747f;
  font-size:8px;
  font-weight:720;
}
.overview-profile-grid strong{
  margin-top:4px;
  color:#d6dce2;
  font-size:13px;
  font-weight:800;
  font-variant-numeric:tabular-nums lining-nums;
}
#overviewAccelerate{color:#dbc77f}
.overview-ap-strip{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:10px 11px;
  border-radius:12px;
  background:rgba(255,255,255,.018);
  border:1px solid rgba(255,255,255,.05);
  color:#68737e;
  font-size:8px;
}
.overview-ap-strip>span{font-weight:900;letter-spacing:.08em;color:#8d98a3}
.overview-ap-strip strong{
  color:#89949e;
  font-size:9px;
  font-weight:700;
}
.overview-ap-strip strong b{
  color:#d4d9df;
  font-size:12px;
  font-variant-numeric:tabular-nums;
}
.overview-ap-strip i{width:1px;height:14px;background:rgba(255,255,255,.07)}

.overview-playstyle-card{
  display:flex;
  flex-direction:column;
}
.overview-playstyle-section{
  margin-top:15px;
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.055);
}
.overview-playstyle-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
}
.overview-playstyle-title span{
  color:#7f8a95;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.overview-playstyle-title strong{
  color:#aeb6bf;
  font-size:10px;
  font-variant-numeric:tabular-nums;
}
.overview-playstyle-section.plus .overview-playstyle-title span{color:#a89158}
.overview-playstyle-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  min-height:46px;
}
.overview-playstyle-empty{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  padding:0 10px;
  border:1px dashed rgba(255,255,255,.07);
  border-radius:11px;
  color:#58636d;
  font-size:9px;
}
.overview-playstyle-token{
  width:54px;
  min-width:54px;
  display:grid;
  justify-items:center;
  gap:4px;
}
.overview-playstyle-token img,
.overview-ps-glyph{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  object-fit:contain;
}
.overview-ps-glyph{
  border:1px solid rgba(222,227,232,.24);
  background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.13),rgba(255,255,255,.025) 58%,rgba(0,0,0,.15));
  color:#d9dee3;
  font-size:8px;
  font-weight:900;
}
.overview-playstyle-token.plus .overview-ps-glyph{
  border-color:rgba(216,184,95,.38);
  color:#dcc26f;
  background:radial-gradient(circle at 35% 28%,rgba(216,184,95,.16),rgba(216,184,95,.035) 58%,rgba(0,0,0,.15));
  box-shadow:0 0 12px rgba(216,184,95,.07);
}
.overview-playstyle-token small{
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
  color:#7b8792;
  font-size:7px;
}
.overview-slot-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  padding-top:13px;
}
.overview-slot-caption{color:#606c77;font-size:8px}
.overview-slot-dots{display:flex;align-items:center;gap:5px}
.overview-slot-dot{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  color:#505b65;
  background:rgba(255,255,255,.018);
  font-size:8px;
  font-weight:850;
}
.overview-slot-dot.open{
  border-color:rgba(205,213,220,.25);
  color:#bac2ca;
  background:rgba(225,230,235,.05);
}

/* Column 3: final match numbers */
.overview-stats-card{
  display:flex;
  flex-direction:column;
}
.overview-face-stats{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
  margin-top:15px;
}
.overview-face-stat{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:58px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:12px;
  background:rgba(255,255,255,.018);
}
.overview-face-stat span{
  color:#65717c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.06em;
}
.overview-face-stat strong{
  margin-top:4px;
  color:#edf1f4;
  font-size:20px;
  line-height:1;
  font-weight:850;
  font-variant-numeric:tabular-nums lining-nums;
}
.overview-detailed-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:start;
  margin-top:12px;
}
.overview-stat-group{
  min-width:0;
  padding:10px 10px 8px;
  border:1px solid rgba(255,255,255,.052);
  border-radius:13px;
  background:rgba(255,255,255,.014);
}
.overview-stat-group h4{
  margin:0 0 7px;
  color:#909aa5;
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em;
}
.overview-stat-list{display:grid;gap:1px}
.overview-stat-row{
  min-width:0;
  min-height:25px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  border-bottom:1px solid rgba(255,255,255,.028);
}
.overview-stat-row:last-child{border-bottom:0}
.overview-stat-row>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#7e8994;
  font-size:9px;
}
.overview-stat-row strong{
  display:flex;
  align-items:baseline;
  gap:3px;
  color:#dce1e6;
  font-size:13px;
  font-weight:850;
  font-variant-numeric:tabular-nums lining-nums;
}
.overview-stat-row strong small{
  color:#a99662;
  font-size:7px;
  font-weight:850;
}

@media(max-width:1380px) and (min-width:761px){
  .build-overview-grid{
    grid-template-columns:minmax(200px,.76fr) minmax(260px,.88fr) minmax(430px,1.36fr);
    gap:11px;
  }
  .overview-profile-card,.overview-playstyle-card,.overview-stats-card{padding:15px}
  .overview-detailed-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .overview-portrait-stage{min-height:460px}
}
@media(max-width:1050px) and (min-width:761px){
  .build-overview-grid{
    grid-template-columns:minmax(190px,.72fr) minmax(250px,.9fr) minmax(350px,1.18fr);
  }
  .overview-face-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .overview-profile-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
  body.build-overview-active .left-stack{display:none!important}
  .build-overview-head{min-height:auto;margin-bottom:9px;padding:4px 1px 0}
  .build-overview-head h2{font-size:20px}
  .build-overview-head-note{display:none}
  .build-overview-grid{display:grid;grid-template-columns:1fr;min-height:0;gap:10px}
  .overview-portrait-stage{min-height:390px}
  .overview-middle-column{grid-template-rows:auto auto;gap:10px}
  .overview-profile-card,.overview-playstyle-card,.overview-stats-card{padding:14px}
  .overview-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .overview-face-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
  .overview-face-stat{min-height:50px;border-radius:9px}
  .overview-face-stat strong{font-size:16px}
  .overview-detailed-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .overview-stat-group{padding:9px 8px 7px}
}
@media(max-width:500px){
  .overview-face-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .overview-detailed-stats{grid-template-columns:1fr}
}

/* === SOURCE: css/076-v401-overview-profile-refine.css === */

/* v4.0.1 · Build Profile: logo + dynamic title, then two compact info rows */
.overview-profile-card.overview-profile-compact{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:22px 20px;
}
.overview-profile-title-row{
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
}
.overview-profile-logo{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
}
.overview-profile-logo img{
  width:39px;
  height:39px;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 3px 9px rgba(0,0,0,.22));
}
.overview-profile-title-row h3{
  min-width:0;
  margin:0;
  color:#edf1f4;
  font-size:27px;
  line-height:1.05;
  font-weight:850;
  letter-spacing:-.035em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.overview-profile-meta-row{
  min-width:0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-left:54px;
  font-variant-numeric:tabular-nums lining-nums;
}
.overview-profile-meta-row i{
  width:1px;
  height:12px;
  flex:0 0 1px;
  background:rgba(255,255,255,.075);
}
.overview-profile-meta-row span{
  color:#737f8b;
  font-size:10px;
  line-height:1.4;
  font-weight:700;
  white-space:nowrap;
}
.overview-profile-meta-row b{
  color:#cfd5db;
  font-size:12px;
  font-weight:850;
}
.overview-profile-primary{
  margin-top:14px;
}
.overview-profile-primary>span:first-child b{
  color:#d8dde2;
}
.overview-profile-secondary{
  margin-top:8px;
}
.overview-profile-secondary #overviewAccelerate{
  color:#dbc77f;
}

/* Old profile elements are retired in v4.0.1; keep legacy CSS harmless. */
.overview-profile-card .overview-profile-grid,
.overview-profile-card .overview-ap-strip,
.overview-profile-card .overview-position-pill,
.overview-profile-card .overview-model-key{
  display:none!important;
}

@media(max-width:1380px) and (min-width:761px){
  .overview-profile-card.overview-profile-compact{padding:19px 17px}
  .overview-profile-title-row h3{font-size:24px}
  .overview-profile-meta-row{margin-left:51px;gap:7px}
  .overview-profile-meta-row span{font-size:9px}
  .overview-profile-meta-row b{font-size:11px}
}
@media(max-width:760px){
  .overview-profile-card.overview-profile-compact{padding:17px 15px}
  .overview-profile-title-row h3{font-size:23px}
  .overview-profile-logo{width:38px;height:38px;flex-basis:38px}
  .overview-profile-logo img{width:35px;height:35px}
  .overview-profile-meta-row{
    margin-left:50px;
    gap:7px;
  }
}

/* === SOURCE: css/077-v402-overview-fit-and-traits.css === */

/* v4.0.2 · desktop Build Overview must fit in one viewport */
@media(min-width:761px){
  body.build-overview-active{
    height:100dvh;
    overflow:hidden;
  }
  body.build-overview-active .shell{
    height:100dvh;
    min-height:0;
    overflow:hidden;
    padding-bottom:14px;
    display:flex;
    flex-direction:column;
  }
  body.build-overview-active .topbar{
    flex:0 0 auto;
    margin-bottom:12px;
  }
  body.build-overview-active .workspace{
    flex:1 1 auto;
    min-height:0;
    align-items:stretch;
  }
  body.build-overview-active .main{
    min-height:0;
    height:100%;
    display:flex;
    flex-direction:column;
  }
  body.build-overview-active .editor-view-tabs{
    flex:0 0 auto;
    margin-bottom:9px;
  }
  body.build-overview-active .build-overview-panel{
    flex:1 1 auto;
    min-height:0;
    margin-top:0;
    display:flex;
    flex-direction:column;
  }
  body.build-overview-active .build-overview-head{
    flex:0 0 auto;
    min-height:38px;
    margin-bottom:8px;
  }
  body.build-overview-active .build-overview-head h2{
    font-size:20px;
  }
  body.build-overview-active .build-overview-grid{
    flex:1 1 auto;
    min-height:0;
    height:auto;
  }
  body.build-overview-active .overview-card,
  body.build-overview-active .overview-middle-column{
    min-height:0;
  }
  body.build-overview-active .overview-portrait-stage{
    min-height:0!important;
  }
  body.build-overview-active .overview-middle-column{
    grid-template-rows:auto minmax(0,1fr);
  }
  body.build-overview-active .overview-profile-card{
    min-height:0;
  }
  body.build-overview-active .overview-playstyle-card{
    min-height:0;
  }
  body.build-overview-active .overview-stats-card{
    min-height:0;
  }
  body.build-overview-active .footer{
    display:none!important;
  }
}

/* Build profile gets a stronger visual hierarchy without adding more factual fields. */
.overview-profile-card.overview-profile-compact{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  justify-content:flex-start;
  padding:18px 18px 16px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.032),rgba(255,255,255,.008) 46%,transparent 70%),
    radial-gradient(circle at 86% 18%,rgba(216,184,95,.065),transparent 31%),
    rgba(12,18,24,.90);
}
.overview-profile-card.overview-profile-compact::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-54px;
  top:-70px;
  width:190px;
  height:190px;
  border-radius:50%;
  border:1px solid rgba(216,184,95,.055);
  box-shadow:
    0 0 0 22px rgba(216,184,95,.018),
    0 0 0 48px rgba(216,184,95,.008);
  pointer-events:none;
}
.overview-profile-title-row{
  position:relative;
  z-index:1;
}
.overview-profile-title-row h3{
  font-size:25px;
}
.overview-profile-meta-row{
  position:relative;
  z-index:1;
}
.overview-profile-primary{
  margin-top:11px;
}
.overview-profile-secondary{
  margin-top:6px;
}
.overview-profile-traits{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  margin:13px 0 0 54px;
  padding-top:11px;
  border-top:1px solid rgba(255,255,255,.055);
}
.overview-traits-label{
  flex:0 0 auto;
  color:#636e79;
  font-size:8px;
  font-weight:800;
  letter-spacing:.07em;
  white-space:nowrap;
}
.overview-trait-chips{
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
.overview-trait-chips span{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(210,217,224,.095);
  background:rgba(227,232,237,.035);
  color:#98a2ac;
  font-size:8px;
  font-weight:760;
  white-space:nowrap;
}
.overview-trait-chips span:first-child{
  border-color:rgba(216,184,95,.18);
  background:rgba(216,184,95,.055);
  color:#bdaa71;
}

/* Slightly tighten the numeric side so 29 attributes stay comfortably visible. */
@media(min-width:761px){
  body.build-overview-active .overview-profile-card,
  body.build-overview-active .overview-playstyle-card,
  body.build-overview-active .overview-stats-card{
    padding:14px;
  }
  body.build-overview-active .overview-face-stats{
    margin-top:10px;
    gap:5px;
  }
  body.build-overview-active .overview-face-stat{
    min-height:48px;
  }
  body.build-overview-active .overview-face-stat strong{
    font-size:18px;
  }
  body.build-overview-active .overview-detailed-stats{
    margin-top:8px;
    gap:7px;
  }
  body.build-overview-active .overview-stat-group{
    padding:7px 8px 6px;
  }
  body.build-overview-active .overview-stat-group h4{
    margin-bottom:4px;
  }
  body.build-overview-active .overview-stat-row{
    min-height:21px;
  }
  body.build-overview-active .overview-stat-row>span{
    font-size:8px;
  }
  body.build-overview-active .overview-stat-row strong{
    font-size:12px;
  }
  body.build-overview-active .overview-playstyle-section{
    margin-top:10px;
    padding-top:9px;
  }
  body.build-overview-active .overview-playstyle-list{
    min-height:38px;
  }
  body.build-overview-active .overview-playstyle-empty{
    min-height:36px;
  }
}

/* Short desktop windows get an extra compact pass instead of page scrolling. */
@media(min-width:761px) and (max-height:820px){
  body.build-overview-active .shell{
    padding-top:12px;
    padding-bottom:10px;
  }
  body.build-overview-active .topbar{
    margin-bottom:8px;
  }
  body.build-overview-active .topbar .subtitle{
    display:none;
  }
  body.build-overview-active h1{
    font-size:30px;
  }
  body.build-overview-active .editor-view-tab{
    min-height:38px;
  }
  body.build-overview-active .build-overview-head{
    min-height:28px;
    margin-bottom:6px;
  }
  body.build-overview-active .build-overview-head h2{
    font-size:18px;
  }
  body.build-overview-active .build-overview-head-note{
    font-size:8px;
  }
  body.build-overview-active .overview-profile-card,
  body.build-overview-active .overview-playstyle-card,
  body.build-overview-active .overview-stats-card{
    padding:11px;
  }
  .overview-profile-logo{
    width:36px;
    height:36px;
    flex-basis:36px;
  }
  .overview-profile-logo img{
    width:33px;
    height:33px;
  }
  .overview-profile-title-row h3{
    font-size:22px;
  }
  .overview-profile-meta-row,
  .overview-profile-traits{
    margin-left:48px;
  }
  .overview-profile-primary{
    margin-top:8px;
  }
  .overview-profile-traits{
    margin-top:8px;
    padding-top:8px;
  }
  body.build-overview-active .overview-face-stat{
    min-height:42px;
  }
  body.build-overview-active .overview-stat-row{
    min-height:18px;
  }
  body.build-overview-active .overview-stat-group{
    padding:5px 7px 4px;
  }
}

/* Mobile remains naturally scrollable; squeezing all three columns into one phone viewport
   would make the data unreadable. */
@media(max-width:760px){
  .overview-profile-traits{
    margin-left:50px;
  }
}

/* === SOURCE: css/078-v403-profile-emphasis-aura.css === */

/* v4.0.3 · stronger Build info module + archetype aura logo */
.overview-profile-card.overview-profile-compact{
  padding:22px 22px 20px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.036),rgba(255,255,255,.010) 46%,transparent 70%),
    radial-gradient(circle at 84% 18%,rgba(216,184,95,.085),transparent 34%),
    rgba(12,18,24,.92);
}
.overview-profile-aura-logo{
  position:absolute;
  right:-46px;
  top:-44px;
  width:270px;
  height:270px;
  object-fit:contain;
  opacity:.115;
  pointer-events:none;
  user-select:none;
  transform:scale(1.06);
  filter:
    brightness(0) saturate(100%)
    invert(80%) sepia(24%) saturate(513%) hue-rotate(8deg) brightness(94%) contrast(87%)
    drop-shadow(0 0 26px rgba(216,184,95,.12));
}
.overview-profile-card.overview-profile-compact::after{
  right:-64px;
  top:-84px;
  width:218px;
  height:218px;
  box-shadow:
    0 0 0 24px rgba(216,184,95,.015),
    0 0 0 54px rgba(216,184,95,.007);
}
.overview-profile-title-row{gap:14px}
.overview-profile-logo{
  width:50px;
  height:50px;
  flex:0 0 50px;
}
.overview-profile-logo img{
  width:46px;
  height:46px;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.24));
}
.overview-profile-title-row h3{
  font-size:32px;
  line-height:1.02;
  letter-spacing:-.04em;
}
.overview-profile-meta-row{
  gap:11px;
  margin-left:64px;
}
.overview-profile-meta-row i{height:16px}
.overview-profile-meta-row span{
  font-size:12px;
  line-height:1.45;
}
.overview-profile-meta-row b{
  font-size:17px;
}
.overview-profile-primary{margin-top:16px}
.overview-profile-secondary{margin-top:10px}
.overview-profile-traits{
  margin:16px 0 0 64px;
  padding-top:13px;
}
.overview-traits-label{
  font-size:9px;
  letter-spacing:.08em;
}
.overview-trait-chips{gap:6px}
.overview-trait-chips span{
  min-height:25px;
  padding:0 10px;
  font-size:10px;
  font-weight:780;
}
@media(min-width:761px){
  body.build-overview-active .overview-middle-column{
    grid-template-rows:minmax(0,1.08fr) minmax(0,.92fr);
    gap:12px;
  }
  body.build-overview-active .overview-profile-card{
    padding:18px 18px 16px;
  }
}
@media(min-width:761px) and (max-height:820px){
  .overview-profile-card.overview-profile-compact{padding:18px 18px 16px}
  .overview-profile-aura-logo{
    right:-52px;
    top:-50px;
    width:230px;
    height:230px;
    opacity:.105;
  }
  .overview-profile-logo{width:44px;height:44px;flex-basis:44px}
  .overview-profile-logo img{width:40px;height:40px}
  .overview-profile-title-row h3{font-size:28px}
  .overview-profile-meta-row,
  .overview-profile-traits{margin-left:58px}
  .overview-profile-meta-row span{font-size:11px}
  .overview-profile-meta-row b{font-size:15px}
  .overview-profile-primary{margin-top:12px}
  .overview-profile-secondary{margin-top:7px}
  .overview-profile-traits{margin-top:11px;padding-top:10px}
  .overview-trait-chips span{min-height:23px;padding:0 9px;font-size:9px}
}
@media(max-width:760px){
  .overview-profile-aura-logo{
    right:-58px;
    top:-54px;
    width:210px;
    height:210px;
    opacity:.085;
  }
  .overview-profile-title-row h3{font-size:26px}
  .overview-profile-meta-row,
  .overview-profile-traits{margin-left:50px}
}

/* === SOURCE: css/079-v404-profile-playstyle-ratio-polish.css === */

/* v4.0.4 · middle column = 40% profile / 60% playstyles */
@media(min-width:761px){
  body.build-overview-active .overview-middle-column{
    grid-template-rows:minmax(0,4fr) minmax(0,6fr)!important;
    gap:12px!important;
  }
}

/* Restore v4.0.2's restrained circular gold atmosphere. */
.overview-profile-card.overview-profile-compact{
  justify-content:center;
  padding:20px 20px 18px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.032),rgba(255,255,255,.008) 46%,transparent 70%),
    radial-gradient(circle at 86% 18%,rgba(216,184,95,.065),transparent 31%),
    rgba(12,18,24,.90);
}
.overview-profile-card.overview-profile-compact::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-54px;
  top:-70px;
  width:190px;
  height:190px;
  border-radius:50%;
  border:1px solid rgba(216,184,95,.055);
  box-shadow:
    0 0 0 22px rgba(216,184,95,.018),
    0 0 0 48px rgba(216,184,95,.008);
  pointer-events:none;
}

/* Keep the larger type from v4.0.3, but give it more breathing room. */
.overview-profile-title-row{
  gap:14px;
}
.overview-profile-logo{
  width:50px;
  height:50px;
  flex:0 0 50px;
}
.overview-profile-logo img{
  width:46px;
  height:46px;
}
.overview-profile-title-row h3{
  font-size:32px;
  line-height:1.04;
}
.overview-profile-meta-row{
  gap:11px;
  margin-left:64px;
}
.overview-profile-meta-row i{
  height:16px;
}
.overview-profile-meta-row span{
  font-size:12px;
  line-height:1.55;
}
.overview-profile-meta-row b{
  font-size:17px;
}
.overview-profile-primary{
  margin-top:18px;
}
.overview-profile-secondary{
  margin-top:10px;
}
.overview-profile-traits{
  margin:17px 0 0 64px;
  padding-top:14px;
  gap:10px;
}
.overview-traits-label{
  font-size:9px;
}
.overview-trait-chips{
  gap:7px;
}
.overview-trait-chips span{
  min-height:25px;
  padding:0 10px;
  font-size:10px;
}

/* Short viewports: preserve the same 4:6 relationship while compacting spacing, not typography. */
@media(min-width:761px) and (max-height:820px){
  body.build-overview-active .overview-middle-column{
    grid-template-rows:minmax(0,4fr) minmax(0,6fr)!important;
    gap:10px!important;
  }
  .overview-profile-card.overview-profile-compact{
    padding:16px 17px 14px;
  }
  .overview-profile-logo{
    width:44px;
    height:44px;
    flex-basis:44px;
  }
  .overview-profile-logo img{
    width:40px;
    height:40px;
  }
  .overview-profile-title-row h3{
    font-size:28px;
  }
  .overview-profile-meta-row,
  .overview-profile-traits{
    margin-left:58px;
  }
  .overview-profile-primary{
    margin-top:11px;
  }
  .overview-profile-secondary{
    margin-top:6px;
  }
  .overview-profile-traits{
    margin-top:10px;
    padding-top:9px;
  }
  .overview-profile-meta-row span{
    font-size:11px;
  }
  .overview-profile-meta-row b{
    font-size:15px;
  }
  .overview-trait-chips span{
    min-height:23px;
    padding:0 9px;
    font-size:9px;
  }
}

@media(max-width:760px){
  .overview-profile-card.overview-profile-compact::after{
    right:-54px;
    top:-70px;
    width:190px;
    height:190px;
  }
}

/* === SOURCE: css/080-v405-profile-name-and-alignment.css === */

/* v4.0.5 · inline English archetype name + left-shifted information rhythm */
.overview-profile-name-lockup{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}
.overview-profile-name-lockup h3{
  flex:0 0 auto;
}
.overview-model-english{
  color:#67727e;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.025em;
  white-space:nowrap;
}

/* The title stays tied to the logo, while the three content rows move left
   to reduce the empty gutter before the PlayStyle module below. */
.overview-profile-meta-row,
.overview-profile-traits{
  margin-left:42px!important;
}
.overview-profile-meta-row{
  column-gap:11px;
}
.overview-profile-traits{
  padding-right:8px;
}

/* Let the divider/traits block feel wider after shifting left. */
.overview-profile-traits{
  width:calc(100% - 42px);
}

/* Short desktop windows preserve the same alignment instead of drifting right. */
@media(min-width:761px) and (max-height:820px){
  .overview-profile-meta-row,
  .overview-profile-traits{
    margin-left:38px!important;
  }
  .overview-profile-traits{
    width:calc(100% - 38px);
  }
  .overview-model-english{
    font-size:11px;
  }
}

/* Narrow desktop/tablet: keep English on the title line when possible,
   but allow it to wrap cleanly instead of crushing the Chinese title. */
@media(max-width:1100px) and (min-width:761px){
  .overview-profile-name-lockup{gap:8px}
  .overview-model-english{font-size:10px}
}

@media(max-width:760px){
  .overview-profile-meta-row,
  .overview-profile-traits{
    margin-left:34px!important;
  }
  .overview-profile-traits{
    width:calc(100% - 34px);
  }
  .overview-model-english{
    font-size:10px;
  }
}

/* === SOURCE: css/081-v406-overview-column-order.css === */

/* v4.0.6 · Build Overview column order:
   left = profile/loadout, center = match attributes, right = inspiration player */
.build-overview-grid{
  grid-template-columns:minmax(300px,.90fr) minmax(520px,1.48fr) minmax(220px,.82fr)!important;
  grid-template-areas:"profile stats portrait";
}
.overview-middle-column{
  grid-area:profile;
}
.overview-stats-card{
  grid-area:stats;
}
.overview-portrait-card{
  grid-area:portrait;
}

/* Keep the center attribute column as the visual/data priority. */
.overview-stats-card{
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.overview-portrait-card{
  opacity:.97;
}

/* Medium desktops: preserve the same hierarchy, only tighten minimums. */
@media(max-width:1380px) and (min-width:761px){
  .build-overview-grid{
    grid-template-columns:minmax(270px,.88fr) minmax(430px,1.42fr) minmax(200px,.76fr)!important;
    grid-template-areas:"profile stats portrait";
  }
}
@media(max-width:1050px) and (min-width:761px){
  .build-overview-grid{
    grid-template-columns:minmax(245px,.90fr) minmax(360px,1.30fr) minmax(185px,.70fr)!important;
    grid-template-areas:"profile stats portrait";
  }
}

/* Mobile falls back to a readable vertical order:
   profile/loadout -> stats -> portrait. */
@media(max-width:760px){
  .build-overview-grid{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "profile"
      "stats"
      "portrait";
  }
}

/* === SOURCE: css/082-v410-specialization-page.css === */

/* ===== v4.1 · Specializations ===== */
.specialization-nav-tab{overflow:visible!important}
.specialization-tab-label{position:relative;display:inline-flex;align-items:center;line-height:1;overflow:visible}
.specialization-tab-toast{position:absolute;left:50%;top:-6px;z-index:140;transform:translate(-50%,-100%) scale(.98);min-width:max-content;max-width:320px;padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(16,22,29,.96);color:#d6dde4;box-shadow:0 10px 28px rgba(0,0,0,.35);font-size:10px;font-weight:800;letter-spacing:.01em;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;white-space:nowrap}
.specialization-tab-toast.show{opacity:1;transform:translate(-50%,-112%) scale(1)}
.specialization-tab-toast.gain,.specialization-tab-toast.equip{border-color:rgba(216,184,95,.30);color:#e2cb80;background:rgba(29,27,19,.97)}
.specialization-tab-toast.loss{border-color:rgba(200,90,96,.30);color:#e1a1a5;background:rgba(31,20,24,.97)}
.specialization-tab-toast.info{color:#bdc6cf}
.specialization-panel{margin-top:2px;min-width:0}
.specialization-page-head{min-height:62px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px;padding:0 4px}
.specialization-heading-line{display:flex;align-items:baseline;gap:9px;margin-top:2px}
.specialization-heading-line h2{margin:0;color:#eef2f6;font-size:24px;letter-spacing:-.025em}
.specialization-heading-line span{color:#65717d;font-size:11px;font-weight:800}
.specialization-page-head p{margin:6px 0 0;color:#687480;font-size:10px;line-height:1.4}
.specialization-ap-summary{min-width:96px;display:flex;flex-direction:column;align-items:flex-end;padding:8px 11px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.018)}
.specialization-ap-summary span{color:#6b7681;font-size:8px;font-weight:800}
.specialization-ap-summary strong{margin-top:2px;color:#e2e6ea;font-size:18px;font-weight:900;font-variant-numeric:tabular-nums}
.specialization-cards{display:grid;grid-template-columns:1.03fr repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;padding:7px 4px 10px}
.specialization-card{position:relative;min-width:0;min-height:590px;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.075);border-radius:19px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008) 43%,transparent 70%),rgba(12,18,24,.94);box-shadow:0 14px 34px rgba(0,0,0,.18);overflow:hidden;transform-origin:center bottom;transition:transform .24s cubic-bezier(.22,.8,.22,1),border-color .2s ease,box-shadow .24s ease,opacity .2s ease,filter .2s ease;cursor:pointer}
.specialization-card:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px)}
.specialization-card.is-focused:not(.state-3){box-shadow:0 14px 34px rgba(0,0,0,.18),inset 0 0 0 1px rgba(220,226,232,.12)}
.specialization-card.state-1{opacity:.70;background:rgba(10,15,20,.92)}
.specialization-card.state-1 .spec-player-image img{filter:grayscale(.78) saturate(.38) brightness(.70)}
.specialization-card.state-2{border-color:rgba(205,214,222,.14)}
.specialization-card.state-3{z-index:3;transform:translateY(-7px) scale(1.035);border-color:rgba(216,184,95,.42);box-shadow:0 22px 46px rgba(0,0,0,.29),0 0 0 1px rgba(216,184,95,.08),0 0 30px rgba(216,184,95,.065)}
.specialization-card.state-3:hover{transform:translateY(-8px) scale(1.038)}
.specialization-card.just-equipped{animation:specEquipPop .68s cubic-bezier(.2,.88,.26,1) both}
@keyframes specEquipPop{0%{filter:brightness(1);transform:translateY(0) scale(1)}42%{filter:brightness(1.12);transform:translateY(-10px) scale(1.052)}100%{filter:brightness(1);transform:translateY(-7px) scale(1.035)}}
.spec-card-status{position:absolute;z-index:5;top:12px;right:12px;min-height:23px;display:inline-flex;align-items:center;padding:0 8px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(9,14,19,.78);color:#707b87;font-size:8px;font-weight:900;letter-spacing:.05em;backdrop-filter:blur(10px)}
.state-2 .spec-card-status{color:#b4bec8;border-color:rgba(204,213,221,.18)}
.state-3 .spec-card-status{color:#e1c872;border-color:rgba(216,184,95,.26);background:rgba(38,32,18,.78)}
.spec-player-image{position:relative;height:164px;overflow:hidden;background:#101821}
.spec-player-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;transition:filter .2s ease,transform .3s ease}
.specialization-card:hover .spec-player-image img{transform:scale(1.018)}
.spec-player-fade{position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(180deg,transparent,rgba(12,18,24,.96));pointer-events:none}
.spec-player-image>span{position:absolute;z-index:2;left:14px;bottom:10px;color:#b8c1c9;font-size:9px;font-weight:750;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.state-1 .spec-player-image>span{color:#747f89}
.spec-base-visual{height:164px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:radial-gradient(circle at 50% 48%,rgba(216,184,95,.07),transparent 40%)}
.spec-base-visual img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 9px 20px rgba(0,0,0,.28))}
.spec-base-visual span{color:#606b76;font-size:8px;font-weight:900;letter-spacing:.12em}
.spec-card-title{display:flex;align-items:baseline;gap:7px;padding:14px 14px 0}
.spec-card-title h3{margin:0;color:#e3e8ed;font-size:19px;letter-spacing:-.02em}
.spec-card-title>span{color:#64707b;font-size:9px;font-weight:800;white-space:nowrap}
.state-3 .spec-card-title h3{color:#ead58a}
.spec-requirements,.spec-info-block{margin:12px 14px 0;padding-top:11px;border-top:1px solid rgba(255,255,255,.055)}
.spec-requirements>label,.spec-info-block>label,.spec-reward-row label{display:block;color:#687480;font-size:8px;font-weight:900;letter-spacing:.05em;margin-bottom:7px}
.spec-requirement{min-height:27px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(255,255,255,.028)}
.spec-requirement:last-child{border-bottom:0}
.spec-requirement>span{color:#8a95a0;font-size:10px}
.spec-requirement strong{display:flex;align-items:baseline;gap:3px;color:#d8dee4;font-size:13px;font-weight:900;font-variant-numeric:tabular-nums}
.spec-requirement strong em{font-style:normal;color:#65717c;font-size:8px;font-weight:750}
.spec-requirement.met strong{color:#cfd8df}
.spec-requirement.missing strong{color:#d5968e}
.spec-requirement.met::after{content:'✓';margin-left:-4px;color:#91a69d;font-size:8px}
.spec-reward-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:11px 14px 0}
.spec-reward-row>div{min-width:0;padding:9px 10px;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.018)}
.spec-reward-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#cdd4db;font-size:11px}
.spec-reward-row>div:first-child strong{color:#d9bf69}
.signature-style{display:block;color:#d1d8df;font-size:16px;font-weight:900}
.signature-style.plus{color:#ddc472}
.spec-info-block small{display:block;margin-top:3px;color:#606b75;font-size:8px}
.spec-perk-list{display:grid;gap:5px}
.spec-perk-row{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;border:1px solid rgba(255,255,255,.045);border-radius:9px;background:rgba(255,255,255,.015)}
.spec-perk-row span{color:#aab4bd;font-size:10px;font-weight:750}
.spec-perk-row b{color:#75818c;font-size:8px}
.spec-perk-row.locked{opacity:.56}
.spec-card-actions{display:flex;gap:7px;margin:auto 14px 14px;padding-top:12px}
.spec-card-actions.two>button{flex:1 1 0}
.spec-card-actions button{min-height:36px;border-radius:11px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:#9da8b2;font:800 9px/1 inherit;cursor:pointer;transition:.16s ease}
.spec-card-actions button:not(:disabled):hover{border-color:rgba(216,184,95,.28);color:#e2d39b;background:rgba(216,184,95,.055)}
.spec-card-actions button:disabled{cursor:default;opacity:.48}
.spec-card-actions .spec-equip-btn:not(:disabled){border-color:rgba(216,184,95,.28);color:#dbc77f;background:rgba(216,184,95,.055)}
.spec-card-actions .spec-equip-btn.equipped{opacity:1;color:#e5ce7b;border-color:rgba(216,184,95,.34);background:rgba(216,184,95,.085)}
.spec-card-actions .spec-match-btn:not(:disabled){color:#c0c8d0}
.overview-player-portrait{position:absolute;z-index:1;width:108%;height:72%;left:50%;bottom:58px;transform:translateX(-50%);object-fit:cover;object-position:center center;border-radius:18px;filter:saturate(.90) contrast(1.02);-webkit-mask-image:linear-gradient(to bottom,#000 68%,transparent 100%);mask-image:linear-gradient(to bottom,#000 68%,transparent 100%)}
@media(max-width:1280px) and (min-width:761px){.specialization-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.specialization-card{min-height:560px}}
@media(max-width:760px){.specialization-page-head{align-items:flex-start;min-height:auto;margin-bottom:9px}.specialization-heading-line h2{font-size:20px}.specialization-page-head p{font-size:9px}.specialization-ap-summary{min-width:78px;padding:7px 9px}.specialization-cards{grid-template-columns:1fr;gap:10px;padding:4px 0 12px}.specialization-card{min-height:0}.specialization-card.state-3,.specialization-card.state-3:hover{transform:none}.specialization-card.just-equipped{animation:none}.spec-player-image,.spec-base-visual{height:190px}.specialization-tab-toast{top:calc(100% + 8px);font-size:9px;max-width:240px}}

/* === SOURCE: css/083-v411-specialization-compact-equipped.css === */

/* v4.1.1 · shorter specialization cards + safer equipped scale + stronger gold equipped state */

/* Keep the four-card page visually compact on desktop. */
@media(min-width:1281px){
  .specialization-page-head{
    min-height:52px;
    margin-bottom:8px;
  }
  .specialization-cards{
    gap:11px;
    align-items:center;
    padding:12px 6px 12px;
  }
  .specialization-card{
    min-height:0!important;
    height:500px;
    border-radius:18px;
    transform-origin:center center;
  }

  /* The default card used to rise into the explanatory copy because it starts equipped.
     Keep the equipped card enlarged, but do it inside a safe envelope. */
  .specialization-card.state-3{
    transform:scale(1.018);
  }
  .specialization-card.state-3:hover{
    transform:translateY(-1px) scale(1.021);
  }
  @keyframes specEquipPop{
    0%{filter:brightness(1);transform:scale(1)}
    46%{filter:brightness(1.10);transform:scale(1.028)}
    100%{filter:brightness(1);transform:scale(1.018)}
  }

  .spec-player-image,
  .spec-base-visual{
    height:132px;
    flex:0 0 132px;
  }
  .spec-base-visual img{
    width:70px;
    height:70px;
  }

  .spec-card-title{
    padding:11px 12px 0;
  }
  .spec-card-title h3{
    font-size:18px;
  }

  .spec-requirements,
  .spec-info-block{
    margin:8px 12px 0;
    padding-top:8px;
  }
  .spec-requirements>label,
  .spec-info-block>label,
  .spec-reward-row label{
    margin-bottom:5px;
  }
  .spec-requirement{
    min-height:24px;
  }
  .spec-requirement>span{
    font-size:9px;
  }
  .spec-requirement strong{
    font-size:12px;
  }

  .spec-reward-row{
    gap:6px;
    margin:8px 12px 0;
  }
  .spec-reward-row>div{
    padding:7px 8px;
  }
  .spec-reward-row strong{
    font-size:10px;
  }

  .signature-style{
    font-size:15px;
  }
  .spec-info-block small{
    margin-top:2px;
  }
  .spec-perk-list{
    gap:4px;
  }
  .spec-perk-row{
    min-height:26px;
  }
  .spec-perk-row span{
    font-size:9px;
  }

  .spec-card-actions{
    gap:6px;
    margin:8px 12px 11px;
    padding-top:8px;
  }
  .spec-card-actions button{
    min-height:33px;
  }
}

/* State 2 = unlocked / equip-ready: cool silver, intentionally restrained. */
.specialization-card.state-2{
  border-color:rgba(210,219,227,.19);
  box-shadow:
    0 14px 34px rgba(0,0,0,.18),
    inset 0 0 0 1px rgba(220,228,235,.025);
}

/* State 3 = actually equipped: noticeably more premium than state 2. */
.specialization-card.state-3{
  border-color:rgba(216,184,95,.52)!important;
  background:
    linear-gradient(180deg,rgba(216,184,95,.045),transparent 24%),
    linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.008) 43%,transparent 70%),
    rgba(12,18,24,.96);
  box-shadow:
    0 20px 46px rgba(0,0,0,.30),
    0 0 0 1px rgba(216,184,95,.10),
    0 0 34px rgba(216,184,95,.11),
    inset 0 -26px 34px rgba(216,184,95,.045),
    inset 0 0 22px rgba(216,184,95,.035)!important;
}
.specialization-card.state-3::before{
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(180deg,transparent 69%,rgba(216,184,95,.025) 84%,rgba(216,184,95,.105) 100%);
}
.specialization-card.state-3::after{
  content:"";
  position:absolute;
  z-index:5;
  left:12%;
  right:12%;
  bottom:0;
  height:2px;
  border-radius:999px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(232,205,117,.76),transparent);
  box-shadow:0 0 12px rgba(216,184,95,.22);
}
.specialization-card.state-3 .spec-card-status{
  box-shadow:0 0 12px rgba(216,184,95,.08);
}
.specialization-card.state-3 .spec-equip-btn.equipped{
  box-shadow:inset 0 0 16px rgba(216,184,95,.045);
}

/* At common 1080p-ish browser heights, take one more compact pass instead of
   letting the equipped card or the default card touch the copy above/bottom edge. */
@media(min-width:1281px) and (max-height:900px){
  .specialization-page-head{
    min-height:46px;
    margin-bottom:6px;
  }
  .specialization-page-head p{
    margin-top:4px;
  }
  .specialization-cards{
    padding-top:10px;
    padding-bottom:9px;
  }
  .specialization-card{
    height:466px;
  }
  .spec-player-image,
  .spec-base-visual{
    height:116px;
    flex-basis:116px;
  }
  .spec-base-visual img{
    width:62px;
    height:62px;
  }
  .spec-card-title{
    padding-top:9px;
  }
  .spec-requirements,
  .spec-info-block{
    margin-top:6px;
    padding-top:6px;
  }
  .spec-requirement{
    min-height:22px;
  }
  .spec-reward-row{
    margin-top:6px;
  }
  .spec-card-actions{
    margin-bottom:9px;
    padding-top:6px;
  }
}

/* Two-column desktop/tablet layout also gets shorter cards. */
@media(max-width:1280px) and (min-width:761px){
  .specialization-card{
    min-height:500px!important;
  }
  .specialization-card.state-3,
  .specialization-card.state-3:hover{
    transform:scale(1.012);
    transform-origin:center center;
  }
  .spec-player-image,
  .spec-base-visual{
    height:138px;
  }
}

/* Mobile keeps natural document flow and no scale-up. */
@media(max-width:760px){
  .specialization-card.state-3,
  .specialization-card.state-3:hover{
    transform:none!important;
  }
}

/* === SOURCE: css/084-v412-specialization-interaction-polish.css === */

/* v4.1.2 · unified specialization action button + lighter reward text + stronger dock motion */
@media(min-width:1281px){
  .specialization-cards{
    display:flex!important;
    align-items:flex-end;
    gap:12px;
    overflow:visible;
  }
  .specialization-card{
    flex-grow:1;
    flex-basis:0;
    min-width:0;
    --spec-lift:0px;
    --spec-scale:1;
    transform:translateY(var(--spec-lift)) scale(var(--spec-scale));
    transition:transform .28s cubic-bezier(.22,.8,.22,1),border-color .2s ease,box-shadow .24s ease,opacity .2s ease,filter .2s ease,flex-grow .28s cubic-bezier(.22,.8,.22,1);
  }
  .specialization-card.base-card{flex-grow:1.03;}
  .specialization-card:hover{transform:translateY(var(--spec-lift)) scale(var(--spec-scale));}
  .specialization-card.state-3{--spec-lift:-2px;--spec-scale:1.02;z-index:3;}
  .specialization-card.state-3:hover{--spec-lift:-2px;--spec-scale:1.02;}
  .specialization-card.dock-hover{flex-grow:1.18;--spec-lift:-7px;--spec-scale:1.095;z-index:5;}
  .specialization-card.state-3.dock-hover{--spec-lift:-9px;--spec-scale:1.108;}
  .specialization-card.dock-near{flex-grow:.93;}
  .specialization-card.dock-far{flex-grow:.88;}
  @keyframes specEquipPop{0%{filter:brightness(1);transform:translateY(0) scale(1)}46%{filter:brightness(1.10);transform:translateY(-6px) scale(1.07)}100%{filter:brightness(1);transform:translateY(var(--spec-lift)) scale(var(--spec-scale))}}

  .spec-reward-row{margin:7px 12px 0;gap:6px}
  .spec-reward-row>div{padding:7px 8px;border-radius:10px}
  .spec-reward-row label{font-size:7px;letter-spacing:.045em;margin-bottom:4px;color:#64707b}
  .spec-reward-row strong{font-size:9px;line-height:1.25;font-weight:800;color:#c6ced6}
  .spec-reward-row>div:first-child strong{color:#d2bb72}

  .spec-card-actions.single{margin:9px 12px 12px;padding-top:9px}
  .spec-action-btn{
    width:100%;
    min-height:37px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.09);
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
    color:#a6b0ba;
    font:700 9px/1 inherit;
    letter-spacing:.04em;
    cursor:pointer;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.045),inset 0 -10px 18px rgba(0,0,0,.12),0 6px 16px rgba(0,0,0,.18);
    transition:transform .16s ease,border-color .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease,opacity .18s ease;
  }
  .spec-action-btn:not(:disabled):hover{
    transform:translateY(-1px);
    border-color:rgba(255,255,255,.15);
    color:#d8dee4;
    background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.028));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 -12px 18px rgba(0,0,0,.14),0 10px 20px rgba(0,0,0,.22);
  }
  .spec-action-btn.is-match:not(:disabled){color:#bcc5ce;}
  .spec-action-btn.is-match:not(:disabled):hover{border-color:rgba(200,210,220,.18);color:#e3e8ed;background:linear-gradient(180deg,rgba(214,222,230,.055),rgba(255,255,255,.025));}
  .spec-action-btn.is-equip:not(:disabled){border-color:rgba(216,184,95,.24);color:#d9c574;background:linear-gradient(180deg,rgba(216,184,95,.09),rgba(216,184,95,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),inset 0 -12px 18px rgba(62,49,14,.18),0 8px 18px rgba(0,0,0,.2);}
  .spec-action-btn.is-equip:not(:disabled):hover{border-color:rgba(216,184,95,.34);color:#eddc9d;background:linear-gradient(180deg,rgba(216,184,95,.12),rgba(216,184,95,.05));}
  .spec-action-btn.is-active{cursor:default;opacity:1;color:#d7bf74;border-color:rgba(216,184,95,.22);background:linear-gradient(180deg,rgba(216,184,95,.05),rgba(216,184,95,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.03),inset 0 -10px 16px rgba(58,47,17,.16);}
  .spec-action-btn:disabled{opacity:1}
}

@media(max-width:1280px) and (min-width:761px){
  .spec-reward-row strong{font-size:9.5px}
  .spec-card-actions.single{margin:8px 12px 10px;padding-top:7px}
  .spec-action-btn{width:100%;min-height:35px;border-radius:11px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));color:#a6b0ba;font:700 9px/1 inherit;letter-spacing:.04em;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),inset 0 -10px 16px rgba(0,0,0,.12),0 6px 16px rgba(0,0,0,.16)}
  .spec-action-btn.is-equip:not(:disabled){border-color:rgba(216,184,95,.24);color:#d9c574;background:linear-gradient(180deg,rgba(216,184,95,.09),rgba(216,184,95,.035));}
  .spec-action-btn.is-active{opacity:1;color:#d7bf74;border-color:rgba(216,184,95,.22);background:linear-gradient(180deg,rgba(216,184,95,.05),rgba(216,184,95,.025));}
  .spec-action-btn:disabled{opacity:1}
}

@media(max-width:760px){
  .spec-card-actions.single{margin:8px 0 0;padding-top:8px}
  .spec-action-btn{width:100%;min-height:36px;border-radius:11px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);color:#b6bec7;font:700 10px/1 inherit;letter-spacing:.03em}
  .spec-action-btn.is-equip:not(:disabled){border-color:rgba(216,184,95,.24);color:#d9c574;background:rgba(216,184,95,.08)}
  .spec-action-btn.is-active{opacity:1;color:#d7bf74;border-color:rgba(216,184,95,.22);background:rgba(216,184,95,.05)}
  .spec-action-btn:disabled{opacity:1}
  .spec-reward-row strong{font-size:10px}
}

/* === SOURCE: css/085-v413-equipped-spotlight.css === */

/* v4.1.3 · Equipped Spotlight
   Stable four-card layout: no Dock expansion, no hover scaling. */

@media(min-width:1281px){
  .specialization-cards{
    display:grid!important;
    grid-template-columns:1.03fr repeat(3,minmax(0,1fr))!important;
    gap:17px!important;
    align-items:center!important;
    padding:13px 9px 13px!important;
    overflow:visible;
  }
  .specialization-card,
  .specialization-card.base-card,
  .specialization-card.dock-hover,
  .specialization-card.dock-near,
  .specialization-card.dock-far{
    flex:none!important;
    height:448px!important;
    min-height:0!important;
    --spec-lift:0px!important;
    --spec-scale:1!important;
    transform:none!important;
    transform-origin:center center!important;
    transition:border-color .22s ease,box-shadow .26s ease,opacity .2s ease,filter .2s ease,background .24s ease!important;
  }
  .specialization-card:hover,
  .specialization-card.state-3,
  .specialization-card.state-3:hover,
  .specialization-card.state-3.dock-hover{
    transform:none!important;
  }

  /* Keep browsing/focus understated; equipment is the only premium visual state. */
  .specialization-card.is-focused:not(.state-3){
    border-color:rgba(221,228,234,.18)!important;
    box-shadow:0 14px 34px rgba(0,0,0,.18),inset 0 0 0 1px rgba(220,226,232,.055)!important;
  }

  /* Compact cards so the whole specialization page remains safely inside one viewport. */
  .spec-player-image,
  .spec-base-visual{
    height:108px!important;
    flex:0 0 108px!important;
  }
  .spec-base-visual img{width:58px!important;height:58px!important}
  .spec-card-title{padding:8px 11px 0!important}
  .spec-card-title h3{font-size:17px!important}
  .spec-card-title>span{font-size:8px!important}
  .spec-requirements,
  .spec-info-block{margin:6px 11px 0!important;padding-top:6px!important}
  .spec-requirements>label,
  .spec-info-block>label,
  .spec-reward-row label{margin-bottom:4px!important}
  .spec-requirement{min-height:21px!important}
  .spec-requirement>span{font-size:8.5px!important}
  .spec-requirement strong{font-size:11px!important}
  .spec-reward-row{margin:6px 11px 0!important;gap:6px!important}
  .spec-reward-row>div{padding:6px 7px!important}
  .spec-reward-row label{font-size:7px!important}
  .spec-reward-row strong{font-size:8.5px!important}
  .signature-style{font-size:14px!important}
  .spec-info-block small{font-size:7px!important}
  .spec-perk-list{gap:3px!important}
  .spec-perk-row{min-height:23px!important;padding:0 7px!important}
  .spec-perk-row span{font-size:8.5px!important}
  .spec-perk-row b{font-size:7px!important}
  .spec-card-actions.single{margin:7px 11px 10px!important;padding-top:7px!important}
  .spec-action-btn{min-height:34px!important;font-size:8.5px!important}

  /* State 3 = equipped: fixed size, but lit from above and warmed at the base. */
  .specialization-card.state-3{
    position:relative;
    z-index:3;
    border-color:rgba(223,192,99,.58)!important;
    background:
      radial-gradient(ellipse 78% 34% at 50% -4%,rgba(245,220,139,.20),rgba(216,184,95,.075) 38%,transparent 72%),
      linear-gradient(180deg,rgba(216,184,95,.045),transparent 27%),
      linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.008) 43%,transparent 70%),
      rgba(12,18,24,.96)!important;
    box-shadow:
      0 20px 44px rgba(0,0,0,.30),
      0 0 0 1px rgba(216,184,95,.11),
      0 -10px 32px rgba(229,201,115,.10),
      0 0 40px rgba(216,184,95,.12),
      inset 0 24px 44px rgba(239,211,128,.035),
      inset 0 -30px 42px rgba(216,184,95,.055)!important;
  }
  .specialization-card.state-3::before{
    content:"";
    position:absolute;
    z-index:4;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    background:
      radial-gradient(ellipse 66% 21% at 50% 0%,rgba(255,229,147,.16),transparent 72%),
      linear-gradient(180deg,transparent 70%,rgba(216,184,95,.025) 84%,rgba(216,184,95,.11) 100%)!important;
  }
  .specialization-card.state-3::after{
    content:"";
    position:absolute;
    z-index:5;
    left:11%;
    right:11%;
    bottom:0;
    height:2px;
    border-radius:999px;
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(241,214,128,.86),transparent)!important;
    box-shadow:0 0 15px rgba(216,184,95,.28)!important;
  }
  .specialization-card.state-3 .spec-card-status{
    color:#ead58a!important;
    border-color:rgba(216,184,95,.36)!important;
    background:rgba(43,35,18,.82)!important;
    box-shadow:0 0 16px rgba(216,184,95,.11)!important;
  }
  .specialization-card.state-3 .spec-card-title h3{color:#efd98a!important}

  /* Equipment transition: brief light-up, then settle at fixed dimensions. */
  .specialization-card.just-equipped{
    animation:specSpotlightEquip .48s cubic-bezier(.2,.88,.26,1) both!important;
  }
  @keyframes specSpotlightEquip{
    0%{filter:brightness(1);box-shadow:0 14px 34px rgba(0,0,0,.18)}
    42%{filter:brightness(1.13);box-shadow:0 20px 50px rgba(0,0,0,.30),0 0 52px rgba(229,201,115,.22)}
    100%{filter:brightness(1)}
  }
}

/* Short desktop heights: same fixed layout, slightly shorter cards. */
@media(min-width:1281px) and (max-height:900px){
  .specialization-cards{gap:16px!important;padding-top:10px!important;padding-bottom:10px!important}
  .specialization-card,
  .specialization-card.base-card{height:424px!important}
  .spec-player-image,
  .spec-base-visual{height:96px!important;flex-basis:96px!important}
  .spec-card-title{padding-top:7px!important}
  .spec-requirements,
  .spec-info-block{margin-top:5px!important;padding-top:5px!important}
  .spec-requirement{min-height:19px!important}
  .spec-reward-row{margin-top:5px!important}
  .spec-card-actions.single{margin-bottom:8px!important;padding-top:5px!important}
}

/* Tablet: don't scale cards either. */
@media(max-width:1280px) and (min-width:761px){
  .specialization-card,
  .specialization-card.state-3,
  .specialization-card.state-3:hover{transform:none!important}
}

/* === SOURCE: css/086-v414-equipped-rise.css === */

/* v4.1.4 · Equipped card "grows upward" instead of scaling.
   All cards share the same bottom baseline; the equipped card gains height,
   so only its top edge rises. Internal type/image sizing stays unchanged. */

@media(min-width:1281px){
  .specialization-cards{
    align-items:end!important;
    padding-top:28px!important;
    padding-bottom:8px!important;
  }

  .specialization-card,
  .specialization-card.base-card{
    --spec-normal-height:418px;
    --spec-equipped-height:448px;
    height:var(--spec-normal-height)!important;
    min-height:0!important;
    transition:
      height .44s cubic-bezier(.22,.8,.22,1),
      border-color .22s ease,
      box-shadow .26s ease,
      opacity .2s ease,
      filter .2s ease,
      background .24s ease!important;
  }

  /* State 3 changes height only; width, type, images and internal spacing do not scale. */
  .specialization-card.state-3{
    height:var(--spec-equipped-height)!important;
  }

  /* Newly equipped card visibly rises from the normal card height. */
  .specialization-card.just-equipped{
    animation:specRiseEquip .52s cubic-bezier(.2,.88,.26,1) both!important;
  }
  @keyframes specRiseEquip{
    0%{
      height:var(--spec-normal-height);
      filter:brightness(1);
      box-shadow:0 14px 34px rgba(0,0,0,.18);
    }
    48%{
      height:calc(var(--spec-equipped-height) + 4px);
      filter:brightness(1.10);
      box-shadow:
        0 20px 48px rgba(0,0,0,.30),
        0 0 46px rgba(229,201,115,.18);
    }
    100%{
      height:var(--spec-equipped-height);
      filter:brightness(1);
    }
  }
}

/* Short desktop windows: same ~30px rise, with a slightly smaller baseline
   so the page still fits without vertical scrolling. */
@media(min-width:1281px) and (max-height:900px){
  .specialization-cards{
    padding-top:24px!important;
    padding-bottom:6px!important;
  }
  .specialization-card,
  .specialization-card.base-card{
    --spec-normal-height:394px;
    --spec-equipped-height:424px;
    height:var(--spec-normal-height)!important;
  }
  .specialization-card.state-3{
    height:var(--spec-equipped-height)!important;
  }
}

/* Tablet/mobile remain stable; no vertical growth that could complicate stacked layouts. */
@media(max-width:1280px){
  .specialization-card,
  .specialization-card.state-3{
    height:auto;
  }
}

/* === SOURCE: css/087-v415-slow-rise-bloom.css === */

/* v4.1.5 · slower, more visible equipped transition.
   Same final dimensions as v4.1.4; only the timing/feeling changes. */

@media(min-width:1281px){
  .specialization-card,
  .specialization-card.base-card{
    transition:
      height .92s cubic-bezier(.25,.72,.30,1),
      border-color .42s ease,
      box-shadow .70s ease,
      opacity .3s ease,
      filter .55s ease,
      background .62s ease!important;
  }

  .specialization-card.just-equipped{
    animation:specRiseEquipSlow 1.18s cubic-bezier(.22,.68,.26,1) both!important;
  }

  @keyframes specRiseEquipSlow{
    0%{
      height:var(--spec-normal-height);
      filter:brightness(1);
      box-shadow:0 14px 34px rgba(0,0,0,.18);
    }
    22%{
      height:calc(var(--spec-normal-height) + 7px);
      filter:brightness(1.025);
      box-shadow:
        0 16px 38px rgba(0,0,0,.21),
        0 0 12px rgba(229,201,115,.035);
    }
    58%{
      height:calc(var(--spec-normal-height) + 23px);
      filter:brightness(1.065);
      box-shadow:
        0 19px 44px rgba(0,0,0,.26),
        0 0 30px rgba(229,201,115,.11);
    }
    80%{
      height:calc(var(--spec-equipped-height) + 2px);
      filter:brightness(1.095);
      box-shadow:
        0 21px 50px rgba(0,0,0,.30),
        0 0 48px rgba(229,201,115,.19);
    }
    100%{
      height:var(--spec-equipped-height);
      filter:brightness(1);
    }
  }

  /* Let the top spotlight bloom in gradually instead of appearing immediately. */
  .specialization-card.state-3.just-equipped::before{
    animation:specTopLightBloom 1.18s cubic-bezier(.22,.68,.26,1) both!important;
  }
  @keyframes specTopLightBloom{
    0%{opacity:.12}
    24%{opacity:.28}
    58%{opacity:.66}
    82%{opacity:1}
    100%{opacity:1}
  }

  /* Bottom gold line arrives a little later, reinforcing the "settled" state. */
  .specialization-card.state-3.just-equipped::after{
    transform-origin:center center;
    animation:specBottomLineReveal 1.18s ease both!important;
  }
  @keyframes specBottomLineReveal{
    0%,34%{opacity:0;transform:scaleX(.28)}
    68%{opacity:.46;transform:scaleX(.72)}
    88%,100%{opacity:1;transform:scaleX(1)}
  }
}

/* Preserve the exact same final 30px rise on short desktop windows. */
@media(min-width:1281px) and (max-height:900px){
  .specialization-card.just-equipped{
    animation-duration:1.14s!important;
  }
  .specialization-card.state-3.just-equipped::before,
  .specialization-card.state-3.just-equipped::after{
    animation-duration:1.14s!important;
  }
}

/* === SOURCE: css/088-v4110-delayed-gold-bloom.css === */

/* v4.1.10 · two-stage equip choreography:
   1) card rises + portrait grows for 2s
   2) near the end, the gold frame / spotlight blooms in */

@media(min-width:1281px){
  /* Disable the older immediate light animations; this version uses a delayed phase. */
  .specialization-card.state-3.just-equipped::before,
  .specialization-card.state-3.just-equipped::after{
    animation:none!important;
  }

  /* While growing, state 3 deliberately looks almost like a clean state-2 card. */
  .specialization-card.state-3.gold-pending{
    border-color:rgba(210,219,227,.18)!important;
    background:
      linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008) 43%,transparent 70%),
      rgba(12,18,24,.96)!important;
    box-shadow:
      0 18px 40px rgba(0,0,0,.25),
      inset 0 0 0 1px rgba(220,228,235,.018)!important;
  }

  .specialization-card.state-3.gold-pending .spec-card-title h3{
    color:#e3e8ed!important;
  }
  .specialization-card.state-3.gold-pending .spec-card-status{
    color:#aeb8c2!important;
    border-color:rgba(204,213,221,.17)!important;
    background:rgba(9,14,19,.78)!important;
    box-shadow:none!important;
  }
  .specialization-card.state-3.gold-pending .spec-action-btn.is-active{
    color:#aeb8c2!important;
    border-color:rgba(255,255,255,.09)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),inset 0 -10px 16px rgba(0,0,0,.12)!important;
  }

  /* Hide the spotlight and bottom gold line until the delayed phase begins. */
  .specialization-card.state-3.gold-pending::before{
    opacity:0!important;
  }
  .specialization-card.state-3.gold-pending::after{
    opacity:0!important;
    transform:scaleX(.25)!important;
  }

  /* Once gold-pending is removed (~1.65s), ease gently into the full equipped look. */
  .specialization-card.state-3{
    transition:
      border-color .72s cubic-bezier(.22,.7,.25,1),
      box-shadow .82s cubic-bezier(.22,.7,.25,1),
      background .82s cubic-bezier(.22,.7,.25,1),
      opacity .3s ease,
      filter .55s ease!important;
  }
  .specialization-card.state-3 .spec-card-title h3{
    transition:color .68s ease;
  }
  .specialization-card.state-3 .spec-card-status{
    transition:
      color .68s ease,
      border-color .68s ease,
      background .68s ease,
      box-shadow .68s ease;
  }
  .specialization-card.state-3 .spec-action-btn.is-active{
    transition:
      color .68s ease,
      border-color .68s ease,
      background .68s ease,
      box-shadow .68s ease;
  }
  .specialization-card.state-3::before{
    opacity:1;
    transition:opacity .82s cubic-bezier(.22,.7,.25,1);
  }
  .specialization-card.state-3::after{
    opacity:1;
    transform:scaleX(1);
    transform-origin:center center;
    transition:
      opacity .72s ease,
      transform .82s cubic-bezier(.22,.7,.25,1);
  }
}

/* === SOURCE: css/089-v4110c-toast-and-requirement-fix.css === */

/* v4.1.10c · only fixes the two issues reported in screenshots */

/* Toast is re-parented to <body>, so it cannot be clipped by the tabs bar. */
.specialization-tab-toast{
  position:fixed!important;
  z-index:10000!important;
  transform:translate(-50%,calc(-100% + 4px)) scale(.98)!important;
}
.specialization-tab-toast.show{
  transform:translate(-50%,-100%) scale(1)!important;
}

/* Remove the old right-side pseudo check completely. */
.spec-requirement.met::after{
  content:none!important;
  display:none!important;
}

/* Restore the original number block geometry.
   The check is absolutely positioned to the LEFT, so it consumes no width
   and can never move the number or create a second column. */
.spec-requirement strong{
  position:relative!important;
  display:flex!important;
  align-items:baseline!important;
  gap:3px!important;
  min-width:0!important;
  justify-content:initial!important;
}
.spec-requirement .ok{
  position:absolute!important;
  right:100%!important;
  top:50%!important;
  width:auto!important;
  margin-right:6px!important;
  transform:translateY(-52%)!important;
  color:#91a69d!important;
  font-style:normal!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1!important;
  visibility:hidden;
}
.spec-requirement.met .ok{
  visibility:visible;
}

/* === SOURCE: css/090-v4110d-cursor-feedback.css === */

/* v4.1.10d · shared pointer-position feedback.
   Intended for unlock/loss and insufficient-AP feedback across specialization
   and future PlayStyle interactions. */
.build-cursor-feedback{
  position:fixed;
  z-index:12000;
  display:inline-flex;
  align-items:center;
  min-height:27px;
  max-width:min(320px,calc(100vw - 24px));
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(12,17,23,.96);
  color:#d7dee5;
  box-shadow:0 9px 24px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:10px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.01em;
  white-space:nowrap;
  pointer-events:none;
  opacity:0;
  transform:translateY(4px) scale(.97);
  transform-origin:top left;
  transition:opacity .14s ease,transform .16s ease;
}
.build-cursor-feedback.show{
  opacity:1;
  transform:translateY(0) scale(1);
}
.build-cursor-feedback.gain{
  color:#ddca88;
  border-color:rgba(216,184,95,.30);
  background:rgba(30,27,18,.96);
}
.build-cursor-feedback.loss,
.build-cursor-feedback.error{
  color:#e6a2a7;
  border-color:rgba(200,90,96,.38);
  background:rgba(43,21,24,.97);
  box-shadow:0 9px 24px rgba(0,0,0,.34),0 0 0 1px rgba(200,90,96,.035) inset;
}
.build-cursor-feedback.info{
  color:#cbd3da;
  border-color:rgba(210,220,230,.14);
}

/* === SOURCE: css/091-v4110f-base-perk-layout-reset.css === */

/* v4.1.10f: base/spec card layout + local reset button + Lv.10 base perk unlock */
.specialization-card .spec-card-title h3{font-size:26px;line-height:1.04}
.specialization-card .spec-card-title span{font-size:11px}
.specialization-card .spec-info-block{margin:12px 14px 0;padding-top:12px}
.specialization-card .spec-info-block>label,
.specialization-card .spec-requirements>label{font-size:8px;letter-spacing:.055em}
.specialization-card .spec-info-block strong{display:block;color:#dbe2e8;font-size:12px;font-weight:860;line-height:1.28}
.specialization-card .spec-info-block small{display:block;margin-top:4px;color:#7b8690;font-size:8.4px;line-height:1.42}
.specialization-card .spec-info-block .signature-style{font-size:16px;font-weight:900}
.specialization-card .spec-info-block .signature-style.plus,
.specialization-card .spec-playstyle-block strong{color:#d9bf69}
.base-signature-block .spec-inline-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.base-signature-block .spec-inline-note{margin-top:0;text-align:right;white-space:nowrap;color:#7f8a94}
.base-signature-block .spec-inline-meta .signature-style{min-width:0}
.base-perk-block .spec-perk-list.rich-list,
.spec-extra-perk-block .spec-perk-list.rich-list{gap:8px!important}
.base-perk-block .spec-perk-row.rich,
.spec-extra-perk-block .spec-perk-row.rich{padding:10px 11px!important;border-radius:13px;background:linear-gradient(180deg,rgba(255,255,255,.026),rgba(255,255,255,.016));border:1px solid rgba(255,255,255,.06)}
.base-perk-block .spec-perk-row.rich.is-unlocked{border-color:rgba(216,184,95,.16);background:linear-gradient(180deg,rgba(216,184,95,.06),rgba(255,255,255,.018))}
.base-perk-block .spec-perk-row.rich.locked{opacity:.86}
.base-perk-block .spec-perk-top span,
.spec-extra-perk-block .spec-perk-top span{font-size:11px;line-height:1.24;color:#d7dee4}
.base-perk-block .spec-perk-top b,
.spec-extra-perk-block .spec-perk-top b{font-size:8.2px;font-weight:850}
.base-perk-block .spec-perk-row.rich.is-unlocked .spec-perk-top b{color:#d6bd73}
.base-perk-block .spec-perk-desc,
.spec-extra-perk-block .spec-perk-desc{font-size:9px;line-height:1.44;color:#85909a}
.spec-playstyle-block .spec-main-emphasis{font-size:15px;font-weight:900;color:#d7be70}
.spec-extra-perk-block .spec-main-emphasis{font-size:13px;font-weight:860;color:#dfe5ea}
.spec-extra-perk-block .spec-reward-desc{margin-top:5px;font-size:8.9px;line-height:1.44;color:#85919b}
.spec-extra-perk-block .spec-perk-top{justify-content:flex-start}
.spec-card .spec-reward-row{display:none!important}
.spec-card .spec-requirements{margin-top:12px}
.spec-card .spec-card-actions{display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:8px;align-items:center;margin-top:auto;padding:12px 14px 14px}
.spec-card .spec-card-actions .spec-action-btn{width:100%}
.spec-local-reset-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.016));color:#c4ccd4;font-size:11px;font-weight:820;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.spec-local-reset-btn:hover{border-color:rgba(214,184,108,.22);background:linear-gradient(180deg,rgba(214,184,108,.08),rgba(255,255,255,.018));color:#e1c97f;transform:translateY(-1px)}
.spec-local-reset-btn:active{transform:translateY(0)}
.spec-local-reset-btn .spec-local-reset-icon{font-size:12px;line-height:1;color:#cdb77a}
.spec-card.state-1 .spec-local-reset-btn{opacity:.92}
@media(max-width:760px){
  .spec-card .spec-card-actions{grid-template-columns:minmax(0,1fr) 68px;gap:7px}
  .specialization-card .spec-card-title h3{font-size:24px}
  .spec-playstyle-block .spec-main-emphasis{font-size:14px}
  .spec-extra-perk-block .spec-main-emphasis{font-size:12px}
  .base-perk-block .spec-perk-desc,.spec-extra-perk-block .spec-perk-desc,.spec-extra-perk-block .spec-reward-desc{font-size:9.2px}
}


/* ===== SOURCE: css/stable-bundle-007.css ===== */
/* === SOURCE: css/092-v4110h-readability-fix.css === */

/* v4.1.10h — safe visual-only refinement, built from 10f. */

/* Keep the equipped gold atmosphere out of the readable information zones.
   We leave the existing delayed bloom / border animation machinery intact. */
.specialization-card.state-3{
  background:
    linear-gradient(180deg,
      rgba(216,184,95,.055) 0,
      rgba(216,184,95,.028) 118px,
      rgba(216,184,95,.010) 190px,
      transparent 235px),
    linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.008) 43%,transparent 70%),
    rgba(12,18,24,.96)!important;
  box-shadow:
    0 20px 46px rgba(0,0,0,.30),
    0 0 0 1px rgba(216,184,95,.10),
    0 0 28px rgba(216,184,95,.075)!important;
}
.specialization-card.state-3::before{
  background:linear-gradient(180deg,
    transparent 0,
    transparent calc(100% - 82px),
    rgba(216,184,95,.018) calc(100% - 70px),
    rgba(216,184,95,.055) calc(100% - 36px),
    rgba(216,184,95,.090) 100%)!important;
}

/* Perk title and explanation use the same size; weight carries the hierarchy. */
.spec-perk-top span{
  font-size:10.2px!important;
  line-height:1.42!important;
  font-weight:800!important;
  color:#d7dee5!important;
}
.spec-perk-desc,
.spec-extra-perk-block .spec-reward-desc{
  font-size:10.2px!important;
  line-height:1.42!important;
  font-weight:450!important;
  color:#aeb7c0!important;
  letter-spacing:0!important;
}
.spec-perk-row.rich{
  padding:10px 11px!important;
}

/* Inspiration source sits on the right side of the portrait and is one step larger. */
.spec-player-image>span{
  left:auto!important;
  right:14px!important;
  bottom:10px!important;
  max-width:52%;
  text-align:right!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:780!important;
  color:#c8d0d8!important;
}
.state-1 .spec-player-image>span{
  color:#7c8791!important;
}

@media(max-width:760px){
  .spec-player-image>span{
    right:12px!important;
    bottom:9px!important;
    max-width:58%;
    font-size:10px!important;
  }
  .spec-perk-top span,
  .spec-perk-desc,
  .spec-extra-perk-block .spec-reward-desc{
    font-size:9.6px!important;
  }
}

/* === SOURCE: css/093-v4110h1-perk-font-adjust.css === */

/* Based strictly on v4.1.10h. Only perk title/copy sizes are changed. */
.specialization-card .spec-perk-top span,
.specialization-card .base-perk-block .spec-perk-top span,
.specialization-card .spec-extra-perk-block .spec-perk-top span,
.specialization-card .spec-perk-row.rich .spec-perk-top span{
  font-size:10px!important;
}

.specialization-card .spec-perk-desc,
.specialization-card .base-perk-block .spec-perk-desc,
.specialization-card .spec-extra-perk-block .spec-perk-desc,
.specialization-card .spec-extra-perk-block .spec-reward-desc,
.specialization-card .spec-perk-row.rich .spec-perk-desc{
  font-size:9.5px!important;
}

/* Keep the exact same sizes on mobile as well. */
@media(max-width:760px){
  .specialization-card .spec-perk-top span,
  .specialization-card .base-perk-block .spec-perk-top span,
  .specialization-card .spec-extra-perk-block .spec-perk-top span,
  .specialization-card .spec-perk-row.rich .spec-perk-top span{
    font-size:10px!important;
  }
  .specialization-card .spec-perk-desc,
  .specialization-card .base-perk-block .spec-perk-desc,
  .specialization-card .spec-extra-perk-block .spec-perk-desc,
  .specialization-card .spec-extra-perk-block .spec-reward-desc,
  .specialization-card .spec-perk-row.rich .spec-perk-desc{
    font-size:9.5px!important;
  }
}

/* === SOURCE: css/094-v4110h1c-synced-card-bottom-8px.css === */

/* v4.1.10h1c — built from the correct h1b geometry.
   Add another 4px to the LOWER edge only: 8px total versus h1.
   Stage, normal card, equipped card and equip-animation geometry all move together.
   Card TOP stays fixed; only bottom safety space grows. */
@media(min-width:1281px){
  .specialization-cards{
    height:492px!important;       /* h1 484 + 8 */
    min-height:492px!important;
    align-items:flex-end!important;
  }
  .specialization-card,
  .specialization-card.base-card{
    --spec-normal-height:426px!important;   /* h1 418 + 8 */
    --spec-equipped-height:456px!important; /* h1 448 + 8 */
    height:var(--spec-normal-height)!important;
  }
  .specialization-card.state-3{
    height:var(--spec-equipped-height)!important;
  }
}

@media(min-width:1281px) and (max-height:900px){
  .specialization-cards{
    height:462px!important;       /* h1 454 + 8 */
    min-height:462px!important;
  }
  .specialization-card,
  .specialization-card.base-card{
    --spec-normal-height:402px!important;   /* h1 394 + 8 */
    --spec-equipped-height:432px!important; /* h1 424 + 8 */
    height:var(--spec-normal-height)!important;
  }
  .specialization-card.state-3{
    height:var(--spec-equipped-height)!important;
  }
}

/* === SOURCE: css/095-v4110k4-playstyles-fc-layout.css === */

/* v4.1.10k4 · FC27-like PlayStyle selector. Top loadout is intentionally compact;
   requirements live only in the hover panel while the library stays icon-first. */
#playstylesPanel{overflow:visible}
.ps-page{gap:9px!important;padding-bottom:12px!important}
.ps-page-head{min-height:46px!important;padding-bottom:0!important}
.ps-page-head p{margin-top:4px!important;font-size:9px!important}
.ps-page-title-line h2{font-size:22px!important}
.ps-page-summary{gap:7px!important}
.ps-summary-pill{min-width:78px!important;padding:6px 9px!important;border-radius:10px!important}
.ps-summary-pill strong{font-size:14px!important}

/* Compact the equipped area by ~30% without changing its information hierarchy. */
.ps-loadout{grid-template-columns:minmax(200px,.64fr) minmax(0,2fr)!important;gap:8px!important}
.ps-signature-card{grid-template-columns:44px minmax(0,1fr)!important;gap:9px!important;padding:7px 10px!important;border-radius:14px!important;min-height:58px!important}
.ps-signature-card>.ps-icon-shell{width:40px!important;height:40px!important;border-radius:11px!important}
.ps-signature-card>.ps-icon-shell img{width:25px!important;height:25px!important}
.ps-signature-copy small{font-size:6.5px!important}
.ps-signature-copy strong{margin-top:2px!important;font-size:11px!important}
.ps-signature-copy span{margin-top:2px!important;font-size:7px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ps-slots-card{padding:7px 9px!important;border-radius:14px!important}
.ps-slots-head{margin-bottom:5px!important}
.ps-slots-head small{font-size:6.5px!important}.ps-slots-head strong{font-size:9px!important}
.ps-slots{gap:6px!important}
.ps-slot{min-height:46px!important;grid-template-columns:30px minmax(0,1fr)!important;gap:7px!important;padding:5px 7px!important;border-radius:10px!important}
.ps-slot .ps-icon-shell{width:30px!important;height:30px!important;border-radius:8px!important}
.ps-slot .ps-icon-shell img{width:19px!important;height:19px!important}
.ps-slot .ps-icon-fallback{width:18px!important;height:18px!important;font-size:5px!important}
.ps-slot-copy small{font-size:6px!important}.ps-slot-copy strong{margin-top:1px!important;font-size:8.5px!important}.ps-slot-copy span{margin-top:1px!important;font-size:6.5px!important}

/* Library frame */
.ps-library-card{overflow:visible!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.018),transparent 44%),rgba(10,16,22,.88)!important}
.ps-library-toolbar{padding:8px 11px!important;min-height:40px!important}
.ps-library-toolbar>div{display:flex;align-items:baseline;gap:8px}.ps-library-toolbar>div>strong{color:#ccd4dc;font-size:10px}.ps-library-toolbar .advanced-kicker{font-size:6.5px}
.ps-source-note{font-size:7px!important}
.ps-library-main{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(245px,.68fr);gap:12px;padding:9px 10px 10px;align-items:start}
.ps-category-list{min-width:0}
.ps-category-row{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;gap:10px;min-height:66px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.075)}
.ps-category-row:last-child{border-bottom:0}
.ps-category-name{padding-left:4px}.ps-category-name strong{display:block;color:#d1d8de;font-size:10px;font-weight:850}.ps-category-name span{display:block;margin-top:3px;color:#56626d;font-size:5.8px;font-weight:900;letter-spacing:.07em}
.ps-badge-row{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0}

/* Badge-only tiles: locked / unlocked / equipped are readable without text. */
.ps-badge-tile{position:relative;width:54px;height:54px;flex:0 0 54px;padding:0;border:1px solid rgba(117,137,156,.15);border-radius:11px;background:linear-gradient(145deg,#1a2735,#13202d 70%);cursor:pointer;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease,opacity .15s ease}
.ps-badge-tile:hover,.ps-badge-tile:focus-visible{transform:translateY(-2px);border-color:rgba(208,219,229,.32);box-shadow:0 8px 20px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04)}
.ps-badge-tile .ps-icon-shell{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.ps-badge-tile .ps-icon-shell::before{content:"";position:absolute;z-index:1;width:30px;height:30px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);border:1px solid rgba(255,255,255,.07);background:#626b73;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.ps-badge-tile .ps-icon-shell img{position:relative;z-index:2;width:28px!important;height:28px!important;object-fit:contain;opacity:.48!important;filter:none!important;transition:opacity .15s ease,transform .15s ease}
.ps-badge-tile .ps-icon-fallback{position:relative;z-index:2;border:0!important;color:#151a1f!important;font-size:7px!important}
.ps-badge-tile.locked{opacity:.78}.ps-badge-tile.locked .ps-icon-shell::before{background:#5a6269}.ps-badge-tile.locked .ps-icon-shell img{opacity:.38!important}
.ps-badge-tile.unlocked{border-color:rgba(216,225,233,.18);background:linear-gradient(145deg,#203247,#18293a 70%)}
.ps-badge-tile.unlocked .ps-icon-shell::before{background:#e3e7ea;border-color:rgba(255,255,255,.50);box-shadow:0 2px 8px rgba(0,0,0,.16)}
.ps-badge-tile.unlocked .ps-icon-shell img{opacity:.96!important}
.ps-badge-tile.equipped{border-color:rgba(188,213,226,.32);background:linear-gradient(145deg,#24394d,#192b3d 72%);box-shadow:0 0 0 1px rgba(209,223,234,.04),0 7px 18px rgba(0,0,0,.18)}
.ps-badge-tile.equipped .ps-icon-shell::before{background:#f0f2f3;border-color:#fff;box-shadow:0 0 12px rgba(221,231,238,.10)}
.ps-badge-tile.equipped .ps-icon-shell img{opacity:1!important}
.ps-badge-tile.unreachable{opacity:.28;cursor:not-allowed}.ps-badge-tile.unreachable:hover{transform:none}
.ps-equipped-check{position:absolute;z-index:6;right:-3px;top:-4px;width:16px;height:16px;display:grid;place-items:center;border:2px solid #111923;border-radius:50%;background:#31e775;color:#092113;font-size:8px;font-weight:950;box-shadow:0 2px 8px rgba(0,0,0,.25)}

/* Hover inspector mirrors the in-game right-side requirement panel. */
.ps-hover-detail{position:sticky;top:10px;min-height:304px;border:1px solid rgba(113,137,158,.15);border-radius:13px;background:linear-gradient(145deg,rgba(34,53,73,.82),rgba(24,40,56,.90));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);overflow:hidden;transition:border-color .15s ease,background .15s ease}
.ps-hover-detail.active{border-color:rgba(143,166,185,.24)}
.ps-hover-placeholder{min-height:304px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px;text-align:center}.ps-hover-crosshair{color:#758491;font-size:17px}.ps-hover-placeholder strong{margin-top:9px;color:#8996a2;font-size:10px}.ps-hover-placeholder small{max-width:230px;margin-top:7px;color:#596874;font-size:7.5px;line-height:1.55}
.ps-hover-detail-inner{padding:15px 16px 14px}.ps-hover-detail-head{display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;align-items:center}.ps-hover-detail-head .ps-icon-shell{width:46px;height:46px;border-radius:12px}.ps-hover-detail-head .ps-icon-shell img{width:29px;height:29px}.ps-hover-detail-head>div>span{display:block;color:#758694;font-size:7px;font-weight:800}.ps-hover-detail-head>div>strong{display:block;margin-top:3px;color:#dce4ea;font-size:15px;font-weight:900}.ps-hover-detail-head>div>small{display:block;margin-top:4px;color:#81909c;font-size:7.5px}
.ps-hover-detail-inner.equipped .ps-hover-detail-head>div>small{color:#78d79d}.ps-hover-detail-inner.unlocked .ps-hover-detail-head>div>small{color:#b5c2cb}.ps-hover-rule{height:1px;margin:13px 0 11px;background:rgba(255,255,255,.07)}
.ps-hover-req-title{color:#88c8d2;font-size:8px;font-weight:900}.ps-hover-reqs{margin-top:8px}.ps-hover-req{display:grid;grid-template-columns:minmax(0,1fr) auto 15px;align-items:center;gap:6px;min-height:29px;border-bottom:1px solid rgba(255,255,255,.045)}.ps-hover-req:last-child{border-bottom:0}.ps-hover-req span{color:#b5c0c9;font-size:8.5px}.ps-hover-req strong{color:#d5dde4;font-size:11px;font-weight:900;font-variant-numeric:tabular-nums}.ps-hover-req strong em{font-style:normal;color:#71808c;font-size:7.5px}.ps-hover-req.missing strong{color:#d79b98}.ps-hover-req i{font-style:normal;color:#35ea7e;font-size:9px;font-weight:950}
.ps-hover-action{margin-top:12px;padding:8px 9px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(8,14,20,.24);color:#aebbc5;font-size:7.5px;line-height:1.4;text-align:center}.ps-hover-action.error{color:#d29898;border-color:rgba(200,90,96,.13)}

@media(max-width:1380px) and (min-width:1001px){
  .ps-library-main{grid-template-columns:minmax(0,1.6fr) minmax(220px,.72fr);gap:9px}.ps-category-row{grid-template-columns:56px minmax(0,1fr);gap:7px}.ps-badge-row{gap:6px}.ps-badge-tile{width:48px;height:48px;flex-basis:48px}.ps-badge-tile .ps-icon-shell::before{width:27px;height:27px}.ps-badge-tile .ps-icon-shell img{width:25px!important;height:25px!important}.ps-hover-detail{min-height:286px}.ps-hover-placeholder{min-height:286px}
}
@media(max-width:1000px) and (min-width:761px){
  .ps-loadout{grid-template-columns:1fr!important}.ps-library-main{grid-template-columns:1fr}.ps-hover-detail{position:relative;top:auto;min-height:180px}.ps-hover-placeholder{min-height:180px}.ps-category-row{grid-template-columns:62px minmax(0,1fr)}.ps-badge-row{flex-wrap:wrap}
}
@media(max-width:760px){
  .ps-page-head p{white-space:normal}.ps-loadout{grid-template-columns:1fr!important}.ps-slots{grid-template-columns:repeat(3,minmax(0,1fr))!important}.ps-slot{grid-template-columns:26px minmax(0,1fr)!important;padding:5px!important}.ps-slot .ps-icon-shell{width:26px!important;height:26px!important}.ps-slot-copy span{display:none!important}
  .ps-library-main{grid-template-columns:1fr;padding:8px}.ps-category-row{grid-template-columns:48px minmax(0,1fr);gap:6px;align-items:start}.ps-category-name{padding-top:7px;padding-left:0}.ps-badge-row{gap:6px;flex-wrap:wrap}.ps-badge-tile{width:46px;height:46px;flex-basis:46px}.ps-badge-tile .ps-icon-shell::before{width:25px;height:25px}.ps-badge-tile .ps-icon-shell img{width:23px!important;height:23px!important}.ps-hover-detail{position:relative;top:auto;min-height:160px}.ps-hover-placeholder{min-height:160px}.ps-source-note{display:none}
}

/* === SOURCE: css/096-v4110k5-compact-playstyle-loadout.css === */

/* v4.1.10k5 · Turn the PlayStyle equipped area into a single compact status bar.
   The selector/library below remains structurally unchanged from k4. */
@media(min-width:1001px){
  #playstylesPanel .ps-page{gap:8px!important}
  #playstylesPanel .ps-page-head{min-height:40px!important;align-items:center!important}
  #playstylesPanel .ps-page-head p{margin-top:2px!important;font-size:8.5px!important}
  #playstylesPanel .ps-page-title-line{margin-top:0!important}
  #playstylesPanel .ps-page-title-line h2{font-size:21px!important}
  #playstylesPanel .ps-summary-pill{padding:5px 8px!important}

  /* One continuous loadout bar */
  #playstylesPanel .ps-loadout{
    display:grid!important;
    grid-template-columns:minmax(168px,.72fr) minmax(0,2.7fr)!important;
    gap:0!important;
    min-height:52px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.07)!important;
    border-radius:14px!important;
    background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.007) 52%,transparent),rgba(11,17,23,.91)!important;
    box-shadow:0 9px 24px rgba(0,0,0,.12)!important;
    overflow:hidden!important;
  }

  #playstylesPanel .ps-signature-card,
  #playstylesPanel .ps-slots-card{
    min-height:52px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #playstylesPanel .ps-signature-card{
    grid-template-columns:34px minmax(0,1fr)!important;
    gap:7px!important;
    padding:6px 10px!important;
    border-right:1px solid rgba(255,255,255,.065)!important;
  }
  #playstylesPanel .ps-signature-card.plus{
    background:linear-gradient(90deg,rgba(216,184,95,.045),transparent 72%)!important;
  }
  #playstylesPanel .ps-signature-card>.ps-icon-shell{
    width:32px!important;height:32px!important;border-radius:9px!important;
  }
  #playstylesPanel .ps-signature-card>.ps-icon-shell img{width:20px!important;height:20px!important}
  #playstylesPanel .ps-signature-copy small{font-size:5.8px!important;letter-spacing:.045em!important}
  #playstylesPanel .ps-signature-copy strong{margin-top:1px!important;font-size:10px!important;line-height:1.1!important}
  #playstylesPanel .ps-signature-copy span{display:none!important}

  #playstylesPanel .ps-slots-card{
    display:grid!important;
    grid-template-columns:94px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    padding:5px 8px!important;
  }
  #playstylesPanel .ps-slots-head{
    display:block!important;
    margin:0!important;
    padding:0 3px!important;
  }
  #playstylesPanel .ps-slots-head small{font-size:5.7px!important;letter-spacing:.05em!important}
  #playstylesPanel .ps-slots-head strong{display:block!important;margin-top:2px!important;font-size:7.6px!important;color:#89949e!important;white-space:nowrap!important}
  #playstylesPanel .ps-slots{gap:5px!important;height:42px!important}
  #playstylesPanel .ps-slot{
    min-height:42px!important;height:42px!important;
    grid-template-columns:28px minmax(0,1fr)!important;
    gap:6px!important;
    padding:4px 6px!important;
    border-radius:9px!important;
  }
  #playstylesPanel .ps-slot .ps-icon-shell{width:28px!important;height:28px!important;border-radius:8px!important}
  #playstylesPanel .ps-slot .ps-icon-shell img{width:18px!important;height:18px!important}
  #playstylesPanel .ps-slot .ps-icon-fallback{width:17px!important;height:17px!important;font-size:5px!important}
  #playstylesPanel .ps-slot-copy small{font-size:5.5px!important;line-height:1!important}
  #playstylesPanel .ps-slot-copy strong{margin-top:2px!important;font-size:8px!important;line-height:1.05!important}
  #playstylesPanel .ps-slot-copy span{display:none!important}

  /* Let the selector begin sooner without changing its own content geometry. */
  #playstylesPanel .ps-library-toolbar{min-height:36px!important;padding:6px 11px!important}
}

@media(max-width:1200px) and (min-width:1001px){
  #playstylesPanel .ps-loadout{grid-template-columns:minmax(150px,.62fr) minmax(0,2.8fr)!important}
  #playstylesPanel .ps-slots-card{grid-template-columns:76px minmax(0,1fr)!important;gap:5px!important;padding-left:6px!important}
  #playstylesPanel .ps-slots-head strong{font-size:6.8px!important}
  #playstylesPanel .ps-slot{grid-template-columns:25px minmax(0,1fr)!important;padding:4px 5px!important;gap:5px!important}
  #playstylesPanel .ps-slot .ps-icon-shell{width:25px!important;height:25px!important}
  #playstylesPanel .ps-slot-copy strong{font-size:7.4px!important}
}

/* === SOURCE: css/097-v4110k8-playstyles-detail-unlock-fix.css === */

/* v4.1.10k8 · PlayStyle selector + dedicated detail surface.
   Attribute thresholds automatically unlock badges; the detail action only auto-fills missing AP attributes. */
#playstylesPanel .ps-page-k6{gap:10px!important;padding-bottom:14px!important}
#playstylesPanel .ps-page-k6 .ps-page-head{min-height:54px!important;align-items:center!important;padding:0 4px 2px!important}
#playstylesPanel .ps-page-k6 .ps-page-title-line h2{font-size:25px!important}
#playstylesPanel .ps-page-k6 .ps-page-head p{margin-top:5px!important;font-size:10px!important;color:#788691!important}
#playstylesPanel .ps-page-k6 .ps-page-summary{gap:8px!important}
#playstylesPanel .ps-page-k6 .ps-summary-pill{min-width:86px!important;padding:7px 10px!important}
#playstylesPanel .ps-page-k6 .ps-summary-pill span{font-size:7px!important}
#playstylesPanel .ps-page-k6 .ps-summary-pill strong{font-size:15px!important}

/* Selector frame gets all of the vertical space previously used by the loadout. */
#playstylesPanel .ps-page-k6 .ps-library-card{border-radius:17px!important;overflow:visible!important}
#playstylesPanel .ps-page-k6 .ps-library-toolbar{min-height:46px!important;padding:9px 14px!important}
#playstylesPanel .ps-page-k6 .ps-library-toolbar>div>strong{font-size:12px!important}
#playstylesPanel .ps-page-k6 .ps-library-toolbar .advanced-kicker{font-size:7px!important}
#playstylesPanel .ps-page-k6 .ps-source-note{font-size:8px!important;color:#71808c!important}
#playstylesPanel .ps-page-k6 .ps-library-main{grid-template-columns:minmax(0,1.78fr) minmax(292px,.66fr)!important;gap:15px!important;padding:10px 13px 13px!important}

/* Larger category labels and rows for desktop readability. */
#playstylesPanel .ps-page-k6 .ps-category-row{grid-template-columns:88px minmax(0,1fr)!important;gap:12px!important;min-height:82px!important;padding:8px 0!important}
#playstylesPanel .ps-page-k6 .ps-category-name{padding-left:7px!important}
#playstylesPanel .ps-page-k6 .ps-category-name strong{font-size:14px!important;letter-spacing:-.01em!important}
#playstylesPanel .ps-page-k6 .ps-category-name span{margin-top:4px!important;font-size:7px!important;letter-spacing:.08em!important}
#playstylesPanel .ps-page-k6 .ps-badge-row{gap:10px!important}

/* Bigger FC-like badge tiles. */
#playstylesPanel .ps-page-k6 .ps-badge-tile{width:66px!important;height:66px!important;flex-basis:66px!important;border-radius:13px!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell{border-radius:12px!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{width:38px!important;height:38px!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{width:35px!important;height:35px!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-fallback{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.locked{opacity:.64!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.insufficient{opacity:.46!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.inactive-unlocked{opacity:.58!important;border-color:rgba(205,173,95,.22)!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unreachable{opacity:.30!important;cursor:pointer!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unreachable:hover{transform:translateY(-2px)!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.selected{border-color:rgba(132,199,213,.72)!important;box-shadow:0 0 0 2px rgba(84,157,174,.18),0 10px 24px rgba(0,0,0,.26)!important;transform:translateY(-2px)}
#playstylesPanel .ps-page-k6 .ps-selected-mark{position:absolute;z-index:7;left:50%;bottom:-6px;width:17px;height:3px;transform:translateX(-50%);border-radius:999px;background:#7fc4d0;box-shadow:0 0 9px rgba(127,196,208,.35)}
#playstylesPanel .ps-page-k6 .ps-equipped-check{width:18px!important;height:18px!important;font-size:9px!important;right:-4px!important;top:-5px!important}

/* Persistent click inspector: no hover-to-spend behavior. */
#playstylesPanel .ps-page-k6 .ps-hover-detail{top:10px!important;min-height:430px!important;border-radius:15px!important;background:linear-gradient(145deg,rgba(34,53,73,.88),rgba(21,36,50,.95))!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder{min-height:430px!important;padding:30px!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder .ps-hover-crosshair{font-size:22px!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder strong{font-size:13px!important;margin-top:12px!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder small{max-width:250px!important;font-size:9px!important;line-height:1.65!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-inner{padding:18px 18px 16px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head{grid-template-columns:58px minmax(0,1fr)!important;gap:13px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head .ps-icon-shell{width:56px!important;height:56px!important;border-radius:14px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head .ps-icon-shell img{width:36px!important;height:36px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>span{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>strong{font-size:18px!important;margin-top:3px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>small{font-size:9px!important;margin-top:5px!important}
#playstylesPanel .ps-page-k6 .ps-hover-rule{margin:15px 0 12px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-title em{font-style:normal;color:#657582;font-size:7.5px;font-weight:750}
#playstylesPanel .ps-page-k6 .ps-hover-reqs{margin-top:8px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req{grid-template-columns:minmax(88px,1fr) auto 50px 16px!important;gap:8px!important;min-height:43px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-name span{display:block;color:#c0cad2;font-size:10px!important;font-weight:820}
#playstylesPanel .ps-page-k6 .ps-hover-req-name small{display:block;margin-top:2px;color:#6f7e8b;font-size:7.5px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req.met .ps-hover-req-name small{color:#6fc894}
#playstylesPanel .ps-page-k6 .ps-hover-req.missing .ps-hover-req-name small{color:#d29a96}
#playstylesPanel .ps-page-k6 .ps-hover-req.impossible .ps-hover-req-name small{color:#c17d80}
#playstylesPanel .ps-page-k6 .ps-hover-req strong{font-size:12px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req strong em{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req b{min-width:46px;text-align:right;color:#d7c080;font-size:8px;font-weight:900;font-variant-numeric:tabular-nums}
#playstylesPanel .ps-page-k6 .ps-hover-req.met b{color:#71808c}
#playstylesPanel .ps-page-k6 .ps-hover-req i{font-size:10px!important}

#playstylesPanel .ps-page-k6 .ps-unlock-cost{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3px 10px;margin-top:15px;padding:11px 12px;border:1px solid rgba(216,184,95,.17);border-radius:11px;background:linear-gradient(145deg,rgba(216,184,95,.075),rgba(255,255,255,.018))}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>span{color:#9aa7b2;font-size:8px;font-weight:850}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>strong{grid-row:1/3;grid-column:2;color:#e0c66f;font-size:23px;font-weight:950;font-variant-numeric:tabular-nums;line-height:1}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>strong em{font-style:normal;font-size:10px;color:#ac985e}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>small{color:#6e7c87;font-size:7.5px}
#playstylesPanel .ps-page-k6 .ps-unlock-cost.error{border-color:rgba(200,90,96,.14);background:rgba(113,45,49,.08)}
#playstylesPanel .ps-page-k6 .ps-unlock-cost.error>strong{color:#cf8a8d}

#playstylesPanel .ps-page-k6 .ps-unlock-btn{width:100%;min-height:42px;margin-top:10px;border:1px solid rgba(216,184,95,.28);border-radius:11px;background:linear-gradient(180deg,rgba(216,184,95,.16),rgba(216,184,95,.075));color:#e3cc7a;font:900 10px/1 inherit;cursor:pointer;transition:.16s ease}
#playstylesPanel .ps-page-k6 .ps-unlock-btn:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(229,202,120,.48);background:linear-gradient(180deg,rgba(216,184,95,.22),rgba(216,184,95,.10))}
#playstylesPanel .ps-page-k6 .ps-unlock-btn:disabled{cursor:default;opacity:.48;color:#a98486;border-color:rgba(200,90,96,.15);background:rgba(113,45,49,.08)}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint{margin-top:10px;padding:10px 11px;border:1px solid rgba(111,190,146,.18);border-radius:11px;background:rgba(53,126,87,.08)}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint strong{display:block;color:#82d6a7;font-size:10px}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint span{display:block;margin-top:4px;color:#788b82;font-size:8px;line-height:1.45}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint.equipped{border-color:rgba(65,220,126,.24);background:rgba(42,151,86,.10)}

@media(max-width:1500px) and (min-width:1001px){
  #playstylesPanel .ps-page-k6 .ps-library-main{grid-template-columns:minmax(0,1.72fr) minmax(265px,.68fr)!important;gap:11px!important}
  #playstylesPanel .ps-page-k6 .ps-category-row{grid-template-columns:76px minmax(0,1fr)!important;gap:8px!important;min-height:74px!important}
  #playstylesPanel .ps-page-k6 .ps-category-name strong{font-size:12px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-row{gap:7px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile{width:58px!important;height:58px!important;flex-basis:58px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{width:33px!important;height:33px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{width:31px!important;height:31px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-detail,#playstylesPanel .ps-page-k6 .ps-hover-placeholder{min-height:385px!important}
}
@media(max-width:1000px) and (min-width:761px){
  #playstylesPanel .ps-page-k6 .ps-page-head{align-items:flex-start!important}
  #playstylesPanel .ps-page-k6 .ps-page-summary{display:none!important}
  #playstylesPanel .ps-page-k6 .ps-library-main{grid-template-columns:1fr!important}
  #playstylesPanel .ps-page-k6 .ps-category-row{grid-template-columns:72px minmax(0,1fr)!important;min-height:72px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-row{flex-wrap:wrap!important}
  #playstylesPanel .ps-page-k6 .ps-hover-detail{position:relative!important;top:auto!important;min-height:280px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-placeholder{min-height:280px!important}
}
@media(max-width:760px){
  #playstylesPanel .ps-page-k6 .ps-page-head{align-items:flex-start!important}
  #playstylesPanel .ps-page-k6 .ps-page-title-line h2{font-size:22px!important}
  #playstylesPanel .ps-page-k6 .ps-page-head p{font-size:9px!important;line-height:1.5!important}
  #playstylesPanel .ps-page-k6 .ps-page-summary{display:none!important}
  #playstylesPanel .ps-page-k6 .ps-library-toolbar{padding:9px 10px!important}
  #playstylesPanel .ps-page-k6 .ps-library-main{grid-template-columns:1fr!important;padding:8px!important}
  #playstylesPanel .ps-page-k6 .ps-category-row{grid-template-columns:58px minmax(0,1fr)!important;gap:7px!important;min-height:66px!important;align-items:start!important}
  #playstylesPanel .ps-page-k6 .ps-category-name{padding:9px 0 0 1px!important}
  #playstylesPanel .ps-page-k6 .ps-category-name strong{font-size:11px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-row{gap:7px!important;flex-wrap:wrap!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile{width:52px!important;height:52px!important;flex-basis:52px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell::before{width:29px!important;height:29px!important}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell img{width:27px!important;height:27px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-detail{position:relative!important;top:auto!important;min-height:260px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-placeholder{min-height:260px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-req{grid-template-columns:minmax(78px,1fr) auto 46px 14px!important}
}

/* === SOURCE: css/098-v4110k8-playstyles-detail-surface.css === */

/* k7: keep the 30+6 selector unchanged; move status into its title row. */
#playstylesPanel .ps-page-k6 .ps-page-head{min-height:48px!important;align-items:flex-start!important;padding-right:4px!important}
#playstylesPanel .ps-page-k6 .ps-page-summary{display:none!important}
#playstylesPanel .ps-page-k6 .ps-library-toolbar{display:block!important;padding:9px 14px!important}
#playstylesPanel .ps-page-k6 .ps-library-toolbar-main{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%}
#playstylesPanel .ps-page-k6 .ps-library-title-group{display:flex;align-items:baseline;gap:9px;min-width:0}
#playstylesPanel .ps-page-k6 .ps-library-title-group>strong{color:#d4dce3;font-size:12px;font-weight:900;white-space:nowrap}
#playstylesPanel .ps-page-k6 .ps-library-title-group .ps-source-note{overflow:hidden;text-overflow:ellipsis;color:#657481;font-size:7.5px!important;white-space:nowrap}
#playstylesPanel .ps-page-k6 .ps-library-stats{display:flex;align-items:center;gap:7px;flex:0 0 auto}
#playstylesPanel .ps-page-k6 .ps-library-stat{display:flex;align-items:baseline;gap:5px;min-height:27px;padding:5px 9px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.018)}
#playstylesPanel .ps-page-k6 .ps-library-stat small{color:#74808b;font-size:7px;font-weight:850;letter-spacing:.03em}
#playstylesPanel .ps-page-k6 .ps-library-stat strong{color:#dde4e9;font-size:12px;font-weight:930;font-variant-numeric:tabular-nums}
#playstylesPanel .ps-page-k6 .ps-library-stat strong em{font-style:normal;color:#73808b;font-size:8px}

/* The selected badge uses exactly the same FC silver diamond language as the selector. */
#playstylesPanel .ps-page-k6 .ps-hover-detail-head{grid-template-columns:70px minmax(0,1fr)!important;gap:13px!important;align-items:center!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell{position:relative!important;width:66px!important;height:66px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell::before{content:"";position:absolute;z-index:1;width:42px;height:42px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);border:1px solid rgba(255,255,255,.52);background:#e3e7ea;box-shadow:0 3px 10px rgba(0,0,0,.20)}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell img{position:relative;z-index:2;width:39px!important;height:39px!important;object-fit:contain;filter:none!important;opacity:1!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell .ps-icon-fallback{position:relative;z-index:2;border:0!important;color:#171d22!important}

/* Requirement rows: attribute + current/required + AP contribution; no redundant prose underneath. */
#playstylesPanel .ps-page-k6 .ps-hover-req{grid-template-columns:minmax(105px,1fr) auto 52px 16px!important;min-height:39px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-name{display:flex;align-items:center;min-width:0}
#playstylesPanel .ps-page-k6 .ps-hover-req-name span{font-size:10.5px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-name small{display:none!important}
#playstylesPanel .ps-page-k6 .ps-unlock-cost{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;padding:12px!important}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>strong{grid-row:auto!important;grid-column:auto!important;font-size:24px!important}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>small{display:none!important}

/* Global PlayStyle geometry: silver = rhombus, plus = premium gold diamond background. */
.overview-playstyle-token{position:relative!important;padding-top:1px}
.overview-playstyle-token::before{content:"";position:absolute;z-index:0;top:4px;left:50%;width:27px;height:27px;transform:translateX(-50%) rotate(45deg);border:1px solid rgba(255,255,255,.48);background:#e3e7ea;box-shadow:0 2px 7px rgba(0,0,0,.18)}
.overview-playstyle-token.plus::before{border-color:rgba(249,226,142,.72);background:linear-gradient(145deg,#f0d886,#b58d31);box-shadow:0 0 11px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)}
.overview-playstyle-token img,.overview-playstyle-token .overview-ps-glyph{position:relative!important;z-index:1!important;width:36px!important;height:36px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.overview-playstyle-token .overview-ps-glyph{color:#1d2328!important;font-size:7px!important}
.overview-playstyle-token.plus .overview-ps-glyph{color:#352807!important}

@media(max-width:1000px){
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{align-items:flex-start;flex-direction:column;gap:7px}
  #playstylesPanel .ps-page-k6 .ps-library-title-group{flex-wrap:wrap}
}
@media(max-width:760px){
  #playstylesPanel .ps-page-k6 .ps-library-stats{width:100%;justify-content:flex-start}
  #playstylesPanel .ps-page-k6 .ps-library-stat{padding:4px 8px}
  #playstylesPanel .ps-page-k6 .ps-library-title-group .ps-source-note{white-space:normal}
}

/* === SOURCE: css/099-v4110k8-playstyles-readability.css === */

/* k8: restrained typography lift. Keep the main 比赛风格 title and left-side category names unchanged. */
#playstylesPanel .ps-page-k6 .ps-page-head .advanced-kicker{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-page-title-line>span{font-size:9px!important}
#playstylesPanel .ps-page-k6 .ps-page-head p{font-size:11.2px!important;line-height:1.48!important}
#playstylesPanel .ps-page-k6 .ps-library-title-group .advanced-kicker{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-library-title-group>strong{font-size:13.5px!important}
#playstylesPanel .ps-page-k6 .ps-library-title-group .ps-source-note{font-size:8.8px!important}
#playstylesPanel .ps-page-k6 .ps-library-stat small{font-size:8.2px!important}
#playstylesPanel .ps-page-k6 .ps-library-stat strong{font-size:13.5px!important}
#playstylesPanel .ps-page-k6 .ps-library-stat strong em{font-size:9px!important}
#playstylesPanel .ps-page-k6 .ps-category-name span{font-size:8px!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder strong{font-size:14px!important}
#playstylesPanel .ps-page-k6 .ps-hover-placeholder small{font-size:10px!important;line-height:1.62!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>span{font-size:9px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>strong{font-size:19px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>div>small{font-size:10px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-title{font-size:11px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-title em{font-size:8.6px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req-name span{font-size:11.2px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req strong{font-size:13px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req strong em{font-size:9px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req b{font-size:9px!important}
#playstylesPanel .ps-page-k6 .ps-hover-req i{font-size:11px!important}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>span{font-size:9.2px!important}
#playstylesPanel .ps-page-k6 .ps-unlock-cost>strong em{font-size:11px!important}
#playstylesPanel .ps-page-k6 .ps-unlock-btn{font-size:11.2px!important}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint strong{font-size:11.2px!important}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint span{font-size:9.2px!important;line-height:1.48!important}
@media(max-width:760px){
  #playstylesPanel .ps-page-k6 .ps-page-head p{font-size:10px!important}
  #playstylesPanel .ps-page-k6 .ps-library-title-group>strong{font-size:12.5px!important}
  #playstylesPanel .ps-page-k6 .ps-library-title-group .ps-source-note{font-size:8.2px!important}
}


/* ===== SOURCE: css/stable-bundle-008.css ===== */
/* === SOURCE: css/100-v421-playstyle-status-tier-warning-and-specialization-glow.css === */

/* v4.2.1 · Status belongs to the PlayStyle information bar directly above the badge rows. */
@media(min-width:1001px){
  #playstylesPanel .ps-page-k6 .ps-page-head{
    padding-right:0!important;
    min-height:46px!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    width:100%!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-stats{
    position:static!important;
    inset:auto!important;
    z-index:auto!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
  }
}

/* A silver badge can coexist with the same PlayStyle+, but that is redundant.
   Keep it legal, turn the green equipped cue into a restrained gold warning. */
#playstylesPanel .ps-page-k6 .ps-badge-tile.higher-tier-owned{
  border-color:rgba(216,184,95,.28)!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.equipped.higher-tier-duplicate{
  border-color:rgba(216,184,95,.52)!important;
  background:linear-gradient(145deg,rgba(92,72,27,.44),rgba(31,42,50,.96) 72%)!important;
  box-shadow:0 0 0 1px rgba(216,184,95,.08),0 7px 20px rgba(0,0,0,.22),0 0 18px rgba(216,184,95,.08)!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.equipped.higher-tier-duplicate .ps-equipped-check{
  background:#d6b94f!important;
  border-color:#171b1d!important;
  color:#241c08!important;
  box-shadow:0 2px 9px rgba(0,0,0,.30),0 0 10px rgba(216,184,95,.16)!important;
}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint.higher-tier-warning,
#playstylesPanel .ps-page-k6 .ps-unlocked-hint.higher-tier-warning.equipped{
  border-color:rgba(216,184,95,.30)!important;
  background:linear-gradient(145deg,rgba(216,184,95,.12),rgba(105,78,24,.07))!important;
}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint.higher-tier-warning strong{
  color:#e1c76d!important;
}
#playstylesPanel .ps-page-k6 .ps-unlocked-hint.higher-tier-warning span{
  color:#b9a66d!important;
}

/* Restore the v4.1.10 equipped-star top spotlight only on actual specialization/player cards.
   Later readability CSS had replaced ::before with a bottom-only wash. */
@media(min-width:1281px){
  #specializationCards .specialization-card.spec-card.state-3{
    box-shadow:
      0 20px 46px rgba(0,0,0,.30),
      0 0 0 1px rgba(216,184,95,.10),
      0 -10px 32px rgba(229,201,115,.10),
      0 0 28px rgba(216,184,95,.075)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3::before{
    background:
      radial-gradient(ellipse 66% 21% at 50% 0%,rgba(255,229,147,.16),transparent 72%),
      linear-gradient(180deg,
        transparent 0,
        transparent calc(100% - 82px),
        rgba(216,184,95,.018) calc(100% - 70px),
        rgba(216,184,95,.055) calc(100% - 36px),
        rgba(216,184,95,.090) 100%)!important;
  }
}

/* === SOURCE: css/101-v432-build-overview-correct-column.css === */

/* v4.3.2 · Correct Build Overview order
   Column 1 = Build/profile + PlayStyles
   Column 2 = Match attributes (kept)
   Column 3 = new showcase card (replaces old inspiration portrait) */
body.build-overview-active .overview-portrait-card{
  display:none!important;
}
body.build-overview-active .overview-middle-column{
  grid-area:profile!important;
}
body.build-overview-active .overview-stats-card{
  display:block!important;
  grid-area:stats!important;
}
body.build-overview-active .overview-showcase-column{
  grid-area:showcase!important;
  min-width:0!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:0!important;
  overflow:visible!important;
}
@media(min-width:1381px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(300px,.90fr) minmax(520px,1.48fr) minmax(300px,.90fr)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:14px!important;
    align-items:stretch!important;
  }
}
@media(max-width:1380px) and (min-width:1051px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(270px,.88fr) minmax(430px,1.42fr) minmax(270px,.86fr)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:12px!important;
  }
}
@media(max-width:1050px) and (min-width:761px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(245px,.90fr) minmax(360px,1.30fr) minmax(235px,.78fr)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:10px!important;
  }
}
@media(max-width:760px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "profile"
      "stats"
      "showcase"!important;
  }
}

/* Card is centered inside the true third column. */
body.build-overview-active .fc-build-showcase-card{
  width:min(100%,350px)!important;
  margin:0 auto!important;
}
@media(max-width:1050px) and (min-width:761px){
  body.build-overview-active .fc-build-showcase-card{width:min(100%,304px)!important}
}
@media(max-width:760px){
  body.build-overview-active .fc-build-showcase-card{width:min(318px,88vw)!important}
}

/* Put the player below the card frame and blend the dark source background away.
   The masks keep the photo inside the card body while preserving the player's silhouette. */
body.build-overview-active .fc-build-card-frame{
  z-index:3!important;
}
body.build-overview-active .fc-build-card-player-stage{
  z-index:2!important;
  left:11.2%!important;
  right:10.4%!important;
  top:9.8%!important;
  height:57.5%!important;
  overflow:hidden!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
}
body.build-overview-active .fc-build-card-player{
  left:50%!important;
  top:0!important;
  inset:auto!important;
  width:102%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  transform:translateX(-50%) scale(1.015)!important;
  transform-origin:50% 36%!important;
  mix-blend-mode:screen!important;
  filter:saturate(.92) contrast(1.08) brightness(.98) drop-shadow(0 8px 14px rgba(0,0,0,.24))!important;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 74%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 74%,transparent 100%)!important;
}
body.build-overview-active .fc-build-card-player-fade{
  background:
    radial-gradient(circle at 50% 18%,rgba(235,197,90,.14),transparent 35%),
    linear-gradient(180deg,rgba(7,8,10,.02) 0%,transparent 54%,rgba(7,8,10,.34) 73%,rgba(7,8,10,.94) 100%),
    linear-gradient(90deg,rgba(7,8,10,.18),transparent 15%,transparent 85%,rgba(7,8,10,.18))!important;
}

/* Use the same PlayStyle+ visual language used elsewhere on the site:
   diamond + gold fill, with the original badge icon untouched. */
body.build-overview-active .fc-build-card-plus{
  z-index:6!important;
  left:6.1%!important;
  top:49.0%!important;
  width:53px!important;
  height:53px!important;
  transform:rotate(45deg)!important;
  border:1px solid rgba(249,226,142,.72)!important;
  border-radius:0!important;
  background:linear-gradient(145deg,#f0d886,#b58d31)!important;
  box-shadow:0 0 11px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}
body.build-overview-active .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  border:1px solid rgba(255,245,200,.46)!important;
  border-radius:0!important;
}
body.build-overview-active .fc-build-card-plus-inner{
  inset:0!important;
  transform:rotate(-45deg)!important;
}
body.build-overview-active .fc-build-card-plus img{
  width:36px!important;
  height:36px!important;
  object-fit:contain!important;
  filter:none!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  border-color:rgba(255,255,255,.48)!important;
  background:#e3e7ea!important;
  box-shadow:0 2px 7px rgba(0,0,0,.18)!important;
}

/* === SOURCE: css/102-v433-player-layer-fix.css === */

/* v4.3.3 · black/gold card artwork is an opaque base, so the player must sit above it. */
body.build-overview-active .fc-build-card-frame{
  z-index:1!important;
}
body.build-overview-active .fc-build-card-player-stage{
  z-index:3!important;
  left:11.8%!important;
  right:10.9%!important;
  top:10.6%!important;
  height:55.8%!important;
  overflow:hidden!important;
  clip-path:polygon(5% 4%,18% 0,32% 0,39% 5%,46% 2%,50% 0,54% 2%,61% 5%,68% 0,82% 0,95% 4%,100% 11%,100% 100%,0 100%,0 11%);
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
body.build-overview-active .fc-build-card-player{
  z-index:1!important;
  opacity:.98!important;
  mix-blend-mode:normal!important;
  width:104%!important;
  height:104%!important;
  object-fit:cover!important;
  object-position:center 16%!important;
  transform:translateX(-50%) scale(1.02)!important;
  filter:saturate(.94) contrast(1.055) brightness(.98) drop-shadow(0 8px 16px rgba(0,0,0,.30))!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,transparent 100%)!important;
}
body.build-overview-active .fc-build-card-player-fade{
  z-index:2!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(235,197,90,.10),transparent 37%),
    linear-gradient(180deg,transparent 0%,transparent 60%,rgba(7,8,10,.28) 77%,rgba(7,8,10,.92) 100%),
    linear-gradient(90deg,rgba(7,8,10,.12),transparent 12%,transparent 88%,rgba(7,8,10,.12))!important;
}
/* Card information remains over the portrait. */
body.build-overview-active .fc-build-card-level-lockup,
body.build-overview-active .fc-build-card-plus,
body.build-overview-active .fc-build-card-identity,
body.build-overview-active .fc-build-card-face-stats{
  z-index:6!important;
}

/* === SOURCE: css/103-v435-player-cutout-hair-preserve.css === */

/* v4.3.5 · slightly larger card subject with conservative dark-hair preservation. */
body.build-overview-active .fc-build-card-player-stage{
  left:10.7%!important;
  right:9.9%!important;
  top:8.8%!important;
  height:59.2%!important;
  overflow:hidden!important;
  clip-path:polygon(5% 5%,18% 0,32% 0,39% 5%,46% 2%,50% 0,54% 2%,61% 5%,68% 0,82% 0,95% 5%,100% 12%,100% 100%,0 100%,0 12%)!important;
}
body.build-overview-active .fc-build-card-player{
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:1.5%!important;
  width:auto!important;
  height:86.1%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  filter:saturate(.96) contrast(1.04) brightness(.99) drop-shadow(0 10px 16px rgba(0,0,0,.32))!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgba(0,0,0,.92) 86%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgba(0,0,0,.92) 86%,transparent 100%)!important;
}
body.build-overview-active .fc-build-card-player-fade{
  background:
    radial-gradient(circle at 50% 21%,rgba(236,199,96,.08),transparent 38%),
    linear-gradient(180deg,transparent 0%,transparent 68%,rgba(7,8,10,.18) 82%,rgba(7,8,10,.74) 100%)!important;
}


/* ===== SOURCE: css/104-v442-clean-final-badges.css ===== */

/* ===== v4.4.3 · instant/prewarmed final badge system ===== */
:root{--fc27-ps-silver:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23F1F4F7%22%2F%3E%3Cstop%20offset%3D%220.56%22%20stop-color%3D%22%23DDE2E7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23C0C7D0%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%2250%2C1%2099%2C50%2050%2C99%201%2C50%22%20fill%3D%22url%28%23g%29%22%20stroke%3D%22%23FFFFFF%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E");--fc27-ps-gold:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20120%20100%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23FFE9A0%22%2F%3E%3Cstop%20offset%3D%220.55%22%20stop-color%3D%22%23FBDD81%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23F5C84B%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpolygon%20points%3D%2230%2C0%2090%2C0%20120%2C33.333%2060%2C100%200%2C33.333%22%20fill%3D%22url%28%23g%29%22%2F%3E%3C%2Fsvg%3E")}

/* ---------- shared shell ---------- */
#playstylesPanel .ps-icon-shell,
.overview-badge-shell,
body.build-overview-active .fc-build-card-plus{
  position:relative!important;
  display:block!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  clip-path:none!important;
}
#playstylesPanel .ps-icon-shell::before,
.overview-badge-shell::before,
body.build-overview-active .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:var(--badge-w)!important;
  height:var(--badge-h)!important;
  transform:translate(-50%,-50%)!important;
  background:var(--fc27-ps-silver) center/100% 100% no-repeat!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.18));
  pointer-events:none!important;
  z-index:1!important;
}
#playstylesPanel .ps-icon-shell.plus::before,
.overview-badge-shell.plus::before,
body.build-overview-active .fc-build-card-plus:not(.is-silver)::before{
  background-image:var(--fc27-ps-gold)!important;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.20));
}
#playstylesPanel .ps-icon-shell::after,
.overview-badge-shell::after,
body.build-overview-active .fc-build-card-plus::after{display:none!important;content:none!important}

#playstylesPanel .ps-icon-shell img,
.overview-badge-shell img,
body.build-overview-active .fc-build-card-plus img{
  position:absolute!important;
  z-index:2!important;
  display:block!important;
  left:50%!important;
  top:calc(50% - var(--gold-lift,0px))!important;
  width:var(--icon-box,22px)!important;
  height:var(--icon-box,22px)!important;
  object-fit:contain!important;
  max-width:none!important;
  max-height:none!important;
  filter:none!important;
  opacity:1!important;
  transition:none!important;
  transform:translate(-50%,-50%)!important;
}
#playstylesPanel .ps-icon-shell[data-badge-ready="1"] img,
.overview-badge-shell[data-badge-ready="1"] img,
body.build-overview-active .fc-build-card-plus[data-badge-ready="1"] img{opacity:1!important}

#playstylesPanel .ps-icon-fallback,
.overview-badge-shell .overview-ps-glyph,
body.build-overview-active .fc-build-card-plus span{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#111820!important;
}
#playstylesPanel .ps-icon-shell img + .ps-icon-fallback{display:none!important}
#playstylesPanel .ps-icon-shell[data-badge-ready="1"] .ps-icon-fallback,
.overview-badge-shell[data-badge-ready="1"] .overview-ps-glyph,
body.build-overview-active .fc-build-card-plus[data-badge-ready="1"] span{display:none!important}

/* ---------- PlayStyle page selector ---------- */
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell{
  --badge-h:38px;--badge-w:38px;--icon-box:22px;--gold-lift:0px;
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell.plus{--badge-w:45.6px;--icon-box:23px;--gold-lift:2.26px}
#playstylesPanel .ps-page-k6 .ps-badge-tile.locked .ps-icon-shell img{opacity:.40!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.insufficient .ps-icon-shell img{opacity:.34!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.locked .ps-icon-shell[data-badge-ready="1"] img{opacity:.40!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.insufficient .ps-icon-shell[data-badge-ready="1"] img{opacity:.34!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unreachable .ps-icon-shell[data-badge-ready="1"] img{opacity:.30!important}
#playstylesPanel .ps-page-k6 .ps-badge-tile.unlocked .ps-icon-shell[data-badge-ready="1"] img,
#playstylesPanel .ps-page-k6 .ps-badge-tile.equipped .ps-icon-shell[data-badge-ready="1"] img,
#playstylesPanel .ps-page-k6 .ps-badge-tile.selected .ps-icon-shell[data-badge-ready="1"] img{opacity:1!important}

/* signature / regular slots */
#playstylesPanel .ps-signature-card>.ps-icon-shell{--badge-h:31px;--badge-w:31px;--icon-box:18px;--gold-lift:0px;width:42px!important;height:42px!important}
#playstylesPanel .ps-signature-card>.ps-icon-shell.plus{--badge-w:37.2px;--icon-box:18.6px;--gold-lift:1.85px}
#playstylesPanel .ps-slot .ps-icon-shell{--badge-h:24px;--badge-w:24px;--icon-box:14px;--gold-lift:0px;width:30px!important;height:30px!important}
#playstylesPanel .ps-slot .ps-icon-shell.plus{--badge-w:28.8px;--icon-box:14.4px;--gold-lift:1.43px}

/* hover detail */
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell{--badge-h:43px;--badge-w:43px;--icon-box:25px;--gold-lift:0px;width:58px!important;height:58px!important}
#playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell.plus{--badge-w:51.6px;--icon-box:25.8px;--gold-lift:2.56px}

/* ---------- Build overview lower-left PlayStyle block ---------- */
.overview-playstyle-token{
  width:58px!important;min-width:58px!important;
  display:grid!important;grid-template-rows:42px auto!important;justify-items:center!important;gap:4px!important;
  padding-top:0!important;
}
.overview-playstyle-token::before,.overview-playstyle-token::after{display:none!important;content:none!important}
.overview-badge-shell{--badge-h:34px;--badge-w:34px;--icon-box:20px;--gold-lift:0px;width:48px;height:42px}
.overview-badge-shell.plus{--badge-w:40.8px;--icon-box:20.4px;--gold-lift:2.02px}
.overview-playstyle-token small{position:relative!important;z-index:4!important}

/* ---------- Build card badge: one layer only ---------- */
body.build-overview-active .fc-build-card-plus{
  --badge-h:72px;--badge-w:86.4px;--icon-box:43px;--gold-lift:4.29px;
  left:0!important;top:52.4%!important;
  width:96px!important;height:84px!important;
  transform:translate(-50%,-50%)!important;
  z-index:7!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  clip-path:none!important;
}
body.build-overview-active .fc-build-card-plus.is-silver{--badge-w:72px;--icon-box:42px;--gold-lift:0px}
body.build-overview-active .fc-build-card-plus-inner{position:absolute!important;inset:0!important;display:block!important;transform:none!important;background:none!important}
body.build-overview-active .fc-build-card-plus.is-hidden{display:none!important}

@media(max-width:1180px){
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell{--badge-h:33px;--badge-w:33px;--icon-box:19px}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell.plus{--badge-w:39.6px;--icon-box:19.8px;--gold-lift:1.96px}
}
@media(max-width:900px){
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell{--badge-h:29px;--badge-w:29px;--icon-box:16.8px}
  #playstylesPanel .ps-page-k6 .ps-badge-tile .ps-icon-shell.plus{--badge-w:34.8px;--icon-box:17.4px;--gold-lift:1.73px}
  #playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell{--badge-h:38px;--badge-w:38px;--icon-box:22px;width:52px!important;height:52px!important}
  #playstylesPanel .ps-page-k6 .ps-hover-detail-head>.ps-icon-shell.plus{--badge-w:45.6px;--icon-box:22.8px;--gold-lift:2.26px}
}


/* ===== SOURCE: css/stable-bundle-009.css ===== */
/* === SOURCE: css/105-v447-card-visual-adjustments.css === */

/* v4.4.7 · blue-edge anchor companion tuning */
body.build-overview-active .fc-build-card-name-lockup strong{
  font-size:clamp(22px,1.62vw,29px)!important;
}
/* another ~5% reduction from v4.4.4 while preserving the same bottom baseline */
body.build-overview-active .fc-build-card-player{
  bottom:1.5%!important;
  height:77.7%!important;
  transform:translateX(-50%)!important;
  object-position:center bottom!important;
}
@media(max-width:1180px){
  body.build-overview-active .fc-build-card-player{height:76.6%!important;}
  body.build-overview-active .fc-build-card-name-lockup strong{font-size:clamp(21px,1.56vw,27px)!important;}
}

/* === SOURCE: css/106-v448-build-card-gold-logo-script-name.css === */

/* v4.4.8 · Build card gold logo + atmospheric handwritten English underlay */
body.build-overview-active .fc-build-card-bottom-logo{
  width:28px!important;
  height:28px!important;
  opacity:.98!important;
  filter:brightness(0) saturate(100%) invert(84%) sepia(28%) saturate(704%) hue-rotate(357deg) brightness(98%) contrast(92%) drop-shadow(0 0 10px rgba(220,186,92,.18)) drop-shadow(0 2px 5px rgba(0,0,0,.52))!important;
}

body.build-overview-active .fc-build-card-identity{
  overflow:visible!important;
}
body.build-overview-active .fc-build-card-name-lockup{
  position:relative!important;
  overflow:visible!important;
  min-height:54px!important;
}
body.build-overview-active .fc-build-card-name-lockup strong{
  position:relative!important;
  z-index:2!important;
  font-size:clamp(23px,1.68vw,29px)!important;
  line-height:1.03!important;
}
body.build-overview-active #overviewBuildCardEnglish,
body.build-overview-active .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:58%!important;
  transform:translate(-50%,-50%) rotate(-7deg)!important;
  z-index:1!important;
  width:max-content!important;
  max-width:118%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  pointer-events:none!important;
  color:rgba(234,213,139,.24)!important;
  font-size:clamp(28px,2.15vw,37px)!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  font-weight:600!important;
  font-style:italic!important;
  font-family:"Segoe Script","Brush Script MT","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,244,204,.05),0 0 12px rgba(212,176,86,.06)!important;
  opacity:1!important;
}

@media(max-width:1180px){
  body.build-overview-active .fc-build-card-bottom-logo{width:25px!important;height:25px!important;}
  body.build-overview-active .fc-build-card-name-lockup{min-height:50px!important;}
  body.build-overview-active .fc-build-card-name-lockup strong{font-size:clamp(22px,1.7vw,27px)!important;}
  body.build-overview-active #overviewBuildCardEnglish,
  body.build-overview-active .fc-build-card-name-lockup span{font-size:clamp(25px,2.05vw,33px)!important;top:59%!important;}
}

/* === SOURCE: css/107-v449-english-underlay-refine.css === */

/* v4.4.9 · silver, softer, larger, heavier handwritten English underlay */
body.build-overview-active #overviewBuildCardEnglish,
body.build-overview-active .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:60%!important;
  transform:translate(-50%,-50%) rotate(-7deg)!important;
  z-index:1!important;
  width:78%!important;
  max-width:78%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:visible!important;
  text-wrap:balance!important;
  pointer-events:none!important;
  color:rgba(233,238,245,.16)!important;
  font-size:clamp(33px,2.55vw,44px)!important;
  line-height:.88!important;
  letter-spacing:.005em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.035),0 0 14px rgba(220,228,238,.035)!important;
  opacity:1!important;
}
body.build-overview-active #overviewBuildCardEnglish.is-two-line,
body.build-overview-active .fc-build-card-name-lockup span.is-two-line{
  width:66%!important;
  max-width:66%!important;
  line-height:.82!important;
}
@media(max-width:1180px){
  body.build-overview-active #overviewBuildCardEnglish,
  body.build-overview-active .fc-build-card-name-lockup span{
    font-size:clamp(30px,2.4vw,39px)!important;
    top:61%!important;
    width:80%!important;
    max-width:80%!important;
  }
  body.build-overview-active #overviewBuildCardEnglish.is-two-line,
  body.build-overview-active .fc-build-card-name-lockup span.is-two-line{
    width:69%!important;
    max-width:69%!important;
  }
}

/* === SOURCE: css/108-v4410-english-underlay-visible-clipped.css === */

/* v4.4.10 · make English underlay visible again, but clipped inside card */
body.build-overview-active .fc-build-card-identity{
  overflow:hidden!important;
}
body.build-overview-active .fc-build-card-name-lockup{
  position:relative!important;
  overflow:hidden!important;
  min-height:60px!important;
}
body.build-overview-active .fc-build-card-name-lockup strong{
  position:relative!important;
  z-index:2!important;
}
body.build-overview-active #overviewBuildCardEnglish,
body.build-overview-active .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:64%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  z-index:1!important;
  width:84%!important;
  max-width:84%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-wrap:balance!important;
  word-break:keep-all!important;
  pointer-events:none!important;
  color:rgba(236,241,247,.20)!important;
  font-size:clamp(36px,2.8vw,48px)!important;
  line-height:.84!important;
  letter-spacing:.003em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.025),0 0 10px rgba(220,228,238,.028)!important;
  opacity:1!important;
}
body.build-overview-active #overviewBuildCardEnglish.is-two-line,
body.build-overview-active .fc-build-card-name-lockup span.is-two-line{
  width:70%!important;
  max-width:70%!important;
  line-height:.80!important;
}
@media(max-width:1180px){
  body.build-overview-active .fc-build-card-name-lockup{min-height:56px!important;}
  body.build-overview-active #overviewBuildCardEnglish,
  body.build-overview-active .fc-build-card-name-lockup span{
    top:65%!important;
    width:86%!important;
    max-width:86%!important;
    font-size:clamp(33px,2.6vw,42px)!important;
  }
  body.build-overview-active #overviewBuildCardEnglish.is-two-line,
  body.build-overview-active .fc-build-card-name-lockup span.is-two-line{
    width:74%!important;
    max-width:74%!important;
  }
}

/* === SOURCE: css/109-v4412-atmospheric-english-overlay.css === */

/* v4.4.12 · big atmospheric handwritten English, clipped by card bounds */
body.build-overview-active #overviewBuildShowcaseCard{
  overflow:hidden!important;
}
body.build-overview-active #overviewBuildCardEnglish{
  display:none!important;
}
body.build-overview-active .fc-build-card-name-lockup{
  overflow:visible!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay{
  position:absolute!important;
  z-index:4!important;
  left:50%!important;
  top:73.2%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:138%!important;
  max-width:none!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  pointer-events:none!important;
  color:rgba(233,238,245,.16)!important;
  font-size:clamp(48px,3.9vw,66px)!important;
  line-height:.9!important;
  letter-spacing:.003em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Segoe Script","Brush Script MT","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.035),0 0 12px rgba(220,228,238,.03)!important;
  opacity:1!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{
  width:102%!important;
  white-space:normal!important;
  line-height:.80!important;
}
@media(max-width:1180px){
  body.build-overview-active #overviewBuildCardEnglishUnderlay{
    top:73.4%!important;
    width:136%!important;
    font-size:clamp(43px,3.55vw,58px)!important;
  }
  body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{
    width:100%!important;
  }
}


/* ===== SOURCE: css/110-v4413-badge-unclip-english-soften.css ===== */

/* v4.4.13 · keep left badge fully outside card while clipping only the atmospheric English */
body.build-overview-active #overviewBuildShowcaseCard{
  overflow:visible!important;
}
body.build-overview-active #overviewBuildCardEnglishMask{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:4!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay{
  z-index:1!important;
  color:rgba(233,238,245,.12)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.02),0 0 10px rgba(220,228,238,.02)!important;
}
@media(max-width:1180px){
  body.build-overview-active #overviewBuildCardEnglishUnderlay{
    color:rgba(233,238,245,.115)!important;
  }
}


/* ===== SOURCE: css/stable-bundle-010.css ===== */
/* === SOURCE: css/111-v4414-inner-frame-clip-tune.css === */

/* v4.4.14 · clip the atmospheric English to the INNER frame, not the outer frame */
body.build-overview-active #overviewBuildCardEnglishMask{
  /* align to the blue-line inner frame boundary rather than the outer gold edge */
  left:12.25%!important;
  right:12.25%!important;
  top:4.6%!important;
  bottom:4.35%!important;
  inset:auto!important;
  overflow:hidden!important;
}
/* keep the underlay large, but nudge it a touch right so long words feel optically centered inside the inner frame */
body.build-overview-active #overviewBuildCardEnglishUnderlay{
  left:50.8%!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{
  left:50.4%!important;
}
@media(max-width:1180px){
  body.build-overview-active #overviewBuildCardEnglishMask{
    left:12.55%!important;
    right:12.55%!important;
    top:4.8%!important;
    bottom:4.45%!important;
  }
  body.build-overview-active #overviewBuildCardEnglishUnderlay{left:50.7%!important;}
  body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{left:50.35%!important;}
}

/* === SOURCE: css/112-v4415-english-visible-inner-clip-horizontal.css === */

/* v4.4.15 · only clip the atmospheric English horizontally to the inner frame */
body.build-overview-active #overviewBuildCardEnglishMask{
  position:absolute!important;
  left:12.25%!important;
  right:12.25%!important;
  top:0!important;
  bottom:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:4!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay{
  display:block!important;
  left:50.6%!important;
  top:73.4%!important;
  width:138%!important;
  color:rgba(233,238,245,.1305)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.025),0 0 10px rgba(220,228,238,.02)!important;
}
body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{
  width:102%!important;
  left:50.25%!important;
}
@media(max-width:1180px){
  body.build-overview-active #overviewBuildCardEnglishMask{
    left:12.55%!important;
    right:12.55%!important;
  }
  body.build-overview-active #overviewBuildCardEnglishUnderlay{
    left:50.55%!important;
    top:73.5%!important;
    color:rgba(233,238,245,.126)!important;
  }
  body.build-overview-active #overviewBuildCardEnglishUnderlay.is-two-line{
    left:50.2%!important;
  }
}


/* ===== SOURCE: css/stable-bundle-011.css ===== */
/* === SOURCE: css/113-v461-facility-slots-ui.css === */

/* v4.6.1 · original facility slot selector */
.facility-selected-section{padding:13px 14px 14px!important;overflow:hidden!important}
.facility-selected-head{margin-bottom:9px!important}
.facility-slot-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;max-height:205px;overflow:auto;padding:1px 2px 4px;scrollbar-width:thin}
.facility-slot-card,.facility-slot-add{min-width:0;min-height:124px;border-radius:14px;cursor:pointer;transition:.16s ease;font-family:inherit}
.facility-slot-card{position:relative;border:1px solid rgba(255,255,255,.075);background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.012));padding:9px;text-align:left;color:inherit}
.facility-slot-card:hover{transform:translateY(-2px);border-color:rgba(215,181,90,.24);background:linear-gradient(160deg,rgba(215,181,90,.055),rgba(255,255,255,.014))}
.facility-slot-card.lv3{border-color:rgba(215,181,90,.20);box-shadow:inset 0 0 0 1px rgba(215,181,90,.025)}
.facility-slot-top{height:45px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.facility-slot-top>img{width:43px;height:43px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.30))}.facility-slot-level{font-size:8px;font-weight:900;color:#d8be67;border:1px solid rgba(215,181,90,.22);border-radius:999px;padding:3px 6px;background:rgba(215,181,90,.05)}
.facility-slot-card>strong{display:block;margin-top:6px;font-size:11px;color:#e0e5eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.facility-slot-boosts{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;min-height:22px}.facility-slot-boosts span{font-size:7px;color:#7f8a96;background:rgba(255,255,255,.025);border-radius:999px;padding:3px 5px}.facility-slot-boosts b{color:#62dca0;font-size:8px}.facility-slot-foot{margin-top:7px;padding-top:6px;border-top:1px solid rgba(255,255,255,.045);display:flex;align-items:center;justify-content:space-between}.facility-slot-foot>span:first-child{font-size:10px;font-weight:900;color:#cdd4dc}.facility-slot-foot .facility-ps-badge{transform:scale(.82);transform-origin:right center;margin-right:-4px}
.facility-slot-add{border:1px dashed rgba(215,181,90,.24);background:linear-gradient(160deg,rgba(215,181,90,.035),rgba(255,255,255,.008));display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8b96a2;gap:5px}.facility-slot-add:hover{transform:translateY(-2px);border-color:rgba(215,181,90,.48);background:rgba(215,181,90,.06);color:#d8c47d}.facility-slot-plus{font-size:30px;font-weight:300;line-height:1;color:#d4b65a}.facility-slot-add strong{font-size:10px;color:#c9b86f}.facility-slot-add small{font-size:8px;color:#697582}

.facility-selector-backdrop{position:fixed;inset:0;background:rgba(1,5,9,.70);backdrop-filter:blur(5px);z-index:650;opacity:0;pointer-events:none;transition:.16s ease}.facility-selector-backdrop.open{opacity:1;pointer-events:auto}
.facility-selector-modal{position:fixed;left:50%;top:50%;width:min(1120px,94vw);height:min(760px,88vh);z-index:660;transform:translate(-50%,-48%) scale(.985);opacity:0;pointer-events:none;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.095);border-radius:20px;background:linear-gradient(180deg,#111820 0%,#0a1016 100%);box-shadow:0 30px 90px rgba(0,0,0,.58);overflow:hidden;transition:.18s ease}.facility-selector-modal.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}
.facility-selector-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px 10px;gap:12px}.facility-selector-head h3{margin:0;color:#eef2f5;font-size:20px}.facility-selector-head p{margin:5px 0 0;color:#74808d;font-size:9px}.facility-selector-tools{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,1.1fr);gap:14px;padding:0 20px 14px;border-bottom:1px solid rgba(255,255,255,.065)}.facility-selector-meter{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.facility-selector-meter .facility-budget-rail{margin:0}.facility-selector-meter strong{font-size:10px;color:#d4dbe3;min-width:86px;text-align:right}.facility-selector-tools .facility-search{margin:0;height:34px}
.facility-selector-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr);gap:0}.facility-selector-grid{min-height:0;overflow:auto;padding:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:9px;border-right:1px solid rgba(255,255,255,.06);scrollbar-width:thin}.facility-picker-tile{position:relative;min-width:0;min-height:112px;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(255,255,255,.018);padding:9px;color:inherit;text-align:left;cursor:pointer;transition:.14s ease}.facility-picker-tile:hover{border-color:rgba(255,255,255,.13);background:rgba(255,255,255,.035);transform:translateY(-1px)}.facility-picker-tile.selected{border-color:rgba(215,181,90,.20);background:rgba(215,181,90,.035)}.facility-picker-tile.active{border-color:rgba(215,181,90,.48);box-shadow:0 0 0 1px rgba(215,181,90,.12),0 10px 28px rgba(0,0,0,.18)}.facility-picker-iconwrap{height:43px;display:flex;align-items:flex-start;justify-content:space-between}.facility-picker-iconwrap img{width:42px;height:42px;object-fit:contain}.facility-picker-current{font-size:7px;font-weight:900;color:#e1c96e;border:1px solid rgba(215,181,90,.22);border-radius:999px;padding:3px 5px}.facility-picker-tile>strong{display:block;margin-top:6px;color:#dce2e8;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.facility-picker-tile>span{display:block;margin-top:3px;color:#6e7a86;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.facility-picker-reward{position:absolute;right:5px;bottom:5px;display:flex;align-items:center;gap:0}.facility-picker-reward .facility-ps-badge{transform:scale(.68);margin-right:-6px}.facility-picker-reward small{font-size:6px;color:#65717d}
.facility-selector-detail{min-height:0;overflow:auto;padding:16px;background:radial-gradient(circle at 50% 0,rgba(215,181,90,.045),transparent 38%);scrollbar-width:thin}.facility-detail-empty{height:100%;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;color:#697582}.facility-detail-empty>span{font-size:36px;color:#bca354;font-weight:300}.facility-detail-empty strong{margin-top:5px;color:#a6b0ba;font-size:13px}.facility-detail-empty p{max-width:240px;margin:8px 0 0;font-size:9px;line-height:1.6}.facility-detail-head{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.06)}.facility-detail-head>img{width:52px;height:52px;object-fit:contain}.facility-detail-head strong{display:block;color:#e7ebef;font-size:15px}.facility-detail-head span{display:block;margin-top:4px;color:#74808d;font-size:9px}.facility-detail-levels{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.facility-selector-detail .facility-level-card{min-height:112px;display:grid!important;grid-template-columns:72px minmax(0,1fr) 74px;grid-template-rows:auto auto;gap:5px 10px;align-items:center;text-align:left;padding:10px 11px}.facility-selector-detail .facility-level-card>strong{grid-row:1/3;font-size:12px}.facility-selector-detail .facility-level-boosts{display:flex;gap:5px}.facility-selector-detail .facility-level-boost{font-size:8px}.facility-selector-detail .facility-level-cost{margin:0;text-align:right}.facility-selector-detail .facility-level-delta{margin:0;text-align:right}.facility-selector-detail .facility-level-reward{grid-column:2/4;margin:0;justify-content:flex-end}.facility-selector-detail .facility-level-unavailable{position:absolute;right:9px;top:7px}.facility-detail-remove{width:100%;margin-top:11px;height:34px;border:1px solid rgba(211,102,81,.18);border-radius:10px;background:rgba(211,102,81,.045);color:#c68174;font:800 9px/1 inherit;cursor:pointer}.facility-detail-remove:hover{border-color:rgba(211,102,81,.32);background:rgba(211,102,81,.08);color:#e19a8c}.facility-picker-none{grid-column:1/-1;padding:30px;text-align:center;color:#71808d;font-size:10px}
@media(max-width:1100px){.facility-slot-track{grid-template-columns:repeat(4,minmax(0,1fr))}.facility-selector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.facility-selector-body{grid-template-columns:minmax(0,1.45fr) minmax(285px,.8fr)}}
@media(max-width:760px){.facility-budget-strip{grid-template-columns:1fr 1fr}.facility-slot-track{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px}.facility-selector-modal{width:96vw;height:91vh}.facility-selector-tools{grid-template-columns:1fr}.facility-selector-body{grid-template-columns:1fr}.facility-selector-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid rgba(255,255,255,.06);max-height:46vh}.facility-selector-detail{max-height:40vh}.facility-detail-levels{grid-template-columns:1fr}.facility-selector-detail .facility-level-card{grid-template-columns:64px minmax(0,1fr) 68px}}

/* === SOURCE: css/114-v463-facility-picker-text-first.css === */

/* v4.6.3 · facility picker cards: text first, gold attributes, logo top-right */
body.facility-drawer-open .facility-picker-tile{
  position:relative!important;
  min-height:106px!important;
  padding:14px 62px 12px 14px!important;
  display:block!important;
  overflow:hidden!important;
}
body.facility-drawer-open .facility-picker-copy{
  min-width:0!important;
  padding:0!important;
  position:relative!important;
  z-index:2!important;
}
body.facility-drawer-open .facility-picker-copy>strong{
  display:block!important;
  margin:0!important;
  color:#eef2f6!important;
  font-size:13.5px!important;
  line-height:1.18!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  display:block!important;
  margin-top:8px!important;
  color:#d7b65a!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.005em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 0 10px rgba(215,182,90,.05)!important;
}
body.facility-drawer-open .facility-picker-foot{
  position:static!important;
  min-height:0!important;
  margin:0!important;
  display:block!important;
}
body.facility-drawer-open .facility-picker-icon{
  position:absolute!important;
  right:14px!important;
  top:13px!important;
  width:38px!important;
  height:38px!important;
  object-fit:contain!important;
  opacity:.82!important;
  z-index:1!important;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.14))!important;
}
body.facility-drawer-open .facility-picker-hint{
  position:absolute!important;
  right:13px!important;
  bottom:11px!important;
  color:#505b67!important;
  font-size:7.5px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
}
body.facility-drawer-open .facility-picker-current{
  position:absolute!important;
  right:12px!important;
  bottom:10px!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:950!important;
  color:#ead270!important;
  border:1px solid rgba(215,181,90,.34)!important;
  background:rgba(215,181,90,.07)!important;
  border-radius:999px!important;
  padding:4px 7px!important;
  z-index:2!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-icon{
  opacity:.96!important;
  transform:scale(1.035)!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-copy>span{
  color:#e0c36d!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-tile{padding:13px 56px 11px 12px!important}
  body.facility-drawer-open .facility-picker-copy>strong{font-size:12.5px!important}
  body.facility-drawer-open .facility-picker-copy>span{font-size:9.8px!important}
  body.facility-drawer-open .facility-picker-icon{right:12px!important;top:12px!important;width:34px!important;height:34px!important}
}

/* === SOURCE: css/115-v464-facility-picker-calm-three-column.css === */

/* v4.6.4 · calmer facility picker: 3 columns, text-first, quieter logos/colors */
body.facility-drawer-open .facility-selector-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  padding:14px!important;
}
body.facility-drawer-open .facility-picker-tile{
  min-height:94px!important;
  padding:13px 52px 11px 14px!important;
  border-radius:13px!important;
}
body.facility-drawer-open .facility-picker-copy>strong{
  font-size:13.8px!important;
  line-height:1.18!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:7px!important;
  color:#a89355!important;
  font-size:10.6px!important;
  line-height:1.28!important;
  font-weight:850!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:100%!important;
  text-shadow:none!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#d8b95f!important;
}
body.facility-drawer-open .facility-picker-icon{
  right:14px!important;
  top:12px!important;
  width:29px!important;
  height:29px!important;
  opacity:.68!important;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.12))!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-icon{
  opacity:.78!important;
  transform:scale(1.025)!important;
}
body.facility-drawer-open .facility-picker-hint{
  display:none!important;
}
body.facility-drawer-open .facility-picker-current{
  right:11px!important;
  bottom:9px!important;
  font-size:7.8px!important;
  padding:4px 7px!important;
}
body.facility-drawer-open .facility-picker-tile.selected{
  border-color:rgba(215,181,90,.18)!important;
  background:rgba(215,181,90,.025)!important;
}
body.facility-drawer-open .facility-picker-tile.active{
  border-color:rgba(215,181,90,.42)!important;
  box-shadow:0 0 0 1px rgba(215,181,90,.08),0 8px 22px rgba(0,0,0,.14)!important;
}
@media(max-width:980px){
  body.facility-drawer-open .facility-selector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.facility-drawer-open .facility-picker-tile{
    min-height:92px!important;
    padding:12px 48px 10px 12px!important;
  }
  body.facility-drawer-open .facility-picker-copy>strong{font-size:12.8px!important;}
  body.facility-drawer-open .facility-picker-copy>span{font-size:9.8px!important;}
  body.facility-drawer-open .facility-picker-icon{right:12px!important;top:11px!important;width:27px!important;height:27px!important;}
}

/* === SOURCE: css/116-v465-facility-picker-attribute-priority.css === */

/* v4.6.5 · stronger attribute hierarchy, softer facility names, watermark logos */
body.facility-drawer-open .facility-picker-tile{
  min-height:98px!important;
  padding:15px 48px 13px 16px!important;
}
body.facility-drawer-open .facility-picker-copy{
  width:100%!important;
  max-width:100%!important;
}
body.facility-drawer-open .facility-picker-copy>strong{
  color:#c7ced5!important;
  font-size:15.3px!important;
  line-height:1.16!important;
  font-weight:820!important;
  letter-spacing:-.012em!important;
  max-width:95%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:9px!important;
  color:#d2b35c!important;
  font-size:13.1px!important;
  line-height:1.2!important;
  font-weight:930!important;
  letter-spacing:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>strong,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>strong{
  color:#cbd2d8!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#e0c264!important;
}
body.facility-drawer-open .facility-picker-icon{
  right:14px!important;
  top:13px!important;
  width:31px!important;
  height:31px!important;
  opacity:.34!important;
  filter:none!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-icon{
  opacity:.46!important;
  transform:scale(1.015)!important;
}
body.facility-drawer-open .facility-picker-current{
  right:12px!important;
  bottom:10px!important;
  font-size:8px!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-tile{
    min-height:96px!important;
    padding:14px 45px 12px 14px!important;
  }
  body.facility-drawer-open .facility-picker-copy>strong{font-size:14.3px!important;}
  body.facility-drawer-open .facility-picker-copy>span{font-size:12.2px!important;margin-top:8px!important;}
  body.facility-drawer-open .facility-picker-icon{right:12px!important;top:12px!important;width:29px!important;height:29px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-picker-tile{
    min-height:94px!important;
    padding:13px 42px 11px 13px!important;
  }
  body.facility-drawer-open .facility-picker-copy>strong{font-size:13.7px!important;}
  body.facility-drawer-open .facility-picker-copy>span{font-size:11.4px!important;margin-top:7px!important;}
  body.facility-drawer-open .facility-picker-icon{right:11px!important;top:11px!important;width:27px!important;height:27px!important;opacity:.30!important;}
}

/* === SOURCE: css/117-v466-facility-picker-attribute-two-lines.css === */

/* v4.6.6 · facility name/logo recede; attributes become the primary two-line content */
body.facility-drawer-open .facility-picker-tile{
  min-height:100px!important;
  padding:14px 48px 13px 16px!important;
}
body.facility-drawer-open .facility-picker-copy>strong{
  color:#d4d9de!important;
  opacity:.36!important;
  font-size:13.6px!important;
  line-height:1.15!important;
  font-weight:500!important;
  letter-spacing:0!important;
  max-width:94%!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:8px!important;
  color:#d8b75a!important;
  font-size:14.4px!important;
  line-height:1.32!important;
  font-weight:900!important;
  letter-spacing:.002em!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>strong,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>strong{
  color:#d4d9de!important;
  opacity:.36!important;
  font-weight:500!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#e1bf5d!important;
}
body.facility-drawer-open .facility-picker-icon{
  width:30px!important;
  height:30px!important;
  opacity:.32!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-icon{
  opacity:.38!important;
  transform:scale(1.01)!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-copy>strong{font-size:12.8px!important;}
  body.facility-drawer-open .facility-picker-copy>span{font-size:13.5px!important;line-height:1.28!important;}
  body.facility-drawer-open .facility-picker-icon{width:28px!important;height:28px!important;opacity:.30!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-picker-copy>strong{font-size:12.2px!important;}
  body.facility-drawer-open .facility-picker-copy>span{font-size:12.8px!important;line-height:1.26!important;}
  body.facility-drawer-open .facility-picker-icon{width:26px!important;height:26px!important;opacity:.28!important;}
}

/* === SOURCE: css/118-v467-facility-picker-soft-champagne.css === */

/* v4.6.7 · softer champagne attributes, lighter weight, calmer two-line rhythm */
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:9px!important;
  color:#c7ad70!important;
  font-size:13.7px!important;
  line-height:1.52!important;
  font-weight:650!important;
  letter-spacing:.002em!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#d0b776!important;
  font-weight:675!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-copy>span{
    font-size:12.8px!important;
    line-height:1.48!important;
    margin-top:8px!important;
  }
}
@media(max-width:760px){
  body.facility-drawer-open .facility-picker-copy>span{
    font-size:12.2px!important;
    line-height:1.45!important;
    margin-top:7px!important;
  }
}

/* === SOURCE: css/119-v468-facility-picker-typography-tune.css === */

/* v4.6.8 · exact facility picker typography values requested by user */
body.facility-drawer-open .facility-picker-copy>strong{
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.15!important;
  opacity:.45!important;
}
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:9px!important;
  color:#c7ad70!important;
  font-size:13px!important;
  font-weight:550!important;
  line-height:1.82!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>strong,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>strong{
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.15!important;
  opacity:.45!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#c7ad70!important;
  font-size:13px!important;
  font-weight:550!important;
  line-height:1.82!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-copy>strong{
    font-size:14px!important;
    font-weight:600!important;
    line-height:1.15!important;
    opacity:.45!important;
  }
  body.facility-drawer-open .facility-picker-copy>span{
    font-size:12.5px!important;
    font-weight:550!important;
    line-height:1.72!important;
    margin-top:8px!important;
  }
}
@media(max-width:760px){
  body.facility-drawer-open .facility-picker-copy>strong{
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.15!important;
    opacity:.45!important;
  }
  body.facility-drawer-open .facility-picker-copy>span{
    font-size:12px!important;
    font-weight:550!important;
    line-height:1.62!important;
    margin-top:7px!important;
  }
}

/* === SOURCE: css/120-v4610-facility-picker-muted-attrs-final.css === */

/* v4.6.11 · FINAL OVERRIDE: calmer attributes */
body.facility-drawer-open .facility-picker-copy>span{
  margin-top:9px!important;
  color:#c2c5c9!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.82!important;
}
body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
  color:#bca56c!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.82!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-picker-copy>span{
    color:#c2c5c9!important;
    font-size:12.5px!important;
    font-weight:500!important;
    line-height:1.72!important;
    margin-top:8px!important;
  }
  body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
  body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
    color:#bca56c!important;
    font-size:12.5px!important;
    font-weight:500!important;
    line-height:1.72!important;
  }
}
@media(max-width:760px){
  body.facility-drawer-open .facility-picker-copy>span{
    color:#c2c5c9!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.62!important;
    margin-top:7px!important;
  }
  body.facility-drawer-open .facility-picker-tile.selected .facility-picker-copy>span,
  body.facility-drawer-open .facility-picker-tile.active .facility-picker-copy>span{
    color:#bca56c!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.62!important;
  }
}

/* === SOURCE: css/121-v4618-facility-level-decision-panel.css === */

/* v4.6.18 · compact Facility Level Detail / budget decision panel */
body.facility-drawer-open .facility-selector-detail{
  padding:18px 18px 16px!important;
  background:radial-gradient(circle at 50% 0,rgba(215,181,90,.038),transparent 35%)!important;
}
body.facility-drawer-open .facility-detail-head{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  gap:15px!important;
  align-items:center!important;
  padding:3px 4px 15px!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
body.facility-drawer-open .facility-detail-head>img{
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  opacity:.72!important;
}
body.facility-drawer-open .facility-detail-copy{min-width:0!important;}
body.facility-drawer-open .facility-detail-head strong{
  display:block!important;
  color:#e8edf1!important;
  font-size:22px!important;
  line-height:1.15!important;
  font-weight:750!important;
  letter-spacing:-.018em!important;
}
body.facility-drawer-open .facility-detail-head span{
  display:block!important;
  margin-top:7px!important;
  color:rgba(210,218,226,.68)!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:600!important;
}
body.facility-drawer-open .facility-detail-head small{
  display:block!important;
  margin-top:5px!important;
  color:rgba(178,190,201,.42)!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:500!important;
}
body.facility-drawer-open .facility-detail-levels{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  margin-top:14px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card{
  position:relative!important;
  min-height:98px!important;
  display:grid!important;
  grid-template-columns:92px minmax(0,1fr) 118px!important;
  grid-template-rows:auto!important;
  column-gap:16px!important;
  row-gap:0!important;
  align-items:center!important;
  padding:15px 18px!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  background:rgba(7,13,18,.72)!important;
  text-align:left!important;
  box-shadow:none!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card:hover:not(:disabled){
  border-color:rgba(215,181,90,.20)!important;
  background:linear-gradient(110deg,rgba(215,181,90,.035),rgba(7,13,18,.76) 52%)!important;
  transform:translateY(-1px)!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card.current{
  border-color:rgba(215,181,90,.40)!important;
  background:linear-gradient(110deg,rgba(215,181,90,.075),rgba(215,181,90,.025) 38%,rgba(7,13,18,.82) 72%)!important;
  box-shadow:inset 0 0 0 1px rgba(215,181,90,.055)!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card:disabled{opacity:.34!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-title{
  grid-column:1!important;
  grid-row:1!important;
  margin:0!important;
  color:#dfe5eb!important;
  font-size:17px!important;
  line-height:1.15!important;
  font-weight:750!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card.current .facility-level-title{color:#dfc776!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-boosts{
  grid-column:2!important;
  grid-row:1!important;
  width:auto!important;
  margin:0!important;
  display:grid!important;
  gap:6px!important;
  align-content:center!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost{
  display:flex!important;
  align-items:baseline!important;
  gap:10px!important;
  min-width:0!important;
  color:rgba(204,213,222,.74)!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:500!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost span{
  min-width:0!important;
  color:inherit!important;
  font-size:13px!important;
  font-weight:500!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost b{
  display:inline!important;
  margin:0!important;
  color:#55d79a!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:700!important;
  font-variant-numeric:tabular-nums!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-budget{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  min-width:0!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost{
  margin:0!important;
  padding:0!important;
  text-align:right!important;
  color:rgba(195,205,215,.50)!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:500!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost span{display:block!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-cost b{
  display:block!important;
  margin-top:5px!important;
  color:#e5eaf0!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:750!important;
  font-variant-numeric:tabular-nums!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-delta{
  margin-top:8px!important;
  min-height:0!important;
  color:#a79361!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:550!important;
  text-align:right!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card.current .facility-level-delta{color:rgba(205,184,117,.62)!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"]{
  min-height:136px!important;
  grid-template-rows:auto auto!important;
  row-gap:12px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward{
  grid-column:2/4!important;
  grid-row:2!important;
  margin:0!important;
  padding:11px 0 0!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-reward>small{
  color:rgba(190,199,208,.48)!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:600!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-reward-main{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-reward-main .facility-ps-badge{
  transform:scale(.98)!important;
  transform-origin:center!important;
  margin:0!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-reward-main>span{
  color:#d6dce2!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:650!important;
}
body.facility-drawer-open .facility-detail-remove{
  width:100%!important;
  height:40px!important;
  margin-top:12px!important;
  border:1px solid rgba(201,104,87,.20)!important;
  border-radius:13px!important;
  background:rgba(201,104,87,.025)!important;
  color:rgba(210,126,111,.72)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:600!important;
  cursor:pointer!important;
}
body.facility-drawer-open .facility-detail-remove:hover{
  border-color:rgba(211,112,94,.34)!important;
  background:rgba(211,112,94,.065)!important;
  color:#df9284!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-detail-head strong{font-size:20px!important;}
  body.facility-drawer-open .facility-detail-head span{font-size:12px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-card{grid-template-columns:78px minmax(0,1fr) 104px!important;padding:14px 15px!important;column-gap:12px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-title{font-size:15px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost,
  body.facility-drawer-open .facility-selector-detail .facility-level-boost span{font-size:12px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{font-size:14px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-cost b{font-size:17px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-detail{padding:13px!important;}
  body.facility-drawer-open .facility-detail-head{grid-template-columns:44px minmax(0,1fr)!important;gap:11px!important;}
  body.facility-drawer-open .facility-detail-head>img{width:40px!important;height:40px!important;}
  body.facility-drawer-open .facility-detail-head strong{font-size:18px!important;}
  body.facility-drawer-open .facility-detail-head span{font-size:11px!important;}
  body.facility-drawer-open .facility-detail-head small{font-size:9px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-card{grid-template-columns:68px minmax(0,1fr) 88px!important;padding:12px!important;column-gap:9px!important;min-height:92px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"]{min-height:130px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-title{font-size:14px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost,
  body.facility-drawer-open .facility-selector-detail .facility-level-boost span{font-size:11px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{font-size:13px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-cost{font-size:9px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-cost b{font-size:15px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-delta{font-size:9px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-reward>small{font-size:9px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-reward-main>span{font-size:11px!important;}
}

/* === SOURCE: css/122-v4619-facility-level-horizontal-toggle.css === */

/* v4.6.19 · current level toggles removal; attributes are horizontal, neutral gray-white */
body.facility-drawer-open .facility-selector-detail .facility-level-card{
  grid-template-columns:92px minmax(190px,1fr) 118px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boosts{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  justify-self:stretch!important;
  align-self:center!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:max-content max-content!important;
  justify-content:start!important;
  align-items:baseline!important;
  column-gap:12px!important;
  color:rgba(197,206,215,.76)!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:500!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost span{
  display:block!important;
  min-width:0!important;
  color:inherit!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:500!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost b{
  display:block!important;
  margin:0!important;
  color:#d8dee4!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:700!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card.current .facility-level-boost b{
  color:#d8dee4!important;
}
/* No separate destructive remove button: click the current level again to toggle it off. */
body.facility-drawer-open .facility-detail-remove{display:none!important;}
@media(max-width:1100px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:78px minmax(155px,1fr) 104px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost,
  body.facility-drawer-open .facility-selector-detail .facility-level-boost span{font-size:12px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{font-size:14px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:68px minmax(125px,1fr) 88px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{column-gap:8px!important;gap:7px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost,
  body.facility-drawer-open .facility-selector-detail .facility-level-boost span{font-size:11px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{font-size:13px!important;}
}

/* === SOURCE: css/123-v546-archetype-overview-true-width-final.css === */

/* v5.4.6 · true final width override: must sit after all legacy overview CSS. */
@media (min-width:1381px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:306px minmax(0,1fr) minmax(270px,330px)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:12px!important;
  }
  body.build-overview-active .overview-middle-column{
    width:306px!important;min-width:306px!important;max-width:306px!important;
  }
}
@media (min-width:1051px) and (max-width:1380px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:286px minmax(0,1fr) minmax(245px,300px)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:10px!important;
  }
  body.build-overview-active .overview-middle-column{
    width:286px!important;min-width:286px!important;max-width:286px!important;
  }
}
@media (min-width:761px) and (max-width:1050px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:260px minmax(0,1fr) minmax(215px,260px)!important;
    grid-template-areas:"profile stats showcase"!important;
    gap:9px!important;
  }
  body.build-overview-active .overview-middle-column{
    width:260px!important;min-width:260px!important;max-width:260px!important;
  }
}
@media (max-width:760px){
  body.build-overview-active .overview-middle-column{width:auto!important;min-width:0!important;max-width:none!important;}
}

/* === SOURCE: css/124-v4621-final-facility-level-layout-fix.css === */

/* v4.6.21 FINAL override — must remain at absolute EOF because older legacy styles trail
. */
body.facility-drawer-open .facility-selector-detail,
body.facility-drawer-open .facility-detail-levels{
  min-width:0!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card{
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  grid-template-columns:76px minmax(0,1fr) 96px!important;
  grid-template-rows:auto!important;
  column-gap:12px!important;
  align-items:center!important;
  padding:15px 16px!important;
  overflow:hidden!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-title{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boosts{
  grid-column:2!important;
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost{
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost span{
  display:block!important;
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost b{
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  color:#d8dee4!important;
  white-space:nowrap!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-budget{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost,
body.facility-drawer-open .facility-selector-detail .facility-level-delta{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:right!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"]{
  grid-template-rows:auto auto!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward{
  grid-column:2/4!important;
  grid-row:2!important;
  min-width:0!important;
  max-width:100%!important;
}
@media(max-width:1100px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:70px minmax(0,1fr) 90px!important;
    column-gap:10px!important;
    padding:14px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{gap:9px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-detail .facility-level-card{
    grid-template-columns:62px minmax(0,1fr) 82px!important;
    column-gap:8px!important;
    padding:12px!important;
  }
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{gap:7px!important;}
}

/* === SOURCE: css/125-v4622-facility-lv3-badge-icon-scale.css === */

/* v4.6.22 · Lv3 extra reward: keep badge shell unchanged, enlarge only the inner PlayStyle icon */
body.facility-drawer-open .facility-selector-detail
.facility-level-card[data-facility-level="3"]
.facility-level-reward-main .facility-ps-badge img{
  width:21px!important;
  height:21px!important;
  transform:translateY(0)!important;
  transform-origin:center center!important;
}

body.facility-drawer-open .facility-selector-detail
.facility-level-card[data-facility-level="3"]
.facility-level-reward-main .facility-ps-badge.plus img{
  width:22px!important;
  height:22px!important;
  transform:translateY(-1.7px)!important;
  transform-origin:center center!important;
}

/* === SOURCE: css/126-v4623-facilities-page-refine.css === */

/* v4.6.23 · Facilities main page hierarchy / density refinement */

/* Header */
#facilitiesCard .facilities-page-head{
  min-height:72px!important;
  padding-top:12px!important;
  padding-bottom:11px!important;
}
#facilitiesCard .facilities-page-head .advanced-kicker{
  font-size:9px!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
  opacity:.48!important;
}
#facilitiesCard .facilities-page-head h2{
  margin-top:5px!important;
  font-size:23px!important;
  line-height:1.08!important;
  font-weight:760!important;
  letter-spacing:-.018em!important;
}
#facilitiesCard .facilities-page-head p{
  margin-top:6px!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:500!important;
  color:rgba(199,207,216,.58)!important;
}
#facilitiesCard .facilities-page-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
#facilitiesCard .facility-effects-control{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  color:rgba(202,211,220,.58)!important;
  font-size:10.5px!important;
  font-weight:600!important;
  cursor:pointer!important;
}
#facilitiesCard .facility-effects-control .effect-switch{margin:0!important;}
#facilitiesCard .facility-page-tool-btn{
  appearance:none!important;
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.014))!important;
  color:#aeb7c0!important;
  cursor:pointer!important;
  transition:.16s ease!important;
}
#facilitiesCard .facility-page-tool-btn span{font-size:15px!important;line-height:1!important;}
#facilitiesCard .facility-page-tool-btn:hover:not(:disabled){
  color:#dfd3aa!important;
  border-color:rgba(215,181,90,.22)!important;
  background:rgba(215,181,90,.055)!important;
  transform:translateY(-1px)!important;
}
#facilitiesCard .facility-page-tool-btn:disabled{opacity:.28!important;cursor:not-allowed!important;transform:none!important;}

/* Budget / stats strip */
#facilitiesCard .facility-budget-strip{
  grid-template-columns:205px minmax(420px,1fr) 126px 126px!important;
  gap:10px!important;
  padding:12px 14px!important;
}
#facilitiesCard .facility-budget-card{
  border-radius:14px!important;
  padding:10px 12px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
}
#facilitiesCard .facility-budget-card>span,
#facilitiesCard .facility-budget-head span{
  font-size:10px!important;
  font-weight:650!important;
  color:rgba(163,174,186,.62)!important;
}
#facilitiesCard .facility-level-select{
  height:36px!important;
  margin-top:6px!important;
  font-size:12.5px!important;
  font-weight:700!important;
  padding:0 11px!important;
}
#facilitiesCard .facility-budget-main{padding:10px 14px!important;}
#facilitiesCard .facility-budget-head strong{font-size:18px!important;font-weight:760!important;}
#facilitiesCard .facility-budget-rail{height:8px!important;margin-top:9px!important;}
#facilitiesCard .facility-budget-foot{margin-top:7px!important;font-size:10px!important;color:rgba(147,158,169,.60)!important;}
#facilitiesCard .facility-budget-card>strong{font-size:18px!important;font-weight:760!important;}
#facilitiesCard .facility-budget-card>strong em{font-size:10px!important;font-weight:550!important;}

/* Slot section */
#facilitiesCard .facility-selected-section{
  padding:13px 14px 14px!important;
  overflow:auto!important;
  justify-content:flex-start!important;
}
#facilitiesCard .facility-selected-head{margin-bottom:10px!important;}
#facilitiesCard .facility-selected-title{gap:10px!important;}
#facilitiesCard .facility-selected-title strong{font-size:14px!important;font-weight:720!important;color:#dfe5eb!important;}
#facilitiesCard .facility-selected-title span{font-size:10px!important;font-weight:500!important;color:rgba(150,161,173,.58)!important;}
#facilitiesCard .facility-slot-track{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  max-height:none!important;
  overflow:visible!important;
  padding:1px 2px 3px!important;
}
#facilitiesCard .facility-slot-card,
#facilitiesCard .facility-slot-add{
  min-height:116px!important;
  border-radius:15px!important;
}
#facilitiesCard .facility-slot-card{
  border-color:rgba(215,181,90,.15)!important;
  background:
    radial-gradient(circle at 16% 8%,rgba(215,181,90,.065),transparent 35%),
    linear-gradient(145deg,rgba(215,181,90,.035),rgba(255,255,255,.012) 58%,rgba(255,255,255,.007))!important;
  box-shadow:inset 0 0 0 1px rgba(215,181,90,.015)!important;
  padding:10px 11px!important;
}
#facilitiesCard .facility-slot-card:hover{
  border-color:rgba(215,181,90,.30)!important;
  background:
    radial-gradient(circle at 16% 8%,rgba(215,181,90,.095),transparent 37%),
    linear-gradient(145deg,rgba(215,181,90,.055),rgba(255,255,255,.014))!important;
}
#facilitiesCard .facility-slot-card.lv3{border-color:rgba(215,181,90,.25)!important;}
#facilitiesCard .facility-slot-top{height:38px!important;}
#facilitiesCard .facility-slot-top>img{
  width:34px!important;
  height:34px!important;
  opacity:.58!important;
  filter:none!important;
}
#facilitiesCard .facility-slot-level{
  font-size:8.5px!important;
  font-weight:800!important;
  color:#d7c27a!important;
  background:rgba(215,181,90,.035)!important;
}
#facilitiesCard .facility-slot-card>strong{
  margin-top:5px!important;
  font-size:13.5px!important;
  line-height:1.2!important;
  font-weight:600!important;
  color:rgba(218,224,230,.74)!important;
}
#facilitiesCard .facility-slot-boosts{
  gap:8px!important;
  margin-top:7px!important;
  min-height:20px!important;
  align-items:center!important;
}
#facilitiesCard .facility-slot-boosts span{
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#b9c0c7!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  font-weight:520!important;
}
#facilitiesCard .facility-slot-boosts b{
  color:#c9b77f!important;
  font-size:11.5px!important;
  font-weight:650!important;
}
#facilitiesCard .facility-slot-foot{
  margin-top:8px!important;
  padding-top:7px!important;
  border-top-color:rgba(255,255,255,.04)!important;
}
#facilitiesCard .facility-slot-foot>span:first-child{
  font-size:11.5px!important;
  font-weight:680!important;
  color:#cfd5dc!important;
}

/* Add card */
#facilitiesCard .facility-slot-add{
  border-color:rgba(215,181,90,.18)!important;
  background:rgba(255,255,255,.008)!important;
  gap:6px!important;
}
#facilitiesCard .facility-slot-plus{font-size:24px!important;color:#cdb05c!important;}
#facilitiesCard .facility-slot-add strong{font-size:12px!important;font-weight:650!important;color:#b9a76b!important;}
#facilitiesCard .facility-slot-add small{font-size:10px!important;color:rgba(154,164,174,.52)!important;}

/* Compact summary row */
#facilitiesCard .facility-bonus-preview{
  flex:0 0 auto!important;
  min-height:102px!important;
  max-height:126px!important;
  margin-top:11px!important;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr)!important;
  gap:10px!important;
}
#facilitiesCard .facility-preview-card{
  min-height:102px!important;
  max-height:126px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
  overflow:auto!important;
}
#facilitiesCard .facility-preview-card>strong{
  font-size:11px!important;
  font-weight:650!important;
  color:rgba(174,184,194,.68)!important;
  margin-bottom:9px!important;
}
#facilitiesCard .facility-bonus-chips{gap:7px!important;}
#facilitiesCard .facility-bonus-chip{
  padding:6px 9px!important;
  font-size:11px!important;
  color:#b8c0c8!important;
  background:rgba(255,255,255,.02)!important;
}
#facilitiesCard .facility-bonus-chip b{
  color:#c9b77f!important;
  font-size:12px!important;
  font-weight:680!important;
}
#facilitiesCard .facility-ps-label{padding:5px 8px!important;gap:6px!important;}
#facilitiesCard .facility-ps-label span{font-size:9.5px!important;color:#aab3bc!important;}
#facilitiesCard .facility-ps-label small{font-size:8px!important;color:#707b86!important;}

@media(max-width:1180px){
  #facilitiesCard .facility-budget-strip{grid-template-columns:185px 1fr 112px 112px!important;}
  #facilitiesCard .facility-slot-track{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  #facilitiesCard .facilities-page-actions{gap:6px!important;}
  #facilitiesCard .facility-effects-copy{display:none!important;}
  #facilitiesCard .facility-budget-strip{grid-template-columns:1fr 1fr!important;}
  #facilitiesCard .facility-budget-main{grid-column:1/-1!important;}
  #facilitiesCard .facility-slot-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #facilitiesCard .facility-bonus-preview{grid-template-columns:1fr!important;max-height:none!important;}
  #facilitiesCard .facility-preview-card{max-height:none!important;}
}

/* === SOURCE: css/127-v4624-facility-align-search-clear.css === */

/* v4.6.24 · Fixed attribute/value columns + one-click search clear */

/* Search field becomes a reusable input shell with an inline clear control. */
body.facility-drawer-open .facility-selector-searchrow .facility-searchbox{
  position:relative!important;
  min-width:0!important;
  width:100%!important;
}
body.facility-drawer-open .facility-selector-searchrow .facility-searchbox .facility-search{
  width:100%!important;
  min-width:0!important;
  padding-right:42px!important;
  box-sizing:border-box!important;
}
body.facility-drawer-open .facility-search-clear{
  appearance:none!important;
  position:absolute!important;
  right:9px!important;
  top:50%!important;
  transform:translateY(-50%) scale(.92)!important;
  width:25px!important;
  height:25px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:rgba(201,210,219,.48)!important;
  font:500 20px/1 system-ui,sans-serif!important;
  cursor:pointer!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .14s ease,color .14s ease,background .14s ease,transform .14s ease!important;
}
body.facility-drawer-open .facility-search-clear.visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body.facility-drawer-open .facility-search-clear:hover{
  color:#e3e8ed!important;
  background:rgba(255,255,255,.055)!important;
  transform:translateY(-50%) scale(1)!important;
}
body.facility-drawer-open .facility-search-clear:active{
  transform:translateY(-50%) scale(.94)!important;
}

/* Attribute block: every name and value uses the same two-column ruler. */
body.facility-drawer-open .facility-selector-detail .facility-level-boosts{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:center!important;
  justify-self:start!important;
  width:100%!important;
  max-width:184px!important;
  min-width:0!important;
  gap:9px!important;
  margin:0!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 40px!important;
  align-items:baseline!important;
  column-gap:12px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost span{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  text-align:left!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-boost b{
  display:block!important;
  width:40px!important;
  min-width:40px!important;
  margin:0!important;
  text-align:right!important;
  white-space:nowrap!important;
  color:#d8dee4!important;
  font-variant-numeric:tabular-nums!important;
}

@media(max-width:1100px){
  body.facility-drawer-open .facility-selector-detail .facility-level-boosts{max-width:170px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{grid-template-columns:minmax(0,1fr) 36px!important;column-gap:10px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{width:36px!important;min-width:36px!important;}
}
@media(max-width:760px){
  body.facility-drawer-open .facility-selector-detail .facility-level-boosts{max-width:150px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost{grid-template-columns:minmax(0,1fr) 34px!important;column-gap:8px!important;}
  body.facility-drawer-open .facility-selector-detail .facility-level-boost b{width:34px!important;min-width:34px!important;}
}

/* === SOURCE: css/128-v4625-facilities-header-inline.css === */

/* v4.6.25 · compact facilities header + unified toolbar controls */
#facilitiesCard .facilities-page-head{
  min-height:58px!important;
  padding:10px 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
}
#facilitiesCard .facilities-heading-block{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
#facilitiesCard .facilities-page-head .advanced-kicker{
  margin:0 0 5px!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
  opacity:.42!important;
}
#facilitiesCard .facilities-title-line{
  min-width:0!important;
  display:flex!important;
  align-items:baseline!important;
  gap:20px!important;
  white-space:nowrap!important;
}
#facilitiesCard .facilities-title-line h2{
  flex:0 0 auto!important;
  margin:0!important;
  font-size:23px!important;
  line-height:1.08!important;
  font-weight:760!important;
  letter-spacing:-.018em!important;
}
#facilitiesCard .facilities-title-line p{
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  font-weight:500!important;
  color:rgba(199,207,216,.50)!important;
}
#facilitiesCard .facilities-page-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
#facilitiesCard .facility-effects-control,
#facilitiesCard .facility-page-tool-btn{
  height:36px!important;
  border:1px solid rgba(255,255,255,.078)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.030),rgba(255,255,255,.015))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease!important;
}
#facilitiesCard .facility-effects-control{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  padding:0 11px!important;
  color:#aeb7c0!important;
  font-size:10.5px!important;
  font-weight:650!important;
  cursor:pointer!important;
}
#facilitiesCard .facility-effects-control:hover{
  border-color:rgba(215,181,90,.20)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.065),rgba(255,255,255,.017))!important;
  color:#d8dee4!important;
}
#facilitiesCard .facility-effects-control:has(input:checked){
  border-color:rgba(215,181,90,.28)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.09),rgba(255,255,255,.016))!important;
  color:#dfcf93!important;
}
#facilitiesCard .facility-effects-control .effect-switch{
  margin:0!important;
  transform:scale(.88)!important;
  transform-origin:center!important;
}
#facilitiesCard .facility-page-tool-btn{
  width:36px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  color:#aeb7c0!important;
}
#facilitiesCard .facility-page-tool-btn span{
  font-size:15px!important;
  line-height:1!important;
}
#facilitiesCard .facility-page-tool-btn:hover:not(:disabled){
  color:#ddd4b1!important;
  border-color:rgba(215,181,90,.20)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.065),rgba(255,255,255,.017))!important;
  transform:translateY(-1px)!important;
}
#facilitiesCard .facility-page-tool-btn:disabled{opacity:.30!important;cursor:not-allowed!important;transform:none!important;}
@media(max-width:1180px){
  #facilitiesCard .facilities-title-line{gap:14px!important;}
  #facilitiesCard .facilities-title-line p{font-size:10.5px!important;}
}
@media(max-width:900px){
  #facilitiesCard .facilities-page-head{align-items:flex-start!important;flex-wrap:wrap!important;}
  #facilitiesCard .facilities-title-line{white-space:normal!important;align-items:flex-start!important;flex-direction:column!important;gap:5px!important;}
  #facilitiesCard .facilities-page-actions{margin-left:auto!important;}
}

/* === SOURCE: css/129-v4626-facilities-budget-auto-delete.css === */

/* v4.6.26 · budget-aware effects + wider club level + direct slot delete */
#facilitiesCard .facility-budget-strip{
  grid-template-columns:270px minmax(360px,1fr) 126px 126px!important;
}
#facilitiesCard .facility-level-select{
  width:100%!important;
  padding-left:14px!important;
  padding-right:34px!important;
}
#facilitiesCard .facility-selected-title{gap:0!important;}
#facilitiesCard .facility-selected-title>span{display:none!important;}

#facilitiesCard .facility-slot-wrap{
  position:relative!important;
  min-width:0!important;
  min-height:116px!important;
}
#facilitiesCard .facility-slot-wrap>.facility-slot-card{
  width:100%!important;
  height:100%!important;
  min-height:116px!important;
  box-sizing:border-box!important;
}
#facilitiesCard .facility-slot-wrap .facility-slot-foot{padding-right:34px!important;}
#facilitiesCard .facility-slot-wrap .facility-slot-foot .facility-ps-badge{margin-right:0!important;}
#facilitiesCard .facility-slot-remove{
  appearance:none!important;
  position:absolute!important;
  right:9px!important;
  bottom:8px!important;
  z-index:4!important;
  width:27px!important;
  height:27px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.055)!important;
  border-radius:8px!important;
  background:rgba(8,13,18,.58)!important;
  color:rgba(176,186,196,.48)!important;
  cursor:pointer!important;
  opacity:.70!important;
  transition:opacity .15s ease,color .15s ease,border-color .15s ease,background .15s ease,transform .15s ease!important;
}
#facilitiesCard .facility-slot-remove svg{
  width:14px!important;
  height:14px!important;
  fill:currentColor!important;
  pointer-events:none!important;
}
#facilitiesCard .facility-slot-wrap:hover .facility-slot-remove{opacity:1!important;}
#facilitiesCard .facility-slot-remove:hover{
  color:#d78c7d!important;
  border-color:rgba(211,102,81,.22)!important;
  background:rgba(211,102,81,.07)!important;
  transform:translateY(-1px)!important;
}
#facilitiesCard .facility-slot-remove:active{transform:translateY(0)!important;}

@media(max-width:1180px){
  #facilitiesCard .facility-budget-strip{grid-template-columns:230px minmax(300px,1fr) 112px 112px!important;}
}
@media(max-width:760px){
  #facilitiesCard .facility-budget-strip{grid-template-columns:1fr 1fr!important;}
  #facilitiesCard .facility-slot-remove{right:7px!important;bottom:7px!important;}
}

/* === SOURCE: css/130-v4627-facility-trash-hover-sync.css === */

/* v4.6.27 · move facility card + trash button as one hover unit */
#facilitiesCard .facility-slot-wrap{
  transition:transform .16s ease!important;
}
#facilitiesCard .facility-slot-wrap>.facility-slot-card:hover{
  transform:none!important;
}
#facilitiesCard .facility-slot-wrap:hover{
  transform:translateY(-2px)!important;
}
#facilitiesCard .facility-slot-wrap:hover>.facility-slot-card{
  border-color:rgba(215,181,90,.30)!important;
  background:
    radial-gradient(circle at 16% 8%,rgba(215,181,90,.095),transparent 37%),
    linear-gradient(145deg,rgba(215,181,90,.055),rgba(255,255,255,.014))!important;
}
#facilitiesCard .facility-slot-wrap:active{
  transform:translateY(0)!important;
}
/* trash keeps only its own tiny micro-feedback inside the moving wrapper */
#facilitiesCard .facility-slot-wrap .facility-slot-remove:hover{
  transform:translateY(-1px)!important;
}

/* === SOURCE: css/131-v4628-build-overview-match-controls.css === */

/* v4.6.28 · Build Overview final match card: larger 2-col data + shared effect controls */
body.build-overview-active .overview-stats-card{
  padding:18px 18px 16px!important;
}
body.build-overview-active .overview-stats-card .stats-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-width:0!important;
}
body.build-overview-active .overview-stats-card .stats-head>div:first-child{min-width:0!important;}
body.build-overview-active .overview-stats-card .stats-head .advanced-kicker{
  font-size:9px!important;
  font-weight:750!important;
  opacity:.48!important;
}
body.build-overview-active .overview-stats-card .stats-head h3{
  margin-top:4px!important;
  font-size:20px!important;
  line-height:1.1!important;
  font-weight:760!important;
  letter-spacing:-.025em!important;
}
body.build-overview-active .overview-stats-card .overview-source-note{display:none!important;}
body.build-overview-active .overview-face-stats{display:none!important;}

body.build-overview-active .overview-effect-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex:0 0 auto!important;
}
body.build-overview-active .overview-effect-sep{
  width:1px!important;
  height:18px!important;
  margin:0 2px!important;
  background:rgba(255,255,255,.07)!important;
}
body.build-overview-active .overview-effect-btn{
  appearance:none!important;
  height:31px!important;
  min-width:48px!important;
  padding:0 11px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.018)!important;
  color:#89939e!important;
  font:600 11px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transition:.15s ease!important;
}
body.build-overview-active .overview-effect-btn:hover{
  color:#c9d0d7!important;
  border-color:rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.035)!important;
}
body.build-overview-active .overview-effect-btn.active{
  color:#ded09b!important;
  border-color:rgba(215,181,90,.27)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.09),rgba(215,181,90,.025))!important;
  box-shadow:inset 0 0 0 1px rgba(215,181,90,.025)!important;
}
body.build-overview-active .overview-effect-btn[data-effect="initial"].active{
  color:#d5dbe1!important;
  border-color:rgba(210,220,230,.17)!important;
  background:rgba(225,232,238,.045)!important;
}

body.build-overview-active .overview-detailed-stats{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  margin-top:13px!important;
  align-items:start!important;
}
body.build-overview-active .overview-stat-group{
  min-width:0!important;
  padding:13px 14px 11px!important;
  border-radius:13px!important;
  border:1px solid rgba(255,255,255,.052)!important;
  background:rgba(255,255,255,.014)!important;
}
body.build-overview-active .overview-stat-group h4{
  margin:0 0 8px!important;
  color:#9ca5ae!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
}
body.build-overview-active .overview-stat-list{display:grid!important;gap:0!important;}
body.build-overview-active .overview-stat-row{
  min-height:34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  border-bottom:1px solid rgba(255,255,255,.03)!important;
}
body.build-overview-active .overview-stat-row:last-child{border-bottom:0!important;}
body.build-overview-active .overview-stat-row>span{
  min-width:0!important;
  color:#a1a9b2!important;
  font-size:12.5px!important;
  line-height:1.2!important;
  font-weight:500!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.build-overview-active .overview-stat-row strong{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  min-width:62px!important;
  color:#e2e7eb!important;
  font-size:17px!important;
  line-height:1!important;
  font-weight:750!important;
  font-variant-numeric:tabular-nums lining-nums!important;
}
body.build-overview-active .overview-stat-row strong.over-cap{color:#d2ba78!important;}
body.build-overview-active .overview-cap-plus{
  padding:2px 4px!important;
  border:1px solid rgba(215,181,90,.17)!important;
  border-radius:5px!important;
  color:#a99560!important;
  background:rgba(215,181,90,.035)!important;
  font-size:7px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.03em!important;
}

/* Body module gets the same shared enable/disable state as the Overview control. */
.body-effect-row{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin-top:6px!important;
  color:#7f8994!important;
  font-size:9px!important;
  font-weight:650!important;
}
.body-mini-switch{position:relative!important;width:30px!important;height:17px!important;display:inline-block!important;cursor:pointer!important;}
.body-mini-switch input{position:absolute!important;opacity:0!important;pointer-events:none!important;}
.body-mini-track{
  position:absolute!important;inset:0!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.09)!important;background:rgba(255,255,255,.035)!important;
  transition:.15s ease!important;
}
.body-mini-track::after{
  content:""!important;position:absolute!important;left:3px!important;top:3px!important;width:9px!important;height:9px!important;
  border-radius:50%!important;background:#7f8994!important;transition:.15s ease!important;
}
.body-mini-switch input:checked + .body-mini-track{border-color:rgba(215,181,90,.25)!important;background:rgba(215,181,90,.08)!important;}
.body-mini-switch input:checked + .body-mini-track::after{left:16px!important;background:#d8bd68!important;}
#bodyPanel.effects-paused .body-content{opacity:.52!important;}
#bodyPanel .body-content{transition:opacity .15s ease!important;}

@media(max-width:1180px) and (min-width:761px){
  body.build-overview-active .overview-effect-btn{min-width:43px!important;padding:0 8px!important;font-size:10px!important;}
  body.build-overview-active .overview-detailed-stats{gap:8px!important;}
  body.build-overview-active .overview-stat-group{padding:11px 11px 9px!important;}
  body.build-overview-active .overview-stat-row>span{font-size:11.5px!important;}
  body.build-overview-active .overview-stat-row strong{font-size:16px!important;}
}
@media(max-width:760px){
  body.build-overview-active .overview-stats-card .stats-head{align-items:flex-start!important;flex-direction:column!important;}
  body.build-overview-active .overview-effect-controls{width:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important;}
  body.build-overview-active .overview-detailed-stats{grid-template-columns:1fr!important;}
}


/* ===== SOURCE: css/stable-bundle-012.css ===== */
/* === SOURCE: css/132-v4640-playstyle-inspector-ux.css === */

#playstylesPanel .ps-page-k6 #psHoverDetail{width:352px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail.active:not(.locked){pointer-events:none!important}
#playstylesPanel .ps-page-k6 #psHoverDetail.locked{pointer-events:auto!important}

#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-inner{padding:15px 16px 15px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head{grid-template-columns:58px minmax(0,1fr)!important;gap:11px!important;min-height:58px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell{width:58px!important;height:58px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell::before{width:39px!important;height:39px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell img{width:36px!important;height:36px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>span{margin:0!important;color:#7f8e9a!important;font-size:10.5px!important;line-height:1.1!important;font-weight:750!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>strong{margin-top:7px!important;color:#e3e9ee!important;font-size:28px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.025em!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>small{display:none!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-rule{margin:13px 0 11px!important}

#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-title{display:block!important;color:#8bcbd5!important;font-size:12px!important;line-height:1.2!important;font-weight:900!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-title em{display:none!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-reqs{margin-top:9px!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req{display:grid!important;grid-template-columns:minmax(0,1fr) auto 22px!important;align-items:center!important;gap:10px!important;min-height:46px!important;border-bottom:1px solid rgba(255,255,255,.055)!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req:last-child{border-bottom:0!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-name span{color:#c5cdd4!important;font-size:13px!important;font-weight:760!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value{display:flex!important;align-items:baseline!important;gap:8px!important;color:#d7dee4!important;font-size:16px!important;line-height:1!important;font-weight:850!important;font-variant-numeric:tabular-nums lining-nums!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>span{color:#d5dce2!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>em{color:#667582!important;font-size:12px!important;font-style:normal!important;font-weight:650!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>b{color:#d9c47e!important;font-size:16px!important;font-weight:900!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req.missing .ps-req-value,
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req.impossible .ps-req-value{color:#d7dee4!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-check{min-width:18px!important;text-align:center!important;color:#72cda0!important;font-size:16px!important;line-height:1!important;font-style:normal!important;font-weight:950!important}

#playstylesPanel .ps-page-k6 #psHoverDetail .ps-unlock-cost,
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-unlocked-hint{display:none!important}

#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn{width:100%!important;min-height:50px!important;margin-top:15px!important;padding:0 16px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;border-radius:12px!important;font:850 13px/1 inherit!important;letter-spacing:.005em!important;cursor:pointer!important;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn small{font-size:10px!important;font-weight:700!important;opacity:.72!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn.unlock{border:1px solid rgba(216,184,95,.34)!important;background:linear-gradient(180deg,rgba(216,184,95,.18),rgba(216,184,95,.085))!important;color:#e7ce76!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn.equip{border:1px solid rgba(112,188,204,.30)!important;background:linear-gradient(180deg,rgba(81,149,165,.15),rgba(68,124,139,.075))!important;color:#a9d9e2!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn.equipped{border:1px solid rgba(112,204,174,.34)!important;background:linear-gradient(180deg,rgba(67,158,126,.18),rgba(52,124,99,.09))!important;color:#9fddc0!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn:not(:disabled):hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(0,0,0,.16)!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn.disabled,
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn:disabled{cursor:default!important;border:1px solid rgba(255,255,255,.08)!important;background:rgba(255,255,255,.025)!important;color:#7f8b95!important;opacity:.72!important}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-note{margin-top:7px!important;color:#8c8062!important;font-size:9.5px!important;line-height:1.4!important;text-align:center!important}
#playstylesPanel .ps-page-k6 #psHoverDetail.active:not(.locked) .ps-action-btn{opacity:.78!important}
#playstylesPanel .ps-page-k6 #psHoverDetail.locked{border-color:rgba(126,196,211,.40)!important;box-shadow:0 22px 58px rgba(0,0,0,.56),0 0 0 1px rgba(126,196,211,.08) inset!important}

@media(max-width:1000px){
  #playstylesPanel .ps-page-k6 #psHoverDetail{width:auto!important}
  #playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>strong{font-size:25px!important}
}

/* === SOURCE: css/133-v4641-playstyle-compact-inspector.css === */

/* v4.6.41 · Compact PlayStyle inspector */

#playstylesPanel .ps-page-k6 #psHoverDetail{
  width:326px!important;
}

/* Container */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-inner{
  padding:13px 14px 13px!important;
}

/* Header */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head{
  grid-template-columns:50px minmax(0,1fr)!important;
  gap:10px!important;
  min-height:50px!important;
  align-items:center!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell{
  width:50px!important;
  height:50px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell::before{
  width:34px!important;
  height:34px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell img{
  width:31px!important;
  height:31px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>span{
  margin:0!important;
  color:#7f8d98!important;
  font-size:9.5px!important;
  line-height:1.05!important;
  font-weight:750!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>strong{
  margin-top:5px!important;
  color:#e1e7ec!important;
  font-size:24px!important;
  line-height:1.03!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}

/* Divider */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-rule{
  margin:10px 0 9px!important;
}

/* Section title */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-title{
  color:#7fb9c3!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:850!important;
}

/* Requirements */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-reqs{
  margin-top:6px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req{
  grid-template-columns:minmax(0,1fr) 72px 20px!important;
  gap:7px!important;
  min-height:40px!important;
  padding:0!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-name span{
  color:#c2cbd2!important;
  font-size:12.5px!important;
  font-weight:730!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value{
  width:72px!important;
  justify-content:flex-end!important;
  gap:5px!important;
  font-size:13px!important;
  font-weight:820!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>span{
  width:22px!important;
  text-align:right!important;
  color:#d2d9df!important;
  font-size:13px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>em{
  width:8px!important;
  text-align:center!important;
  color:#5f6c77!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:650!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>b{
  width:24px!important;
  text-align:left!important;
  color:#d9c47e!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:900!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value.is-met>b{
  color:#cbd5dc!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-check{
  width:20px!important;
  min-width:20px!important;
  font-size:15px!important;
}

/* Action */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn{
  min-height:44px!important;
  margin-top:11px!important;
  padding:0 13px!important;
  border-radius:11px!important;
  font-size:12.5px!important;
  font-weight:850!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn small{
  font-size:9.5px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-note{
  margin-top:5px!important;
  font-size:9px!important;
}

/* Slightly tighter shell without changing the established visual language */
#playstylesPanel .ps-page-k6 #psHoverDetail{
  border-radius:17px!important;
}

@media(max-width:1000px){
  #playstylesPanel .ps-page-k6 #psHoverDetail{
    width:auto!important;
  }
}

/* === SOURCE: css/134-v4642-playstyle-narrow-proportional.css === */

/* v4.6.42
   Shared proportional rule for processor-managed PS / PS+ badges. */
#playstylesPanel .ps-icon-shell,
.overview-badge-shell{
  --icon-ratio:.58;
}
#playstylesPanel .ps-icon-shell.plus,
.overview-badge-shell.plus{
  --icon-ratio:.60;
}
body.build-overview-active .fc-build-card-plus{
  --icon-ratio:.60;
}
body.build-overview-active .fc-build-card-plus.is-silver{
  --icon-ratio:.58;
}

/* Narrow desktop inspector. JS positioning uses the same 224px target. */
#playstylesPanel .ps-page-k6 #psHoverDetail{
  width:224px!important;
  border-radius:16px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-inner{
  padding:12px!important;
}

/* Header: keep shell, background badge and inner icon in one scale system. */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head{
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:9px!important;
  min-height:44px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell{
  --badge-h:30px;
  --badge-w:30px;
  --icon-box:17.4px;
  --icon-ratio:.58;
  --gold-lift:0px;
  width:44px!important;
  height:44px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell.plus{
  --badge-w:36px;
  --icon-box:18px;
  --icon-ratio:.60;
  --gold-lift:1.79px;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell::before{
  width:var(--badge-w)!important;
  height:var(--badge-h)!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>.ps-icon-shell img{
  width:var(--icon-box)!important;
  height:var(--icon-box)!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div{
  min-width:0!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>span{
  font-size:9px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-detail-head>div>strong{
  margin-top:4px!important;
  font-size:22px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Slightly tighter structural spacing. */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-rule{
  margin:9px 0 8px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-title{
  font-size:11px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-reqs{
  margin-top:5px!important;
}

/* Move value + check region clearly left.
   ~110px remains for the attribute name, 62px for "75 / 80", 18px for ✓. */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req{
  grid-template-columns:minmax(64px,1fr) 62px 18px!important;
  gap:5px!important;
  min-height:39px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-name{
  min-width:0!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-hover-req-name span{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:12px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value{
  width:62px!important;
  justify-content:flex-end!important;
  gap:3px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>span{
  width:20px!important;
  font-size:12.5px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>em{
  width:7px!important;
  font-size:9.5px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-value>b{
  width:21px!important;
  font-size:15px!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-req-check{
  width:18px!important;
  min-width:18px!important;
  font-size:14px!important;
}

/* Button remains readable in the narrower card. */
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn{
  min-height:42px!important;
  margin-top:10px!important;
  padding:0 9px!important;
  font-size:11.8px!important;
  white-space:nowrap!important;
}
#playstylesPanel .ps-page-k6 #psHoverDetail .ps-action-btn small{
  font-size:8.8px!important;
}

/* Keep the card usable on very narrow screens. */
@media(max-width:520px){
  #playstylesPanel .ps-page-k6 #psHoverDetail{
    width:min(224px,calc(100vw - 20px))!important;
  }
}

/* === SOURCE: css/135-v4643-playstyle-toolbar-undo-reset.css === */

/* v4.6.43 · tighter page header + compact status/tools row */

#playstylesPanel .ps-page-k6{
  gap:9px!important;
}

/* Top page header: retain hierarchy, remove dead vertical space. */
#playstylesPanel .ps-page-k6 .ps-page-head{
  min-height:42px!important;
  padding:0 4px 3px!important;
  align-items:flex-start!important;
}
#playstylesPanel .ps-page-k6 .ps-page-head .advanced-kicker{
  font-size:7.4px!important;
  line-height:1!important;
}
#playstylesPanel .ps-page-k6 .ps-page-title-line{
  margin-top:2px!important;
  gap:8px!important;
}
#playstylesPanel .ps-page-k6 .ps-page-title-line h2{
  font-size:24px!important;
  line-height:1.03!important;
}
#playstylesPanel .ps-page-k6 .ps-page-title-line>span{
  font-size:8.2px!important;
}
#playstylesPanel .ps-page-k6 .ps-page-head p{
  margin-top:3px!important;
  font-size:9.6px!important;
  line-height:1.35!important;
  color:#66747f!important;
}

/* Library toolbar. */
#playstylesPanel .ps-page-k6 .ps-library-toolbar{
  min-height:42px!important;
  padding:7px 12px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  width:100%!important;
}
#playstylesPanel .ps-page-k6 .ps-library-title-group{
  display:flex!important;
  align-items:baseline!important;
  gap:8px!important;
  min-width:0!important;
}
#playstylesPanel .ps-page-k6 .ps-library-title-group .advanced-kicker{
  font-size:7.2px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-title-group>strong{
  font-size:12.5px!important;
  line-height:1!important;
}
#playstylesPanel .ps-page-k6 .ps-library-title-group .ps-source-note{
  font-size:8.2px!important;
  color:#62717d!important;
}

#playstylesPanel .ps-page-k6 .ps-library-controls{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stats{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stat{
  min-height:30px!important;
  padding:4px 9px!important;
  gap:5px!important;
  border-radius:9px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stat small{
  font-size:7.7px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stat strong{
  font-size:12.5px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stat strong em{
  font-size:8.5px!important;
}

/* Undo / reset use the same quiet tool-button language as Facilities. */
#playstylesPanel .ps-page-k6 .ps-library-tools{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-left:1px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-tool-btn{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.018)!important;
  color:#a8b2bb!important;
  font-size:15px!important;
  line-height:1!important;
  font-family:inherit!important;
  cursor:pointer!important;
  transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease!important;
}
#playstylesPanel .ps-page-k6 .ps-library-tool-btn:not(:disabled):hover{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#dce3e8!important;
  transform:translateY(-1px)!important;
}
#playstylesPanel .ps-page-k6 .ps-library-tool-btn:disabled{
  opacity:.30!important;
  cursor:default!important;
  transform:none!important;
}

@media(max-width:1000px){
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:7px!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-controls{
    width:100%!important;
    justify-content:flex-start!important;
  }
}
@media(max-width:620px){
  #playstylesPanel .ps-page-k6 .ps-library-title-group{
    flex-wrap:wrap!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-controls{
    flex-wrap:wrap!important;
  }
}

/* === SOURCE: css/136-v4644-playstyle-toolbar-content-width.css === */

/* v4.6.44 · Keep PlayStyle toolbar controls aligned with the active content area
   instead of pushing them to the far-right edge of very wide screens. */

#playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
  width:min(100%,1080px)!important;
  max-width:1080px!important;
  margin-left:0!important;
  margin-right:auto!important;
  justify-content:space-between!important;
}

/* Treat stats + tools as one compact status/action cluster. */
#playstylesPanel .ps-page-k6 .ps-library-controls{
  gap:11px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-stats{
  gap:6px!important;
}
#playstylesPanel .ps-page-k6 .ps-library-tools{
  gap:6px!important;
  margin-left:0!important;
}

/* On medium screens, use all available width naturally. */
@media(max-width:1180px){
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
    width:100%!important;
    max-width:none!important;
  }
}

/* === SOURCE: css/137-v4645-reset-tool-unification.css === */

/* v4.6.45 · one site-wide page-level undo / reset tool button language.
   Facilities remains the visual source of truth; Mastery and PlayStyles now match it. */

#masteryCard .page-tool-button,
#facilitiesCard .page-tool-button,
#playstylesPanel .ps-page-k6 .page-tool-button{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  flex:0 0 36px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.078)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.030),rgba(255,255,255,.015))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  color:#aeb7c0!important;
  font-size:15px!important;
  line-height:1!important;
  font-family:inherit!important;
  cursor:pointer!important;
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease!important;
}

#masteryCard .page-tool-button:not(:disabled):hover,
#facilitiesCard .page-tool-button:not(:disabled):hover,
#playstylesPanel .ps-page-k6 .page-tool-button:not(:disabled):hover{
  color:#ddd4b1!important;
  border-color:rgba(215,181,90,.20)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.065),rgba(255,255,255,.017))!important;
  transform:translateY(-1px)!important;
}

#masteryCard .page-tool-button:active:not(:disabled),
#facilitiesCard .page-tool-button:active:not(:disabled),
#playstylesPanel .ps-page-k6 .page-tool-button:active:not(:disabled){
  transform:translateY(0)!important;
}

#masteryCard .page-tool-button:disabled,
#facilitiesCard .page-tool-button:disabled,
#playstylesPanel .ps-page-k6 .page-tool-button:disabled{
  opacity:.30!important;
  cursor:not-allowed!important;
  transform:none!important;
}

/* Mastery uses an SVG instead of a text glyph; scale it to the same optical size. */
#masteryCard .page-tool-button .mastery-clear-icon{
  width:15px!important;
  height:15px!important;
  stroke-width:1.9!important;
}

/* Facilities already uses a child span; keep its glyph aligned to the common size. */
#facilitiesCard .page-tool-button span{
  font-size:15px!important;
  line-height:1!important;
}

/* === SOURCE: css/138-v4647-mastery-grid-conflict-fix.css === */

/* v4.6.47 · retire the legacy v4.1.10k2 7+6 Mastery layout overrides.
   The new Mastery UI owns its own 2x2 grouped workspace. */
@media (min-width:861px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:auto auto!important;
    grid-template-areas:"def att" "mid gk"!important;
    grid-auto-flow:row!important;
    grid-auto-rows:auto!important;
    align-content:start!important;
    align-items:start!important;
    gap:14px!important;
    padding:12px 18px 18px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  #advancedPanel #masteryList .mastery-group-gk{grid-area:gk!important}
  #advancedPanel #masteryList .mastery-group-def{grid-area:def!important}
  #advancedPanel #masteryList .mastery-group-mid{grid-area:mid!important}
  #advancedPanel #masteryList .mastery-group-att{grid-area:att!important}
}

#advancedPanel #masteryList .mastery-group{
  min-width:0!important;
  height:auto!important;
  align-self:start!important;
  overflow:hidden!important;
}
#advancedPanel #masteryList .mastery-group-list{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  padding:6px 8px 8px!important;
  overflow:visible!important;
}
#advancedPanel #masteryList .mastery-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(150px,.88fr) minmax(0,1fr) minmax(0,.86fr)!important;
  gap:10px!important;
  align-items:center!important;
  min-width:0!important;
  min-height:58px!important;
  height:auto!important;
  margin:6px 0!important;
  padding:8px 10px 8px 14px!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.014)!important;
  overflow:visible!important;
}
#advancedPanel #masteryList .mastery-row.selected{
  border-color:rgba(215,181,90,.14)!important;
  background:linear-gradient(90deg,rgba(215,181,90,.10),rgba(255,255,255,.02) 38%,rgba(255,255,255,.012))!important;
}
#advancedPanel #masteryList .mastery-row.current-model:not(.selected){
  border-color:rgba(121,160,216,.12)!important;
  background:linear-gradient(90deg,rgba(98,130,176,.08),rgba(255,255,255,.016))!important;
}
#advancedPanel #masteryList .mastery-row.fully-mastered{
  border-color:rgba(215,181,90,.14)!important;
  background:linear-gradient(90deg,rgba(215,181,90,.10),rgba(255,255,255,.02) 38%,rgba(255,255,255,.012))!important;
}
#advancedPanel #masteryList .mastery-model{
  gap:10px!important;
  padding:0!important;
  align-items:center!important;
}
#advancedPanel #masteryList .mastery-logo-shell{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
}
#advancedPanel #masteryList .mastery-logo-shell img{
  width:31px!important;
  height:31px!important;
}
#advancedPanel #masteryList .mastery-model-copy strong{
  font-size:12px!important;
  line-height:1.15!important;
}
#advancedPanel #masteryList .mastery-model-copy small{
  margin-top:2px!important;
  font-size:9px!important;
  line-height:1.15!important;
}
#advancedPanel #masteryList .mastery-node{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:8px!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  overflow:visible!important;
}
#advancedPanel #masteryList .mastery-node-level{
  min-width:38px!important;
  width:auto!important;
  height:22px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1!important;
}
#advancedPanel #masteryList .mastery-node-stats{
  font-size:10.5px!important;
  line-height:1.4!important;
}

@media (max-width:860px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
    grid-template-areas:none!important;
    grid-auto-flow:row!important;
    gap:10px!important;
    overflow-y:visible!important;
  }
  #advancedPanel #masteryList .mastery-group{grid-area:auto!important}
  #advancedPanel #masteryList .mastery-row{
    grid-template-columns:1fr!important;
    gap:6px!important;
    min-height:0!important;
    padding:10px 10px 10px 14px!important;
  }
}

/* === SOURCE: css/139-v4650-mastery-column-layout-fix.css === */

/* v4.6.50 · final Mastery desktop layout authority.
   Use two real equal-width stacks instead of legacy grid placement. */
@media (min-width:861px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:stretch!important;
    width:100%!important;
    min-width:0!important;
    gap:12px!important;
    padding:10px 18px 16px!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    grid-template-areas:none!important;
    grid-auto-flow:initial!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  #advancedPanel #masteryList > .mastery-column{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 0!important;
    width:0!important;
    min-width:0!important;
    max-width:none!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
    align-self:flex-start!important;
  }
  #advancedPanel #masteryList .mastery-group{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    grid-area:auto!important;
    align-self:stretch!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  #advancedPanel #masteryList .mastery-group-head{
    min-height:38px!important;
    height:38px!important;
    padding:0 13px!important;
  }
  #advancedPanel #masteryList .mastery-group-head strong{
    font-size:13px!important;
  }
  #advancedPanel #masteryList .mastery-group-head span{
    font-size:9px!important;
    opacity:.58!important;
  }
  #advancedPanel #masteryList .mastery-group-list{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:5px 7px 7px!important;
    overflow:visible!important;
  }
  #advancedPanel #masteryList .mastery-row{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(150px,.82fr) minmax(0,1.18fr) minmax(0,.82fr)!important;
    gap:9px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    height:auto!important;
    margin:4px 0!important;
    padding:6px 9px 6px 12px!important;
    border-radius:11px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  #advancedPanel #masteryList .mastery-model{
    gap:9px!important;
    padding:0!important;
  }
  #advancedPanel #masteryList .mastery-logo-shell{
    width:32px!important;
    height:32px!important;
    flex:0 0 32px!important;
  }
  #advancedPanel #masteryList .mastery-logo-shell img{
    width:29px!important;
    height:29px!important;
  }
  #advancedPanel #masteryList .mastery-model-copy strong{
    font-size:11.5px!important;
    line-height:1.1!important;
  }
  #advancedPanel #masteryList .mastery-model-copy small{
    margin-top:2px!important;
    font-size:8px!important;
    line-height:1.1!important;
  }
  #advancedPanel #masteryList .mastery-node{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    overflow:visible!important;
  }
  #advancedPanel #masteryList .mastery-node-level{
    min-width:36px!important;
    height:20px!important;
    padding:0 6px!important;
    font-size:9px!important;
    line-height:1!important;
  }
  #advancedPanel #masteryList .mastery-node-stats{
    min-width:0!important;
    font-size:10px!important;
    line-height:1.28!important;
    white-space:normal!important;
  }
  /* Current archetype is only a locator, not a selected-Mastery state. */
  #advancedPanel #masteryList .mastery-row.current-model:not(.selected){
    border-color:rgba(121,160,216,.075)!important;
    background:linear-gradient(90deg,rgba(98,130,176,.035),rgba(255,255,255,.012))!important;
  }
}

@media (max-width:860px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding:8px 10px 12px!important;
    overflow-y:visible!important;
  }
  #advancedPanel #masteryList > .mastery-column{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
  }
}

/* === SOURCE: css/140-v4651-mastery-one-screen-compact.css === */

/* v4.6.51 · one-screen Mastery density pass.
   Compress vertical chrome and spacing without sacrificing content type sizes. */
@media (min-width:861px){
  #masteryCard > .mastery-head{
    min-height:70px!important;
    height:70px!important;
    padding:10px 20px 11px!important;
    box-sizing:border-box!important;
  }
  #masteryCard > .mastery-head .advanced-kicker{
    font-size:9px!important;
    line-height:1!important;
  }
  #masteryCard > .mastery-head h2{
    margin-top:2px!important;
    font-size:18px!important;
    line-height:1.06!important;
  }
  #masteryCard > .mastery-head p{
    margin-top:5px!important;
    font-size:10px!important;
    line-height:1.3!important;
  }

  #masteryCard .mastery-toolbar{
    min-height:42px!important;
    height:42px!important;
    padding:0 18px!important;
    gap:12px!important;
    box-sizing:border-box!important;
  }
  #masteryCard .mastery-toolbar-stats{gap:10px!important}
  #masteryCard .mastery-metric{gap:6px!important}
  #masteryCard .mastery-metric span{font-size:10px!important}
  #masteryCard .mastery-metric strong{font-size:14px!important}
  #masteryCard .mastery-metric-divider{height:16px!important}
  #masteryCard .mastery-toolbar-tools{gap:6px!important}
  #masteryCard .mastery-bulk-btn{
    height:30px!important;
    min-width:54px!important;
    padding:0 10px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  #masteryCard .mastery-visibility-btn,
  #masteryCard .page-tool-button{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    flex:0 0 30px!important;
    border-radius:9px!important;
  }
  #masteryCard .mastery-eye{width:14px!important;height:14px!important}

  #advancedPanel #masteryList.mastery-list.mastery-groups{
    gap:12px!important;
    padding:6px 18px 8px!important;
    overflow-y:hidden!important;
    overflow-x:hidden!important;
    align-items:flex-start!important;
  }
  #advancedPanel #masteryList > .mastery-column{
    gap:6px!important;
  }
  #advancedPanel #masteryList .mastery-group{
    border-radius:13px!important;
  }
  #advancedPanel #masteryList .mastery-group-head{
    min-height:32px!important;
    height:32px!important;
    padding:0 12px!important;
  }
  #advancedPanel #masteryList .mastery-group-head strong{
    font-size:12.5px!important;
  }
  #advancedPanel #masteryList .mastery-group-head span{
    font-size:8.5px!important;
  }
  #advancedPanel #masteryList .mastery-group-list{
    padding:3px 6px 5px!important;
  }
  #advancedPanel #masteryList .mastery-row{
    min-height:45px!important;
    height:45px!important;
    margin:2px 0!important;
    padding:4px 8px 4px 11px!important;
    gap:8px!important;
    border-radius:10px!important;
    box-sizing:border-box!important;
  }
  #advancedPanel #masteryList .mastery-row::before{
    top:8px!important;
    bottom:8px!important;
  }
  #advancedPanel #masteryList .mastery-model{
    gap:8px!important;
  }
  #advancedPanel #masteryList .mastery-logo-shell{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
  #advancedPanel #masteryList .mastery-logo-shell img{
    width:28px!important;
    height:28px!important;
  }
  #advancedPanel #masteryList .mastery-model-copy strong{
    font-size:11.5px!important;
    line-height:1.05!important;
  }
  #advancedPanel #masteryList .mastery-model-copy small{
    margin-top:1px!important;
    font-size:8px!important;
    line-height:1.05!important;
  }
  #advancedPanel #masteryList .mastery-node{
    gap:6px!important;
  }
  #advancedPanel #masteryList .mastery-node-level{
    min-width:34px!important;
    height:19px!important;
    padding:0 5px!important;
    font-size:8.5px!important;
  }
  #advancedPanel #masteryList .mastery-node-stats{
    font-size:10px!important;
    line-height:1.2!important;
  }
}

/* === SOURCE: css/141-v4654-specialization-copper-silver-gold.css === */

/* v4.6.54 · Specialization state hierarchy
   Focus = copper, Unlocked = silver, Equipped = existing gold + growth.
   Browsing/focus never moves a card; only equipped state owns geometry motion. */

:root{
  --spec-copper:177,125,75;
  --spec-silver:198,208,219;
}

/* Selection and hover are visual-only: no lift, no scale, no portrait zoom. */
.specialization-card:not(.state-3),
.specialization-card:not(.state-3):hover,
.specialization-card.is-focused:not(.state-3){
  transform:none!important;
}
.specialization-card:not(.state-3):hover .spec-player-image img,
.specialization-card.is-focused:not(.state-3) .spec-player-image img{
  transform:none!important;
}

/* LOCKED — intentionally darker and flatter than every other state. */
.specialization-card.state-1{
  opacity:1!important;
  border-color:rgba(255,255,255,.045)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.008),transparent 30%),
    rgba(8,13,18,.965)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20),inset 0 0 0 1px rgba(255,255,255,.008)!important;
}
.specialization-card.state-1 .spec-player-image img{
  filter:grayscale(.96) saturate(.22) brightness(.50)!important;
}
.specialization-card.state-1 .spec-player-image>span{
  color:#59636d!important;
}
.specialization-card.state-1 .spec-card-title h3{
  color:#7d8790!important;
}
.specialization-card.state-1 .spec-card-title>span{
  color:#505b65!important;
}
.specialization-card.state-1 .spec-requirements,
.specialization-card.state-1 .spec-reward-row{
  opacity:.67;
}
.specialization-card.state-1 .spec-card-status{
  color:#68737e!important;
  border-color:rgba(255,255,255,.065)!important;
  background:rgba(7,11,15,.88)!important;
  box-shadow:none!important;
}
.specialization-card.state-1 .spec-action-btn{
  opacity:.74;
}

/* LOCKED + FOCUSED — copper means "this is the card I'm operating".
   It remains visibly locked; focus does not make it look unlocked. */
.specialization-card.state-1.is-focused{
  border-color:rgba(var(--spec-copper),.78)!important;
  background:
    linear-gradient(180deg,rgba(var(--spec-copper),.045),transparent 28%),
    rgba(10,15,20,.97)!important;
  box-shadow:
    0 14px 32px rgba(0,0,0,.23),
    0 0 0 1px rgba(var(--spec-copper),.12),
    inset 0 0 22px rgba(var(--spec-copper),.035)!important;
}
.specialization-card.state-1.is-focused .spec-player-image img{
  filter:grayscale(.82) saturate(.34) brightness(.59)!important;
}
.specialization-card.state-1.is-focused .spec-card-title h3{
  color:#a8907a!important;
}
.specialization-card.state-1.is-focused .spec-card-status{
  color:#b78a60!important;
  border-color:rgba(var(--spec-copper),.28)!important;
}

/* UNLOCKED — a permanent silver identity, clearly brighter than locked. */
.specialization-card.state-2{
  opacity:1!important;
  border-color:rgba(var(--spec-silver),.40)!important;
  background:
    radial-gradient(ellipse 80% 28% at 50% -4%,rgba(var(--spec-silver),.075),transparent 72%),
    linear-gradient(145deg,rgba(255,255,255,.040),rgba(255,255,255,.010) 44%,transparent 72%),
    rgba(12,18,24,.965)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.20),
    inset 0 0 0 1px rgba(225,233,240,.045),
    inset 0 18px 30px rgba(var(--spec-silver),.025)!important;
}
.specialization-card.state-2 .spec-player-image img{
  filter:saturate(.94) brightness(.97)!important;
}
.specialization-card.state-2 .spec-player-image>span{
  color:#a9b4be!important;
}
.specialization-card.state-2 .spec-card-title h3{
  color:#edf2f6!important;
}
.specialization-card.state-2 .spec-card-title>span{
  color:#7c8894!important;
}
.specialization-card.state-2 .spec-requirements,
.specialization-card.state-2 .spec-reward-row{
  opacity:1!important;
}
.specialization-card.state-2 .spec-card-status{
  color:#c8d1da!important;
  border-color:rgba(var(--spec-silver),.30)!important;
  background:rgba(25,32,39,.86)!important;
  box-shadow:inset 0 0 12px rgba(var(--spec-silver),.025)!important;
}
.specialization-card.state-2 .spec-action-btn.is-equip{
  color:#d4dbe2!important;
  border-color:rgba(var(--spec-silver),.28)!important;
  background:linear-gradient(180deg,rgba(var(--spec-silver),.065),rgba(255,255,255,.018))!important;
}

/* UNLOCKED + FOCUSED — preserve the silver card itself, then add a thin copper
   outer focus ring. This keeps "unlocked" and "selected" legible at once. */
.specialization-card.state-2.is-focused{
  border-color:rgba(var(--spec-silver),.48)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.22),
    0 0 0 2px rgba(var(--spec-copper),.60),
    0 0 18px rgba(var(--spec-copper),.065),
    inset 0 0 0 1px rgba(225,233,240,.055)!important;
}

/* Equipped remains the existing premium gold state. Focus must never replace it. */
.specialization-card.state-3.is-focused{
  outline:none!important;
}

/* Buttons become visually ready only on the card currently being operated,
   without disabling direct interaction. */
.specialization-card.state-1:not(.is-focused) .spec-action-btn.is-match,
.specialization-card.state-2:not(.is-focused) .spec-action-btn.is-equip{
  opacity:.72;
}
.specialization-card.state-1.is-focused .spec-action-btn.is-match,
.specialization-card.state-2.is-focused .spec-action-btn.is-equip{
  opacity:1!important;
}

@media(max-width:760px){
  .specialization-card.state-2.is-focused{
    box-shadow:
      0 12px 28px rgba(0,0,0,.20),
      0 0 0 1.5px rgba(var(--spec-copper),.58),
      inset 0 0 0 1px rgba(225,233,240,.05)!important;
  }
}

/* === SOURCE: css/142-v4655-specialization-undo.css === */

/* v4.6.55 — specialization local action is Undo, not Reset. */
.spec-local-undo-btn:disabled{
  opacity:.34!important;
  cursor:default!important;
  border-color:rgba(255,255,255,.055)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.01))!important;
  color:#737d86!important;
  transform:none!important;
  box-shadow:none!important;
}
.spec-local-undo-btn:disabled .spec-local-reset-icon{color:#737d86!important}


/* ===== SOURCE: css/stable-bundle-013.css ===== */
/* === SOURCE: css/143-v4657-specialization-action-compact-align.css === */

/* v4.6.57 — align both specialization actions to the original compact primary-action scale. */
.spec-card .spec-card-actions .spec-action-btn,
.spec-card .spec-card-actions .spec-local-reset-btn{
  box-sizing:border-box!important;
  height:37px!important;
  min-height:37px!important;
  max-height:37px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  font-size:9px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.04em!important;
}
.spec-card .spec-card-actions .spec-local-reset-btn{
  padding-left:10px!important;
  padding-right:10px!important;
  gap:5px!important;
}
.spec-card .spec-card-actions .spec-local-reset-icon{
  font-size:11px!important;
  line-height:1!important;
}
@media(max-width:1280px) and (min-width:761px){
  .spec-card .spec-card-actions .spec-action-btn,
  .spec-card .spec-card-actions .spec-local-reset-btn{
    height:35px!important;
    min-height:35px!important;
    max-height:35px!important;
    border-radius:11px!important;
    font-size:9px!important;
  }
}
@media(max-width:760px){
  .spec-card .spec-card-actions .spec-action-btn,
  .spec-card .spec-card-actions .spec-local-reset-btn{
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    border-radius:11px!important;
    font-size:10px!important;
  }
  .spec-card .spec-card-actions .spec-local-reset-icon{
    font-size:11px!important;
  }
}

/* === SOURCE: css/144-v503-mastery-tooltip-right.css === */

/* v5.0.3 · Mastery aggregate tooltip opens into the empty space on the right. */
@media (min-width:761px){
  #masteryTotalBonusBox.mastery-summary-hover::after{
    left:calc(100% + 14px)!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translate(6px,-50%)!important;
    width:max-content!important;
    max-width:min(520px,calc(100vw - 430px))!important;
    white-space:pre-line!important;
    overflow-wrap:anywhere!important;
    text-align:left!important;
  }
  #masteryTotalBonusBox.mastery-summary-hover:hover::after{
    transform:translate(0,-50%)!important;
  }
  #masteryTotalBonusBox.mastery-summary-hover::before{
    left:calc(100% + 9px)!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    width:8px!important;
    height:8px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(215,181,90,.20)!important;
    border-left:1px solid rgba(215,181,90,.20)!important;
    border-top:0!important;
    transform:translateY(-50%) rotate(45deg)!important;
  }
}
@media (max-width:1050px) and (min-width:761px){
  #masteryTotalBonusBox.mastery-summary-hover::after{
    max-width:360px!important;
  }
}

/* === SOURCE: css/145-v504-estimated-ovr-style.css === */

/* v5.0.6 · Estimated OVR moved beside the Match Attributes title and enlarged. */
body.build-overview-active .overview-stats-card .stats-head{
  margin-bottom:18px!important;
}
body.build-overview-active .overview-stats-title-main{
  display:flex!important;
  align-items:flex-end!important;
  gap:14px!important;
  margin-top:4px!important;
  flex-wrap:wrap!important;
}
body.build-overview-active .overview-stats-card .stats-head h3{
  margin-top:0!important;
}
body.build-overview-active .overview-estimated-ovr{
  display:inline-flex!important;
  align-items:flex-end!important;
  gap:9px!important;
  flex:0 0 auto!important;
  color:#d6bf73!important;
  cursor:help!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  user-select:none!important;
  white-space:nowrap!important;
}
body.build-overview-active .overview-estimated-ovr>span{
  display:none!important;
}
body.build-overview-active .overview-estimated-ovr>strong{
  color:#e0c36f!important;
  font-size:34px!important;
  line-height:.92!important;
  font-weight:860!important;
  letter-spacing:-.04em!important;
  text-shadow:0 0 18px rgba(215,181,90,.10)!important;
}
body.build-overview-active .overview-estimated-ovr>b{
  display:inline-flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  min-width:0!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#d8b74f!important;
  font-size:26px!important;
  line-height:1!important;
  font-weight:760!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
}
body.build-overview-active .overview-estimate-sep{
  display:none!important;
}
@media(max-width:1180px) and (min-width:761px){
  body.build-overview-active .overview-stats-title-main{gap:11px!important;}
  body.build-overview-active .overview-estimated-ovr>strong{font-size:30px!important;}
  body.build-overview-active .overview-estimated-ovr>b{font-size:22px!important;}
}
@media(max-width:760px){
  body.build-overview-active .overview-stats-card .stats-head{margin-bottom:14px!important;}
  body.build-overview-active .overview-stats-title-main{gap:8px!important;}
  body.build-overview-active .overview-estimated-ovr>strong{font-size:24px!important;}
  body.build-overview-active .overview-estimated-ovr>b{font-size:18px!important;}
}


/* ===== SOURCE: css/stable-bundle-014.css ===== */
/* === SOURCE: css/146-v510-interactive-overview-controller-style.css === */

/* v5.1.0 · Interactive Build Overview controller
   Keep the existing profile-card background/ring treatment; only its internal
   layout and controls change. The old read-only PlayStyle card is folded into it. */
body.build-overview-active .overview-middle-column{
  grid-template-rows:minmax(0,1fr)!important;
}
body.build-overview-active .overview-playstyle-card{
  display:none!important;
}
body.build-overview-active .overview-profile-card.overview-profile-compact{
  height:100%;
  min-height:0;
  padding:0!important;
  overflow:hidden;
}
.overview-profile-card .ovc-scroll{
  position:relative;
  z-index:2;
  height:100%;
  box-sizing:border-box;
  overflow-y:auto;
  overflow-x:hidden;
  padding:18px 18px 16px;
  scrollbar-width:none;
}
.overview-profile-card .ovc-scroll::-webkit-scrollbar{display:none}
.ovc-section{
  position:relative;
  padding:13px 0;
  border-top:1px solid rgba(255,255,255,.058);
}
.ovc-section:first-child{padding-top:0;border-top:0}
.ovc-kicker{
  color:#737f8b;
  font-size:8px;
  line-height:1;
  font-weight:850;
  letter-spacing:.105em;
  text-transform:uppercase;
}

/* Archetype selector */
.ovc-model-trigger{
  width:100%;
  min-height:54px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 22px;
  align-items:center;
  gap:10px;
  padding:6px 4px 6px 0;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.ovc-model-logo{
  width:42px;height:42px;display:grid;place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.018);
}
.ovc-model-logo img{width:38px;height:38px;object-fit:contain;display:block;filter:drop-shadow(0 3px 9px rgba(0,0,0,.24))}
.ovc-model-copy{min-width:0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.ovc-model-copy strong{font-size:25px;line-height:1;font-weight:850;letter-spacing:-.035em;color:#eef2f5;white-space:nowrap}
.ovc-model-copy span{font-size:10px;font-weight:720;color:#707c88;white-space:nowrap}
.ovc-chevron{color:#9a8350;font-size:17px;line-height:1;transition:transform .18s ease}
.ovc-model-trigger[aria-expanded="true"] .ovc-chevron{transform:rotate(180deg)}
.ovc-model-menu{
  position:absolute;
  z-index:50;
  left:0;right:0;top:62px;
  display:none;
  max-height:430px;
  overflow:auto;
  padding:9px;
  border:1px solid rgba(216,184,95,.24);
  border-radius:16px;
  background:rgba(8,13,18,.985);
  box-shadow:0 24px 55px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(18px);
}
.ovc-model-menu.open{display:block}
.ovc-model-group+.ovc-model-group{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.055)}
.ovc-model-group-label{padding:2px 5px 6px;color:#82734b;font-size:8px;font-weight:850;letter-spacing:.09em}
.ovc-model-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.ovc-model-option{
  min-width:0;min-height:43px;display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:7px;
  border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(255,255,255,.018);color:#c8d0d8;padding:5px 7px;text-align:left;cursor:pointer
}
.ovc-model-option:hover{border-color:rgba(216,184,95,.24);background:rgba(216,184,95,.045)}
.ovc-model-option.selected{border-color:rgba(216,184,95,.42);background:rgba(216,184,95,.075)}
.ovc-model-option img{width:25px;height:25px;object-fit:contain}
.ovc-model-option strong{display:block;color:#dfe4e9;font-size:10px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ovc-model-option small{display:block;margin-top:2px;color:#65717c;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* v5.1.3 · Level + AP become two matched console-style bars. */
.ovc-level-section{padding-top:15px;padding-bottom:16px}
.ovc-dual-bars{display:grid;gap:15px}
.ovc-meter-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 88px;
  align-items:end;
  gap:13px;
}
.ovc-meter-main{min-width:0}
.ovc-meter-label{
  display:block;
  margin-bottom:7px;
  color:#707b86;
  font-size:8px;
  line-height:1;
  font-weight:850;
  letter-spacing:.075em;
}
.ovc-meter-meta{
  min-width:0;
  padding-bottom:1px;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.ovc-meter-meta span{
  display:block;
  margin-bottom:3px;
  color:#68737e;
  font-size:8px;
  line-height:1;
  font-weight:780;
}
.ovc-meter-meta strong{
  display:block;
  color:#dce2e7;
  font-size:13px;
  line-height:1.05;
  font-weight:880;
  white-space:nowrap;
  transition:color .16s ease;
}
.ovc-meter-track{
  position:relative;
  width:100%;
  height:9px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:3px;
  background:#252b31;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.28),0 1px 0 rgba(255,255,255,.018);
  overflow:visible;
}
.ovc-level-console{margin-top:8px}
.ovc-level-progress{
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  bottom:0;
  width:0;
  border-radius:2px;
  background:linear-gradient(90deg,rgba(126,105,55,.55),rgba(184,149,66,.74));
  pointer-events:none;
  transition:width .08s linear;
}
#overviewLevelSlider{
  position:absolute;
  z-index:5;
  left:-1px;
  top:-10px;
  width:calc(100% + 2px);
  height:29px;
  margin:0;
  padding:0;
  -webkit-appearance:none;
  appearance:none;
  background:transparent;
  outline:none;
  cursor:ew-resize;
}
#overviewLevelSlider::-webkit-slider-runnable-track{height:9px;background:transparent;border:0}
#overviewLevelSlider::-moz-range-track{height:9px;background:transparent;border:0}
/* The native thumb remains the hit target; the visible thumb is the synced label below. */
#overviewLevelSlider::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:54px;
  height:29px;
  margin-top:-10px;
  border:0;
  border-radius:6px;
  background:transparent;
  box-shadow:none;
}
#overviewLevelSlider::-moz-range-thumb{
  width:54px;
  height:29px;
  border:0;
  border-radius:6px;
  background:transparent;
  box-shadow:none;
}
.ovc-level-float{
  position:absolute;
  z-index:4;
  top:50%;
  left:27px;
  width:54px;
  height:29px;
  display:grid;
  place-items:center;
  transform:translate(-50%,-50%);
  border:1px solid #e2c66e;
  border-radius:6px;
  background:linear-gradient(180deg,#b99643,#8f6d28);
  color:#fff2b6;
  box-shadow:0 0 0 3px rgba(216,184,95,.07),0 4px 10px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.20);
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.015em;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  pointer-events:none;
  text-shadow:0 1px 4px rgba(0,0,0,.45);
  transition:filter .12s ease,box-shadow .12s ease;
}
.ovc-level-console:has(#overviewLevelSlider:hover) .ovc-level-float,
.ovc-level-console:has(#overviewLevelSlider:focus-visible) .ovc-level-float{
  filter:brightness(1.08);
  box-shadow:0 0 0 4px rgba(216,184,95,.09),0 5px 12px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.23);
}
.ovc-ap-meter{overflow:hidden}
.ovc-ap-remain-fill{
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:100%;
  border-radius:2px;
  background:#53b86c;
  transition:width .18s ease,background .18s ease;
}
.ovc-ap-meter.over .ovc-ap-remain-fill{width:100%!important;background:#c85a5a!important;opacity:.42}
@media(max-width:760px){
  .ovc-meter-row{grid-template-columns:minmax(0,1fr) 76px;gap:10px}
  .ovc-meter-meta strong{font-size:12px}
}

/* Skill moves / weak foot — v5.1.6: click-first, star-aligned drag */
.ovc-stars-section{padding:10px 0}
.ovc-star-list{display:grid;gap:8px;margin-top:0}
.ovc-star-row{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:8px;min-height:28px}
.ovc-star-label{color:#8d98a2;font-size:10px;font-weight:760;white-space:nowrap}
.ovc-star-track{
  display:flex;align-items:center;justify-content:flex-end;gap:6px;min-height:30px;
  touch-action:none;cursor:default;user-select:none
}
.ovc-star{
  width:28px;height:30px;display:grid;place-items:center;padding:0;border:0;background:transparent;
  color:inherit;cursor:default;transition:transform .12s ease,filter .12s ease,opacity .12s ease
}
.ovc-star svg{width:24px;height:24px;overflow:visible;pointer-events:none}
.ovc-star path{
  fill:rgba(255,255,255,.018);stroke:rgba(189,199,208,.36);stroke-width:1.55;
  stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill .12s ease,stroke .12s ease,filter .12s ease
}
/* Built-in stars stay lit but subdued, so they read as fixed foundation rather than purchased AP. */
.ovc-star.base path{fill:rgba(156,125,45,.62);stroke:rgba(205,170,73,.82);filter:drop-shadow(0 2px 5px rgba(0,0,0,.30))}
/* AP-purchased stars use the brighter champagne-gold state. */
.ovc-star.upgrade path{fill:#e5c45a;stroke:#f2d879;filter:drop-shadow(0 2px 7px rgba(216,184,95,.20))}
.ovc-star.current{transform:scale(1.055)}
.ovc-star.current path{stroke-width:1.8}
.ovc-star.interactive{cursor:pointer}
/* Reachable but not-yet-lit stars use a gold outline, so capped/locked stars read more clearly as unavailable. */
.ovc-star.interactive:not(.base):not(.upgrade):not(.budget-locked):not(.hard-locked) path{
  fill:rgba(255,255,255,.02);stroke:rgba(214,181,90,.88);filter:drop-shadow(0 1px 4px rgba(214,181,90,.14));
}
.ovc-star.interactive:hover{transform:translateY(-1px) scale(1.055);filter:brightness(1.08)}
.ovc-star-track.dragging .ovc-star.interactive{cursor:ew-resize}
.ovc-star.budget-locked{opacity:.24;cursor:default}
.ovc-star.budget-locked:hover{transform:none;filter:none}
/* Stars above the archetype cap remain visible as permanent empty placeholders. */
.ovc-star.hard-locked{cursor:default;opacity:.9}
.ovc-star.hard-locked path{fill:transparent;stroke:rgba(189,199,208,.42);filter:none}
.ovc-star.hard-locked:hover{transform:none;filter:none}

/* Compact body controller */
.ovc-body-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"summary accel" "actions quick";align-items:center;column-gap:18px;row-gap:8px}
.ovc-body-summary{grid-area:summary;display:flex;align-items:baseline;justify-content:flex-start;flex-wrap:nowrap;gap:14px;min-width:0;padding:2px 0 2px 2px}
.ovc-body-chip{display:inline-flex;align-items:baseline;gap:7px;min-width:max-content;flex:0 0 auto;color:#8a96a1;font-size:13px;font-weight:770;line-height:1}
.ovc-body-chip b{color:#f1f4f6;font-size:18px;font-weight:890;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.002em}
.ovc-body-controls{display:contents}
.ovc-body-quick{grid-area:quick;display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:8px;flex-wrap:nowrap;min-width:0}
.ovc-body-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0}
.ovc-body-toggle,.ovc-body-reset{height:32px;padding:0 12px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;white-space:nowrap;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.ovc-body-toggle{padding:0 14px 0 16px;border:1px solid rgba(216,184,95,.18);background:rgba(216,184,95,.035);color:#b1995b}
.ovc-body-toggle:hover{color:#dbc572;border-color:rgba(216,184,95,.34);background:rgba(216,184,95,.075);box-shadow:0 0 0 3px rgba(216,184,95,.035)}
.ovc-body-reset{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:#8d99a3}
.ovc-body-reset:hover{color:#dce4ea;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.055);transform:translateY(-1px)}
.ovc-body-reset:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}
.ovc-body-toggle-label,.ovc-body-reset-label{font-size:10px;line-height:1;font-weight:835;letter-spacing:.018em}
.ovc-body-toggle .ovc-chevron{width:12px;height:12px;display:block;flex:0 0 12px;color:currentColor;transform-origin:50% 50%;transition:transform .18s cubic-bezier(.2,.8,.2,1)}
.ovc-body-toggle .ovc-chevron path{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ovc-body-section.expanded .ovc-body-toggle .ovc-chevron{transform:rotate(180deg)}
.ovc-pill-switch{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;min-width:68px;height:30px;padding:3px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(0,0,0,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.03);cursor:pointer}
.ovc-pill-switch[data-size="sm"]{min-width:58px}
.ovc-pill-switch .opt{position:relative;z-index:2;display:grid;place-items:center;padding:0 9px;border-radius:999px;color:#74808b;font-size:10px;font-weight:845;line-height:1;user-select:none;transition:color .15s ease,transform .15s ease}
.ovc-pill-switch::before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:linear-gradient(180deg,rgba(216,184,95,.18),rgba(216,184,95,.08));border:1px solid rgba(216,184,95,.18);box-shadow:0 2px 8px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.ovc-pill-switch[data-state="right"]::before{transform:translateX(100%)}
.ovc-pill-switch[data-state="left"] .opt.left,.ovc-pill-switch[data-state="right"] .opt.right{color:#e4cf86}
.ovc-pill-switch[data-state="left"] .opt.right,.ovc-pill-switch[data-state="right"] .opt.left{color:#6b7580}
.ovc-pill-switch:hover{border-color:rgba(216,184,95,.16)}
.ovc-accelerate{grid-area:accel;display:flex;align-items:center;justify-content:flex-end;justify-self:end;min-width:0}.ovc-accelerate strong{display:inline-flex;align-items:center;justify-content:center;min-width:96px;height:32px;padding:0 15px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:#d5dde5;font-size:12px;font-weight:880;white-space:nowrap;letter-spacing:.01em;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.ovc-accelerate strong[data-accel="Controlled"]{color:#7be4a4;border-color:rgba(84,197,127,.34);background:rgba(84,197,127,.12);box-shadow:0 0 0 3px rgba(84,197,127,.05), inset 0 1px 0 rgba(255,255,255,.05)}
.ovc-accelerate strong[data-accel="Explosive"]{color:#ff9588;border-color:rgba(233,101,88,.34);background:rgba(233,101,88,.11);box-shadow:0 0 0 3px rgba(233,101,88,.05), inset 0 1px 0 rgba(255,255,255,.05)}
.ovc-accelerate strong[data-accel="Lengthy"]{color:#86b8ff;border-color:rgba(76,133,220,.38);background:rgba(76,133,220,.11);box-shadow:0 0 0 3px rgba(76,133,220,.05), inset 0 1px 0 rgba(255,255,255,.05)}
.ovc-body-expanded{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:14px;align-items:stretch;margin-top:10px;max-height:0;opacity:0;overflow:hidden;padding-top:0;border-top:1px solid rgba(255,255,255,0);transform:translateY(-8px);transition:max-height .36s cubic-bezier(.2,.8,.2,1),opacity .24s ease,padding-top .28s ease,border-color .28s ease,transform .30s cubic-bezier(.2,.8,.2,1)}
.ovc-body-section.expanded .ovc-body-expanded{max-height:430px;opacity:1;padding-top:12px;border-top:1px solid rgba(255,255,255,.05);transform:translateY(0)}
@media(max-width:980px) and (min-width:761px){.ovc-body-layout{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"summary accel" "actions quick";column-gap:14px;row-gap:7px}.ovc-body-summary{flex-wrap:nowrap;gap:11px}.ovc-body-chip{gap:6px;font-size:12px}.ovc-body-chip b{font-size:17px}.ovc-body-quick{gap:7px}.ovc-body-actions{gap:7px}}\n@media(max-width:760px){.ovc-body-layout{grid-template-columns:1fr;grid-template-areas:"summary" "accel" "quick" "actions";row-gap:9px}.ovc-body-summary{display:flex;flex-wrap:wrap;gap:12px 18px}.ovc-body-quick,.ovc-body-actions,.ovc-accelerate{justify-content:flex-start;flex-wrap:wrap}.ovc-body-expanded{grid-template-columns:1fr;max-height:0}.ovc-body-section.expanded .ovc-body-expanded{max-height:760px}}
.ovc-body-plot{
  position:relative;width:100%;height:auto;aspect-ratio:1.2 / 1;border:1px solid rgba(255,255,255,.07);border-radius:13px;overflow:hidden;touch-action:none;cursor:crosshair;
  background:
    linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),
    radial-gradient(circle at 50% 50%,rgba(216,184,95,.045),transparent 60%),
    rgba(4,8,12,.28);
  background-size:25% 25%,25% 25%,auto,auto;
}
.ovc-body-axis{position:absolute;color:#6c7883;font-size:7px;font-weight:780;pointer-events:none}
.ovc-body-axis.top{top:8px;left:10px}.ovc-body-axis.bottom{bottom:8px;left:10px}.ovc-body-axis.left{bottom:8px;left:50%;transform:translateX(-50%)}.ovc-body-axis.right{bottom:8px;right:10px}
.ovc-body-dot{position:absolute;width:22px;height:22px;border-radius:50%;border:3px solid #e0c678;background:#a47d2e;box-shadow:0 0 0 7px rgba(216,184,95,.075),0 4px 15px rgba(0,0,0,.46);transform:translate(-50%,-50%);pointer-events:none}
.ovc-body-mods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:8px;align-content:stretch;height:auto;min-height:0}
.ovc-body-mod{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.018))}
.ovc-body-mod span{color:#7d8893;font-size:10px;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ovc-body-mod strong{font-size:14px;font-weight:860;font-variant-numeric:tabular-nums;color:#7a8691}.ovc-body-mod.positive strong{color:#69cb95}.ovc-body-mod.negative strong{color:#e3867d}

/* PlayStyle loadout — v5.3.5: aligned diamond slots + diamond DIY slot */
.ovc-playstyle-section{padding:8px 0 2px}
.ovc-ps-head{display:none}
.ovc-ps-row{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:6px;min-height:44px}
.ovc-ps-row+.ovc-ps-row{margin-top:8px}
.ovc-ps-label{color:#7d8893;font-size:9.5px;font-weight:860;letter-spacing:.02em;white-space:nowrap}
.ovc-ps-badges{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:5px;flex-wrap:wrap}
.ovc-ps-prefix,.ovc-ps-track,.ovc-ps-extra,.ovc-ps-amp{display:flex;align-items:center;gap:5px;min-width:0}
.ovc-ps-track{gap:5px;margin-left:-2px}
.ovc-ps-badge{position:relative;width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:0;background:none;border-radius:0;transition:transform .14s ease,filter .14s ease}
.ovc-ps-badge:hover{transform:translateY(-1px);filter:brightness(1.10)}
.ovc-ps-badge .overview-badge-shell{--badge-h:33px;--badge-w:33px;--icon-box:19px;--gold-lift:0px;width:42px;height:42px}
.ovc-ps-row.gold .ovc-ps-badge .overview-badge-shell.plus{--badge-h:33px;--badge-w:39px;--icon-box:19px;--gold-lift:1.9px;width:42px;height:42px}
.ovc-ps-row.gold .ovc-ps-badge{width:42px;height:42px;flex-basis:42px}
.ovc-ps-separator{width:1px;height:22px;margin:0 4px;background:rgba(216,184,95,.18);flex:0 0 1px}
.ovc-ps-separator.soft{background:rgba(255,255,255,.08)}
.ovc-ps-slot,.ovc-ps-add{position:relative;width:36px;height:36px;flex:0 0 36px;display:flex;align-items:center;justify-content:center;border-radius:0;border:0;background:none;box-shadow:none;overflow:visible;transition:opacity .15s ease,transform .15s ease,filter .15s ease}
.ovc-ps-slot .overview-badge-shell{--badge-h:32px;--badge-w:32px;--icon-box:18px;--gold-lift:0px;width:36px;height:36px}
.ovc-ps-slot.empty{opacity:.95}
.ovc-ps-slot.empty:hover,.ovc-ps-add:hover{transform:translateY(-1px);filter:brightness(1.06)}
.ovc-ps-slot.locked{opacity:.72}
.ovc-ps-slot.locked .ovc-ps-slot-shell{opacity:.46}
.ovc-ps-slot-shell,.ovc-ps-add-shell{position:absolute;left:50%;top:50%;width:31px;height:31px;display:block;margin:0;transform:translate(-50%,-50%) rotate(45deg);transform-origin:50% 50%;border-radius:5px;background:rgba(255,255,255,.01)}
.ovc-ps-slot-shell{border:1.6px dashed rgba(184,194,204,.34)}
.ovc-ps-add-shell{border:1.6px dashed rgba(216,184,95,.34);background:rgba(216,184,95,.025)}
.ovc-ps-add:hover .ovc-ps-add-shell{border-color:rgba(216,184,95,.52);background:rgba(216,184,95,.06)}
.ovc-ps-slot-lock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:13px;height:13px;display:block;color:#707b84}
.ovc-ps-slot-lock path,.ovc-ps-slot-lock rect{fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ovc-ps-slot-level{position:absolute;left:0;right:0;bottom:0;text-align:center;color:#66717b;font-size:6.5px;font-weight:850;letter-spacing:.02em}
.ovc-ps-slot.filled{opacity:1}
.ovc-signature-upgrade-hint{height:auto;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:0;background:none;color:#84764a;font-size:7px;font-weight:850;white-space:nowrap;line-height:1}
.ovc-ps-add{color:#c7af68;cursor:pointer}
.ovc-ps-add-plus{position:absolute;left:50%;top:50%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);color:#c7af68;font-size:18px;font-weight:500;line-height:1;z-index:1;text-align:center}
.ovc-ps-source-facility:hover{filter:brightness(1.16)}
.ovc-ps-source-amp::after{content:"";position:absolute;right:2px;bottom:2px;width:5px;height:5px;border-radius:50%;background:#d7ba63;box-shadow:0 0 0 2px rgba(7,11,15,.75)}
.ovc-ps-source-amp[data-amp-remove]{cursor:pointer}.ovc-ps-source-amp[data-amp-remove]:hover{transform:translateY(-1px) scale(1.03);filter:brightness(1.12)}
@media(max-width:760px){.ovc-ps-row{grid-template-columns:66px minmax(0,1fr)}.ovc-ps-badges,.ovc-ps-prefix,.ovc-ps-track,.ovc-ps-extra,.ovc-ps-amp{gap:4px}.ovc-ps-badge{width:38px;height:38px;flex-basis:38px}.ovc-ps-slot,.ovc-ps-add{width:34px;height:34px;flex-basis:34px}.ovc-ps-badge .overview-badge-shell{width:38px;height:38px}.ovc-ps-slot .overview-badge-shell{width:34px;height:34px}.ovc-ps-slot-shell,.ovc-ps-add-shell{width:29px;height:29px}}

/* AMP picker */
.ovc-amp-picker{
  position:absolute;z-index:60;left:0;right:0;bottom:12px;display:none;max-height:405px;overflow:hidden;
  border:1px solid rgba(216,184,95,.22);border-radius:17px;background:rgba(8,13,18,.99);box-shadow:0 24px 60px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(18px)
}
.ovc-amp-picker.open{display:flex;flex-direction:column}
.ovc-amp-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px 9px;border-bottom:1px solid rgba(255,255,255,.055)}
.ovc-amp-picker-title strong{display:block;color:#e0e5e9;font-size:11px}.ovc-amp-picker-title small{display:block;margin-top:2px;color:#706541;font-size:7px;font-weight:800}
.ovc-amp-tier{display:flex;gap:3px;padding:2px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(0,0,0,.18)}
.ovc-amp-tier button{height:24px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:#67727d;font-size:8px;font-weight:820;cursor:pointer}
.ovc-amp-tier button.active{background:rgba(216,184,95,.10);color:#d5be74}
.ovc-amp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:10px;overflow:auto}
.ovc-amp-choice{min-width:0;min-height:66px;padding:6px 4px;border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(255,255,255,.018);color:#9ba5ae;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.ovc-amp-choice:hover:not(:disabled){border-color:rgba(216,184,95,.28);background:rgba(216,184,95,.045)}
.ovc-amp-choice:disabled{opacity:.28;cursor:not-allowed}
.ovc-amp-choice img{width:31px;height:31px;object-fit:contain}
.ovc-amp-choice span{max-width:100%;font-size:7px;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ovc-amp-picker-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;border-top:1px solid rgba(255,255,255,.05);color:#596570;font-size:7px}
.ovc-amp-clear{border:0;background:transparent;color:#a27f78;font-size:8px;font-weight:800;cursor:pointer}.ovc-amp-clear:disabled{opacity:.3;cursor:not-allowed}

.ovc-ap-toast{position:fixed;z-index:100;pointer-events:none;opacity:0;transform:translate(-50%,-100%) translateY(-4px) scale(.96);transition:opacity .12s ease,transform .14s ease;padding:5px 8px;border:1px solid rgba(255,255,255,.10);border-radius:9px;background:rgba(7,11,15,.95);box-shadow:0 9px 24px rgba(0,0,0,.38);color:#e1c776;font-size:10px;font-weight:850;white-space:nowrap}
.ovc-ap-toast.refund{color:#cbd1d7}.ovc-ap-toast.show{opacity:1;transform:translate(-50%,-100%) translateY(-8px) scale(1)}

@media(max-width:760px){
  .overview-profile-card .ovc-scroll{padding:15px 15px 14px}
  .ovc-model-copy strong{font-size:22px}
  .ovc-amp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* === SOURCE: css/147-v512-archetype-selector-affordance-style.css === */

/* v5.1.1 · clearer interactive archetype selector without changing the card language */
.ovc-model-trigger{
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:10px;
  margin:-3px -7px;
  width:calc(100% + 14px);
  padding:9px 7px;
  border:1px solid transparent;
  border-radius:14px;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.ovc-model-action{
  height:30px;
  padding:0 9px 0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid rgba(216,184,95,.18);
  border-radius:999px;
  background:rgba(216,184,95,.035);
  color:#9f8a55;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.ovc-model-action-label{font-size:8px;line-height:1;font-weight:820;letter-spacing:.02em}
/* v5.1.2 · replace text glyph with a true hairline chevron icon */
.ovc-model-action .ovc-chevron{
  width:12px;height:12px;display:block;flex:0 0 12px;color:currentColor;
  transform-origin:50% 50%;transition:transform .18s cubic-bezier(.2,.8,.2,1);
}
.ovc-model-action .ovc-chevron path{
  fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.ovc-model-trigger:hover{
  background:linear-gradient(90deg,rgba(255,255,255,.026),rgba(216,184,95,.025));
  border-color:rgba(216,184,95,.095);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}
.ovc-model-trigger:hover .ovc-model-logo{background:rgba(216,184,95,.035)}
.ovc-model-trigger:hover .ovc-model-action{
  color:#d8bf70;
  border-color:rgba(216,184,95,.36);
  background:rgba(216,184,95,.075);
  box-shadow:0 0 0 3px rgba(216,184,95,.035);
}
.ovc-model-trigger:focus-visible{outline:none;border-color:rgba(216,184,95,.34);box-shadow:0 0 0 3px rgba(216,184,95,.06)}
.ovc-model-trigger[aria-expanded="true"]{
  background:linear-gradient(90deg,rgba(255,255,255,.028),rgba(216,184,95,.035));
  border-color:rgba(216,184,95,.16);
}
.ovc-model-trigger[aria-expanded="true"] .ovc-model-action{color:#dfc777;border-color:rgba(216,184,95,.40);background:rgba(216,184,95,.09)}
.ovc-model-trigger[aria-expanded="true"] .ovc-model-action .ovc-chevron{transform:rotate(180deg)}
.ovc-model-section::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,rgba(216,184,95,0),rgba(216,184,95,.15),rgba(216,184,95,0));
  opacity:0;transition:opacity .16s ease;pointer-events:none;
}
.ovc-model-section:has(.ovc-model-trigger:hover)::after,.ovc-model-section:has(.ovc-model-trigger[aria-expanded="true"])::after{opacity:1}
@media(max-width:760px){.ovc-model-action{height:28px;padding:0 8px}.ovc-model-action-label{font-size:7px}}


/* ===== SOURCE: css/148-v547-global-archetype-overview.css ===== */

/* v5.4.7 · promote the proven Archetype Overview controller into the persistent desktop left rail.
   Legacy sidebar/body stay in DOM (hidden) because existing authoritative handlers still use their IDs. */
@media(min-width:761px){
  .workspace{grid-template-columns:306px minmax(0,1fr)!important;gap:16px!important;align-items:start!important}
  .left-stack{display:block!important;width:306px!important;min-width:306px!important;max-width:306px!important;position:sticky!important;top:18px!important;max-height:calc(100dvh - 36px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding-right:2px!important;transform:none!important;opacity:1!important;pointer-events:auto!important}
  .left-stack>.sidebar,.left-stack>#bodyPanel{display:none!important}
  body.build-overview-active .workspace{grid-template-columns:306px minmax(0,1fr)!important;gap:16px!important}
  body.build-overview-active .left-stack{display:block!important;width:306px!important;min-width:306px!important;max-width:306px!important;transform:none!important;opacity:1!important;pointer-events:auto!important}

  .global-archetype-overview-card{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important;margin:0!important;box-sizing:border-box!important}
  .global-archetype-overview-card .ovc-scroll{height:auto!important;min-height:0!important;overflow:visible!important;padding:13px 12px 12px!important}
  .global-archetype-overview-card .ovc-section{padding:10px 0!important}
  .global-archetype-overview-card .ovc-section:first-child{padding-top:0!important}

  .global-archetype-overview-card .ovc-model-trigger{grid-template-columns:38px minmax(0,1fr) auto!important;gap:7px!important;min-height:48px!important;margin:-2px -4px!important;width:calc(100% + 8px)!important;padding:6px 4px!important;border-radius:12px!important}
  .global-archetype-overview-card .ovc-model-logo{width:36px!important;height:36px!important}
  .global-archetype-overview-card .ovc-model-logo img{width:33px!important;height:33px!important}
  .global-archetype-overview-card .ovc-model-copy{gap:6px!important}
  .global-archetype-overview-card .ovc-model-copy strong{font-size:21px!important}
  .global-archetype-overview-card .ovc-model-copy span{font-size:8px!important}
  .global-archetype-overview-card .ovc-model-action{height:27px!important;padding:0 7px 0 8px!important;gap:4px!important}
  .global-archetype-overview-card .ovc-model-action-label{font-size:7.5px!important}
  .global-archetype-overview-card .ovc-model-action .ovc-chevron{width:10px!important;height:10px!important;flex-basis:10px!important}
  .global-archetype-overview-card .ovc-model-menu{top:52px!important;padding:7px!important;border-radius:13px!important}
  .global-archetype-overview-card .ovc-model-options{gap:4px!important}
  .global-archetype-overview-card .ovc-model-option{min-height:39px!important;grid-template-columns:24px minmax(0,1fr)!important;padding:4px 6px!important;gap:6px!important}
  .global-archetype-overview-card .ovc-model-option img{width:22px!important;height:22px!important}

  .global-archetype-overview-card .ovc-level-section{padding-top:11px!important;padding-bottom:12px!important}
  .global-archetype-overview-card .ovc-dual-bars{gap:12px!important}
  .global-archetype-overview-card .ovc-meter-row{grid-template-columns:minmax(0,1fr) 72px!important;gap:8px!important}
  .global-archetype-overview-card .ovc-meter-label{margin-bottom:6px!important;font-size:7px!important}
  .global-archetype-overview-card .ovc-meter-meta span{font-size:7px!important}
  .global-archetype-overview-card .ovc-meter-meta strong{font-size:11px!important}
  .global-archetype-overview-card .ovc-meter-track{height:8px!important}
  .global-archetype-overview-card .ovc-level-console{margin-top:7px!important}
  .global-archetype-overview-card .ovc-level-float{width:48px!important;height:26px!important;font-size:8px!important;border-radius:5px!important}
  .global-archetype-overview-card #overviewLevelSlider::-webkit-slider-thumb{width:48px!important;height:26px!important}
  .global-archetype-overview-card #overviewLevelSlider::-moz-range-thumb{width:48px!important;height:26px!important}

  .global-archetype-overview-card .ovc-stars-section{padding:8px 0!important}
  .global-archetype-overview-card .ovc-star-list{gap:5px!important}
  .global-archetype-overview-card .ovc-star-row{grid-template-columns:52px minmax(0,1fr)!important;gap:5px!important;min-height:25px!important}
  .global-archetype-overview-card .ovc-star-label{font-size:9px!important}
  .global-archetype-overview-card .ovc-star-track{gap:3px!important;min-height:27px!important;justify-content:flex-end!important}
  .global-archetype-overview-card .ovc-star{width:24px!important;height:27px!important}
  .global-archetype-overview-card .ovc-star svg{width:21px!important;height:21px!important}

  .global-archetype-overview-card .ovc-body-layout{grid-template-columns:minmax(0,1fr) auto!important;column-gap:9px!important;row-gap:8px!important}
  .global-archetype-overview-card .ovc-body-summary{gap:10px!important;padding-left:0!important}
  .global-archetype-overview-card .ovc-body-chip{gap:5px!important;font-size:10px!important}
  .global-archetype-overview-card .ovc-body-chip b{font-size:15px!important}
  .global-archetype-overview-card .ovc-body-quick{gap:5px!important}
  .global-archetype-overview-card .ovc-body-actions{gap:6px!important}
  .global-archetype-overview-card .ovc-body-toggle,.global-archetype-overview-card .ovc-body-reset{height:29px!important;padding:0 9px!important}
  .global-archetype-overview-card .ovc-body-toggle{padding-left:10px!important}
  .global-archetype-overview-card .ovc-body-toggle-label,.global-archetype-overview-card .ovc-body-reset-label{font-size:8px!important}
  .global-archetype-overview-card .ovc-pill-switch{min-width:58px!important;height:27px!important;padding:3px!important}
  .global-archetype-overview-card .ovc-pill-switch[data-size="sm"]{min-width:50px!important}
  .global-archetype-overview-card .ovc-pill-switch .opt{padding:0 6px!important;font-size:8px!important}
  .global-archetype-overview-card .ovc-accelerate strong{min-width:78px!important;height:29px!important;padding:0 10px!important;font-size:10px!important}
  .global-archetype-overview-card .ovc-body-expanded{grid-template-columns:1fr!important;gap:9px!important;margin-top:8px!important}
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-expanded{max-height:760px!important;padding-top:9px!important}
  .global-archetype-overview-card .ovc-body-plot{aspect-ratio:1.45 / 1!important;border-radius:11px!important}
  .global-archetype-overview-card .ovc-body-dot{width:18px!important;height:18px!important;border-width:2px!important}
  .global-archetype-overview-card .ovc-body-mods{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
  .global-archetype-overview-card .ovc-body-mod{padding:6px 8px!important;border-radius:9px!important}
  .global-archetype-overview-card .ovc-body-mod span{font-size:8px!important}
  .global-archetype-overview-card .ovc-body-mod strong{font-size:11px!important}

  .global-archetype-overview-card .ovc-playstyle-section{padding:6px 0 0!important}
  .global-archetype-overview-card .ovc-ps-row{grid-template-columns:58px minmax(0,1fr)!important;gap:4px!important;min-height:37px!important}
  .global-archetype-overview-card .ovc-ps-row+.ovc-ps-row{margin-top:5px!important}
  .global-archetype-overview-card .ovc-ps-label{font-size:8px!important}
  .global-archetype-overview-card .ovc-ps-badges,.global-archetype-overview-card .ovc-ps-prefix,.global-archetype-overview-card .ovc-ps-track,.global-archetype-overview-card .ovc-ps-extra,.global-archetype-overview-card .ovc-ps-amp{gap:3px!important}
  .global-archetype-overview-card .ovc-ps-track{margin-left:-1px!important}
  .global-archetype-overview-card .ovc-ps-badge{width:36px!important;height:36px!important;flex-basis:36px!important}
  .global-archetype-overview-card .ovc-ps-badge .overview-badge-shell{--badge-h:29px;--badge-w:29px;--icon-box:16px;width:36px!important;height:36px!important}
  .global-archetype-overview-card .ovc-ps-row.gold .ovc-ps-badge .overview-badge-shell.plus{--badge-h:29px;--badge-w:34px;--icon-box:16px;--gold-lift:1.6px;width:36px!important;height:36px!important}
  .global-archetype-overview-card .ovc-ps-slot,.global-archetype-overview-card .ovc-ps-add{width:31px!important;height:31px!important;flex-basis:31px!important}
  .global-archetype-overview-card .ovc-ps-slot .overview-badge-shell{--badge-h:28px;--badge-w:28px;--icon-box:15px;width:31px!important;height:31px!important}
  .global-archetype-overview-card .ovc-ps-slot-shell,.global-archetype-overview-card .ovc-ps-add-shell{width:26px!important;height:26px!important;border-radius:4px!important}
  .global-archetype-overview-card .ovc-ps-slot-lock{width:11px!important;height:11px!important}
  .global-archetype-overview-card .ovc-ps-add-plus{font-size:15px!important}
  .global-archetype-overview-card .ovc-ps-separator{height:19px!important;margin:0 2px!important}
  .global-archetype-overview-card .ovc-signature-upgrade-hint{font-size:6.5px!important}

  /* The global rail already owns Archetype Overview, so Build Overview only needs stats + showcase. */
  body.build-overview-active .overview-middle-column{display:none!important}
  body.build-overview-active .build-overview-grid{grid-template-columns:minmax(0,1fr) minmax(270px,330px)!important;grid-template-areas:"stats showcase"!important;gap:12px!important}
  body.build-overview-active .overview-stats-card{grid-area:stats!important}
  body.build-overview-active .overview-showcase-column{grid-area:showcase!important}
}
@media(min-width:1051px) and (max-width:1380px){
  .workspace,body.build-overview-active .workspace{grid-template-columns:286px minmax(0,1fr)!important;gap:14px!important}
  .left-stack,body.build-overview-active .left-stack{width:286px!important;min-width:286px!important;max-width:286px!important}
  body.build-overview-active .build-overview-grid{grid-template-columns:minmax(0,1fr) minmax(245px,300px)!important;gap:10px!important}
}
@media(min-width:761px) and (max-width:1050px){
  .workspace,body.build-overview-active .workspace{grid-template-columns:260px minmax(0,1fr)!important;gap:10px!important}
  .left-stack,body.build-overview-active .left-stack{width:260px!important;min-width:260px!important;max-width:260px!important}
  .global-archetype-overview-card .ovc-scroll{padding:11px 10px 10px!important}
  .global-archetype-overview-card .ovc-model-action-label{display:none!important}
  .global-archetype-overview-card .ovc-ps-row{grid-template-columns:52px minmax(0,1fr)!important}
  .global-archetype-overview-card .ovc-ps-badge{width:33px!important;height:33px!important;flex-basis:33px!important}
  .global-archetype-overview-card .ovc-ps-badge .overview-badge-shell{width:33px!important;height:33px!important}
  body.build-overview-active .build-overview-grid{grid-template-columns:minmax(0,1fr) minmax(215px,260px)!important;gap:9px!important}
}
/* Mobile keeps the pre-existing mobile layout and Build Overview behavior. */


/* ===== SOURCE: css/149-v549-overlay-menu-body-axes-slots.css ===== */

/* v5.4.9 · Archetype Overview: true overlay archetype drawer, corrected body axes,
   non-selectable body plot, and ordinary PlayStyle placeholders that occupy the
   same lane positions as equipped badges. */
@media(min-width:761px){
  /* 1) Model selector is now a floating drawer. It overlays the modules below
     instead of increasing the height of the left rail. */
  .global-archetype-overview-card .ovc-model-section{
    position:relative!important;
    z-index:180!important;
    overflow:visible!important;
  }
  .global-archetype-overview-card .ovc-model-menu{
    position:absolute!important;
    z-index:220!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 5px)!important;
    width:auto!important;
    box-sizing:border-box!important;
    display:block!important;
    max-height:min(610px,calc(100vh - 118px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    margin:0!important;
    padding:6px!important;
    border:1px solid rgba(216,184,95,.18)!important;
    border-radius:13px!important;
    background:linear-gradient(180deg,rgba(12,18,24,.955),rgba(7,12,17,.935))!important;
    -webkit-backdrop-filter:blur(15px) saturate(112%)!important;
    backdrop-filter:blur(15px) saturate(112%)!important;
    box-shadow:0 18px 42px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.035)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-7px) scale(.985)!important;
    transform-origin:50% 0!important;
    transition:opacity .16s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear .22s!important;
  }
  .global-archetype-overview-card .ovc-model-menu.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
    transition:opacity .16s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s!important;
  }
  .global-archetype-overview-card .ovc-model-menu::-webkit-scrollbar{width:5px!important;display:block!important}
  .global-archetype-overview-card .ovc-model-menu::-webkit-scrollbar-thumb{background:rgba(216,184,95,.16);border-radius:999px}
  .global-archetype-overview-card .ovc-model-group:first-child .ovc-model-group-label{padding-top:1px!important}

  /* 2) Body coordinates: real X/Y guide lines and endpoint labels. */
  .global-archetype-overview-card .ovc-body-plot{
    position:relative!important;
    overflow:hidden!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    -webkit-touch-callout:none!important;
    touch-action:none!important;
  }
  .global-archetype-overview-card .ovc-body-plot *,
  .global-archetype-overview-card .ovc-body-plot::before,
  .global-archetype-overview-card .ovc-body-plot::after{
    user-select:none!important;
    -webkit-user-select:none!important;
  }
  .global-archetype-overview-card .ovc-body-plot::before{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    left:4.5%!important;
    top:6%!important;
    bottom:7%!important;
    width:1px!important;
    height:auto!important;
    border:0!important;
    background:linear-gradient(180deg,rgba(216,184,95,.72),rgba(216,184,95,.18))!important;
    pointer-events:none!important;
  }
  .global-archetype-overview-card .ovc-body-plot::after{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    left:4.5%!important;
    right:3%!important;
    bottom:7%!important;
    width:auto!important;
    height:1px!important;
    border:0!important;
    background:linear-gradient(90deg,rgba(105,205,147,.22),rgba(105,205,147,.72))!important;
    pointer-events:none!important;
  }
  .global-archetype-overview-card .ovc-body-axis-name{
    position:absolute!important;
    z-index:2!important;
    display:block!important;
    margin:0!important;
    padding:2px 4px!important;
    border-radius:5px!important;
    background:rgba(7,12,17,.58)!important;
    line-height:1!important;
    font-size:6.5px!important;
    font-weight:850!important;
    letter-spacing:.04em!important;
    pointer-events:none!important;
    white-space:nowrap!important;
  }
  .global-archetype-overview-card .ovc-body-axis-name.y{
    left:3px!important;
    top:50%!important;
    bottom:auto!important;
    right:auto!important;
    color:#d6b85f!important;
    transform:translateY(-50%) rotate(-90deg)!important;
    transform-origin:50% 50%!important;
  }
  .global-archetype-overview-card .ovc-body-axis-name.x{
    left:52%!important;
    bottom:8.5%!important;
    top:auto!important;
    right:auto!important;
    color:#71c894!important;
    transform:translate(-50%,-4px)!important;
  }
  .global-archetype-overview-card .ovc-body-axis{
    position:absolute!important;
    z-index:2!important;
    display:block!important;
    margin:0!important;
    padding:2px 3px!important;
    border-radius:4px!important;
    background:rgba(7,12,17,.64)!important;
    font-size:6.5px!important;
    line-height:1!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
    white-space:nowrap!important;
    pointer-events:none!important;
  }
  /* height maximum/minimum live at the two ends of the Y axis */
  .global-archetype-overview-card .ovc-body-axis.top{
    left:6.5%!important;
    top:4px!important;
    right:auto!important;
    bottom:auto!important;
    color:#d8bd69!important;
    transform:none!important;
  }
  .global-archetype-overview-card .ovc-body-axis.bottom{
    left:6.5%!important;
    bottom:9%!important;
    right:auto!important;
    top:auto!important;
    color:#a99150!important;
    transform:translateY(-2px)!important;
  }
  /* weight minimum/maximum live at the two ends of the X axis */
  .global-archetype-overview-card .ovc-body-axis.left{
    left:4.5%!important;
    bottom:2px!important;
    right:auto!important;
    top:auto!important;
    color:#71c894!important;
    transform:translateX(-4%)!important;
  }
  .global-archetype-overview-card .ovc-body-axis.right{
    right:3%!important;
    bottom:2px!important;
    left:auto!important;
    top:auto!important;
    color:#71c894!important;
    transform:none!important;
  }
  .global-archetype-overview-card .ovc-body-dot{z-index:4!important;user-select:none!important;-webkit-user-select:none!important}

  /* 3) Three ordinary PlayStyle positions form one fixed lane. An empty/locked
     placeholder takes exactly the same outer slot width as an equipped badge. */
  .global-archetype-overview-card .ovc-ps-track{
    display:flex!important;
    align-items:center!important;
    gap:0!important;
    margin-left:0!important;
  }
  .global-archetype-overview-card .ovc-ps-track>.ovc-ps-slot{
    width:31px!important;
    height:31px!important;
    flex:0 0 31px!important;
    margin:0!important;
    padding:0!important;
  }
  .global-archetype-overview-card .ovc-ps-track>.ovc-ps-slot .overview-badge-shell{
    width:31px!important;
    height:31px!important;
  }
  .global-archetype-overview-card .ovc-ps-slot.empty .ovc-ps-slot-shell,
  .global-archetype-overview-card .ovc-ps-slot.locked .ovc-ps-slot-shell{
    width:20px!important;
    height:20px!important;
    border-radius:3px!important;
  }
  .global-archetype-overview-card .ovc-ps-slot-lock{width:10px!important;height:10px!important}
}


/* ===== SOURCE: css/stable-bundle-015.css ===== */
/* === SOURCE: css/150-v5411-body-default-crosshair-final.css === */

/* v5.4.11 · final override. The reference axes are the archetype DEFAULT values,
   not edge X/Y axes. Kept deliberately faint so they read as atmosphere + reset guides. */
@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-plot{
    position:relative!important;
    overflow:hidden!important;
    user-select:none!important;
    -webkit-user-select:none!important;
  }

  /* Remove the old edge-axis titles entirely. */
  .global-archetype-overview-card .ovc-body-axis-name{
    display:none!important;
  }

  /* Default WEIGHT guide = vertical hairline. */
  .global-archetype-overview-card .ovc-body-plot::before{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    left:var(--ovc-body-default-x,50%)!important;
    right:auto!important;
    top:6%!important;
    bottom:6%!important;
    width:1px!important;
    height:auto!important;
    transform:translateX(-50%)!important;
    border:0!important;
    background:repeating-linear-gradient(
      to bottom,
      rgba(216,184,95,.16) 0 2px,
      rgba(216,184,95,.055) 2px 3px,
      transparent 3px 7px
    )!important;
    box-shadow:0 0 5px rgba(216,184,95,.055)!important;
    opacity:.62!important;
    pointer-events:none!important;
  }

  /* Default HEIGHT guide = horizontal hairline. */
  .global-archetype-overview-card .ovc-body-plot::after{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    top:var(--ovc-body-default-y,50%)!important;
    bottom:auto!important;
    left:4%!important;
    right:4%!important;
    width:auto!important;
    height:1px!important;
    transform:translateY(-50%)!important;
    border:0!important;
    background:repeating-linear-gradient(
      to right,
      rgba(216,184,95,.16) 0 2px,
      rgba(216,184,95,.055) 2px 3px,
      transparent 3px 7px
    )!important;
    box-shadow:0 0 5px rgba(216,184,95,.055)!important;
    opacity:.62!important;
    pointer-events:none!important;
  }

  /* When one dimension reaches its default, give only that guide a tiny confirmation glow. */
  .global-archetype-overview-card .ovc-body-plot.is-default-weight::before{
    opacity:.92!important;
    box-shadow:0 0 7px rgba(216,184,95,.10)!important;
  }
  .global-archetype-overview-card .ovc-body-plot.is-default-height::after{
    opacity:.92!important;
    box-shadow:0 0 7px rgba(216,184,95,.10)!important;
  }

  /* Range values are endpoints only; no colored edge-axis implication. */
  .global-archetype-overview-card .ovc-body-axis{
    position:absolute!important;
    z-index:2!important;
    display:block!important;
    padding:2px 3px!important;
    margin:0!important;
    border:0!important;
    border-radius:4px!important;
    background:rgba(7,12,17,.46)!important;
    color:#87919a!important;
    font-size:6.5px!important;
    font-weight:780!important;
    line-height:1!important;
    font-variant-numeric:tabular-nums!important;
    white-space:nowrap!important;
    pointer-events:none!important;
  }
  .global-archetype-overview-card .ovc-body-axis.top{
    left:7%!important; top:4px!important; right:auto!important; bottom:auto!important;
    transform:none!important;
  }
  .global-archetype-overview-card .ovc-body-axis.bottom{
    left:7%!important; bottom:9%!important; right:auto!important; top:auto!important;
    transform:translateY(-1px)!important;
  }
  .global-archetype-overview-card .ovc-body-axis.left{
    left:5%!important; bottom:2px!important; right:auto!important; top:auto!important;
    transform:none!important;
  }
  .global-archetype-overview-card .ovc-body-axis.right{
    right:4%!important; bottom:2px!important; left:auto!important; top:auto!important;
    transform:none!important;
  }

  .global-archetype-overview-card .ovc-body-dot{
    z-index:4!important;
    user-select:none!important;
    -webkit-user-select:none!important;
  }
}

/* === SOURCE: css/151-v5413-body-crosshair-endpoint-labels-final.css === */

/* v5.4.13 · final endpoint-label override.
   The four range values belong to the ends of the DEFAULT crosshair itself.
   Use one neutral champagne tone so height/weight do not read as two colored axis systems. */
@media(min-width:761px){
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyTop,
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyBottom,
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyLeft,
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyRight{
    position:absolute!important;
    z-index:6!important;
    display:block!important;
    margin:0!important;
    padding:2px 4px!important;
    border:0!important;
    border-radius:5px!important;
    background:rgba(7,12,17,.70)!important;
    color:#a79a72!important;
    box-shadow:0 0 8px rgba(216,184,95,.035)!important;
    font-size:6.5px!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:.01em!important;
    font-variant-numeric:tabular-nums!important;
    white-space:nowrap!important;
    pointer-events:none!important;
  }

  /* Height range values sit on the two ends of the vertical default-weight guide. */
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyTop{
    left:var(--ovc-body-default-x,50%)!important;
    top:1.8%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
  }
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyBottom{
    left:var(--ovc-body-default-x,50%)!important;
    bottom:1.8%!important;
    right:auto!important;
    top:auto!important;
    transform:translateX(-50%)!important;
  }

  /* Weight range values sit on the two ends of the horizontal default-height guide. */
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyLeft{
    left:1.6%!important;
    top:var(--ovc-body-default-y,50%)!important;
    right:auto!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
  }
  .global-archetype-overview-card #overviewBodyPlot #overviewBodyRight{
    right:1.6%!important;
    top:var(--ovc-body-default-y,50%)!important;
    left:auto!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
  }
}

/* === SOURCE: css/152-v5415-facility-selector-545-restore.css === */

/* v5.4.15 · Facility selector restore. Keep the selector behavior/layout identical to v5.4.5.
   PlayStyle is an informational Lv3 reward inside the RIGHT detail card only; it must never
   become an overlay on the facility grid or steal clicks from the selector. */
body.facility-drawer-open .facility-picker-reward{display:none!important;}

body.facility-drawer-open .facility-selector-detail .facility-level-budget{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost,
body.facility-drawer-open .facility-selector-detail .facility-level-delta{
  display:block!important;
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:100%!important;
  text-align:right!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-cost span,
body.facility-drawer-open .facility-selector-detail .facility-level-cost b{display:block!important;}

body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"]{
  grid-template-rows:auto auto!important;
  min-height:136px!important;
  row-gap:12px!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward{
  grid-column:2/4!important;
  grid-row:2!important;
  position:static!important;
  inset:auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:11px 0 0!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  transform:none!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:auto!important;
  pointer-events:none!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-card[data-facility-level="3"] .facility-level-reward *{pointer-events:none!important;}
body.facility-drawer-open .facility-selector-detail .facility-level-reward-main{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  position:static!important;
}
body.facility-drawer-open .facility-selector-detail .facility-level-reward-main .facility-ps-badge{
  display:grid!important;
  position:relative!important;
  transform:scale(.98)!important;
  transform-origin:center!important;
  margin:0!important;
}

/* === SOURCE: css/153-v552-no-left-internal-scrollbar.css === */

/* v5.5.2 · Archetype Overview uses normal page scrolling; no draggable inner scrollbar. */
@media (min-width:761px){
  .left-stack{
    max-height:none!important;
    overflow-y:visible!important;
    overflow-x:visible!important;
    padding-right:0!important;
    scrollbar-width:none!important;
  }
  .left-stack::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
}

/* === SOURCE: css/154-v554-one-screen-workspace-preview.css === */

/* v5.5.4 · Desktop one-screen app shell preview.
   The document itself never scrolls. Long datasets, when necessary, scroll only
   inside their own working pane so the left Archetype Overview and top navigation
   remain spatially stable like a desktop configuration tool. */
@media (min-width:761px){
  html,body{
    height:100%!important;
    min-height:100%!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  .shell{
    width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    padding:10px clamp(18px,1.45vw,30px) 10px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }

  /* Use the compact header language from the attribute-page preview everywhere. */
  .topbar{
    flex:0 0 auto!important;
    min-height:38px!important;
    margin-bottom:5px!important;
    padding:1px 3px 5px!important;
    align-items:center!important;
  }
  .topbar>div:first-child{
    display:flex!important;
    align-items:baseline!important;
    gap:9px!important;
    min-width:0!important;
  }
  .topbar .eyebrow,.topbar .subtitle{display:none!important;}
  .topbar h1{
    margin:0!important;
    font-size:19px!important;
    line-height:1!important;
    letter-spacing:-.025em!important;
  }
  .topbar .version{
    padding:4px 7px!important;
    font-size:8px!important;
    line-height:1!important;
  }

  .workspace{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }

  /* Left rail occupies the same viewport slice instead of behaving as a sticky page element. */
  .left-stack,
  body.build-overview-active .left-stack{
    position:relative!important;
    top:auto!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
  }
  .global-archetype-overview-card{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
  }
  .global-archetype-overview-card .ovc-scroll{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
  }
  .global-archetype-overview-card .ovc-scroll::-webkit-scrollbar{display:none!important;}

  /* Right side is now a fixed workspace, not a document-flow column. */
  .main{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .editor-view-tabs{
    flex:0 0 auto!important;
    min-height:43px!important;
    height:43px!important;
    margin:0 0 5px!important;
    padding:0 3px!important;
  }
  .editor-view-tab{
    padding-top:10px!important;
    padding-bottom:9px!important;
  }
  .editor-view-sep{margin-top:0!important;margin-bottom:0!important;}
  #mobileSummarySentinel{display:none!important;}

  /* Attribute workspace: normally all visible; only the data canvas itself becomes
     internally scrollable on shorter laptop viewports. The browser page stays fixed. */
  #attributes{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
    padding-bottom:2px!important;
  }
  #attributes::-webkit-scrollbar{display:none!important;}

  /* All non-attribute pages inherit the same one-screen workspace contract. */
  #advancedPanel,
  #specializationPanel,
  #playstylesPanel,
  #playerCardPanel{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:100%!important;
    margin-top:0!important;
  }
  #advancedPanel{
    height:auto!important;
    overflow:hidden!important;
  }
  #advancedPanel .advanced-grid{
    height:100%!important;
    min-height:0!important;
  }
  #specializationPanel,
  #playstylesPanel,
  #playerCardPanel{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
  }
  #specializationPanel::-webkit-scrollbar,
  #playstylesPanel::-webkit-scrollbar,
  #playerCardPanel::-webkit-scrollbar{display:none!important;}

  /* Explanatory footer belongs to documentation, not the live one-screen workspace. */
  .footer{display:none!important;}
  #emptyState{flex:0 0 auto!important;}
}

/* Very short windows get a conservative escape hatch instead of clipping controls. */
@media (min-width:761px) and (max-height:680px){
  .shell{padding-top:7px!important;padding-bottom:7px!important;}
  .topbar{min-height:34px!important;}
  .editor-view-tabs{height:39px!important;min-height:39px!important;}
}

/* === SOURCE: css/155-v556-unified-header-navigation.css === */

/* v5.5.6 · final desktop header/navigation normalization across every editor page.
   This intentionally sits after the one-screen workspace rules so 属性加点 no longer
   keeps the older v5.5.3 attribute-only navigation geometry. */
@media (min-width:761px){
  .shell,
  body.attributes-workspace-compact .shell{
    padding-top:12px!important;
  }
  .topbar,
  body.attributes-workspace-compact .topbar{
    flex:0 0 auto!important;
    min-height:60px!important;
    height:60px!important;
    margin-bottom:8px!important;
    padding:5px 4px 7px!important;
    align-items:center!important;
    border-bottom:1px solid rgba(255,255,255,.055)!important;
  }
  .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>div:first-child{
    display:flex!important;
    align-items:center!important;
    gap:13px!important;
    min-width:0!important;
  }
  .site-logo{
    display:block!important;
    width:112px!important;
    height:38px!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
    opacity:.96!important;
  }
  .site-brand-copy{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:3px!important;
  }
  .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .eyebrow{
    display:block!important;
    margin:0!important;
    color:#74684d!important;
    font-size:7px!important;
    font-weight:820!important;
    letter-spacing:.16em!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .topbar h1,
  body.attributes-workspace-compact .topbar h1{
    margin:0!important;
    font-size:20px!important;
    line-height:1.05!important;
    letter-spacing:-.02em!important;
    white-space:nowrap!important;
  }
  .topbar .subtitle,
  body.attributes-workspace-compact .topbar .subtitle{display:none!important;}
  .topbar .version,
  body.attributes-workspace-compact .topbar .version{
    padding:5px 8px!important;
    font-size:8px!important;
    line-height:1!important;
    opacity:.76!important;
  }

  .editor-view-tabs,
  body.attributes-workspace-compact .editor-view-tabs{
    flex:0 0 auto!important;
    min-height:44px!important;
    height:44px!important;
    margin:0 0 6px!important;
    padding:0 8px!important;
    border-radius:14px!important;
    gap:0!important;
  }
  .editor-view-tab,
  body.attributes-workspace-compact .editor-view-tab{
    min-height:44px!important;
    height:44px!important;
    padding:0 13px!important;
    font-size:13px!important;
    border-radius:0!important;
  }
  .editor-view-tab.active::after,
  body.attributes-workspace-compact .editor-view-tab.active::after{
    left:13px!important;
    right:13px!important;
    bottom:0!important;
  }
  .editor-view-sep,
  body.attributes-workspace-compact .editor-view-sep{
    line-height:44px!important;
    font-size:13px!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
}
@media (min-width:761px) and (max-height:800px){
  .topbar,
  body.attributes-workspace-compact .topbar{
    min-height:54px!important;
    height:54px!important;
    padding-top:3px!important;
    padding-bottom:5px!important;
    margin-bottom:6px!important;
  }
  .site-logo{width:100px!important;height:34px!important;}
  .topbar h1,body.attributes-workspace-compact .topbar h1{font-size:18px!important;}
  .editor-view-tabs,body.attributes-workspace-compact .editor-view-tabs{height:42px!important;min-height:42px!important;}
  .editor-view-tab,body.attributes-workspace-compact .editor-view-tab{height:42px!important;min-height:42px!important;}
  .editor-view-sep,body.attributes-workspace-compact .editor-view-sep{line-height:42px!important;}
}

/* === SOURCE: css/156-v557-taller-header-compact-english-page-heads.css === */

/* v5.5.7 · Taller branded chrome, while redundant in-workspace page headings collapse
   to one consistent English-only title so the interactive canvas starts higher. */
@media (min-width:761px){
  /* Branded site header: deliberate presence without returning to the old dead-space layout. */
  .shell,
  body.attributes-workspace-compact .shell{
    padding-top:13px!important;
  }
  .topbar,
  body.attributes-workspace-compact .topbar{
    min-height:75px!important;
    height:75px!important;
    margin-bottom:10px!important;
    padding:8px 6px 9px!important;
  }
  .site-logo{
    width:138px!important;
    height:48px!important;
  }
  .site-brand-copy{gap:4px!important;}
  .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .eyebrow{
    font-size:7.5px!important;
    letter-spacing:.17em!important;
  }
  .topbar h1,
  body.attributes-workspace-compact .topbar h1{
    font-size:22px!important;
  }
  .topbar .version,
  body.attributes-workspace-compact .topbar .version{
    padding:6px 9px!important;
    font-size:8.5px!important;
  }

  /* Primary navigation: 55px gives the site chrome enough weight to read as navigation. */
  .editor-view-tabs,
  body.attributes-workspace-compact .editor-view-tabs{
    height:55px!important;
    min-height:55px!important;
    margin-bottom:8px!important;
    padding:0 10px!important;
    border-radius:16px!important;
  }
  .editor-view-tab,
  body.attributes-workspace-compact .editor-view-tab{
    height:55px!important;
    min-height:55px!important;
    padding:0 15px!important;
    font-size:14px!important;
  }
  .editor-view-tab.active::after,
  body.attributes-workspace-compact .editor-view-tab.active::after{
    left:15px!important;
    right:15px!important;
  }
  .editor-view-sep,
  body.attributes-workspace-compact .editor-view-sep{
    line-height:55px!important;
    font-size:14px!important;
  }

  /* Shared English-only page-heading language for non-attribute workspaces. */
  #masteryCard > .mastery-head .advanced-kicker,
  #facilitiesCard .facilities-page-head .advanced-kicker,
  #specializationPanel .specialization-page-head .advanced-kicker,
  #playstylesPanel .ps-page-k6 .ps-page-head .advanced-kicker,
  #playerCardPanel .build-overview-head .advanced-kicker{
    display:block!important;
    margin:0!important;
    color:rgba(213,190,116,.72)!important;
    font-size:13px!important;
    font-weight:820!important;
    line-height:1!important;
    letter-spacing:.14em!important;
    opacity:1!important;
  }

  /* Mastery */
  #masteryCard > .mastery-head{
    min-height:40px!important;
    height:40px!important;
    padding:0 18px!important;
    align-items:center!important;
  }
  #masteryCard > .mastery-head h2,
  #masteryCard > .mastery-head p{display:none!important;}

  /* Facilities: keep live controls on the same compact title row. */
  #facilitiesCard .facilities-page-head{
    min-height:42px!important;
    height:42px!important;
    padding:0 16px!important;
    align-items:center!important;
  }
  #facilitiesCard .facilities-heading-block{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
  }
  #facilitiesCard .facilities-title-line{display:none!important;}
  #facilitiesCard .facilities-page-actions{margin-left:auto!important;}

  /* Specialization */
  #specializationPanel .specialization-page-head{
    min-height:40px!important;
    height:40px!important;
    margin-bottom:6px!important;
    padding:0 4px!important;
    align-items:center!important;
  }
  #specializationPanel .specialization-heading-line,
  #specializationPanel .specialization-page-head p{display:none!important;}

  /* PlayStyles */
  #playstylesPanel .ps-page-k6 .ps-page-head{
    min-height:40px!important;
    height:40px!important;
    padding:0 4px 4px!important;
    align-items:center!important;
  }
  #playstylesPanel .ps-page-k6 .ps-page-title-line,
  #playstylesPanel .ps-page-k6 .ps-page-head p{display:none!important;}

  /* Build overview */
  #playerCardPanel .build-overview-head{
    min-height:40px!important;
    height:40px!important;
    margin-bottom:6px!important;
    padding:0 4px!important;
    align-items:center!important;
  }
  #playerCardPanel .build-overview-head h2{display:none!important;}
  #playerCardPanel .build-overview-head-note{
    font-size:9px!important;
    color:#66717c!important;
  }
}

/* Compact fallback for shorter laptop viewports: preserve the new hierarchy, not the old 54/42 geometry. */
@media (min-width:761px) and (max-height:800px){
  .topbar,
  body.attributes-workspace-compact .topbar{
    min-height:66px!important;
    height:66px!important;
    margin-bottom:7px!important;
    padding-top:5px!important;
    padding-bottom:6px!important;
  }
  .site-logo{width:122px!important;height:42px!important;}
  .topbar h1,body.attributes-workspace-compact .topbar h1{font-size:20px!important;}
  .editor-view-tabs,body.attributes-workspace-compact .editor-view-tabs{
    height:50px!important;
    min-height:50px!important;
    margin-bottom:6px!important;
  }
  .editor-view-tab,body.attributes-workspace-compact .editor-view-tab{
    height:50px!important;
    min-height:50px!important;
    font-size:13px!important;
  }
  .editor-view-sep,body.attributes-workspace-compact .editor-view-sep{line-height:50px!important;}
}

/* === SOURCE: css/157-v558-my-build-transition-and-rail-stability.css === */

/* v5.5.8 · My Build naming + invariant global Archetype Overview.
   Legacy build-overview-active rules predate the global rail and had slightly
   different body/PlayStyle dimensions.  Pin the persistent rail to exactly the
   same geometry on every page so selecting My Build never causes a size jump. */
@media(min-width:761px){
  body.build-overview-active .global-archetype-overview-card .ovc-body-layout{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"summary accel" "actions quick"!important;
    column-gap:9px!important;row-gap:8px!important;
  }
  body.build-overview-active .global-archetype-overview-card .ovc-body-summary{gap:10px!important;padding-left:0!important;align-items:baseline!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-chip{gap:5px!important;font-size:10px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-chip b{font-size:15px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-quick{gap:5px!important;justify-content:flex-end!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-actions{gap:6px!important;justify-content:flex-start!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-toggle,
  body.build-overview-active .global-archetype-overview-card .ovc-body-reset{height:29px!important;padding:0 9px!important;border-radius:999px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-toggle{padding-left:10px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-body-toggle-label,
  body.build-overview-active .global-archetype-overview-card .ovc-body-reset-label{font-size:8px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch{min-width:58px!important;height:27px!important;padding:3px!important;border-radius:999px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch[data-size="sm"]{min-width:50px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch .opt{padding:0 6px!important;font-size:8px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-accelerate strong{min-width:78px!important;height:29px!important;padding:0 10px!important;font-size:10px!important}

  body.build-overview-active .global-archetype-overview-card .ovc-playstyle-section{padding:6px 0 0!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-row{grid-template-columns:58px minmax(0,1fr)!important;gap:4px!important;min-height:37px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-row+.ovc-ps-row{margin-top:5px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-label{font-size:8px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-badges,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-prefix,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-track,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-extra,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-amp{gap:3px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-track{margin-left:-1px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-badge{width:36px!important;height:36px!important;flex-basis:36px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-badge .overview-badge-shell{--badge-h:29px;--badge-w:29px;--icon-box:16px;width:36px!important;height:36px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-row.gold .ovc-ps-badge .overview-badge-shell.plus{--badge-h:29px;--badge-w:34px;--icon-box:16px;--gold-lift:1.6px;width:36px!important;height:36px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-slot,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-add{width:31px!important;height:31px!important;flex-basis:31px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-slot .overview-badge-shell{--badge-h:28px;--badge-w:28px;--icon-box:15px;width:31px!important;height:31px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-slot-shell,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-add-shell{width:26px!important;height:26px!important;border-radius:4px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-slot-lock{width:11px!important;height:11px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-add-plus{font-size:15px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-separator{height:19px!important;margin:0 2px!important}
}
@media(min-width:761px) and (max-width:1050px){
  body.build-overview-active .global-archetype-overview-card .ovc-ps-badge{width:33px!important;height:33px!important;flex-basis:33px!important}
  body.build-overview-active .global-archetype-overview-card .ovc-ps-badge .overview-badge-shell{width:33px!important;height:33px!important}
}

/* === SOURCE: css/158-v559-unified-frameless-workspace-preview.css === */

/* v5.5.9 · Unified non-attribute workspace language.
   Principle: workspace itself is frameless; only real components/cards own borders. */
@media (min-width:761px){
  /* Shared page-title rail */
  #masteryCard > .mastery-head,
  #facilitiesCard .facilities-page-head,
  #specializationPanel .specialization-page-head,
  #playstylesPanel .ps-page-k6 .ps-page-head,
  #playerCardPanel .build-overview-head{
    min-height:36px!important;
    height:auto!important;
    margin:0 0 8px!important;
    padding:0 4px!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }
  #masteryCard > .mastery-head .advanced-kicker,
  #facilitiesCard .facilities-page-head .advanced-kicker,
  #specializationPanel .specialization-page-head .advanced-kicker,
  #playstylesPanel .ps-page-k6 .ps-page-head .advanced-kicker,
  #playerCardPanel .build-overview-head .advanced-kicker{
    font-size:12px!important;
    line-height:1!important;
    letter-spacing:.16em!important;
    color:rgba(215,190,116,.70)!important;
    font-weight:820!important;
    opacity:1!important;
  }

  /* MASTERY / FACILITIES: remove page-sized outer cards. */
  #masteryCard,
  #facilitiesCard{
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    overflow:visible!important;
    padding:0!important;
  }
  #masteryCard.effects-paused,
  #facilitiesCard.effects-paused{opacity:.76!important;}

  /* MASTERY: title -> toolbar -> locally framed groups */
  #masteryCard > .mastery-head{
    display:flex!important;
    align-items:center!important;
  }
  #masteryCard .mastery-toolbar{
    flex:0 0 auto!important;
    min-height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:13px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  }
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    padding:0!important;
    gap:10px!important;
    background:none!important;
  }
  #advancedPanel #masteryList .mastery-group{
    border-color:rgba(255,255,255,.07)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.010))!important;
    box-shadow:none!important;
  }

  /* FACILITIES: English title is independent; page controls become a true toolbar row. */
  #facilitiesCard .facilities-page-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:36px auto!important;
    gap:7px!important;
    align-items:center!important;
    margin-bottom:9px!important;
  }
  #facilitiesCard .facilities-heading-block{
    height:36px!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
  }
  #facilitiesCard .facilities-page-actions{
    width:100%!important;
    min-height:44px!important;
    margin:0!important;
    padding:5px 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:13px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  }
  #facilitiesCard .facilities-page-actions::before{
    content:"FACILITY CONTROLS";
    margin-right:auto!important;
    padding-left:2px!important;
    color:#66727d!important;
    font-size:7.5px!important;
    font-weight:820!important;
    letter-spacing:.12em!important;
  }
  #facilitiesCard .facilities-workspace{
    border:0!important;
    background:none!important;
  }
  #facilitiesCard .facility-budget-strip{
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:15px!important;
    background:rgba(11,17,23,.46)!important;
    margin-bottom:9px!important;
  }
  #facilitiesCard .facility-selected-section{
    border:0!important;
    background:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* SPECIALIZATION: keep the naturally open workspace, but align its rhythm. */
  #specializationPanel .specialization-page-head{
    display:flex!important;
    align-items:center!important;
    margin-bottom:9px!important;
  }
  #specializationPanel .specialization-cards{
    padding-top:0!important;
  }

  /* PLAYSTYLES: page shell open; toolbar and library canvas become the two real components. */
  #playstylesPanel .ps-page-k6{
    gap:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  #playstylesPanel .ps-page-k6 .ps-page-head{
    display:flex!important;
    align-items:center!important;
    margin-bottom:8px!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-card{
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-toolbar{
    min-height:46px!important;
    margin:0 0 9px!important;
    padding:6px 10px!important;
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:13px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-main{
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:16px!important;
    background:rgba(11,17,23,.62)!important;
    overflow:hidden!important;
  }

  /* MY BUILD: already frameless; only normalize title/content rhythm. */
  #playerCardPanel .build-overview-head{
    display:flex!important;
    align-items:center!important;
    margin-bottom:9px!important;
  }
  #playerCardPanel .build-overview-head-note{
    padding:5px 8px!important;
    border:1px solid rgba(255,255,255,.055)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.018)!important;
    color:#68747f!important;
    font-size:8px!important;
  }
  #playerCardPanel .build-overview-grid{
    margin-top:0!important;
  }

  /* Keep every content start aligned after the English page title. */
  #advancedPanel,
  #specializationPanel,
  #playstylesPanel,
  #playerCardPanel{
    padding-top:0!important;
  }
}

/* === SOURCE: css/159-v5510-unified-workspace-toolbars.css === */

/* v5.5.10 · Every non-attribute workspace owns the same middle toolbar rail.
   Content can be filled page by page later without changing vertical rhythm. */
@media (min-width:761px){
  .workspace-toolbar{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    border:1px solid rgba(255,255,255,.065)!important;
    border-radius:13px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  }
  .workspace-toolbar-empty{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  #masteryCard .mastery-toolbar.workspace-toolbar{display:flex!important;}
  #facilitiesCard .facilities-page-actions.workspace-toolbar{display:flex!important;}
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar{display:block!important;}

  /* Keep title -> toolbar -> content cadence identical on the currently empty pages. */
  #specializationPanel .specialization-workspace-toolbar,
  #playerCardPanel .build-workspace-toolbar{
    flex:0 0 46px!important;
  }
  #specializationPanel .specialization-cards,
  #playerCardPanel .build-overview-grid{
    margin-top:0!important;
  }
}

/* === SOURCE: css/160-v5511-mastery-toolbar-standard.css === */

/* v5.5.11 · Mastery establishes the shared toolbar grammar: actions | live status | help. */
@media (min-width:761px){
  #masteryCard .mastery-toolbar.workspace-toolbar{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;
    min-width:0!important;padding:6px 9px!important;
  }
  #masteryCard .mastery-toolbar-tools{
    order:1!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
    flex:0 0 auto!important;gap:6px!important;margin:0!important;
  }
  #masteryCard .mastery-toolbar-stats{
    order:2!important;display:flex!important;align-items:center!important;flex:0 0 auto!important;
    gap:10px!important;min-width:0!important;margin-left:2px!important;
  }
  #masteryCard .mastery-toolbar-help{
    order:3!important;min-width:0!important;flex:1 1 auto!important;margin-left:auto!important;padding-left:8px!important;
    color:#68747f!important;font-size:8px!important;font-weight:720!important;letter-spacing:.015em!important;
    line-height:1.25!important;text-align:right!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  #masteryCard .mastery-bulk-btn{white-space:nowrap!important;}
  #masteryCard #undoMasteryBtn{min-width:54px!important;}
  #masteryCard #enableAllMasteryBtn{min-width:72px!important;}
}
@media (max-width:1180px) and (min-width:761px){
  #masteryCard .mastery-toolbar-help{display:none!important;}
}

/* === SOURCE: css/161-v5512-mastery-toolbar-hitzones.css === */

/* v5.5.12 · icon-only undo + inline help + full-width Lv10/Lv30 hit zones. */
#masteryCard #undoMasteryBtn.mastery-undo-icon{
  width:34px!important;min-width:34px!important;height:34px!important;padding:0!important;
  display:grid!important;place-items:center!important;border-radius:10px!important;
}
#masteryCard #undoMasteryBtn.mastery-undo-icon svg{
  width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;
  stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media (min-width:761px){
  #masteryCard .mastery-toolbar-stats{
    flex:1 1 auto!important;gap:9px!important;margin-left:2px!important;overflow:hidden!important;
  }
  #masteryCard .mastery-toolbar-help{
    order:initial!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;padding:0!important;
    color:#68747f!important;font-size:8px!important;font-weight:720!important;letter-spacing:.015em!important;
    line-height:1.25!important;text-align:left!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  #masteryCard .mastery-help-divider{display:block!important;flex:0 0 1px!important;}
  #masteryCard #undoMasteryBtn{min-width:34px!important;}

  /* Each level occupies its complete half of the mastery choice area. */
  #advancedPanel #masteryList .mastery-row{
    grid-template-columns:minmax(138px,.86fr) minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:0!important;padding:5px 7px 5px 12px!important;min-height:62px!important;
  }
  #advancedPanel #masteryList .mastery-model{padding-right:10px!important;}
  #advancedPanel #masteryList .mastery-node{
    align-self:stretch!important;width:100%!important;min-width:0!important;min-height:50px!important;
    padding:7px 10px!important;margin:0!important;border-radius:9px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    box-sizing:border-box!important;transform:none!important;
    transition:background .15s ease,color .15s ease,box-shadow .15s ease!important;
  }
  #advancedPanel #masteryList .mastery-node:hover{
    background:rgba(255,255,255,.028)!important;transform:none!important;
  }
  #advancedPanel #masteryList .mastery-node.active{
    background:rgba(215,181,90,.035)!important;
  }
  #advancedPanel #masteryList .mastery-node[data-mastery-level="30"]{
    position:relative!important;border-left:1px solid rgba(215,181,90,.14)!important;border-radius:0 9px 9px 0!important;
  }
  #advancedPanel #masteryList .mastery-node[data-mastery-level="10"]{
    border-radius:9px 0 0 9px!important;
  }
}
@media (max-width:1180px) and (min-width:761px){
  #masteryCard .mastery-toolbar-help{display:block!important;}
}

/* === SOURCE: css/162-v5513-mastery-type-scale.css === */

/* v5.5.13 · Align Mastery core-content typography to the Facilities scale. */
@media (min-width:761px){
  #advancedPanel #masteryList .mastery-model-copy strong{
    font-size:13.5px!important;
    line-height:1.08!important;
    font-weight:780!important;
  }
  #advancedPanel #masteryList .mastery-model-copy small{
    font-size:8.5px!important;
    line-height:1.08!important;
  }
  #advancedPanel #masteryList .mastery-node-stats{
    font-size:11.5px!important;
    line-height:1.24!important;
  }
  #advancedPanel #masteryList .mastery-node-stats em{
    font-size:inherit!important;
  }
}

/* === SOURCE: css/163-v5514-mastery-toolbar-type-scale.css === */

/* v5.5.14 · Standardize Mastery toolbar typography. */
@media (min-width:761px){
  #masteryCard .mastery-bulk-btn{font-size:11.5px!important;}
  #masteryCard .mastery-metric span{font-size:11.5px!important;}
  #masteryCard .mastery-metric strong{font-size:14px!important;}
  #masteryCard .mastery-toolbar-help{font-size:10.5px!important;line-height:1.2!important;font-weight:720!important;}
}

/* === SOURCE: css/164-v5517-inkfree-workspace-header.css === */

/* v5.5.17 · Use Ink Free for the decorative English workspace header, keeping the compact clipped band. */
@media (min-width:761px){
  .workspace-decor-header{
    position:relative!important;
    flex:0 0 36px!important;
    width:100%!important;
    height:36px!important;
    min-height:36px!important;
    margin:0 0 6px!important;
    overflow:hidden!important;
    pointer-events:none!important;
    user-select:none!important;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.92) 20%,#000 34%,#000 66%,rgba(0,0,0,.92) 80%,transparent 100%);
    mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.92) 20%,#000 34%,#000 66%,rgba(0,0,0,.92) 80%,transparent 100%);
  }
  body.attributes-workspace-compact .workspace-decor-header{display:none!important;}
  .workspace-decor-title{
    --workspace-title-x:80px;
    --workspace-title-shift:0px;
    position:absolute!important;
    z-index:2!important;
    left:var(--workspace-title-x)!important;
    top:52%!important;
    transform:translate(-50%,-50%) rotate(-6deg)!important;
    transform-origin:50% 55%!important;
    display:block!important;
    max-width:46vw!important;
    margin:0!important;
    padding:0 6px 2px!important;
    overflow:visible!important;
    color:rgba(228,207,146,.76)!important;
    font-family:"Ink Free","Segoe Print","Segoe Script","Bradley Hand",cursive!important;
    font-size:46px!important;
    font-style:italic!important;
    font-weight:800!important;
    line-height:.88!important;
    letter-spacing:-.035em!important;
    -webkit-text-stroke:.28px rgba(231,207,137,.16)!important;
    white-space:nowrap!important;
    text-shadow:0 0 16px rgba(216,184,95,.11),0 1px 0 rgba(255,255,255,.03)!important;
    opacity:1;
    will-change:transform,opacity,filter,left;
    transition:left .36s cubic-bezier(.22,.8,.22,1),color .18s ease!important;
  }
  .workspace-decor-title.workspace-decor-animate{
    animation:workspaceDecorReveal .42s cubic-bezier(.22,.8,.22,1) both!important;
  }
  @keyframes workspaceDecorReveal{
    0%{
      opacity:0;
      filter:blur(4px);
      transform:translate(calc(-50% + var(--workspace-title-shift)),calc(-50% + 5px)) rotate(-9deg) scale(.965);
    }
    58%{opacity:.88;filter:blur(.7px)}
    100%{
      opacity:1;
      filter:blur(0);
      transform:translate(-50%,-50%) rotate(-6deg) scale(1);
    }
  }

  /* The old per-page title rows are now replaced by the decorative shared header. */
  #masteryCard > .mastery-head{display:none!important;}
  #facilitiesCard .facilities-heading-block{display:none!important;}
  #facilitiesCard .facilities-page-head{
    display:block!important;
    min-height:0!important;height:auto!important;
    margin:0 0 9px!important;padding:0!important;
  }
  #facilitiesCard .facilities-page-actions{margin:0!important;}
  #specializationPanel .specialization-page-head{display:none!important;}
  #playstylesPanel .ps-page-k6 .ps-page-head{display:none!important;}
  #playerCardPanel .build-overview-head{display:none!important;}

  /* Keep toolbar -> content cadence identical after removing legacy title rows. */
  #masteryCard .mastery-toolbar.workspace-toolbar,
  #facilitiesCard .facilities-page-actions.workspace-toolbar,
  #specializationPanel .specialization-workspace-toolbar,
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar,
  #playerCardPanel .build-workspace-toolbar{
    margin-top:0!important;
  }
}
@media (min-width:761px) and (max-height:800px){
  .workspace-decor-header{flex-basis:32px!important;height:32px!important;min-height:32px!important;margin-bottom:5px!important;}
  .workspace-decor-title{font-size:42px!important;}
}
@media(max-width:760px){.workspace-decor-header{display:none!important;}}


/* ===== SOURCE: css/stable-bundle-016.css ===== */
/* === SOURCE: css/165-v5518-mastery-compact-columns.css === */

/* v5.5.18 · Narrow the archetype identity column and pull the two Mastery columns inward. */
@media (min-width:861px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    width:94%!important;
    max-width:1160px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }
  #advancedPanel #masteryList .mastery-row{
    grid-template-columns:minmax(112px,.72fr) minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:0!important;
    padding-left:10px!important;
    padding-right:6px!important;
  }
  #advancedPanel #masteryList .mastery-model{
    gap:7px!important;
    padding-right:5px!important;
  }
  #advancedPanel #masteryList .mastery-node{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}
@media (min-width:861px) and (max-width:1180px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{width:97%!important;}
  #advancedPanel #masteryList .mastery-row{grid-template-columns:minmax(106px,.74fr) minmax(0,1fr) minmax(0,1fr)!important;}
}

/* === SOURCE: css/166-v5519-mastery-left-aligned-tighter.css === */

/* v5.5.19 · Keep Mastery aligned to the left while narrowing the two-column block.
   Slightly reduce archetype identity width and give Lv10 a little more room than Lv30. */
@media (min-width:861px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{
    width:93%!important;
    max-width:1140px!important;
    margin-left:0!important;
    margin-right:auto!important;
  }
  #advancedPanel #masteryList .mastery-row{
    grid-template-columns:minmax(104px,.64fr) minmax(0,1.08fr) minmax(0,.92fr)!important;
    column-gap:0!important;
    padding-left:9px!important;
    padding-right:6px!important;
  }
  #advancedPanel #masteryList .mastery-model{
    gap:6px!important;
    padding-right:2px!important;
  }
  #advancedPanel #masteryList .mastery-node{
    padding-left:8px!important;
    padding-right:7px!important;
  }
}
@media (min-width:861px) and (max-width:1180px){
  #advancedPanel #masteryList.mastery-list.mastery-groups{width:96%!important;}
  #advancedPanel #masteryList .mastery-row{
    grid-template-columns:minmax(100px,.66fr) minmax(0,1.08fr) minmax(0,.92fr)!important;
  }
}

/* === SOURCE: css/167-v5520-mastery-toolbar-soft-tint.css === */

/* v5.5.20 · Mastery-only toolbar visibility test: restrained tinted rail, no heavy card treatment. */
@media (min-width:761px){
  #masteryCard .mastery-toolbar.workspace-toolbar{
    position:relative!important;
    overflow:hidden!important;
    border-color:rgba(255,255,255,.085)!important;
    background:
      linear-gradient(90deg,rgba(215,181,90,.034) 0%,rgba(255,255,255,.030) 18%,rgba(255,255,255,.022) 58%,rgba(255,255,255,.016) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.030),
      inset 0 -1px 0 rgba(0,0,0,.10)!important;
  }
  #masteryCard .mastery-toolbar.workspace-toolbar::before{
    content:"";
    position:absolute;
    left:0;top:10px;bottom:10px;
    width:2px;
    border-radius:0 2px 2px 0;
    background:linear-gradient(180deg,rgba(224,195,111,.10),rgba(224,195,111,.58),rgba(224,195,111,.10));
    box-shadow:0 0 7px rgba(215,181,90,.10);
    pointer-events:none;
  }
}

/* === SOURCE: css/168-v5521-toolbar-global-and-mastery-refine.css === */

/* v5.5.21 · Apply the soft toolbar rail language to every non-attribute workspace,
   fix the Mastery total-bonus tooltip clipping, increase decorative header presence,
   and make Lv10 Mastery states more restrained than Lv30. */
@media (min-width:761px){
  .workspace-toolbar{
    position:relative!important;
    overflow:visible!important;
    border-color:rgba(255,255,255,.085)!important;
    background:linear-gradient(90deg,rgba(215,181,90,.032) 0%,rgba(255,255,255,.030) 18%,rgba(255,255,255,.022) 58%,rgba(255,255,255,.016) 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.030), inset 0 -1px 0 rgba(0,0,0,.10)!important;
  }
  .workspace-toolbar::before{
    content:"";position:absolute;left:0;top:10px;bottom:10px;width:2px;
    border-radius:0 2px 2px 0;
    background:linear-gradient(180deg,rgba(224,195,111,.10),rgba(224,195,111,.58),rgba(224,195,111,.10));
    box-shadow:0 0 7px rgba(215,181,90,.10);pointer-events:none;
  }

  /* Let the Mastery total-bonus tooltip escape the rail cleanly. */
  #masteryCard .mastery-toolbar.workspace-toolbar,
  #masteryCard .mastery-toolbar-stats,
  #masteryCard .mastery-metric,
  #masteryCard #masteryTotalBonusBox{overflow:visible!important;}
  #masteryCard #masteryTotalBonusBox{position:relative!important;z-index:3!important;}
  #masteryCard .mastery-summary-hover::after{z-index:120!important;}
  #masteryCard .mastery-summary-hover::before{z-index:121!important;}

  /* Tone down the active Mastery visuals overall. */
  #advancedPanel #masteryList .mastery-row.selected{
    background:linear-gradient(90deg,rgba(215,181,90,.065),rgba(255,255,255,.018) 38%,rgba(255,255,255,.010))!important;
    border-color:rgba(215,181,90,.11)!important;
  }
  #advancedPanel #masteryList .mastery-node.active{
    background:rgba(215,181,90,.022)!important;
    color:#e5dcc2!important;
  }
  #advancedPanel #masteryList .mastery-node.active .mastery-node-level{
    border-color:rgba(215,181,90,.14)!important;
    background:rgba(215,181,90,.065)!important;
    color:#ceb56c!important;
  }
  #advancedPanel #masteryList .mastery-node.active .mastery-node-stats{color:#d3ccb9!important;}
  #advancedPanel #masteryList .mastery-node.active .mastery-node-stats em{color:#ebddb0!important;}

  /* Lv10 = calmer, grey-white state marker and weaker warm treatment. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"]::before{
    opacity:.9!important;
    background:rgba(224,231,240,.86)!important;
    box-shadow:0 0 8px rgba(224,231,240,.12)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"]{
    background:linear-gradient(90deg,rgba(216,224,234,.075),rgba(255,255,255,.018) 38%,rgba(255,255,255,.010))!important;
    border-color:rgba(214,222,232,.10)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-logo-shell{
    border-color:rgba(224,231,240,.14)!important;
    background:rgba(224,231,240,.040)!important;
    box-shadow:none!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-logo-shell img{
    filter:none!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-model-copy strong{
    color:#dde5ee!important;
    text-shadow:0 0 7px rgba(225,232,240,.03)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active{
    background:rgba(224,231,240,.030)!important;
    color:#e7edf4!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-level{
    color:#d8e0ea!important;
    border-color:rgba(224,231,240,.16)!important;
    background:rgba(224,231,240,.055)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats{
    color:#d4dce6!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats em{
    color:#edf2f7!important;
  }

  /* Lv30 keeps the warm identity, but slightly calmer than before. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"]::before{
    opacity:1!important;
    background:rgba(215,181,90,.88)!important;
    box-shadow:0 0 8px rgba(215,181,90,.12)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-logo-shell{
    border-color:rgba(215,181,90,.16)!important;
    background:rgba(215,181,90,.055)!important;
    box-shadow:inset 0 0 0 1px rgba(215,181,90,.025)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-model-copy strong{
    color:#e2d3a0!important;
    text-shadow:0 0 8px rgba(215,181,90,.06)!important;
  }

  /* Small slot cards in Facilities selector / Playstyles placeholder can share calmer rail proportions. */
  #facilitiesCard .facility-selector-toolbar.workspace-toolbar,
  #specializationPanel .specialization-workspace-toolbar,
  #playerCardPanel .build-workspace-toolbar,
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar,
  #facilitiesCard .facilities-page-actions.workspace-toolbar{overflow:visible!important;}
}

/* === SOURCE: css/169-v5522-header-fade-lv10-gold-zone.css === */

/* v5.5.22 · Make the decorative English header more transparent.
   Keep the Lv10 model/status area grey-white, while restoring a restrained gold highlight to the Lv10 choice zone itself. */
@media (min-width:761px){
  .workspace-decor-title{
    color:rgba(222,198,124,.42)!important;
    -webkit-text-stroke:.28px rgba(231,207,137,.10)!important;
    text-shadow:0 0 13px rgba(216,184,95,.045),0 1px 0 rgba(255,255,255,.015)!important;
  }

  /* Lv10 keeps the grey-white identity/status treatment on the left. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"]::before{
    opacity:.9!important;
    background:rgba(224,231,240,.86)!important;
    box-shadow:0 0 8px rgba(224,231,240,.12)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-logo-shell{
    border-color:rgba(224,231,240,.14)!important;
    background:rgba(224,231,240,.040)!important;
    box-shadow:none!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-model-copy strong{
    color:#dde5ee!important;
    text-shadow:0 0 7px rgba(225,232,240,.03)!important;
  }

  /* Only the selected Lv10 half regains a warm gold selection field. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active{
    position:relative!important;
    color:#e9dfc1!important;
    background:linear-gradient(180deg,rgba(215,181,90,.090),rgba(215,181,90,.045))!important;
    box-shadow:
      inset 0 0 0 1px rgba(215,181,90,.18),
      inset 0 0 18px rgba(215,181,90,.035),
      0 0 9px rgba(215,181,90,.035)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-level{
    color:#d4b867!important;
    border-color:rgba(215,181,90,.20)!important;
    background:rgba(215,181,90,.095)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats{
    color:#d9cfb5!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats em{
    color:#efdfaa!important;
  }
}

/* === SOURCE: css/170-v5523-mastery-lv30-keeps-lv10-lit.css === */

/* v5.5.23 · When Lv30 is selected, keep both unlocked choice zones visibly active.
   Lv10 remains warm gold; Lv30 is the stronger current-tier highlight. */
@media (min-width:761px){
  /* Lv10 stays lit after reaching Lv30. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="10"].active{
    position:relative!important;
    color:#e9dfc1!important;
    background:linear-gradient(180deg,rgba(215,181,90,.082),rgba(215,181,90,.040))!important;
    box-shadow:
      inset 0 0 0 1px rgba(215,181,90,.16),
      inset 0 0 16px rgba(215,181,90,.030),
      0 0 8px rgba(215,181,90,.028)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="10"].active .mastery-node-level{
    color:#d4b867!important;
    border-color:rgba(215,181,90,.18)!important;
    background:rgba(215,181,90,.085)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats{
    color:#d8cfb6!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="10"].active .mastery-node-stats em{
    color:#eddda9!important;
  }

  /* Lv30 itself is the stronger active tier. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active{
    position:relative!important;
    color:#efe4c5!important;
    background:linear-gradient(180deg,rgba(215,181,90,.115),rgba(215,181,90,.055))!important;
    box-shadow:
      inset 0 0 0 1px rgba(215,181,90,.22),
      inset 0 0 20px rgba(215,181,90,.045),
      0 0 10px rgba(215,181,90,.040)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active .mastery-node-level{
    color:#dfc36d!important;
    border-color:rgba(215,181,90,.23)!important;
    background:rgba(215,181,90,.11)!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active .mastery-node-stats{
    color:#ddd3b8!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active .mastery-node-stats em{
    color:#f2e2ad!important;
  }
}

/* === SOURCE: css/171-v5524-facilities-toolbar-standard.css === */

/* v5.5.24 · Facilities adopts the Mastery toolbar grammar: actions | live status | help. */
@media (min-width:761px){
  #facilitiesCard .facilities-page-actions.workspace-toolbar{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    min-width:0!important;
    height:46px!important;
    min-height:46px!important;
    padding:6px 9px!important;
    margin:0 0 9px!important;
  }
  #facilitiesCard .facility-toolbar-tools{
    order:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:0 0 auto!important;
    gap:6px!important;
    margin:0!important;
  }
  #facilitiesCard .facility-toolbar-stats{
    order:2!important;
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    gap:9px!important;
    min-width:0!important;
    margin-left:2px!important;
    overflow:hidden!important;
  }
  #facilitiesCard .facility-page-tool-btn,
  #facilitiesCard .facility-visibility-btn{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    flex:0 0 34px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid rgba(255,255,255,.078)!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
    color:#aeb7c0!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    cursor:pointer!important;
    transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease!important;
  }
  #facilitiesCard .facility-page-tool-btn:hover:not(:disabled),
  #facilitiesCard .facility-visibility-btn:hover{
    color:#ddd4b1!important;
    border-color:rgba(215,181,90,.20)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.06),rgba(255,255,255,.015))!important;
    transform:translateY(-1px)!important;
  }
  #facilitiesCard .facility-page-tool-btn:disabled{
    opacity:.30!important;
    cursor:not-allowed!important;
    transform:none!important;
  }
  #facilitiesCard .facility-undo-icon svg{
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  #facilitiesCard #facilityClearBtn span{
    font-size:15px!important;
    line-height:1!important;
  }
  #facilitiesCard .facility-visibility-btn{position:relative!important;}
  #facilitiesCard .facility-visibility-btn input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  #facilitiesCard .facility-eye{
    width:15px!important;
    height:15px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  #facilitiesCard .facility-eye-off{display:none!important;}
  #facilitiesCard .facility-visibility-btn input:not(:checked) ~ .facility-eye-on{display:none!important;}
  #facilitiesCard .facility-visibility-btn input:not(:checked) ~ .facility-eye-off{display:block!important;}
  #facilitiesCard .facility-visibility-btn:has(input:checked){
    color:#d8b85f!important;
    border-color:rgba(215,181,90,.18)!important;
    background:rgba(215,181,90,.055)!important;
  }
  #facilitiesCard .facility-metric{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    height:auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }
  #facilitiesCard .facility-metric span{
    color:#75818f!important;
    font-size:11.5px!important;
    line-height:1!important;
  }
  #facilitiesCard .facility-metric strong{
    margin:0!important;
    color:#e3e8ef!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
  }
  #facilitiesCard .facility-metric-divider{
    flex:0 0 1px!important;
    width:1px!important;
    height:16px!important;
    background:rgba(255,255,255,.075)!important;
  }
  #facilitiesCard .facility-toolbar-help{
    flex:1 1 auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    color:#68747f!important;
    font-size:10.5px!important;
    font-weight:720!important;
    letter-spacing:.015em!important;
    line-height:1.2!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  /* Legacy label/switch treatment is fully replaced by the eye control above. */
  #facilitiesCard .facility-effects-control,
  #facilitiesCard .facility-effects-copy{display:none!important;}
}
@media (max-width:1180px) and (min-width:761px){
  #facilitiesCard .facility-toolbar-help{display:block!important;}
}
@media (max-width:760px){
  #facilitiesCard .facilities-page-actions.workspace-toolbar{height:auto!important;min-height:44px!important;gap:7px!important;}
  #facilitiesCard .facility-toolbar-tools{display:flex!important;align-items:center!important;gap:6px!important;}
  #facilitiesCard .facility-toolbar-stats{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;overflow:hidden!important;}
  #facilitiesCard .facility-toolbar-help{display:none!important;}
}

/* === SOURCE: css/172-v5525-remove-facility-controls-label.css === */

/* v5.5.25 · Remove the obsolete FACILITY CONTROLS decorative label from the facilities toolbar. */
#facilitiesCard .facilities-page-actions::before{content:none!important;display:none!important;}

/* === SOURCE: css/173-v5526-facility-workspace-summary-layout.css === */

/* v5.5.26 · Facilities workspace: top summary + lower selection area.
   Top: club level / budget meter / total attribute boosts / facility PlayStyles.
   Bottom: selected facilities and add-facility entry. */
#facilitiesCard .facilities-workspace{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  min-height:0!important;
  overflow:hidden!important;
}
#facilitiesCard .facility-workspace-summary{
  flex:0 0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:11px 12px 12px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(11,17,23,.50),rgba(9,14,19,.34))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-strip{
  display:grid!important;
  grid-template-columns:minmax(210px,25%) minmax(0,75%)!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-card{
  min-height:72px!important;
  border:1px solid rgba(255,255,255,.060)!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.024),rgba(255,255,255,.010))!important;
  box-shadow:none!important;
}
#facilitiesCard .facility-workspace-summary .facility-level-card-summary{
  padding:9px 11px!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-main{
  padding:9px 13px!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-card>span,
#facilitiesCard .facility-workspace-summary .facility-budget-head span{
  font-size:11.5px!important;
  line-height:1!important;
  font-weight:650!important;
  color:#798592!important;
}
#facilitiesCard .facility-workspace-summary .facility-level-select{
  height:34px!important;
  margin-top:7px!important;
  font-size:13.5px!important;
  font-weight:760!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-head{
  align-items:center!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-head strong{
  font-size:13.5px!important;
  line-height:1!important;
  font-weight:780!important;
  color:#e2e8ee!important;
  font-variant-numeric:tabular-nums!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-rail{
  height:8px!important;
  margin-top:10px!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-foot{
  display:none!important;
}
#facilitiesCard .facility-workspace-summary .facility-budget-foot span:first-child{
  color:#9aa5af!important;
  font-weight:680!important;
}
#facilitiesCard .facility-workspace-summary .facility-bonus-preview{
  display:grid!important;
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.86fr)!important;
  gap:10px!important;
  min-height:94px!important;
  max-height:none!important;
  margin:0!important;
}
#facilitiesCard .facility-workspace-summary .facility-preview-card{
  min-height:94px!important;
  max-height:112px!important;
  padding:10px 11px!important;
  border:1px solid rgba(255,255,255,.060)!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.020),rgba(255,255,255,.008))!important;
  overflow:auto!important;
}
#facilitiesCard .facility-workspace-summary .facility-preview-card>strong{
  display:block!important;
  margin:0 0 8px!important;
  color:#798592!important;
  font-size:11.5px!important;
  line-height:1!important;
  font-weight:650!important;
}
#facilitiesCard .facility-workspace-summary .facility-bonus-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  align-content:flex-start!important;
  gap:6px 8px!important;
}
#facilitiesCard .facility-workspace-summary .facility-bonus-chip{
  padding:4px 7px!important;
  border:1px solid rgba(255,255,255,.045)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.016)!important;
  color:#b8c1ca!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:520!important;
}
#facilitiesCard .facility-workspace-summary .facility-bonus-chip b{
  color:#cbb980!important;
  font-size:11.5px!important;
  font-weight:700!important;
}
#facilitiesCard .facility-workspace-summary .facility-summary-empty{
  border-color:transparent!important;
  background:transparent!important;
  color:#66727e!important;
  padding-left:0!important;
}
#facilitiesCard .facility-workspace-summary .facility-ps-row{
  display:flex!important;
  flex-wrap:wrap!important;
  align-content:flex-start!important;
  gap:6px!important;
}
#facilitiesCard .facility-workspace-summary .facility-ps-label{
  padding:4px 7px!important;
  border:1px solid rgba(255,255,255,.045)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.014)!important;
}
#facilitiesCard .facility-workspace-summary .facility-ps-label span{
  font-size:11.5px!important;
  line-height:1.05!important;
}
#facilitiesCard .facility-workspace-summary .facility-ps-label small{
  margin-top:2px!important;
  font-size:8.5px!important;
  opacity:.68!important;
}
#facilitiesCard .facility-selected-section{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:2px 0 0!important;
  overflow:auto!important;
  justify-content:flex-start!important;
}
#facilitiesCard .facility-selected-head{
  flex:0 0 auto!important;
  margin:0 0 9px!important;
  padding:0 2px!important;
}
#facilitiesCard .facility-selected-title strong{
  color:#dfe5eb!important;
  font-size:13.5px!important;
  font-weight:720!important;
}
#facilitiesCard .facility-slot-track{
  flex:0 0 auto!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  max-height:none!important;
  overflow:visible!important;
}
@media(max-width:1180px){
  #facilitiesCard .facility-workspace-summary .facility-budget-strip{grid-template-columns:minmax(190px,25%) minmax(0,75%)!important;}
  #facilitiesCard .facility-workspace-summary .facility-bonus-preview{grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr)!important;}
  #facilitiesCard .facility-slot-track{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  #facilitiesCard .facilities-workspace{overflow:visible!important;}
  #facilitiesCard .facility-workspace-summary{padding:9px!important;gap:8px!important;}
  #facilitiesCard .facility-workspace-summary .facility-budget-strip{grid-template-columns:1fr!important;}
  #facilitiesCard .facility-workspace-summary .facility-budget-main{grid-column:auto!important;}
  #facilitiesCard .facility-workspace-summary .facility-bonus-preview{grid-template-columns:1fr!important;}
  #facilitiesCard .facility-workspace-summary .facility-preview-card{max-height:none!important;}
  #facilitiesCard .facility-selected-section{overflow:visible!important;}
  #facilitiesCard .facility-slot-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* === SOURCE: css/174-v5527-facility-content-rail-4col.css === */

/* v5.5.28 · Shared 4/5 content rail for the facilities workspace.
   Desktop content occupies the left four legacy card columns; the former fifth
   column becomes intentional right-side negative space. Summary and selection
   share exactly the same right edge. */
#facilitiesCard .facilities-workspace{
  --facility-content-rail-width:80%;
  align-items:flex-start!important;
}
#facilitiesCard .facility-workspace-summary,
#facilitiesCard .facility-selected-section{
  width:var(--facility-content-rail-width)!important;
  max-width:var(--facility-content-rail-width)!important;
  box-sizing:border-box!important;
  align-self:flex-start!important;
}
#facilitiesCard .facility-slot-track{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
@media(max-width:900px){
  #facilitiesCard .facilities-workspace{--facility-content-rail-width:100%;}
}
@media(max-width:760px){
  #facilitiesCard .facility-slot-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* === SOURCE: css/175-v5530-unified-toolbar-button-system.css === */

/* v5.5.30 · One toolbar button system for every workspace.
   Icon buttons: 34x34 / 10px radius / 16px SVG / 1.8 stroke.
   Text actions use the same height, border, radius and interaction language.
   Future workspace pages should reuse toolbar-icon-button / toolbar-text-button. */
@media (min-width:761px){
  .workspace-toolbar .toolbar-icon-button{
    box-sizing:border-box!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    max-width:34px!important;
    max-height:34px!important;
    flex:0 0 34px!important;
    padding:0!important;
    margin:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid rgba(255,255,255,.078)!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    color:#aeb7c0!important;
    font-family:inherit!important;
    font-size:0!important;
    line-height:1!important;
    cursor:pointer!important;
    overflow:hidden!important;
    transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease!important;
  }
  .workspace-toolbar .toolbar-icon-button svg{
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
    min-height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    vector-effect:non-scaling-stroke!important;
  }
  .workspace-toolbar .toolbar-icon-button:hover:not(:disabled),
  .workspace-toolbar label.toolbar-icon-button:hover{
    color:#ddd4b1!important;
    border-color:rgba(215,181,90,.20)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.060),rgba(255,255,255,.015))!important;
    transform:translateY(-1px)!important;
  }
  .workspace-toolbar .toolbar-icon-button:active:not(:disabled){transform:translateY(0)!important;}
  .workspace-toolbar .toolbar-icon-button:disabled{opacity:.30!important;cursor:not-allowed!important;transform:none!important;}

  .workspace-toolbar .toolbar-text-button{
    box-sizing:border-box!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 11px!important;
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(255,255,255,.078)!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    color:#aeb7c0!important;
    font-family:inherit!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:700!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,opacity .16s ease!important;
  }
  .workspace-toolbar .toolbar-text-button:hover:not(:disabled){
    color:#ddd4b1!important;
    border-color:rgba(215,181,90,.20)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.060),rgba(255,255,255,.015))!important;
    transform:translateY(-1px)!important;
  }
  .workspace-toolbar .toolbar-text-button:active:not(:disabled){transform:translateY(0)!important;}
  .workspace-toolbar .toolbar-text-button:disabled{opacity:.30!important;cursor:not-allowed!important;transform:none!important;}

  /* Visibility controls are the same physical button, with only the active state accented. */
  .workspace-toolbar .toolbar-visibility-button{position:relative!important;}
  .workspace-toolbar .toolbar-visibility-button input{position:absolute!important;opacity:0!important;pointer-events:none!important;}
  .workspace-toolbar .toolbar-visibility-button:has(input:checked){
    color:#d8b85f!important;
    border-color:rgba(215,181,90,.18)!important;
    background:rgba(215,181,90,.055)!important;
  }

  /* Neutralize page-specific optical overrides now that all icons share the component. */
  #masteryCard .mastery-undo-icon svg,
  #masteryCard .mastery-eye,
  #facilitiesCard .facility-undo-icon svg,
  #facilitiesCard .facility-eye,
  #facilitiesCard .toolbar-reset-icon,
  #playstylesPanel .ps-page-k6 .toolbar-icon-button svg{
    width:16px!important;height:16px!important;stroke-width:1.8!important;
  }
  #masteryCard #undoMasteryBtn,
  #facilitiesCard .facility-page-tool-btn,
  #facilitiesCard .facility-visibility-btn,
  #playstylesPanel .ps-page-k6 .ps-library-tool-btn{
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;flex:0 0 34px!important;
  }
}

/* === SOURCE: css/176-v5531-visibility-warning-state.css === */

/* v5.5.31 · Visibility buttons remain illuminated in both states.
   Gold = effects visible/active. Amber-orange = effects intentionally hidden. */
.workspace-toolbar .toolbar-visibility-button:has(input:checked){
  color:#d8b85f!important;
  border-color:rgba(215,181,90,.22)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.080),rgba(215,181,90,.040))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px rgba(215,181,90,.025)!important;
}
.workspace-toolbar .toolbar-visibility-button:has(input:not(:checked)){
  color:#efa255!important;
  border-color:rgba(239,151,70,.42)!important;
  background:linear-gradient(180deg,rgba(217,119,42,.180),rgba(155,74,24,.105))!important;
  box-shadow:inset 0 1px 0 rgba(255,222,184,.070),0 0 0 1px rgba(229,133,52,.055),0 0 12px rgba(220,116,36,.105)!important;
}
.workspace-toolbar .toolbar-visibility-button:has(input:not(:checked)):hover{
  color:#ffb76e!important;
  border-color:rgba(244,158,76,.58)!important;
  background:linear-gradient(180deg,rgba(225,128,48,.235),rgba(166,78,25,.135))!important;
  box-shadow:inset 0 1px 0 rgba(255,228,196,.085),0 0 0 1px rgba(238,143,59,.080),0 0 14px rgba(224,121,40,.14)!important;
}
.workspace-toolbar .toolbar-visibility-button:has(input:not(:checked)) svg{
  filter:drop-shadow(0 0 3px rgba(239,151,70,.16));
}

/* === SOURCE: css/177-v5532-visibility-and-gold-balance.css === */

/* v5.5.32 · Robust hidden-state warning + unified mid-strength active-gold language.
   Midpoint chosen between prior Mastery Lv30 (strong) and Facility selected cards (restrained). */
:root{
  --fc-active-gold-rgb:215,181,90;
  --fc-active-gold-bg-strong:.090;
  --fc-active-gold-bg-soft:.043;
  --fc-active-gold-border:.190;
  --fc-active-gold-inner:.032;
  --fc-active-gold-outer:.027;
}

/* Keep warning controls fully legible when effects are hidden.
   Dim the affected workspace content instead of dimming the entire card/toolbar. */
#masteryCard.effects-paused,
#facilitiesCard.effects-paused{opacity:1!important;}
#masteryCard.effects-paused #masteryList{opacity:.76!important;}
#facilitiesCard.effects-paused .facilities-workspace{opacity:.76!important;}

/* Visibility buttons: explicit state classes/data attributes avoid relying on :has(). */
.workspace-toolbar .toolbar-visibility-button.is-visibility-visible,
.workspace-toolbar .toolbar-visibility-button[data-visibility-state="visible"]{
  color:#ddc46f!important;
  border-color:rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-border))!important;
  background:linear-gradient(180deg,rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-bg-strong)),rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-bg-soft)))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.040),0 0 8px rgba(var(--fc-active-gold-rgb),.020)!important;
}
.workspace-toolbar .toolbar-visibility-button.is-visibility-hidden,
.workspace-toolbar .toolbar-visibility-button[data-visibility-state="hidden"]{
  color:#ffad5d!important;
  border-color:rgba(241,151,67,.54)!important;
  background:linear-gradient(180deg,rgba(218,116,36,.255),rgba(154,70,20,.155))!important;
  box-shadow:inset 0 1px 0 rgba(255,229,198,.105),0 0 0 1px rgba(238,139,53,.085),0 0 13px rgba(224,119,35,.180)!important;
}
.workspace-toolbar .toolbar-visibility-button.is-visibility-hidden:hover,
.workspace-toolbar .toolbar-visibility-button[data-visibility-state="hidden"]:hover{
  color:#ffc17e!important;
  border-color:rgba(247,167,84,.68)!important;
  background:linear-gradient(180deg,rgba(227,127,46,.310),rgba(164,77,23,.190))!important;
  box-shadow:inset 0 1px 0 rgba(255,235,211,.120),0 0 0 1px rgba(243,151,66,.10),0 0 15px rgba(229,127,40,.22)!important;
}
.workspace-toolbar .toolbar-visibility-button.is-visibility-hidden svg,
.workspace-toolbar .toolbar-visibility-button[data-visibility-state="hidden"] svg{
  filter:drop-shadow(0 0 3px rgba(242,155,72,.24))!important;
}

/* Unified enabled gold: Facility selected cards now rise to the midpoint. */
#facilitiesCard .facility-slot-card{
  border-color:rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-border))!important;
  background:
    radial-gradient(circle at 16% 8%,rgba(var(--fc-active-gold-rgb),.085),transparent 36%),
    linear-gradient(145deg,rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-bg-soft)),rgba(255,255,255,.012) 58%,rgba(255,255,255,.007))!important;
  box-shadow:
    inset 0 0 0 1px rgba(var(--fc-active-gold-rgb),.024),
    inset 0 0 18px rgba(var(--fc-active-gold-rgb),.022),
    0 0 9px rgba(var(--fc-active-gold-rgb),.022)!important;
}
#facilitiesCard .facility-slot-card.lv3{border-color:rgba(var(--fc-active-gold-rgb),.205)!important;}
#facilityDrawer .facility-reset-svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
#facilitiesCard .facility-slot-wrap:hover>.facility-slot-card{
  border-color:rgba(var(--fc-active-gold-rgb),.27)!important;
  background:
    radial-gradient(circle at 16% 8%,rgba(var(--fc-active-gold-rgb),.105),transparent 37%),
    linear-gradient(145deg,rgba(var(--fc-active-gold-rgb),.060),rgba(255,255,255,.014))!important;
  box-shadow:
    inset 0 0 0 1px rgba(var(--fc-active-gold-rgb),.034),
    inset 0 0 20px rgba(var(--fc-active-gold-rgb),.028),
    0 0 11px rgba(var(--fc-active-gold-rgb),.030)!important;
}

/* Mastery Lv30 comes down to the same midpoint instead of staying noticeably brighter. */
@media (min-width:761px){
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active{
    background:linear-gradient(180deg,rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-bg-strong)),rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-bg-soft)))!important;
    box-shadow:
      inset 0 0 0 1px rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-border)),
      inset 0 0 18px rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-inner)),
      0 0 9px rgba(var(--fc-active-gold-rgb),var(--fc-active-gold-outer))!important;
  }
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="30"].active .mastery-node-level{
    border-color:rgba(var(--fc-active-gold-rgb),.20)!important;
    background:rgba(var(--fc-active-gold-rgb),.095)!important;
  }
  /* Lv10 remains a touch softer so the tier hierarchy survives, but uses the same gold recipe. */
  #advancedPanel #masteryList .mastery-row[data-selected-level="10"] .mastery-node[data-mastery-level="10"].active,
  #advancedPanel #masteryList .mastery-row[data-selected-level="30"] .mastery-node[data-mastery-level="10"].active{
    background:linear-gradient(180deg,rgba(var(--fc-active-gold-rgb),.078),rgba(var(--fc-active-gold-rgb),.037))!important;
    box-shadow:
      inset 0 0 0 1px rgba(var(--fc-active-gold-rgb),.17),
      inset 0 0 16px rgba(var(--fc-active-gold-rgb),.026),
      0 0 8px rgba(var(--fc-active-gold-rgb),.022)!important;
  }
}

/* === SOURCE: css/178-v5533-toolbar-state-root-fix.css === */

/* v5.5.33 · Root fix: one independent toolbar rail, one button geometry,
   and visibility warning state driven by the card's real effects-paused state.
   These selectors intentionally outrank old page-specific !important rules. */
@media (min-width:761px){
  /* Facilities title is now title-only; toolbar lives on its own rail exactly like Mastery. */
  #facilitiesCard > .facilities-page-head{
    display:flex!important;
    align-items:center!important;
    min-height:36px!important;
    height:auto!important;
    margin:0 0 8px!important;
    padding:0 4px!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }
  #facilitiesCard > .facilities-page-head .facilities-heading-block{
    width:100%!important;
    height:auto!important;
    min-height:36px!important;
    display:flex!important;
    align-items:center!important;
  }

  /* Mastery and Facilities now use exactly the same rail geometry/surface. */
  #masteryCard > .mastery-toolbar.workspace-toolbar,
  #facilitiesCard > .facility-toolbar.workspace-toolbar{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    overflow:visible!important;
    border:1px solid rgba(255,255,255,.085)!important;
    border-radius:13px!important;
    background:linear-gradient(90deg,rgba(215,181,90,.032) 0%,rgba(255,255,255,.030) 18%,rgba(255,255,255,.022) 58%,rgba(255,255,255,.016) 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.030),inset 0 -1px 0 rgba(0,0,0,.10)!important;
  }
  #masteryCard > .mastery-toolbar.workspace-toolbar::before,
  #facilitiesCard > .facility-toolbar.workspace-toolbar::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;top:10px!important;bottom:10px!important;
    width:2px!important;
    border-radius:0 2px 2px 0!important;
    background:linear-gradient(180deg,rgba(224,195,111,.10),rgba(224,195,111,.58),rgba(224,195,111,.10))!important;
    box-shadow:0 0 7px rgba(215,181,90,.10)!important;
    pointer-events:none!important;
  }
  #facilitiesCard > .facility-toolbar.workspace-toolbar{position:relative!important;}
  #facilitiesCard > .facility-toolbar .facility-toolbar-tools{
    order:1!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
    flex:0 0 auto!important;gap:6px!important;margin:0!important;
  }
  #facilitiesCard > .facility-toolbar .facility-toolbar-stats{
    order:2!important;display:flex!important;align-items:center!important;flex:1 1 auto!important;
    gap:9px!important;min-width:0!important;margin-left:2px!important;overflow:visible!important;
  }

  /* Exact same physical tool buttons on both pages. */
  #masteryCard > .mastery-toolbar .toolbar-icon-button,
  #facilitiesCard > .facility-toolbar .toolbar-icon-button{
    box-sizing:border-box!important;
    width:34px!important;height:34px!important;
    min-width:34px!important;min-height:34px!important;
    max-width:34px!important;max-height:34px!important;
    flex:0 0 34px!important;
    padding:0!important;margin:0!important;
    display:grid!important;place-items:center!important;
    border:1px solid rgba(255,255,255,.078)!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    color:#aeb7c0!important;
    font-size:0!important;line-height:1!important;
    cursor:pointer!important;
    transform:none!important;
  }
  #masteryCard > .mastery-toolbar .toolbar-icon-button svg,
  #facilitiesCard > .facility-toolbar .toolbar-icon-button svg{
    width:16px!important;height:16px!important;
    min-width:16px!important;min-height:16px!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  #masteryCard > .mastery-toolbar .toolbar-icon-button:hover,
  #facilitiesCard > .facility-toolbar .toolbar-icon-button:hover{
    color:#ddd4b1!important;
    border-color:rgba(215,181,90,.20)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.060),rgba(255,255,255,.015))!important;
    transform:translateY(-1px)!important;
  }
  #masteryCard > .mastery-toolbar button.toolbar-icon-button:disabled,
  #facilitiesCard > .facility-toolbar button.toolbar-icon-button:disabled{
    opacity:.30!important;cursor:not-allowed!important;transform:none!important;
  }

  /* RESET icon: deliberately a full circular return arrow, optically larger than Undo. */
  #facilitiesCard #facilityClearBtn .toolbar-reset-icon,
  #playstylesPanel .toolbar-reset-icon,
  #facilityDrawer .facility-reset-svg{
    width:17px!important;height:17px!important;stroke-width:1.85!important;
  }

  /* VISIBLE: calm gold. Card state is the source of truth, not :has(). */
  #masteryCard:not(.effects-paused) > .mastery-toolbar .mastery-visibility-btn,
  #facilitiesCard:not(.effects-paused) > .facility-toolbar .facility-visibility-btn{
    color:#ddc46f!important;
    border-color:rgba(215,181,90,.20)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.090),rgba(215,181,90,.043))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.040),0 0 8px rgba(215,181,90,.025)!important;
  }

  /* HIDDEN: intentionally obvious warning state. */
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn{
    opacity:1!important;
    color:#ffb15f!important;
    border-color:rgba(245,157,71,.62)!important;
    background:linear-gradient(180deg,rgba(222,119,37,.34),rgba(139,62,18,.23))!important;
    box-shadow:
      inset 0 1px 0 rgba(255,232,205,.13),
      inset 0 0 10px rgba(239,139,50,.08),
      0 0 0 1px rgba(238,139,53,.09),
      0 0 13px rgba(224,119,35,.20)!important;
  }
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn svg,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn svg{
    color:#ffb15f!important;
    stroke:#ffb15f!important;
    filter:drop-shadow(0 0 3px rgba(255,166,78,.28))!important;
  }
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn:hover,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn:hover{
    color:#ffc27f!important;
    border-color:rgba(249,176,93,.74)!important;
    background:linear-gradient(180deg,rgba(231,132,49,.39),rgba(153,70,21,.27))!important;
    box-shadow:inset 0 1px 0 rgba(255,239,219,.15),0 0 15px rgba(228,126,40,.24)!important;
  }
}

/* === SOURCE: css/179-v5534-facility-budget-close-polish.css === */

/* v5.5.34 · Softer hidden-warning state, explicit over-budget copy,
   and stable facility-picker icon geometry during close transitions. */
@media (min-width:761px){
  /* Hidden remains clearly different from visible, but the button fill is intentionally restrained. */
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn{
    opacity:1!important;
    color:#e3a15f!important;
    border-color:rgba(224,145,73,.40)!important;
    background:linear-gradient(180deg,rgba(193,103,40,.145),rgba(133,62,25,.075))!important;
    box-shadow:
      inset 0 1px 0 rgba(255,232,207,.055),
      inset 0 0 8px rgba(224,128,53,.030),
      0 0 8px rgba(211,112,40,.075)!important;
  }
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn svg,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn svg{
    color:#e7a563!important;
    stroke:#e7a563!important;
    filter:drop-shadow(0 0 2px rgba(232,154,79,.13))!important;
  }
  #masteryCard.effects-paused > .mastery-toolbar .mastery-visibility-btn:hover,
  #facilitiesCard.effects-paused > .facility-toolbar .facility-visibility-btn:hover{
    color:#edb172!important;
    border-color:rgba(232,158,85,.50)!important;
    background:linear-gradient(180deg,rgba(201,111,46,.185),rgba(142,68,28,.095))!important;
    box-shadow:inset 0 1px 0 rgba(255,237,218,.065),0 0 10px rgba(215,119,44,.095)!important;
  }
}

/* Never let picker logos fall back to their intrinsic image dimensions while the modal fades out. */
#facilityDrawer .facility-picker-icon{
  position:absolute!important;
  right:14px!important;
  top:13px!important;
  width:30px!important;
  height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  object-fit:contain!important;
  opacity:.32!important;
  filter:none!important;
}
#facilityDrawer .facility-detail-head>img{
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
  object-fit:contain!important;
}

/* === SOURCE: css/180-v5535-silver-toolbar-rail-and-facility-height-fix.css === */

/* v5.5.35 · Restore identical page rhythm and separate toolbar rails from content
   with a neutral silver surface. Gold remains reserved for active/selected states. */
@media (min-width:761px){
  /* The shared decorative workspace header already says Facilities.
     Do not render the legacy facilities title row a second time. */
  #facilitiesCard > .facilities-page-head{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  /* Shared silver toolbar material. Intentionally neutral: no gold cast. */
  .workspace-toolbar,
  #masteryCard > .mastery-toolbar.workspace-toolbar,
  #facilitiesCard > .facility-toolbar.workspace-toolbar,
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar,
  #playerCardPanel .build-workspace-toolbar.workspace-toolbar,
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar{
    position:relative!important;
    border-color:rgba(218,228,238,.145)!important;
    background:
      linear-gradient(180deg,rgba(229,236,243,.092) 0%,rgba(198,209,219,.064) 42%,rgba(157,171,184,.044) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.090),
      inset 0 -1px 0 rgba(58,72,85,.18),
      0 4px 14px rgba(0,0,0,.12)!important;
  }

  /* Mastery and Facilities use exactly the same physical rail height. */
  #masteryCard > .mastery-toolbar.workspace-toolbar,
  #facilitiesCard > .facility-toolbar.workspace-toolbar{
    box-sizing:border-box!important;
    min-height:46px!important;
    height:46px!important;
    padding:6px 9px!important;
    margin:0 0 9px!important;
    border-radius:13px!important;
  }

  /* Replace the old gold rail accent with a silver-white edge highlight. */
  .workspace-toolbar::before,
  #masteryCard > .mastery-toolbar.workspace-toolbar::before,
  #facilitiesCard > .facility-toolbar.workspace-toolbar::before,
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar::before,
  #playerCardPanel .build-workspace-toolbar.workspace-toolbar::before,
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    top:9px!important;
    bottom:9px!important;
    width:2px!important;
    border-radius:0 2px 2px 0!important;
    background:linear-gradient(180deg,
      rgba(235,242,248,.16),
      rgba(235,242,248,.72),
      rgba(235,242,248,.16))!important;
    box-shadow:0 0 7px rgba(221,231,240,.10)!important;
    pointer-events:none!important;
  }
}

/* === SOURCE: css/181-v5536-playstyle-toolbar-unified.css === */

/* v5.5.36 · PlayStyle toolbar uses the shared actions | status | help grammar. */
@media (min-width:761px){
  #playstylesPanel .ps-page-k6 .ps-library-toolbar.workspace-toolbar{
    box-sizing:border-box!important;
    min-height:46px!important;
    height:46px!important;
    padding:6px 9px!important;
    margin:0 0 9px!important;
    display:flex!important;
    align-items:center!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    min-width:0!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-title-group,
  #playstylesPanel .ps-page-k6 .ps-source-note{display:none!important;}
  #playstylesPanel .ps-page-k6 .ps-library-tools{
    order:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:0 0 auto!important;
    gap:6px!important;
    margin:0!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-tool-btn.toolbar-icon-button{
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
    max-width:34px!important;max-height:34px!important;flex:0 0 34px!important;
    padding:0!important;margin:0!important;border-radius:10px!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-tool-btn.toolbar-icon-button svg{
    width:16px!important;height:16px!important;stroke-width:1.8!important;
  }
  #playstylesPanel .ps-page-k6 .ps-library-stats{
    order:2!important;
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    gap:9px!important;
    min-width:0!important;
    margin-left:2px!important;
    position:static!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-metric{
    display:flex!important;align-items:center!important;gap:6px!important;
    min-width:0!important;height:auto!important;padding:0!important;margin:0!important;
    border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
    white-space:nowrap!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-metric>span{
    color:#75818f!important;font-size:11.5px!important;line-height:1!important;font-weight:500!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-metric>strong{
    margin:0!important;color:#e3e8ef!important;font-size:14px!important;line-height:1!important;
    font-weight:800!important;font-variant-numeric:tabular-nums!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-metric>strong em{
    font-style:normal!important;color:#7f8a95!important;font-size:11px!important;font-weight:700!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-divider{
    display:block!important;flex:0 0 1px!important;width:1px!important;height:16px!important;
    background:rgba(255,255,255,.075)!important;
  }
  #playstylesPanel .ps-page-k6 .ps-toolbar-help{
    flex:1 1 auto!important;min-width:0!important;margin:0!important;padding:0!important;
    color:#68747f!important;font-size:10.5px!important;font-weight:720!important;letter-spacing:.015em!important;
    line-height:1.2!important;text-align:left!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
}
@media(max-width:1180px) and (min-width:761px){
  #playstylesPanel .ps-page-k6 .ps-toolbar-help{display:block!important;}
}
@media(max-width:760px){
  #playstylesPanel .ps-page-k6 .ps-library-toolbar-main{display:flex!important;align-items:center!important;gap:7px!important;}
  #playstylesPanel .ps-page-k6 .ps-library-tools{display:flex!important;gap:6px!important;}
  #playstylesPanel .ps-page-k6 .ps-library-stats{display:flex!important;align-items:center!important;gap:7px!important;position:static!important;}
  #playstylesPanel .ps-page-k6 .ps-toolbar-help,
  #playstylesPanel .ps-page-k6 .ps-toolbar-help-divider{display:none!important;}
}

/* === SOURCE: css/182-v5537-mybuild-toolbar-controls.css === */

/* v5.5.38 · My Build toolbar: keep help adjacent to effect controls. */
@media (min-width:761px){
  #playerCardPanel .build-workspace-toolbar.workspace-toolbar{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  #playerCardPanel .build-workspace-toolbar .overview-effect-controls{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    min-width:0!important;
  }
  #playerCardPanel .build-value-mode{
    display:flex!important;
    align-items:center!important;
    height:32px!important;
    padding:2px!important;
    border:1px solid rgba(222,230,238,.13)!important;
    border-radius:10px!important;
    background:rgba(7,12,17,.24)!important;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.18)!important;
  }
  #playerCardPanel .build-mode-btn{
    appearance:none!important;
    height:26px!important;
    min-width:68px!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#7f8a95!important;
    font:650 11.5px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    transition:.15s ease!important;
  }
  #playerCardPanel .build-mode-btn:hover{color:#c4ccd4!important;background:rgba(255,255,255,.035)!important;}
  #playerCardPanel .build-mode-btn[data-build-mode="base"].active{
    color:#e1e6eb!important;
    background:linear-gradient(180deg,rgba(229,236,243,.13),rgba(194,205,216,.065))!important;
    box-shadow:inset 0 0 0 1px rgba(235,241,247,.10),0 1px 4px rgba(0,0,0,.18)!important;
  }
  #playerCardPanel .build-mode-btn[data-build-mode="match"].active{
    color:#e3d59f!important;
    background:linear-gradient(180deg,rgba(215,181,90,.115),rgba(215,181,90,.050))!important;
    box-shadow:inset 0 0 0 1px rgba(215,181,90,.12),0 0 8px rgba(215,181,90,.028)!important;
  }
  #playerCardPanel .build-toolbar-divider{
    width:1px!important;
    height:22px!important;
    margin:0 1px!important;
    background:rgba(225,233,241,.12)!important;
    flex:0 0 auto!important;
  }
  #playerCardPanel .build-effect-switches{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    flex:0 0 auto!important;
  }
  #playerCardPanel .build-effect-toggle{
    appearance:none!important;
    height:32px!important;
    min-width:64px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border:1px solid rgba(220,229,237,.095)!important;
    border-radius:10px!important;
    background:rgba(9,14,20,.18)!important;
    color:#8c97a2!important;
    font:650 11.5px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif!important;
    cursor:pointer!important;
    transition:.15s ease!important;
  }
  #playerCardPanel .build-effect-toggle i{
    width:7px!important;
    height:7px!important;
    border-radius:50%!important;
    background:#68737e!important;
    box-shadow:0 0 0 2px rgba(255,255,255,.018)!important;
    flex:0 0 auto!important;
    transition:.15s ease!important;
  }
  #playerCardPanel .build-effect-toggle:hover{
    color:#c7cfd7!important;
    border-color:rgba(224,232,240,.15)!important;
    background:rgba(255,255,255,.032)!important;
  }
  #playerCardPanel .build-effect-toggle.active{
    color:#d9cc98!important;
    border-color:rgba(215,181,90,.19)!important;
    background:linear-gradient(180deg,rgba(215,181,90,.085),rgba(215,181,90,.035))!important;
    box-shadow:inset 0 0 0 1px rgba(215,181,90,.025),0 0 8px rgba(215,181,90,.018)!important;
  }
  #playerCardPanel .build-effect-toggle.active i{
    background:#d5b75c!important;
    box-shadow:0 0 7px rgba(215,181,90,.22)!important;
  }
  #playerCardPanel .build-effect-toggle.is-unavailable{
    opacity:.48!important;
    cursor:not-allowed!important;
  }
  #playerCardPanel .build-toolbar-help{
    min-width:0!important;
    flex:0 1 auto!important;
    margin-left:4px!important;
    padding-left:10px!important;
    border-left:1px solid rgba(225,233,241,.10)!important;
    color:#74808b!important;
    font-size:10.5px!important;
    font-weight:620!important;
    line-height:1.2!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  /* Controls live in the toolbar now; never render a second copy inside the stats card. */
  #playerCardPanel .overview-stats-card .overview-effect-controls{display:none!important;}
}
@media (max-width:1180px) and (min-width:761px){
  #playerCardPanel .build-toolbar-help{display:none!important;}
  #playerCardPanel .build-mode-btn{min-width:64px!important;padding:0 8px!important;}
  #playerCardPanel .build-effect-toggle{min-width:58px!important;padding:0 8px!important;}
}
@media (max-width:760px){
  #playerCardPanel .build-workspace-toolbar{height:auto!important;min-height:46px!important;padding:7px!important;}
  #playerCardPanel .build-workspace-toolbar .overview-effect-controls{display:flex!important;flex-wrap:wrap!important;gap:7px!important;}
  #playerCardPanel .build-toolbar-help{width:100%!important;margin:0!important;padding:2px 2px 0!important;text-align:left!important;white-space:normal!important;font-size:10.5px!important;color:#74808b!important;}
  #playerCardPanel .build-effect-switches{display:flex!important;gap:6px!important;flex-wrap:wrap!important;}
}

/* === SOURCE: css/183-v5539-specialization-toolbar-unified.css === */

/* v5.5.39 · Specialization toolbar: global action undo/reset + active status + help. */
@media (min-width:761px){
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    overflow:visible!important;
    border-radius:13px!important;
  }
  #specializationPanel .specialization-toolbar-tools{
    order:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:0 0 auto!important;
    gap:6px!important;
    margin:0!important;
  }
  #specializationPanel .specialization-toolbar-tools .toolbar-icon-button{
    box-sizing:border-box!important;
    width:34px!important;height:34px!important;
    min-width:34px!important;min-height:34px!important;
    max-width:34px!important;max-height:34px!important;
    flex:0 0 34px!important;
    padding:0!important;margin:0!important;
    border-radius:10px!important;
  }
  #specializationPanel .specialization-toolbar-tools .toolbar-icon-button svg{
    width:16px!important;height:16px!important;
    stroke-width:1.8!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  #specializationPanel .specialization-toolbar-stats{
    order:2!important;
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    min-width:0!important;
    gap:9px!important;
    margin-left:2px!important;
  }
  #specializationPanel .specialization-toolbar-metric{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    white-space:nowrap!important;
  }
  #specializationPanel .specialization-toolbar-metric>span{
    color:#75818f!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:500!important;
  }
  #specializationPanel .specialization-toolbar-metric>strong{
    margin:0!important;
    color:#e3e8ef!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
  }
  #specializationPanel .specialization-toolbar-metric>strong em{
    font-style:normal!important;
    color:#7f8a95!important;
    font-size:11px!important;
    font-weight:700!important;
  }
  #specializationPanel .specialization-toolbar-divider{
    display:block!important;
    flex:0 0 1px!important;
    width:1px!important;
    height:16px!important;
    background:rgba(255,255,255,.075)!important;
  }
  #specializationPanel .specialization-toolbar-help{
    flex:0 1 auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    color:#68747f!important;
    font-size:10.5px!important;
    font-weight:720!important;
    letter-spacing:.015em!important;
    line-height:1.2!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Local per-card undo is replaced by one transaction-level toolbar undo. */
  #specializationPanel .spec-card .spec-local-reset-btn{display:none!important;}
  #specializationPanel .spec-card .spec-card-actions{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
@media(max-width:760px){
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar{
    min-height:46px!important;
    height:auto!important;
    padding:6px 8px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
  }
  #specializationPanel .specialization-toolbar-tools{display:flex!important;gap:6px!important;flex:0 0 auto!important;}
  #specializationPanel .specialization-toolbar-stats{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;}
  #specializationPanel .specialization-toolbar-metric{display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important;}
  #specializationPanel .specialization-toolbar-metric>span{font-size:11.5px!important;color:#75818f!important;}
  #specializationPanel .specialization-toolbar-metric>strong{font-size:14px!important;color:#e3e8ef!important;}
  #specializationPanel .specialization-toolbar-metric>strong em{font-style:normal!important;font-size:11px!important;color:#7f8a95!important;}
  #specializationPanel .specialization-toolbar-help,
  #specializationPanel .specialization-toolbar-help-divider{display:none!important;}
  #specializationPanel .spec-card .spec-local-reset-btn{display:none!important;}
  #specializationPanel .spec-card .spec-card-actions{grid-template-columns:minmax(0,1fr)!important;}
}


/* ===== SOURCE: css/184-v5540-specialization-card-state-system.css ===== */

/* v5.5.40 · Specialization cards
   Archetype = neutral silver identity.
   Locked = dark/blurred, focused = subtle silver selection.
   Unlocked = full-colour silver-ready state.
   Equipped specialization = gold light + portrait zoom, never card lift/height growth. */

#specializationCards{
  --spec-ui-silver:205,216,227;
  --spec-ui-gold:216,184,95;
}

/* ---------- Geometry: cards always stay aligned ---------- */
#specializationCards .specialization-card,
#specializationCards .specialization-card:hover,
#specializationCards .specialization-card.is-focused,
#specializationCards .specialization-card.state-3,
#specializationCards .specialization-card.state-3:hover,
#specializationCards .specialization-card.state-3.dock-hover{
  transform:none!important;
}

#specializationCards .specialization-card{
  transition:
    border-color .22s ease,
    box-shadow .26s ease,
    background .26s ease,
    opacity .2s ease,
    filter .2s ease!important;
}

/* Old equip choreography changed card/image-area heights. Disable it completely. */
#specializationCards .specialization-card.just-equipped{
  animation:none!important;
}

@media(min-width:1281px){
  #specializationCards .specialization-card,
  #specializationCards .specialization-card.base-card,
  #specializationCards .specialization-card.state-3{
    height:var(--spec-normal-height,426px)!important;
    min-height:0!important;
  }
  #specializationCards .spec-player-image,
  #specializationCards .spec-base-visual,
  #specializationCards .specialization-card.state-3 .spec-player-image,
  #specializationCards .specialization-card.state-3 .spec-base-visual{
    height:var(--spec-visual-normal,108px)!important;
    flex:0 0 var(--spec-visual-normal,108px)!important;
  }
}

/* ---------- LOCKED specialty ---------- */
#specializationCards .specialization-card.spec-card.state-1{
  opacity:1!important;
  border-color:rgba(255,255,255,.045)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.008),transparent 30%),
    rgba(8,13,18,.97)!important;
  box-shadow:
    0 12px 28px rgba(0,0,0,.22),
    inset 0 0 0 1px rgba(255,255,255,.008)!important;
}

#specializationCards .specialization-card.spec-card.state-1 .spec-player-image{
  background:#091016!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-player-image img{
  filter:grayscale(.98) saturate(.16) brightness(.44) contrast(.94) blur(1.15px)!important;
  transform:scale(1.025)!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-player-image>span{
  color:#56616b!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-card-title h3{
  color:#78838d!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-card-title>span{
  color:#4d5862!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-requirements,
#specializationCards .specialization-card.spec-card.state-1 .spec-reward-row{
  opacity:.64!important;
}
#specializationCards .specialization-card.spec-card.state-1 .spec-card-status{
  color:#68737e!important;
  border-color:rgba(255,255,255,.065)!important;
  background:rgba(7,11,15,.88)!important;
  box-shadow:none!important;
}

/* Focus is now silver/white only — copper is fully removed. */
#specializationCards .specialization-card.spec-card.state-1.is-focused{
  border-color:rgba(var(--spec-ui-silver),.27)!important;
  background:
    linear-gradient(180deg,rgba(var(--spec-ui-silver),.022),transparent 30%),
    rgba(9,14,19,.975)!important;
  box-shadow:
    0 13px 30px rgba(0,0,0,.23),
    0 0 0 1px rgba(var(--spec-ui-silver),.075),
    0 0 18px rgba(var(--spec-ui-silver),.028)!important;
}
#specializationCards .specialization-card.spec-card.state-1.is-focused .spec-player-image img{
  filter:grayscale(.94) saturate(.22) brightness(.50) contrast(.96) blur(.85px)!important;
}
#specializationCards .specialization-card.spec-card.state-1.is-focused .spec-card-title h3{
  color:#929da7!important;
}
#specializationCards .specialization-card.spec-card.state-1.is-focused .spec-card-status{
  color:#929da7!important;
  border-color:rgba(var(--spec-ui-silver),.16)!important;
}

/* ---------- UNLOCKED specialty ---------- */
#specializationCards .specialization-card.spec-card.state-2{
  opacity:1!important;
  border-color:rgba(var(--spec-ui-silver),.25)!important;
  background:
    radial-gradient(ellipse 80% 28% at 50% -4%,rgba(var(--spec-ui-silver),.052),transparent 72%),
    linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.010) 44%,transparent 72%),
    rgba(12,18,24,.965)!important;
  box-shadow:
    0 14px 32px rgba(0,0,0,.20),
    inset 0 0 0 1px rgba(225,233,240,.035)!important;
}
#specializationCards .specialization-card.spec-card.state-2 .spec-player-image img{
  filter:saturate(1) brightness(1) contrast(1)!important;
  transform:none!important;
}
#specializationCards .specialization-card.spec-card.state-2 .spec-player-image>span{
  color:#abb6c0!important;
}
#specializationCards .specialization-card.spec-card.state-2 .spec-card-title h3{
  color:#edf2f6!important;
}
#specializationCards .specialization-card.spec-card.state-2 .spec-card-title>span{
  color:#7c8894!important;
}
#specializationCards .specialization-card.spec-card.state-2 .spec-card-status{
  color:#c7d0d9!important;
  border-color:rgba(var(--spec-ui-silver),.22)!important;
  background:rgba(24,31,38,.86)!important;
  box-shadow:none!important;
}
#specializationCards .specialization-card.spec-card.state-2.is-focused{
  border-color:rgba(var(--spec-ui-silver),.48)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(var(--spec-ui-silver),.14),
    0 0 20px rgba(var(--spec-ui-silver),.045),
    inset 0 0 0 1px rgba(225,233,240,.045)!important;
}

/* ---------- EQUIPPED specialty: gold belongs here only ---------- */
#specializationCards .specialization-card.spec-card.state-3{
  z-index:3!important;
  border-color:rgba(var(--spec-ui-gold),.46)!important;
  background:
    radial-gradient(ellipse 76% 25% at 50% -2%,rgba(237,211,132,.10),transparent 72%),
    linear-gradient(180deg,rgba(var(--spec-ui-gold),.058),rgba(var(--spec-ui-gold),.020) 32%,transparent 56%),
    linear-gradient(145deg,rgba(255,255,255,.034),rgba(255,255,255,.008) 43%,transparent 70%),
    rgba(12,18,24,.965)!important;
  box-shadow:
    0 16px 36px rgba(0,0,0,.25),
    0 0 0 1px rgba(var(--spec-ui-gold),.105),
    0 0 27px rgba(var(--spec-ui-gold),.095),
    inset 0 0 24px rgba(var(--spec-ui-gold),.025)!important;
}
#specializationCards .specialization-card.spec-card.state-3 .spec-player-image img{
  filter:saturate(1.04) brightness(1.015) contrast(1.01)!important;
  transform:scale(1.065)!important;
  transform-origin:50% 43%!important;
  transition:transform .62s cubic-bezier(.18,.76,.22,1),filter .35s ease!important;
}
#specializationCards .specialization-card.spec-card.state-3 .spec-card-title h3{
  color:#ead58a!important;
}
#specializationCards .specialization-card.spec-card.state-3 .spec-card-status{
  color:#e1c872!important;
  border-color:rgba(var(--spec-ui-gold),.28)!important;
  background:rgba(38,32,18,.80)!important;
}
#specializationCards .specialization-card.spec-card.state-3 .spec-action-btn.is-active{
  color:#e6d58e!important;
  border-color:rgba(var(--spec-ui-gold),.31)!important;
  background:linear-gradient(180deg,rgba(var(--spec-ui-gold),.095),rgba(var(--spec-ui-gold),.038))!important;
}

/* Keep the existing decorative pseudo layers gold only on equipped specialties. */
#specializationCards .specialization-card.spec-card.state-3::before{
  background:
    radial-gradient(ellipse 66% 21% at 50% 0%,rgba(255,229,147,.14),transparent 72%),
    linear-gradient(180deg,transparent 0,transparent 70%,rgba(var(--spec-ui-gold),.050) 100%)!important;
}
#specializationCards .specialization-card.spec-card.state-3::after{
  background:linear-gradient(90deg,transparent,rgba(var(--spec-ui-gold),.42),transparent)!important;
}

/* ---------- DEFAULT ARCHETYPE CARD: silver, never gold ---------- */
#specializationCards .specialization-card.base-card,
#specializationCards .specialization-card.base-card.state-2,
#specializationCards .specialization-card.base-card.state-3{
  border-color:rgba(var(--spec-ui-silver),.28)!important;
  background:
    radial-gradient(ellipse 78% 26% at 50% -3%,rgba(var(--spec-ui-silver),.070),transparent 72%),
    linear-gradient(145deg,rgba(255,255,255,.037),rgba(255,255,255,.010) 44%,transparent 72%),
    rgba(12,18,24,.965)!important;
  box-shadow:
    0 14px 32px rgba(0,0,0,.21),
    0 0 0 1px rgba(var(--spec-ui-silver),.055),
    inset 0 0 18px rgba(var(--spec-ui-silver),.018)!important;
}
#specializationCards .specialization-card.base-card.state-3{
  border-color:rgba(var(--spec-ui-silver),.43)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(var(--spec-ui-silver),.11),
    0 0 22px rgba(var(--spec-ui-silver),.055),
    inset 0 0 21px rgba(var(--spec-ui-silver),.022)!important;
}
#specializationCards .specialization-card.base-card.is-focused{
  border-color:rgba(var(--spec-ui-silver),.50)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(var(--spec-ui-silver),.14),
    0 0 21px rgba(var(--spec-ui-silver),.05)!important;
}
#specializationCards .specialization-card.base-card .spec-base-visual{
  background:radial-gradient(circle at 50% 48%,rgba(var(--spec-ui-silver),.085),transparent 43%)!important;
}
#specializationCards .specialization-card.base-card .spec-base-visual img{
  transform:none!important;
  filter:drop-shadow(0 9px 20px rgba(0,0,0,.28)) drop-shadow(0 0 10px rgba(var(--spec-ui-silver),.055))!important;
}
#specializationCards .specialization-card.base-card .spec-card-title h3,
#specializationCards .specialization-card.base-card.state-3 .spec-card-title h3{
  color:#edf2f6!important;
}
#specializationCards .specialization-card.base-card .spec-card-status,
#specializationCards .specialization-card.base-card.state-3 .spec-card-status{
  color:#ccd5de!important;
  border-color:rgba(var(--spec-ui-silver),.25)!important;
  background:rgba(24,31,38,.86)!important;
}
#specializationCards .specialization-card.base-card .spec-action-btn.is-active,
#specializationCards .specialization-card.base-card.state-3 .spec-action-btn.is-active{
  color:#d9e0e7!important;
  border-color:rgba(var(--spec-ui-silver),.28)!important;
  background:linear-gradient(180deg,rgba(var(--spec-ui-silver),.070),rgba(255,255,255,.018))!important;
}
#specializationCards .specialization-card.base-card.state-3::before{
  background:
    radial-gradient(ellipse 66% 21% at 50% 0%,rgba(232,240,247,.105),transparent 72%),
    linear-gradient(180deg,transparent 0,transparent 74%,rgba(var(--spec-ui-silver),.032) 100%)!important;
}
#specializationCards .specialization-card.base-card.state-3::after{
  background:linear-gradient(90deg,transparent,rgba(var(--spec-ui-silver),.30),transparent)!important;
}

/* Hover is deliberately quiet; state, not motion, carries hierarchy. */
#specializationCards .specialization-card:hover{
  filter:none!important;
}
#specializationCards .specialization-card.spec-card.state-1:hover .spec-player-image img{
  transform:scale(1.025)!important;
}
#specializationCards .specialization-card.spec-card.state-2:hover .spec-player-image img{
  transform:none!important;
}
#specializationCards .specialization-card.spec-card.state-3:hover .spec-player-image img{
  transform:scale(1.065)!important;
}

@media(max-width:1280px){
  #specializationCards .specialization-card.spec-card.state-3 .spec-player-image img{
    transform:scale(1.045)!important;
  }
}


/* ===== SOURCE: css/185-v5541-specialization-ceremony-layout.css ===== */

/* v5.5.41 · Specialization ceremony + compact stage.
   Remove the obsolete "grow-up" reserve space, align the four cards directly
   under the shared toolbar, and make unlock/equip transitions deliberately slow. */

@media(min-width:1281px){
  /* v4.1.8 reserved ~58px above the cards for the old rising-card animation.
     Cards no longer change height, so reclaim the entire stage. */
  #specializationPanel #specializationCards.specialization-cards{
    box-sizing:border-box!important;
    height:auto!important;
    min-height:0!important;
    align-items:stretch!important;
    padding:0!important;
    margin:0!important;
    gap:17px!important;
    overflow:visible!important;
  }

  /* Keep the toolbar-to-card rhythm tight and deterministic. */
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar{
    margin-bottom:8px!important;
  }

  /* Final equipped portrait is intentionally more obvious than v5.5.40. */
  #specializationCards .specialization-card.spec-card.state-3 .spec-player-image img,
  #specializationCards .specialization-card.spec-card.state-3:hover .spec-player-image img{
    transform:scale(1.14)!important;
    transform-origin:50% 42%!important;
    transition:
      transform 2.15s cubic-bezier(.22,.68,.24,1),
      filter 1.8s cubic-bezier(.22,.68,.24,1)!important;
  }

  /* Gold does not snap on: it blooms slowly after equip begins. */
  #specializationCards .specialization-card.spec-card.state-3{
    transition:
      border-color 1.65s cubic-bezier(.22,.68,.24,1),
      box-shadow 1.85s cubic-bezier(.22,.68,.24,1),
      background 1.85s cubic-bezier(.22,.68,.24,1),
      opacity .45s ease,
      filter 1.35s ease!important;
  }
  #specializationCards .specialization-card.spec-card.state-3 .spec-card-title h3,
  #specializationCards .specialization-card.spec-card.state-3 .spec-card-status,
  #specializationCards .specialization-card.spec-card.state-3 .spec-action-btn.is-active{
    transition:
      color 1.5s ease,
      border-color 1.5s ease,
      background 1.5s ease,
      box-shadow 1.5s ease!important;
  }
  #specializationCards .specialization-card.spec-card.state-3::before{
    opacity:1;
    transition:opacity 1.75s cubic-bezier(.22,.68,.24,1)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3::after{
    opacity:1;
    transform:scaleX(1);
    transform-origin:center center;
    transition:
      opacity 1.55s ease,
      transform 1.85s cubic-bezier(.22,.68,.24,1)!important;
  }

  /* Neutral first phase. JS removes this after the equip gesture has started,
     then the rules above ease into the full gold state. */
  #specializationCards .specialization-card.spec-card.state-3.gold-pending{
    border-color:rgba(var(--spec-ui-silver),.25)!important;
    background:
      radial-gradient(ellipse 80% 28% at 50% -4%,rgba(var(--spec-ui-silver),.052),transparent 72%),
      linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.010) 44%,transparent 72%),
      rgba(12,18,24,.965)!important;
    box-shadow:
      0 14px 32px rgba(0,0,0,.20),
      inset 0 0 0 1px rgba(225,233,240,.035)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-pending .spec-card-title h3{
    color:#edf2f6!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-pending .spec-card-status{
    color:#c7d0d9!important;
    border-color:rgba(var(--spec-ui-silver),.22)!important;
    background:rgba(24,31,38,.86)!important;
    box-shadow:none!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-pending .spec-action-btn.is-active{
    color:#c7d0d9!important;
    border-color:rgba(var(--spec-ui-silver),.18)!important;
    background:rgba(255,255,255,.025)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-pending::before{
    opacity:0!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-pending::after{
    opacity:0!important;
    transform:scaleX(.20)!important;
  }
}

/* Remove the old side inset on the 2-column/tablet layout as well so its
   content rail still follows the toolbar edge. */
@media(max-width:1280px) and (min-width:761px){
  #specializationPanel #specializationCards.specialization-cards{
    padding-left:0!important;
    padding-right:0!important;
  }
  #specializationCards .specialization-card.spec-card.state-3 .spec-player-image img,
  #specializationCards .specialization-card.spec-card.state-3:hover .spec-player-image img{
    transform:scale(1.09)!important;
    transform-origin:50% 42%!important;
    transition:transform 1.9s cubic-bezier(.22,.68,.24,1),filter 1.6s ease!important;
  }
}


/* ===== SOURCE: css/stable-bundle-017.css ===== */
/* === SOURCE: css/186-v5542-specialization-gold-bloom.css === */

/* v5.5.42 · Make equipped specialization gold richer and fuller without
   changing the slower ceremony timing introduced in v5.5.41. */
@media(min-width:761px){
  #specializationCards .specialization-card.spec-card.state-3{
    border-color:rgba(222,188,92,.64)!important;
    background:
      radial-gradient(ellipse 84% 28% at 50% -2%,rgba(247,221,136,.16),transparent 70%),
      linear-gradient(180deg,rgba(222,188,92,.095),rgba(222,188,92,.040) 30%,rgba(222,188,92,.018) 54%,transparent 74%),
      linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.010) 44%,transparent 72%),
      rgba(12,18,24,.965)!important;
    box-shadow:
      0 18px 38px rgba(0,0,0,.24),
      0 0 0 1px rgba(222,188,92,.17),
      0 -10px 34px rgba(239,211,116,.19),
      0 0 34px rgba(222,188,92,.17),
      0 0 58px rgba(222,188,92,.085),
      inset 0 0 28px rgba(222,188,92,.040)!important;
  }

  #specializationCards .specialization-card.spec-card.state-3::before{
    background:
      radial-gradient(ellipse 70% 24% at 50% 0%,rgba(255,232,154,.27),transparent 70%),
      linear-gradient(180deg,
        rgba(255,240,190,.022) 0,
        transparent 24%,
        transparent calc(100% - 92px),
        rgba(222,188,92,.028) calc(100% - 74px),
        rgba(222,188,92,.080) calc(100% - 42px),
        rgba(222,188,92,.128) 100%)!important;
  }

  #specializationCards .specialization-card.spec-card.state-3::after{
    background:linear-gradient(90deg,transparent,rgba(232,199,101,.62),transparent)!important;
    opacity:1!important;
  }

  #specializationCards .specialization-card.spec-card.state-3 .spec-card-title h3{
    color:#f2df97!important;
    text-shadow:0 0 14px rgba(232,199,101,.12)!important;
  }

  #specializationCards .specialization-card.spec-card.state-3 .spec-card-status{
    color:#edd37a!important;
    border-color:rgba(222,188,92,.40)!important;
    background:linear-gradient(180deg,rgba(58,46,19,.84),rgba(34,28,13,.74))!important;
    box-shadow:inset 0 0 0 1px rgba(255,230,150,.032),0 0 15px rgba(222,188,92,.08)!important;
  }

  #specializationCards .specialization-card.spec-card.state-3 .spec-action-btn.is-active,
  #specializationCards .specialization-card.spec-card.state-3 .spec-equip-btn.equipped{
    color:#f0dd96!important;
    border-color:rgba(222,188,92,.42)!important;
    background:linear-gradient(180deg,rgba(222,188,92,.14),rgba(222,188,92,.060))!important;
    box-shadow:inset 0 0 0 1px rgba(255,231,156,.028),0 0 14px rgba(222,188,92,.07)!important;
  }
}

/* === SOURCE: css/187-v5543-specialization-sequenced-glow.css === */

/* v5.5.43 · Fix unlock flash, sequence gold edge -> inner light,
   and give the equipped archetype card a warm identity state. */

@media(min-width:761px){
  /* Stage 1 for equipped specialties: edge and aura first, interior still restrained. */
  #specializationCards .specialization-card.spec-card.state-3.gold-edge-phase{
    border-color:rgba(222,188,92,.58)!important;
    background:
      radial-gradient(ellipse 82% 26% at 50% -2%,rgba(244,219,138,.11),transparent 72%),
      linear-gradient(180deg,rgba(222,188,92,.045),rgba(222,188,92,.014) 28%,transparent 58%),
      linear-gradient(145deg,rgba(255,255,255,.036),rgba(255,255,255,.010) 44%,transparent 72%),
      rgba(12,18,24,.965)!important;
    box-shadow:
      0 18px 38px rgba(0,0,0,.24),
      0 0 0 1px rgba(222,188,92,.15),
      0 -8px 26px rgba(239,211,116,.16),
      0 0 28px rgba(222,188,92,.16),
      0 0 48px rgba(222,188,92,.075)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-edge-phase::before{
    opacity:.18!important;
    background:
      radial-gradient(ellipse 68% 23% at 50% 0%,rgba(255,232,154,.18),transparent 70%),
      linear-gradient(180deg,
        transparent 0,
        transparent calc(100% - 86px),
        rgba(222,188,92,.010) calc(100% - 72px),
        rgba(222,188,92,.032) calc(100% - 42px),
        rgba(222,188,92,.056) 100%)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-edge-phase::after{
    opacity:1!important;
    background:linear-gradient(90deg,transparent,rgba(232,199,101,.56),transparent)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-edge-phase .spec-card-title h3{
    color:#edd88e!important;
    text-shadow:0 0 10px rgba(232,199,101,.08)!important;
  }
  #specializationCards .specialization-card.spec-card.state-3.gold-edge-phase .spec-card-status{
    color:#e4cc79!important;
    border-color:rgba(222,188,92,.32)!important;
    background:linear-gradient(180deg,rgba(46,38,17,.74),rgba(25,21,10,.66))!important;
    box-shadow:none!important;
  }

  /* Equipped archetype: warmer than the silver idle state, but still clearly milder
     than a fully equipped specialty. */
  #specializationCards .specialization-card.base-card.state-3{
    border-color:rgba(220,190,108,.48)!important;
    background:
      radial-gradient(ellipse 78% 26% at 50% -3%,rgba(233,210,136,.095),transparent 72%),
      linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.010) 44%,transparent 72%),
      rgba(12,18,24,.965)!important;
    box-shadow:
      0 15px 34px rgba(0,0,0,.22),
      0 0 0 1px rgba(220,190,108,.12),
      0 0 24px rgba(220,190,108,.075),
      inset 0 0 22px rgba(220,190,108,.020)!important;
    transition:
      border-color 1.15s cubic-bezier(.22,.68,.24,1),
      box-shadow 1.35s cubic-bezier(.22,.68,.24,1),
      background 1.35s cubic-bezier(.22,.68,.24,1)!important;
  }
  #specializationCards .specialization-card.base-card.state-3 .spec-base-visual{
    background:radial-gradient(circle at 50% 48%,rgba(228,202,124,.14),transparent 44%)!important;
  }
  #specializationCards .specialization-card.base-card.state-3 .spec-base-visual img{
    filter:
      sepia(1)
      saturate(2.25)
      hue-rotate(347deg)
      brightness(1.02)
      drop-shadow(0 10px 20px rgba(0,0,0,.28))
      drop-shadow(0 0 13px rgba(224,193,108,.16))!important;
    transition:filter 1.35s cubic-bezier(.22,.68,.24,1)!important;
  }
  #specializationCards .specialization-card.base-card.state-3 .spec-card-title h3{
    color:#edd88d!important;
    text-shadow:0 0 12px rgba(232,199,101,.10)!important;
    transition:color 1.15s ease, text-shadow 1.15s ease!important;
  }
  #specializationCards .specialization-card.base-card.state-3 .spec-card-status{
    color:#e6ce7a!important;
    border-color:rgba(220,190,108,.32)!important;
    background:linear-gradient(180deg,rgba(50,41,18,.72),rgba(28,23,12,.66))!important;
    box-shadow:0 0 12px rgba(220,190,108,.06)!important;
    transition:color 1.15s ease,border-color 1.15s ease,background 1.15s ease,box-shadow 1.15s ease!important;
  }
  #specializationCards .specialization-card.base-card.state-3 .spec-action-btn.is-active,
  #specializationCards .specialization-card.base-card.state-3 .spec-equip-btn.equipped{
    color:#ecd789!important;
    border-color:rgba(220,190,108,.34)!important;
    background:linear-gradient(180deg,rgba(220,190,108,.13),rgba(220,190,108,.050))!important;
    box-shadow:inset 0 0 0 1px rgba(255,229,148,.028),0 0 12px rgba(220,190,108,.055)!important;
    transition:color 1.15s ease,border-color 1.15s ease,background 1.15s ease,box-shadow 1.15s ease!important;
  }
  #specializationCards .specialization-card.base-card.state-3::before{
    background:
      radial-gradient(ellipse 66% 21% at 50% 0%,rgba(248,229,163,.18),transparent 72%),
      linear-gradient(180deg,transparent 0,transparent 74%,rgba(220,190,108,.048) 100%)!important;
  }
  #specializationCards .specialization-card.base-card.state-3::after{
    background:linear-gradient(90deg,transparent,rgba(220,190,108,.42),transparent)!important;
  }
}


/* ===== SOURCE: css/188-v5544-specialization-compact-cards.css ===== */

/* v5.5.44 · Four equal, narrower specialization cards.
   Desktop rail targets ~1120px total: 4 equal cards + compact gaps.
   Perk descriptions become click-to-expand accordions. */

@media(min-width:1281px){
  #specializationPanel #specializationCards.specialization-cards{
    width:min(1120px,100%)!important;
    max-width:1120px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    margin:0!important;
    padding:0!important;
    align-self:flex-start!important;
  }

  #specializationCards .specialization-card{
    min-width:0!important;
  }

  /* Slightly tighten horizontal internals so a ~270px card remains calm. */
  #specializationCards .specialization-card .spec-info-block,
  #specializationCards .specialization-card .spec-requirements{
    margin-left:12px!important;
    margin-right:12px!important;
  }
  #specializationCards .specialization-card .spec-card-actions{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* ---------- Perk accordion ---------- */
#specializationCards .base-perk-block .spec-perk-row.rich,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich{
  padding:0!important;
  overflow:hidden!important;
  transition:
    border-color .22s ease,
    background .22s ease,
    box-shadow .22s ease!important;
}

#specializationCards .base-perk-block .spec-perk-main,
#specializationCards .spec-extra-perk-block .spec-perk-main{
  gap:0!important;
  width:100%!important;
}

#specializationCards .base-perk-block .spec-perk-top,
#specializationCards .spec-extra-perk-block .spec-perk-top{
  position:relative!important;
  min-height:36px!important;
  padding:0 28px 0 10px!important;
  cursor:pointer!important;
  user-select:none!important;
  outline:none!important;
}

#specializationCards .base-perk-block .spec-perk-top::after,
#specializationCards .spec-extra-perk-block .spec-perk-top::after{
  content:"›";
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%) rotate(0deg);
  color:#7e8994;
  font-size:16px;
  font-weight:500;
  line-height:1;
  transition:transform .26s ease,color .22s ease;
}

#specializationCards .base-perk-block .spec-perk-row.rich.is-expanded .spec-perk-top::after,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded .spec-perk-top::after{
  transform:translateY(-50%) rotate(90deg);
  color:#c7d0d8;
}

#specializationCards .base-perk-block .spec-perk-top:hover,
#specializationCards .spec-extra-perk-block .spec-perk-top:hover{
  background:rgba(255,255,255,.018);
}

#specializationCards .base-perk-block .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-reward-desc{
  display:block!important;
  max-height:0!important;
  margin:0 10px!important;
  padding:0!important;
  overflow:hidden!important;
  opacity:0!important;
  color:#85919b!important;
  font-size:9px!important;
  line-height:1.48!important;
  transform:translateY(-3px);
  transition:
    max-height .34s cubic-bezier(.22,.68,.24,1),
    opacity .26s ease,
    transform .34s cubic-bezier(.22,.68,.24,1),
    padding .34s cubic-bezier(.22,.68,.24,1)!important;
}

#specializationCards .base-perk-block .spec-perk-row.rich.is-expanded .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded .spec-reward-desc{
  max-height:96px!important;
  padding:0 0 9px!important;
  opacity:1!important;
  transform:translateY(0);
}

#specializationCards .base-perk-block .spec-perk-row.rich.is-expanded,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded{
  border-color:rgba(205,216,227,.11)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.030),rgba(255,255,255,.015))!important;
}

/* Keep unlocked base-perk identity when expanded. */
#specializationCards .base-perk-block .spec-perk-row.rich.is-unlocked.is-expanded{
  border-color:rgba(216,184,95,.20)!important;
  background:linear-gradient(180deg,rgba(216,184,95,.068),rgba(255,255,255,.018))!important;
}

@media(max-width:760px){
  #specializationCards .base-perk-block .spec-perk-top,
  #specializationCards .spec-extra-perk-block .spec-perk-top{
    min-height:38px!important;
  }
}


/* ===== SOURCE: css/189-v5545-specialization-typography-badges.css ===== */

/* v5.5.45 · Collapse specialization cards to three typography sizes:
   13.5px primary, 11.5px content, 9px meta/support. */
#specializationCards{
  --spec-type-primary:13.5px;
  --spec-type-content:11.5px;
  --spec-type-meta:9px;
}

/* Primary */
#specializationCards .spec-card-title h3{
  font-size:var(--spec-type-primary)!important;
  line-height:1.15!important;
  font-weight:780!important;
  letter-spacing:-.012em!important;
}

/* Content */
#specializationCards .spec-info-block strong,
#specializationCards .spec-info-block .signature-style,
#specializationCards .spec-playstyle-block .spec-main-emphasis,
#specializationCards .spec-extra-perk-block .spec-main-emphasis,
#specializationCards .base-perk-block .spec-perk-top span,
#specializationCards .spec-extra-perk-block .spec-perk-top span,
#specializationCards .spec-requirement>span,
#specializationCards .spec-requirement strong,
#specializationCards .spec-action-btn{
  font-size:var(--spec-type-content)!important;
  line-height:1.25!important;
}

/* Meta/support */
#specializationCards .spec-card-title>span,
#specializationCards .spec-card-status,
#specializationCards .spec-base-visual>span,
#specializationCards .spec-info-block>label,
#specializationCards .spec-requirements>label,
#specializationCards .spec-reward-row label,
#specializationCards .spec-info-block small,
#specializationCards .spec-inline-note,
#specializationCards .base-perk-block .spec-perk-top b,
#specializationCards .spec-extra-perk-block .spec-perk-top b,
#specializationCards .spec-perk-desc,
#specializationCards .spec-reward-desc,
#specializationCards .spec-requirement strong em,
#specializationCards .spec-requirement .ok,
#specializationCards .spec-requirement.met::after{
  font-size:var(--spec-type-meta)!important;
  line-height:1.38!important;
}

/* Let weight/colour carry hierarchy instead of extra font sizes. */
#specializationCards .spec-card-title>span{
  font-weight:720!important;
  letter-spacing:.035em!important;
}
#specializationCards .spec-info-block>label,
#specializationCards .spec-requirements>label{
  font-weight:760!important;
  letter-spacing:.045em!important;
}
#specializationCards .spec-requirement strong{
  font-weight:800!important;
}
#specializationCards .spec-action-btn{
  font-weight:720!important;
  letter-spacing:.015em!important;
}

/* PlayStyle+ with corresponding gold shield/icon. */
#specializationCards .spec-main-emphasis.has-spec-ps-badge,
#specializationCards .signature-style.has-spec-ps-badge{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
}
#specializationCards .spec-ps-badge{
  position:relative;
  flex:0 0 25px;
  width:25px;
  height:28px;
  display:grid;
  place-items:center;
  filter:drop-shadow(0 3px 7px rgba(0,0,0,.28)) drop-shadow(0 0 8px rgba(219,185,83,.10));
}
#specializationCards .spec-ps-badge::before{
  content:"";
  position:absolute;
  inset:0;
  clip-path:polygon(50% 0,91% 18%,84% 72%,50% 100%,16% 72%,9% 18%);
  background:
    linear-gradient(145deg,rgba(246,222,145,.98),rgba(205,164,61,.92) 48%,rgba(122,88,23,.94));
  box-shadow:inset 0 0 0 1px rgba(255,242,190,.34);
}
#specializationCards .spec-ps-badge::after{
  content:"";
  position:absolute;
  inset:2px;
  clip-path:polygon(50% 0,91% 18%,84% 72%,50% 100%,16% 72%,9% 18%);
  background:linear-gradient(145deg,rgba(30,27,18,.94),rgba(16,18,20,.98));
}
#specializationCards .spec-ps-badge img{
  position:relative;
  z-index:2;
  width:16px;
  height:16px;
  object-fit:contain;
  filter:brightness(1.15) saturate(.88);
}
#specializationCards .spec-ps-badge-fallback{
  position:relative;
  z-index:2;
  color:#ead58b;
  font-size:8px;
  line-height:1;
  font-weight:900;
}
#specializationCards .spec-playstyle-block .spec-main-emphasis,
#specializationCards .base-signature-block .signature-style.plus{
  color:#dfc568!important;
}

/* Keep narrow cards comfortable after type normalization. */
@media(min-width:1281px){
  #specializationCards .spec-card-title{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  #specializationCards .spec-requirement{
    min-height:25px!important;
  }
}


/* ===== SOURCE: css/190-v5546-specialization-card-fit-badge-fix.css ===== */

/* v5.5.46 · 285px equal cards, expandable outer card height, and the exact
   current PlayStyle+ gold badge silhouette used elsewhere in the site. */

@media(min-width:1281px){
  /* 4 x 285 + 3 x 14 = 1182px */
  #specializationPanel #specializationCards.specialization-cards{
    width:min(1182px,100%)!important;
    max-width:1182px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:start!important;
  }
  #specializationCards .specialization-card{
    width:100%!important;
    min-width:0!important;
  }

  /* Default cards remain perfectly aligned at 426px. Only a card whose perk
     accordion is open is allowed to grow downward with its content. */
  #specializationCards .specialization-card.has-expanded-perk{
    height:auto!important;
    min-height:426px!important;
    overflow:hidden!important;
  }
}

/* Allow longer perk copy to remain fully visible inside the growing card. */
#specializationCards .base-perk-block .spec-perk-row.rich.is-expanded .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-row.rich.is-expanded .spec-reward-desc{
  max-height:220px!important;
}

/* ---------- Exact site PlayStyle+ badge geometry ----------
   Reuse the same --fc27-ps-gold asset as the PlayStyle page instead of the
   hand-drawn shield from v5.5.45. */
#specializationCards .spec-ps-badge{
  --badge-h:27px;
  --badge-w:32.4px;
  --icon-box:16.2px;
  --gold-lift:1.6px;
  position:relative!important;
  display:block!important;
  flex:0 0 36px!important;
  width:36px!important;
  height:32px!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:none!important;
  overflow:visible!important;
}
#specializationCards .spec-ps-badge::before{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  left:50%!important;
  top:50%!important;
  width:var(--badge-w)!important;
  height:var(--badge-h)!important;
  transform:translate(-50%,-50%)!important;
  background:var(--fc27-ps-gold) center/100% 100% no-repeat!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.20))!important;
  pointer-events:none!important;
}
#specializationCards .spec-ps-badge::after{
  display:none!important;
  content:none!important;
}
#specializationCards .spec-ps-badge img{
  position:absolute!important;
  z-index:2!important;
  display:block!important;
  left:50%!important;
  top:calc(50% - var(--gold-lift))!important;
  width:var(--icon-box)!important;
  height:var(--icon-box)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  transform:translate(-50%,-50%)!important;
}
#specializationCards .spec-ps-badge-fallback{
  position:absolute!important;
  z-index:2!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  color:#111820!important;
  font-size:7px!important;
  font-weight:900!important;
}


/* ===== SOURCE: css/191-v5547-specialization-card-spacing-accordion-motion.css ===== */

/* v5.5.47 · Give the bottom action more breathing room and animate the
   outer card height together with the perk accordion. */

@media(min-width:1281px){
  #specializationCards{
    --spec-compact-card-height:442px;
  }

  #specializationCards .specialization-card,
  #specializationCards .specialization-card.base-card,
  #specializationCards .specialization-card.state-3{
    height:var(--spec-compact-card-height)!important;
    min-height:var(--spec-compact-card-height)!important;
  }

  /* Expanded cards are driven by explicit pixel height during the animation,
     then handed back to auto after opening. */
  #specializationCards .specialization-card.has-expanded-perk{
    min-height:var(--spec-compact-card-height)!important;
    overflow:hidden!important;
  }

  #specializationCards .specialization-card .spec-card-actions,
  #specializationCards .specialization-card .spec-card-actions.single{
    margin-bottom:16px!important;
  }
}

/* Slightly slower accordion content motion so it visually matches the shell. */
#specializationCards .base-perk-block .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-perk-desc,
#specializationCards .spec-extra-perk-block .spec-reward-desc{
  transition:
    max-height .44s cubic-bezier(.22,.68,.24,1),
    opacity .30s ease,
    transform .44s cubic-bezier(.22,.68,.24,1),
    padding .44s cubic-bezier(.22,.68,.24,1)!important;
}

#specializationCards .base-perk-block .spec-perk-top::after,
#specializationCards .spec-extra-perk-block .spec-perk-top::after{
  transition:transform .34s cubic-bezier(.22,.68,.24,1),color .24s ease!important;
}


/* ===== SOURCE: css/192-v5548-diy-model-page.css ===== */

/* v5.5.48 · DIY Model prototype */
@media(min-width:761px){
  #diyPanel{
    padding-top:0!important;
    min-height:0!important;
  }
  #diyPanel .diy-page{
    min-height:0;
    display:flex;
    flex-direction:column;
  }

  #diyPanel .diy-workspace-toolbar.workspace-toolbar{
    position:relative!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    border-color:rgba(218,228,238,.145)!important;
    background:
      linear-gradient(180deg,rgba(229,236,243,.092) 0%,rgba(198,209,219,.064) 42%,rgba(157,171,184,.044) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.090),
      inset 0 -1px 0 rgba(58,72,85,.18),
      0 4px 14px rgba(0,0,0,.12)!important;
  }
  #diyPanel .diy-workspace-toolbar.workspace-toolbar::before{
    content:"";
    position:absolute;
    left:0;top:9px;bottom:9px;width:2px;
    border-radius:0 2px 2px 0;
    background:linear-gradient(180deg,rgba(235,242,248,.16),rgba(235,242,248,.72),rgba(235,242,248,.16));
    box-shadow:0 0 7px rgba(221,231,240,.10);
    pointer-events:none;
  }
  #diyPanel .diy-toolbar-tools{
    display:flex;align-items:center;gap:6px;flex:0 0 auto;
  }
  #diyPanel .diy-toolbar-stats{
    display:flex;align-items:center;gap:7px;min-width:0;
  }
  #diyPanel .diy-toolbar-metric{
    display:flex;align-items:center;gap:5px;white-space:nowrap;
  }
  #diyPanel .diy-toolbar-metric>span{
    font-size:11.5px;color:#75818f;font-weight:650;
  }
  #diyPanel .diy-toolbar-metric>strong{
    font-size:14px;color:#e3e8ef;font-weight:800;font-variant-numeric:tabular-nums;
  }
  #diyPanel .diy-toolbar-divider{
    width:1px;height:18px;background:rgba(225,233,241,.10);flex:0 0 1px;
  }
  #diyPanel .diy-toolbar-help{
    min-width:0;
    color:#74808b;
    font-size:10.5px;
    font-weight:620;
    line-height:1.2;
    white-space:nowrap;
  }

  #diyPanel .diy-workspace{
    min-height:0;
    height:calc(var(--advanced-viewport-height, 620px) - 55px);
    display:grid;
    grid-template-columns:minmax(0,1.72fr) minmax(340px,.88fr);
    gap:10px;
  }

  #diyPanel .diy-attribute-panel,
  #diyPanel .diy-badge-panel{
    min-height:0;
    border:1px solid rgba(255,255,255,.065);
    border-radius:15px;
    background:linear-gradient(180deg,rgba(12,18,24,.82),rgba(8,13,18,.90));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
    overflow:hidden;
  }
  #diyPanel .diy-attribute-panel{
    display:flex;flex-direction:column;
  }
  #diyPanel .diy-badge-panel{
    display:flex;flex-direction:column;
  }
  #diyPanel .diy-section-head{
    min-height:48px;
    padding:10px 12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    border-bottom:1px solid rgba(255,255,255,.055);
    background:rgba(255,255,255,.012);
  }
  #diyPanel .diy-section-head>div{
    min-width:0;display:flex;align-items:baseline;gap:8px;
  }
  #diyPanel .diy-section-head strong{
    color:#e0e6ec;font-size:13.5px;font-weight:760;
  }
  #diyPanel .diy-section-head span,
  #diyPanel .diy-section-head small{
    color:#697681;font-size:9px;font-weight:620;
  }

  #diyPanel .diy-attribute-grid{
    min-height:0;
    flex:1 1 auto;
    overflow:auto;
    padding:10px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-content:start;
    gap:9px;
  }
  #diyPanel .diy-attr-group{
    min-width:0;
    border:1px solid rgba(255,255,255,.052);
    border-radius:12px;
    background:rgba(255,255,255,.013);
    overflow:hidden;
  }
  #diyPanel .diy-attr-group-head{
    height:31px;
    display:flex;align-items:center;justify-content:space-between;
    padding:0 9px;
    border-bottom:1px solid rgba(255,255,255,.045);
  }
  #diyPanel .diy-attr-group-head strong{
    color:#919da8;font-size:11.5px;font-weight:750;
  }
  #diyPanel .diy-attr-group-head span{
    color:#596570;font-size:9px;font-weight:700;
  }
  #diyPanel .diy-attr-row{
    position:relative;
    min-height:31px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px 18px;
    align-items:center;
    gap:5px;
    padding:3px 7px 3px 9px;
    border-bottom:1px solid rgba(255,255,255,.033);
    transition:background .16s ease,border-color .16s ease;
  }
  #diyPanel .diy-attr-row:last-child{border-bottom:0}
  #diyPanel .diy-attr-row.is-active{
    background:linear-gradient(90deg,rgba(215,181,90,.038),rgba(255,255,255,.010));
  }
  #diyPanel .diy-attr-row.is-badge-driven{
    box-shadow:inset 2px 0 0 rgba(205,216,227,.34);
  }
  #diyPanel .diy-attr-copy{
    min-width:0;display:flex;align-items:center;gap:5px;
  }
  #diyPanel .diy-attr-copy strong{
    min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    color:#aeb8c2;font-size:11.5px;font-weight:620;
  }
  #diyPanel .diy-attr-source{
    flex:0 0 auto;
    padding:2px 4px;
    border-radius:5px;
    color:#aab5c0;
    background:rgba(205,216,227,.065);
    border:1px solid rgba(205,216,227,.09);
    font-size:8px;font-weight:760;line-height:1;
  }
  #diyPanel .diy-attr-input{
    width:58px;height:25px;
    box-sizing:border-box;
    border:1px solid rgba(255,255,255,.07);
    border-radius:7px;
    background:#0a1118;
    color:#e6ebef;
    padding:0 6px;
    outline:none;
    text-align:center;
    font:780 11.5px/1 inherit;
    font-variant-numeric:tabular-nums;
  }
  #diyPanel .diy-attr-input::placeholder{color:#4d5964}
  #diyPanel .diy-attr-input:focus{
    border-color:rgba(216,184,95,.34);
    box-shadow:0 0 0 1px rgba(216,184,95,.08);
  }
  #diyPanel .diy-attr-clear{
    width:18px;height:18px;border:0;border-radius:5px;
    background:transparent;color:#66727d;
    display:grid;place-items:center;
    font:600 13px/1 inherit;
    cursor:pointer;
    opacity:0;
    transition:.15s ease;
  }
  #diyPanel .diy-attr-row.is-active .diy-attr-clear{opacity:1}
  #diyPanel .diy-attr-clear:hover{background:rgba(255,255,255,.045);color:#c7d0d7}

  #diyPanel .diy-badge-groups{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
    padding:9px 10px 10px;
  }
  #diyPanel .diy-badge-group + .diy-badge-group{margin-top:10px}
  #diyPanel .diy-badge-group-head{
    display:flex;align-items:center;justify-content:space-between;
    min-height:22px;margin-bottom:5px;
  }
  #diyPanel .diy-badge-group-head strong{
    color:#7e8a96;font-size:9px;font-weight:800;letter-spacing:.03em;
  }
  #diyPanel .diy-badge-group-head span{
    color:#53606b;font-size:8px;font-weight:700;
  }
  #diyPanel .diy-badge-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
  }
  #diyPanel .diy-badge-btn{
    position:relative;
    min-width:0;
    height:65px;
    border:1px solid rgba(255,255,255,.052);
    border-radius:10px;
    background:rgba(255,255,255,.012);
    color:#8b97a2;
    padding:5px 3px 4px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    cursor:pointer;
    transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
  }
  #diyPanel .diy-badge-btn:hover{
    border-color:rgba(205,216,227,.14);
    background:rgba(205,216,227,.025);
  }
  #diyPanel .diy-badge-btn.selected{
    border-color:rgba(222,229,236,.30);
    background:linear-gradient(180deg,rgba(220,228,235,.075),rgba(220,228,235,.025));
    box-shadow:0 0 0 1px rgba(220,228,235,.055),0 0 16px rgba(220,228,235,.035);
  }
  #diyPanel .diy-silver-badge{
    position:relative;
    width:35px;height:35px;
    display:grid;place-items:center;
    flex:0 0 35px;
  }
  #diyPanel .diy-silver-badge::before{
    content:"";
    position:absolute;
    width:31px;height:31px;
    left:50%;top:50%;
    transform:translate(-50%,-50%);
    background:var(--fc27-ps-silver) center/100% 100% no-repeat;
    filter:drop-shadow(0 2px 5px rgba(0,0,0,.25));
  }
  #diyPanel .diy-silver-badge img{
    position:relative;z-index:1;
    width:24px;height:24px;
    object-fit:contain;
    opacity:.80;
    filter:none;
  }
  #diyPanel .diy-badge-btn.selected .diy-silver-badge img{opacity:1}
  #diyPanel .diy-badge-btn.selected .diy-silver-badge::before{
    filter:drop-shadow(0 2px 5px rgba(0,0,0,.24)) drop-shadow(0 0 7px rgba(220,228,235,.14));
  }
  #diyPanel .diy-badge-fallback{
    position:relative;z-index:1;
    color:#1b2025;font-size:7px;font-weight:900;
  }
  #diyPanel .diy-badge-name{
    width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    font-size:9px;font-weight:680;color:#87939e;text-align:center;
  }
  #diyPanel .diy-badge-btn.selected .diy-badge-name{color:#d2d9df}

  #diyPanel .diy-calc-dock{
    flex:0 0 auto;
    padding:9px 10px 10px;
    border-top:1px solid rgba(255,255,255,.055);
    display:grid;
    grid-template-columns:minmax(0,1fr) 126px;
    gap:9px;
    align-items:center;
    background:rgba(7,12,17,.82);
  }
  #diyPanel .diy-requirement-summary{
    min-width:0;
    color:#697681;
    font-size:9px;
    line-height:1.45;
  }
  #diyPanel .diy-calculate-btn{
    height:42px;
    border:1px solid rgba(216,184,95,.30);
    border-radius:11px;
    background:linear-gradient(180deg,rgba(216,184,95,.13),rgba(216,184,95,.045));
    color:#e6d28b;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    cursor:pointer;
    transition:.18s ease;
  }
  #diyPanel .diy-calculate-btn span{font-size:11.5px;font-weight:820;line-height:1}
  #diyPanel .diy-calculate-btn small{margin-top:4px;font-size:8px;color:#9a8950;font-weight:650}
  #diyPanel .diy-calculate-btn:not(:disabled):hover{
    border-color:rgba(216,184,95,.48);
    background:linear-gradient(180deg,rgba(216,184,95,.18),rgba(216,184,95,.065));
    box-shadow:0 0 18px rgba(216,184,95,.065);
  }
  #diyPanel .diy-calculate-btn:disabled{
    opacity:.35;cursor:not-allowed;filter:saturate(.45);
  }
}

@media(max-width:1180px) and (min-width:761px){
  #diyPanel .diy-workspace{
    grid-template-columns:minmax(0,1.45fr) minmax(300px,.9fr);
  }
  #diyPanel .diy-attribute-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #diyPanel .diy-badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  #diyPanel .diy-toolbar-help{display:none}
  #diyPanel .diy-toolbar-help-divider{display:none}
}

@media(max-width:760px){
  #diyPanel .diy-workspace-toolbar{
    min-height:46px!important;height:auto!important;padding:7px!important;
    display:flex!important;flex-wrap:wrap!important;gap:7px!important;
  }
  #diyPanel .diy-toolbar-tools,
  #diyPanel .diy-toolbar-stats{display:flex;align-items:center;gap:6px}
  #diyPanel .diy-toolbar-help{display:none}
  #diyPanel .diy-workspace{display:block}
  #diyPanel .diy-attribute-panel,
  #diyPanel .diy-badge-panel{margin-bottom:10px}
  #diyPanel .diy-attribute-grid{grid-template-columns:1fr 1fr}
  #diyPanel .diy-badge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Result window */
.diy-result-modal[hidden]{display:none!important}
.diy-result-modal{
  position:fixed;inset:0;z-index:2147483200;
  display:grid;place-items:center;
}
.diy-result-backdrop{
  position:absolute;inset:0;background:rgba(3,7,11,.72);
  backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
}
.diy-result-dialog{
  position:relative;z-index:1;
  width:min(930px,92vw);
  height:min(690px,86vh);
  min-height:0;
  display:flex;flex-direction:column;
  border:1px solid rgba(218,228,238,.15);
  border-radius:18px;
  background:linear-gradient(160deg,rgba(24,34,44,.985),rgba(10,16,22,.995));
  box-shadow:0 30px 80px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.045);
  overflow:hidden;
}
.diy-result-head{
  min-height:62px;padding:12px 15px 10px;
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.diy-result-head span{
  display:block;color:#687683;font-size:8px;font-weight:850;letter-spacing:.12em;
}
.diy-result-head h3{
  margin:4px 0 0;color:#edf2f5;font-size:17px;font-weight:800;
}
.diy-result-close{
  width:34px;height:34px;border:0;border-radius:10px;
  background:transparent;color:#88949f;font-size:22px;cursor:pointer;
}
.diy-result-close:hover{background:rgba(255,255,255,.04);color:#e5ebef}
.diy-result-meta{
  min-height:36px;padding:0 15px;
  display:flex;align-items:center;
  border-bottom:1px solid rgba(255,255,255,.052);
  color:#788591;font-size:10.5px;font-weight:620;
}
.diy-result-body{
  min-height:0;flex:1 1 auto;
  display:grid;grid-template-columns:320px minmax(0,1fr);
}
.diy-result-list{
  min-height:0;overflow:auto;padding:8px;
  border-right:1px solid rgba(255,255,255,.055);
}
.diy-result-row{
  width:100%;min-height:48px;
  margin:0 0 5px;padding:7px 9px;
  border:1px solid rgba(255,255,255,.045);
  border-radius:10px;
  background:rgba(255,255,255,.012);
  display:grid;grid-template-columns:26px minmax(0,1fr) auto;
  gap:7px;align-items:center;
  color:inherit;text-align:left;cursor:pointer;
}
.diy-result-row:hover{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.08)}
.diy-result-row.active{
  border-color:rgba(216,184,95,.23);
  background:linear-gradient(90deg,rgba(216,184,95,.065),rgba(255,255,255,.012));
}
.diy-result-rank{
  color:#596671;font-size:10px;font-weight:850;font-variant-numeric:tabular-nums;
}
.diy-result-copy{min-width:0}
.diy-result-copy strong{
  display:block;color:#dce3e8;font-size:11.5px;font-weight:760;
}
.diy-result-copy span{
  display:block;margin-top:3px;color:#64717c;font-size:8.5px;font-weight:620;
}
.diy-result-cost{
  color:#dfca7d;font-size:14px;font-weight:850;font-variant-numeric:tabular-nums;
}
.diy-result-row.impossible .diy-result-cost{color:#9a6c66;font-size:9px}
.diy-result-detail{min-height:0;overflow:auto;padding:15px 16px}
.diy-result-detail-empty{
  min-height:100%;display:grid;place-items:center;color:#66727d;font-size:11px;
}
.diy-detail-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px;
  padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.055);
}
.diy-detail-head small{display:block;color:#65727d;font-size:8.5px;font-weight:700}
.diy-detail-head strong{display:block;margin-top:3px;color:#edf1f4;font-size:17px;font-weight:820}
.diy-detail-total{text-align:right}
.diy-detail-total span{display:block;color:#697580;font-size:8.5px}
.diy-detail-total b{display:block;margin-top:3px;color:#e2cb78;font-size:22px;font-weight:850}
.diy-detail-grid{margin-top:10px;display:grid;grid-template-columns:1fr;gap:5px}
.diy-detail-row{
  min-height:34px;padding:6px 8px;
  display:grid;grid-template-columns:minmax(0,1fr) 86px 65px;
  gap:8px;align-items:center;
  border:1px solid rgba(255,255,255,.038);border-radius:8px;
  background:rgba(255,255,255,.010);
}
.diy-detail-row>span{color:#9ba6b0;font-size:10.5px;font-weight:620}
.diy-detail-row>em{
  color:#74808b;font-size:9px;font-style:normal;text-align:right;font-variant-numeric:tabular-nums;
}
.diy-detail-row>b{
  color:#cbb875;font-size:10.5px;text-align:right;font-variant-numeric:tabular-nums;
}
.diy-detail-impossible{
  margin-top:12px;padding:10px 11px;border:1px solid rgba(185,101,88,.16);
  border-radius:10px;background:rgba(157,77,66,.055);
  color:#b98279;font-size:10.5px;line-height:1.55;
}
@media(max-width:700px){
  .diy-result-dialog{width:96vw;height:91vh}
  .diy-result-body{grid-template-columns:1fr}
  .diy-result-list{max-height:40vh;border-right:0;border-bottom:1px solid rgba(255,255,255,.055)}
}


/* ===== SOURCE: css/stable-bundle-018.css ===== */
/* === SOURCE: css/193-v5549-diy-attribute-layout-controls.css === */

/* v5.5.49 · Fixed DIY attribute columns, collapsible groups, complete rows,
   80-start steppers and 90 shortcut. */
@media(min-width:761px){
  #diyPanel .diy-attribute-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:9px!important;
    align-items:start!important;
    align-content:start!important;
  }
  #diyPanel .diy-attr-column{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:9px;
  }

  #diyPanel .diy-attr-group{
    display:block!important;
    min-width:0!important;
  }
  #diyPanel .diy-attr-group-head{
    appearance:none!important;
    width:100%!important;
    height:32px!important;
    min-height:32px!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.045)!important;
    background:rgba(255,255,255,.006)!important;
    color:inherit!important;
    padding:0 9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    cursor:pointer!important;
    text-align:left!important;
  }
  #diyPanel .diy-attr-group-head:hover{
    background:rgba(255,255,255,.018)!important;
  }
  #diyPanel .diy-attr-group-title{
    min-width:0;
    display:flex;
    align-items:baseline;
    gap:7px;
  }
  #diyPanel .diy-attr-group-title strong{
    color:#919da8!important;
    font-size:11.5px!important;
    font-weight:750!important;
  }
  #diyPanel .diy-attr-group-title em{
    color:#596570;
    font-size:8px;
    font-style:normal;
    font-weight:700;
  }
  #diyPanel .diy-attr-group-chevron{
    flex:0 0 auto;
    color:#67737e;
    font-size:15px;
    line-height:1;
    transform:rotate(90deg);
    transition:transform .26s cubic-bezier(.22,.68,.24,1),color .18s ease;
  }
  #diyPanel .diy-attr-group.is-collapsed .diy-attr-group-chevron{
    transform:rotate(0deg);
  }
  #diyPanel .diy-attr-group-body{
    max-height:320px;
    opacity:1;
    overflow:hidden;
    transition:max-height .36s cubic-bezier(.22,.68,.24,1),opacity .22s ease;
  }
  #diyPanel .diy-attr-group.is-collapsed .diy-attr-group-body{
    max-height:0;
    opacity:0;
  }

  #diyPanel .diy-attr-row{
    min-height:34px!important;
    grid-template-columns:minmax(72px,1fr) auto 18px!important;
    gap:6px!important;
    padding:4px 7px 4px 9px!important;
  }
  #diyPanel .diy-attr-control{
    display:grid;
    grid-template-columns:23px 42px 23px 30px;
    gap:3px;
    align-items:center;
  }
  #diyPanel .diy-attr-step,
  #diyPanel .diy-attr-quick{
    appearance:none;
    height:24px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:6px;
    background:rgba(255,255,255,.018);
    color:#8d99a4;
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    font:720 10.5px/1 inherit;
    transition:border-color .15s ease,background .15s ease,color .15s ease;
  }
  #diyPanel .diy-attr-step:hover,
  #diyPanel .diy-attr-quick:hover{
    border-color:rgba(205,216,227,.16);
    background:rgba(205,216,227,.045);
    color:#d3dae0;
  }
  #diyPanel .diy-attr-quick{
    color:#bba867;
    border-color:rgba(216,184,95,.12);
    background:rgba(216,184,95,.025);
    font-size:9px;
    font-weight:800;
  }
  #diyPanel .diy-attr-quick:hover{
    color:#e0cb81;
    border-color:rgba(216,184,95,.26);
    background:rgba(216,184,95,.07);
  }
  #diyPanel .diy-attr-input{
    width:42px!important;
    height:24px!important;
    padding:0 3px!important;
    border-radius:6px!important;
    font-size:11px!important;
  }

  /* Every badge category renders the entire dataset and may wrap to as many
     rows as needed; category count in the header reflects the full set. */
  #diyPanel .diy-badge-grid{
    grid-auto-flow:row!important;
    grid-auto-rows:65px!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  #diyPanel .diy-badge-group{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}

@media(max-width:1180px) and (min-width:761px){
  #diyPanel .diy-attribute-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  #diyPanel .diy-attr-control{
    grid-template-columns:21px 38px 21px 28px;
    gap:2px;
  }
  #diyPanel .diy-attr-input{width:38px!important}
}

@media(max-width:760px){
  #diyPanel .diy-attribute-grid{
    display:block!important;
  }
  #diyPanel .diy-attr-column{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-bottom:8px;
  }
  #diyPanel .diy-attr-group-head{
    width:100%;
    height:34px;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.045);
    background:rgba(255,255,255,.008);
    color:inherit;
    padding:0 9px;
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  #diyPanel .diy-attr-group-title{display:flex;gap:7px;align-items:baseline}
  #diyPanel .diy-attr-group-title strong{font-size:11.5px;color:#919da8}
  #diyPanel .diy-attr-group-title em{font-size:8px;color:#596570;font-style:normal}
  #diyPanel .diy-attr-group-chevron{transform:rotate(90deg)}
  #diyPanel .diy-attr-group.is-collapsed .diy-attr-group-chevron{transform:none}
  #diyPanel .diy-attr-group-body{max-height:340px;overflow:hidden}
  #diyPanel .diy-attr-group.is-collapsed .diy-attr-group-body{max-height:0}
  #diyPanel .diy-attr-row{
    grid-template-columns:minmax(72px,1fr) auto 18px!important;
  }
  #diyPanel .diy-attr-control{
    display:grid;
    grid-template-columns:23px 42px 23px 30px;
    gap:3px;
  }
  #diyPanel .diy-attr-step,
  #diyPanel .diy-attr-quick{
    height:24px;border:1px solid rgba(255,255,255,.065);border-radius:6px;
    background:rgba(255,255,255,.018);color:#8d99a4;
  }
  #diyPanel .diy-attr-input{width:42px!important;height:24px!important}
}

/* === SOURCE: css/194-v5550-ap-calculator-polish-apply.css === */

/* v5.5.50 · AP Calculator naming, long-press stepping, stronger numeric focus,
   and one-click application into a selected archetype. */
#diyPanel .diy-attr-input{
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  text-align:center!important;
  text-align-last:center!important;
  padding-left:0!important;
  padding-right:0!important;
  color:#aeb8c2!important;
  caret-color:#e3d18c!important;
  font-variant-numeric:tabular-nums!important;
}
#diyPanel .diy-attr-input::-webkit-outer-spin-button,
#diyPanel .diy-attr-input::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}
#diyPanel .diy-attr-input::placeholder{
  color:#596570!important;
  opacity:1!important;
  text-align:center!important;
}
#diyPanel .diy-attr-row.is-active .diy-attr-input{
  color:#dfca82!important;
  border-color:rgba(216,184,95,.18)!important;
  background:rgba(216,184,95,.040)!important;
  box-shadow:inset 0 0 0 1px rgba(216,184,95,.018)!important;
}
#diyPanel .diy-attr-row.is-active .diy-attr-input:focus{
  color:#ead993!important;
  border-color:rgba(216,184,95,.36)!important;
  background:rgba(216,184,95,.060)!important;
  box-shadow:0 0 0 1px rgba(216,184,95,.09),0 0 11px rgba(216,184,95,.035)!important;
}
#diyPanel .diy-attr-step:active{
  border-color:rgba(216,184,95,.26)!important;
  background:rgba(216,184,95,.065)!important;
  color:#e0cb81!important;
}

.diy-detail-head-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.diy-apply-model-btn{
  appearance:none;
  min-width:112px;
  height:40px;
  padding:0 11px;
  border:1px solid rgba(216,184,95,.30);
  border-radius:10px;
  background:linear-gradient(180deg,rgba(216,184,95,.13),rgba(216,184,95,.048));
  color:#e5d08a;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.diy-apply-model-btn>span{
  font-size:11.5px;
  line-height:1;
  font-weight:820;
}
.diy-apply-model-btn>small{
  margin-top:4px;
  color:#99884f;
  font-size:8px;
  line-height:1;
  font-weight:680;
}
.diy-apply-model-btn:hover{
  border-color:rgba(216,184,95,.48);
  background:linear-gradient(180deg,rgba(216,184,95,.18),rgba(216,184,95,.070));
  box-shadow:0 0 18px rgba(216,184,95,.07);
  transform:translateY(-1px);
}
.diy-apply-model-btn:active{transform:none}

@media(max-width:700px){
  .diy-detail-head{align-items:flex-start!important;flex-wrap:wrap}
  .diy-detail-head-actions{width:100%;justify-content:space-between}
}

/* === SOURCE: css/195-v5552-diy-badge-ratio-fix.css === */

/* v5.5.52 · DIY silver PlayStyle badge proportions.
   Match the existing PlayStyle selector ratio:
   shell 35×40 / icon 22×22 rather than the previous 31×31 / 24×24. */
#diyPanel .diy-silver-badge{
  position:relative!important;
  width:38px!important;
  height:40px!important;
  flex:0 0 40px!important;
  display:block!important;
}

#diyPanel .diy-silver-badge::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:35px!important;
  height:40px!important;
  transform:translate(-50%,-50%)!important;
  background:var(--fc27-ps-silver) center/100% 100% no-repeat!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:drop-shadow(0 3px 7px rgba(0,0,0,.20))!important;
  pointer-events:none!important;
  z-index:1!important;
}

#diyPanel .diy-silver-badge img{
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  top:50%!important;
  width:22px!important;
  height:22px!important;
  max-width:none!important;
  max-height:none!important;
  transform:translate(-50%,-50%)!important;
  object-fit:contain!important;
  opacity:.82!important;
  filter:none!important;
}

#diyPanel .diy-silver-badge .diy-badge-fallback{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  display:grid!important;
  place-items:center!important;
  color:#171d22!important;
  font-size:6px!important;
  font-weight:900!important;
}

#diyPanel .diy-badge-btn.selected .diy-silver-badge img{
  opacity:1!important;
}

#diyPanel .diy-badge-btn.selected .diy-silver-badge::before{
  filter:
    drop-shadow(0 3px 7px rgba(0,0,0,.20))
    drop-shadow(0 0 7px rgba(220,228,235,.13))!important;
}

/* === SOURCE: css/196-v5553-ap-calculator-copy-polish.css === */

/* v5.5.53 · Copy reduction and primary action moved into the target-value header. */
#diyPanel .diy-attribute-section-head{
  padding-top:7px!important;
  padding-bottom:7px!important;
}

#diyPanel .diy-attribute-section-head>div{
  display:flex!important;
  align-items:center!important;
}

#diyPanel .diy-calculate-btn-head{
  flex:0 0 auto!important;
  width:116px!important;
  height:34px!important;
  min-height:34px!important;
  border-radius:9px!important;
  margin:0!important;
  padding:0 10px!important;
}

#diyPanel .diy-calculate-btn-head span{
  font-size:11.5px!important;
  line-height:1!important;
}

#diyPanel .diy-calculate-btn-head small{
  margin-top:3px!important;
  font-size:8px!important;
  line-height:1!important;
}

#diyPanel .diy-badge-panel .diy-badge-groups{
  flex:1 1 auto!important;
  min-height:0!important;
  padding-bottom:10px!important;
}

/* Old dock is removed from the DOM; keep a hard fallback in case a stale fragment is restored. */
#diyPanel .diy-calc-dock,
#diyPanel .diy-requirement-summary{
  display:none!important;
}

@media(max-width:760px){
  #diyPanel .diy-calculate-btn-head{
    width:108px!important;
    height:34px!important;
  }
}

/* === SOURCE: css/197-v5554-ap-calculator-primary-cta.css === */

/* v5.5.54 · Make Calculate AP the dominant CTA.
   Disabled state remains recognizable instead of collapsing into grey. */

#diyPanel .diy-calculate-btn-head{
  border-color:rgba(226,192,92,.58)!important;
  background:
    linear-gradient(180deg,rgba(224,190,87,.22),rgba(188,149,54,.105))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,238,173,.10),
    0 0 0 1px rgba(219,183,76,.055),
    0 4px 14px rgba(0,0,0,.16),
    0 0 18px rgba(218,181,73,.075)!important;
  color:#f1d977!important;
}

#diyPanel .diy-calculate-btn-head span{
  color:#f3dc83!important;
  font-weight:850!important;
  text-shadow:0 0 10px rgba(229,193,91,.10);
}

#diyPanel .diy-calculate-btn-head small{
  color:#c8ab58!important;
  font-weight:720!important;
}

#diyPanel .diy-calculate-btn-head:not(:disabled):hover{
  border-color:rgba(237,205,111,.80)!important;
  background:
    linear-gradient(180deg,rgba(231,199,100,.29),rgba(194,154,57,.14))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,241,185,.14),
    0 0 0 1px rgba(230,194,94,.08),
    0 5px 16px rgba(0,0,0,.17),
    0 0 24px rgba(221,184,76,.13)!important;
  transform:translateY(-1px);
}

#diyPanel .diy-calculate-btn-head:active:not(:disabled){
  transform:translateY(0);
}

/* Keep disabled meaning, but do not visually erase the primary action. */
#diyPanel .diy-calculate-btn-head:disabled{
  opacity:1!important;
  cursor:not-allowed!important;
  filter:none!important;
  border-color:rgba(204,172,78,.34)!important;
  background:
    linear-gradient(180deg,rgba(200,170,77,.105),rgba(145,116,41,.045))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,235,168,.04),
    0 3px 10px rgba(0,0,0,.12)!important;
}

#diyPanel .diy-calculate-btn-head:disabled span{
  color:rgba(224,200,126,.70)!important;
  text-shadow:none!important;
}

#diyPanel .diy-calculate-btn-head:disabled small{
  color:rgba(184,153,76,.72)!important;
}

/* === SOURCE: css/198-v5555-nav-brand-overview-alignment-fix.css === */

/* v5.5.55 · Navigation becomes line-only; brand geometry is invariant across
   editor pages; remove the legacy attribute-page Archetype Overview offset. */

@media(min-width:761px){
  /* ---------- Primary navigation: no enclosing glass box ---------- */
  .editor-view-tabs,
  body.attributes-workspace-compact .editor-view-tabs{
    box-sizing:border-box!important;
    border:0!important;
    border-bottom:1px solid rgba(220,229,237,.105)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }

  .editor-view-tab,
  body.attributes-workspace-compact .editor-view-tab{
    background:transparent!important;
    box-shadow:none!important;
  }

  .editor-view-tab.active,
  body.attributes-workspace-compact .editor-view-tab.active{
    background:transparent!important;
    box-shadow:none!important;
  }

  /* Active gold segment sits directly on the shared baseline. */
  .editor-view-tab.active::after,
  body.attributes-workspace-compact .editor-view-tab.active::after{
    bottom:-1px!important;
    height:2px!important;
    z-index:2!important;
  }

  /* ---------- Site brand: one geometry on every editor page ---------- */
  .topbar,
  body.attributes-workspace-compact .topbar{
    display:flex!important;
    align-items:center!important;
  }

  .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>div:first-child{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:13px!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  .site-logo,
  body.attributes-workspace-compact .site-logo{
    display:block!important;
    flex:0 0 auto!important;
    align-self:center!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  .site-brand-copy,
  body.attributes-workspace-compact .site-brand-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:4px!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .eyebrow{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:1!important;
    transform:none!important;
  }

  .topbar h1,
  body.attributes-workspace-compact .topbar h1{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:1.05!important;
    transform:none!important;
  }

  /* ---------- Attribute page left rail: remove old 12px drop ---------- */
  body.attributes-workspace-compact .global-archetype-overview-card{
    top:0!important;
    margin-top:0!important;
    transform:none!important;
  }
}

/* Keep the same line-only language on mobile as well. */
@media(max-width:760px){
  .editor-view-tabs,
  body.attributes-workspace-compact .editor-view-tabs{
    border-left:0!important;
    border-right:0!important;
    border-top:0!important;
    border-bottom:1px solid rgba(220,229,237,.10)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* === SOURCE: css/199-v5556-header-nav-attribute-toolbar.css === */

/* v5.5.56
   1) Non-attribute brand copy returns to the attribute-page baseline.
   2) Navigation + entire workspace start 6px higher by reducing real header spacing.
   3) Attribute Points gets the same English-title + 46px toolbar cadence. */

@media(min-width:761px){
  /* ---------- Brand alignment ---------- */
  /* Attribute page is the visual reference. Other editor pages were ~2px too high. */
  body.non-attribute-editor-active .site-brand-copy{
    transform:translateY(2px)!important;
  }

  /* ---------- Move navigation + complete workspace upward 6px ---------- */
  .topbar,
  body.attributes-workspace-compact .topbar{
    margin-bottom:4px!important;
  }

  /* ---------- Attribute Points decorative English heading ---------- */
  body.attributes-workspace-compact .workspace-decor-header{
    display:block!important;
    flex:0 0 36px!important;
    width:100%!important;
    height:36px!important;
    min-height:36px!important;
    margin:0 0 6px!important;
  }

  /* ---------- Attribute workspace toolbar ---------- */
  body.attributes-workspace-compact .attribute-workspace-toolbar{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    overflow:visible!important;
    border:1px solid rgba(218,228,238,.145)!important;
    border-radius:13px!important;
    background:
      linear-gradient(180deg,rgba(229,236,243,.092) 0%,rgba(198,209,219,.064) 42%,rgba(157,171,184,.044) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.090),
      inset 0 -1px 0 rgba(58,72,85,.18),
      0 4px 14px rgba(0,0,0,.12)!important;
    position:relative!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar::before{
    content:"";
    position:absolute;
    left:0;
    top:9px;
    bottom:9px;
    width:2px;
    border-radius:0 2px 2px 0;
    background:linear-gradient(
      180deg,
      rgba(235,242,248,.16),
      rgba(235,242,248,.72),
      rgba(235,242,248,.16)
    );
    box-shadow:0 0 7px rgba(221,231,240,.10);
    pointer-events:none;
  }

  /* Existing controls become compact toolbar controls instead of two cards. */
  body.attributes-workspace-compact .attribute-workspace-toolbar .view-switch-row{
    flex:0 0 auto!important;
    width:auto!important;
    min-height:34px!important;
    height:34px!important;
    margin:0!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    border:1px solid rgba(218,228,238,.08)!important;
    border-radius:10px!important;
    background:rgba(255,255,255,.018)!important;
    box-shadow:none!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .tool-copy{
    display:flex!important;
    align-items:center!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .tool-title{
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:700!important;
    color:#8995a0!important;
    white-space:nowrap!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .ios-switch{
    width:36px!important;
    height:22px!important;
    flex:0 0 36px!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .cost-help{
    flex:0 0 auto!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .cost-help>summary{
    box-sizing:border-box!important;
    min-height:34px!important;
    height:34px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    border:1px solid rgba(218,228,238,.08)!important;
    border-radius:10px!important;
    background:rgba(255,255,255,.018)!important;
    color:#8995a0!important;
    font-size:11.5px!important;
    font-weight:700!important;
    line-height:1!important;
    cursor:pointer!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .cost-help>summary:hover,
  body.attributes-workspace-compact .attribute-workspace-toolbar .view-switch-row:hover{
    border-color:rgba(218,228,238,.14)!important;
    background:rgba(255,255,255,.028)!important;
  }

  body.attributes-workspace-compact .attribute-workspace-toolbar .cost-help-chevron{
    font-size:14px!important;
    color:#66737f!important;
  }

  /* The expanded cost explanation drops below the toolbar control itself. */
  body.attributes-workspace-compact .attribute-workspace-toolbar .cost-help-body{
    position:absolute!important;
    z-index:80!important;
    top:40px!important;
    right:0!important;
    width:min(430px,48vw)!important;
    padding:11px 12px 12px!important;
    border:1px solid rgba(218,228,238,.12)!important;
    border-radius:12px!important;
    background:rgba(10,16,22,.985)!important;
    box-shadow:0 16px 34px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.035)!important;
  }

  /* Existing attribute canvas begins immediately after the standardized rail. */
  body.attributes-workspace-compact #attributes{
    margin-top:0!important;
  }
}

@media(max-width:760px){
  /* Keep mobile behavior unchanged; the desktop toolbar conversion should not
     interfere with the existing sticky mobile attribute controls. */
  body.attributes-workspace-compact .workspace-decor-header{
    display:none!important;
  }
}

/* === SOURCE: css/200-v5557-attribute-toolbar-header-lock.css === */

/* v5.5.57
   Header copy uses one immutable geometry on every page.
   Attribute Points receives a true desktop toolbar in the same workspace slot as other pages. */

@media(min-width:761px){
  /* ---------- Header lock: page switching must never move the brand ---------- */
  .topbar,
  body.attributes-workspace-compact .topbar,
  body.non-attribute-editor-active .topbar{
    align-items:center!important;
    overflow:visible!important;
  }

  .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>.site-brand,
  body.non-attribute-editor-active .topbar>.site-brand{
    display:flex!important;
    align-items:center!important;
    align-self:center!important;
    gap:13px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    position:static!important;
  }

  .site-logo,
  body.attributes-workspace-compact .site-logo,
  body.non-attribute-editor-active .site-logo{
    align-self:center!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    position:static!important;
  }

  .site-brand-copy,
  body.attributes-workspace-compact .site-brand-copy,
  body.non-attribute-editor-active .site-brand-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    align-self:center!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    translate:none!important;
    position:static!important;
    top:auto!important;
    bottom:auto!important;
  }

  .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .eyebrow,
  body.non-attribute-editor-active .topbar .eyebrow{
    margin:0!important;
    padding:0!important;
    transform:none!important;
    position:static!important;
  }

  .topbar h1,
  body.attributes-workspace-compact .topbar h1,
  body.non-attribute-editor-active .topbar h1{
    margin:0!important;
    padding:0!important;
    transform:none!important;
    position:static!important;
  }

  /* Kill the previous v5.5.56 state-dependent compensation explicitly. */
  body.non-attribute-editor-active .site-brand-copy{
    transform:none!important;
  }

  /* ---------- The old mobile sticky controls are not the desktop toolbar ---------- */
  #mobileStickyControls .attribute-workspace-toolbar{
    display:none!important;
  }

  /* ---------- Dedicated Attribute Points toolbar ---------- */
  #attributeDesktopToolbar{
    display:none!important;
  }

  body.attributes-workspace-compact #attributeDesktopToolbar{
    box-sizing:border-box!important;
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    margin:0 0 9px!important;
    padding:6px 9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    position:relative!important;
    overflow:visible!important;
    border:1px solid rgba(218,228,238,.145)!important;
    border-radius:13px!important;
    background:
      linear-gradient(180deg,rgba(229,236,243,.092) 0%,rgba(198,209,219,.064) 42%,rgba(157,171,184,.044) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.090),
      inset 0 -1px 0 rgba(58,72,85,.18),
      0 4px 14px rgba(0,0,0,.12)!important;
  }

  body.attributes-workspace-compact #attributeDesktopToolbar::before{
    content:"";
    position:absolute;
    left:0;
    top:9px;
    bottom:9px;
    width:2px;
    border-radius:0 2px 2px 0;
    background:linear-gradient(180deg,rgba(235,242,248,.16),rgba(235,242,248,.72),rgba(235,242,248,.16));
    box-shadow:0 0 7px rgba(221,231,240,.10);
    pointer-events:none;
  }

  #attributeDesktopToolbar .toolbar-icon-button{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    flex:0 0 34px!important;
    border-radius:10px!important;
  }

  #attributeDesktopToolbar .toolbar-icon-button svg{
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  #attributeDesktopToolbar .attribute-toolbar-divider{
    width:1px;
    height:18px;
    margin:0 1px;
    flex:0 0 1px;
    background:rgba(222,231,239,.11);
  }

  #attributeDesktopToolbar .attribute-visibility-button .attribute-eye-off{
    display:none!important;
  }

  #attributeDesktopToolbar .attribute-visibility-button.is-filtered{
    color:#e0c978!important;
    border-color:rgba(216,184,95,.23)!important;
    background:rgba(216,184,95,.055)!important;
    box-shadow:inset 0 0 0 1px rgba(216,184,95,.025),0 0 12px rgba(216,184,95,.025)!important;
  }

  #attributeDesktopToolbar .attribute-visibility-button.is-filtered .attribute-eye-on{
    display:none!important;
  }
  #attributeDesktopToolbar .attribute-visibility-button.is-filtered .attribute-eye-off{
    display:block!important;
  }

  #attributeDesktopToolbar .attribute-price-help{
    position:relative!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
  }

  #attributeDesktopToolbar .attribute-price-help>summary{
    list-style:none!important;
  }
  #attributeDesktopToolbar .attribute-price-help>summary::-webkit-details-marker{
    display:none!important;
  }

  #attributeDesktopToolbar .attribute-price-summary{
    box-sizing:border-box!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 11px!important;
    border-radius:10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#8995a0!important;
    font-size:11.5px!important;
    font-weight:700!important;
    cursor:pointer!important;
  }

  #attributeDesktopToolbar .attribute-price-help[open] .attribute-price-summary{
    color:#d8c27b!important;
    border-color:rgba(216,184,95,.20)!important;
    background:rgba(216,184,95,.045)!important;
  }

  #attributeDesktopToolbar .attribute-price-body{
    position:absolute!important;
    z-index:120!important;
    top:40px!important;
    left:0!important;
    width:380px!important;
    max-width:min(380px,52vw)!important;
    padding:11px 12px 12px!important;
    border:1px solid rgba(218,228,238,.12)!important;
    border-radius:12px!important;
    background:rgba(10,16,22,.985)!important;
    box-shadow:0 16px 34px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.035)!important;
  }

  #attributeDesktopToolbar .attribute-price-body .cost-legend{
    margin:0!important;
  }

  /* Attribute content follows immediately after the toolbar just like other workspaces. */
  body.attributes-workspace-compact #attributes{
    margin-top:0!important;
  }
}

@media(max-width:760px){
  #attributeDesktopToolbar{
    display:none!important;
  }
}


/* ===== SOURCE: css/stable-bundle-019.css ===== */
/* === SOURCE: css/201-v5558-attribute-page-compact-grid.css === */

/* v5.5.58 · Attribute Page 2.0
   Dense three-column build surface with clear 2-row rhythm.
   Desktop legacy tool cards are retired; goalkeeper stats exist only on GK builds. */

@media(min-width:761px){
  /* The old switch/help card remains only as a hidden state carrier for mobile / JS. */
  .attribute-tools,
  .attribute-workspace-toolbar{
    display:none!important;
  }

  /* Give the dense data canvas deliberate breathing room on right and bottom. */
  body.attributes-workspace-compact #attributes{
    box-sizing:border-box!important;
    width:calc(100% - 18px)!important;
    max-width:calc(100% - 18px)!important;
    margin:0 18px 0 0!important;
    padding:0 0 18px 0!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    column-gap:10px!important;
    row-gap:0!important;
    align-items:start!important;
    overflow-y:auto!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:10px!important;
    min-width:0!important;
  }

  /* Cleaner, lighter cards. */
  body.attributes-workspace-compact #attributes .category-card{
    border:1px solid rgba(218,228,238,.075)!important;
    border-radius:12px!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.008)),
      rgba(10,16,22,.72)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.018),
      0 6px 16px rgba(0,0,0,.10)!important;
    backdrop-filter:blur(12px) saturate(108%)!important;
    -webkit-backdrop-filter:blur(12px) saturate(108%)!important;
  }

  body.attributes-workspace-compact #attributes .category-head{
    box-sizing:border-box!important;
    height:29px!important;
    min-height:29px!important;
    padding:0 10px!important;
    background:rgba(255,255,255,.012)!important;
    border-bottom:1px solid rgba(255,255,255,.043)!important;
    cursor:pointer!important;
  }

  body.attributes-workspace-compact #attributes .goalkeeper-category .category-head{
    cursor:default!important;
  }

  body.attributes-workspace-compact #attributes .category-name{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    color:#dbe2e8!important;
    font-size:13.5px!important;
    line-height:1!important;
    font-weight:750!important;
    letter-spacing:-.01em!important;
  }

  body.attributes-workspace-compact #attributes .category-toggle{
    color:#687580!important;
    font-size:8px!important;
    transform-origin:center!important;
  }

  body.attributes-workspace-compact #attributes .goalkeeper-category .category-toggle{
    display:none!important;
  }

  body.attributes-workspace-compact #attributes .attr-list{
    padding:0!important;
  }

  body.attributes-workspace-compact #attributes .attr-row{
    border-bottom:1px solid rgba(255,255,255,.032)!important;
  }

  body.attributes-workspace-compact #attributes .attr-row:last-child{
    border-bottom:0!important;
  }

  /* One row: name / slider / compact stepper. */
  body.attributes-workspace-compact #attributes .attr-main{
    box-sizing:border-box!important;
    min-height:34px!important;
    height:34px!important;
    padding:3px 9px!important;
    grid-template-columns:88px minmax(72px,1fr) 78px!important;
    column-gap:7px!important;
    align-items:center!important;
  }

  body.attributes-workspace-compact #attributes .attr-row.changed .attr-main{
    background:linear-gradient(90deg,rgba(216,184,95,.030),transparent 55%)!important;
  }

  body.attributes-workspace-compact #attributes .attr-name-wrap{
    width:88px!important;
    min-width:0!important;
  }

  body.attributes-workspace-compact #attributes .attr-line{
    gap:4px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name{
    color:#c8d0d7!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:650!important;
  }

  body.attributes-workspace-compact #attributes .tier{
    height:auto!important;
    padding:0!important;
    color:#66727e!important;
    font-size:8.5px!important;
    line-height:1!important;
    font-weight:650!important;
    opacity:.68!important;
  }

  body.attributes-workspace-compact #attributes .tier::before{
    width:4px!important;
    height:4px!important;
  }

  /* Slimmer slider with retained grab area. */
  body.attributes-workspace-compact #attributes .mini-slider{
    min-height:28px!important;
    height:28px!important;
    margin:0 1px 0 0!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider .range-shell,
  body.attributes-workspace-compact #attributes .mini-slider input[type="range"]{
    height:28px!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider .visual-track,
  body.attributes-workspace-compact #attributes .mini-slider input[type="range"]::-webkit-slider-runnable-track{
    height:4px!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider input[type="range"]::-moz-range-track{
    height:4px!important;
  }

  /* Compact pill stepper. */
  body.attributes-workspace-compact #attributes .stepper{
    box-sizing:border-box!important;
    width:78px!important;
    height:27px!important;
    min-height:27px!important;
    grid-template-columns:22px 34px 22px!important;
    border-radius:8px!important;
    border-color:rgba(255,255,255,.065)!important;
    background:rgba(6,10,15,.50)!important;
  }

  body.attributes-workspace-compact #attributes .stepper button,
  body.attributes-workspace-compact #attributes .stepper input{
    height:27px!important;
    min-height:27px!important;
    line-height:1!important;
  }

  body.attributes-workspace-compact #attributes .stepper button{
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    color:#87939e!important;
    background:rgba(255,255,255,.018)!important;
    font-size:14px!important;
    font-weight:720!important;
  }

  body.attributes-workspace-compact #attributes .stepper button:hover:not(:disabled){
    color:#d9e0e5!important;
    background:rgba(255,255,255,.045)!important;
  }

  body.attributes-workspace-compact #attributes .stepper input{
    width:34px!important;
    padding:0!important;
    text-align:center!important;
    color:#e6d494!important;
    background:rgba(4,8,12,.40)!important;
    font-size:13.5px!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
  }

  body.attributes-workspace-compact #attributes .stepper input:focus{
    color:#f0dda0!important;
    outline:none!important;
  }

  /* Keep cards aligned by columns rather than forcing unnecessary equal heights. */
  body.attributes-workspace-compact #attributes .attr-column{
    align-self:start!important;
  }

  /* GK card is subtly identified, but stays within the same visual language. */
  body.attributes-workspace-compact #attributes .goalkeeper-category{
    border-color:rgba(205,216,227,.11)!important;
    background:
      linear-gradient(180deg,rgba(205,216,227,.032),rgba(255,255,255,.008)),
      rgba(10,16,22,.74)!important;
  }
}

/* A little more horizontal room on very large monitors without losing the compact rhythm. */
@media(min-width:1600px){
  body.attributes-workspace-compact #attributes{
    width:calc(100% - 22px)!important;
    max-width:calc(100% - 22px)!important;
    margin-right:22px!important;
    column-gap:12px!important;
  }
  body.attributes-workspace-compact #attributes .attr-column{
    gap:11px!important;
  }
  body.attributes-workspace-compact #attributes .attr-main{
    grid-template-columns:96px minmax(82px,1fr) 80px!important;
    column-gap:8px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.attributes-workspace-compact #attributes .attr-name-wrap{
    width:96px!important;
  }
}

/* Very short desktop windows may scroll the data canvas, but the surrounding page stays fixed. */
@media(min-width:761px) and (max-height:760px){
  body.attributes-workspace-compact #attributes .attr-main{
    min-height:32px!important;
    height:32px!important;
    padding-top:2px!important;
    padding-bottom:2px!important;
  }
  body.attributes-workspace-compact #attributes .category-head{
    height:28px!important;
    min-height:28px!important;
  }
  body.attributes-workspace-compact #attributes .attr-column{
    gap:8px!important;
  }
}

/* === SOURCE: css/202-v5559-attribute-balanced-density.css === */

/* v5.5.59 · Attribute Page 2.0 density rebalance.
   Loosen the compact grid one step while preserving a one-screen outfield layout. */

@media(min-width:761px){
  /* More deliberate right/bottom safety without wasting the canvas. */
  body.attributes-workspace-compact #attributes{
    width:calc(100% - 22px)!important;
    max-width:calc(100% - 22px)!important;
    margin-right:22px!important;
    padding-bottom:24px!important;
    column-gap:12px!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:12px!important;
  }

  body.attributes-workspace-compact #attributes .category-card{
    border-radius:13px!important;
  }

  body.attributes-workspace-compact #attributes .category-head{
    height:31px!important;
    min-height:31px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }

  /* Give each row a little more breathing room than v5.5.58. */
  body.attributes-workspace-compact #attributes .attr-main{
    min-height:36px!important;
    height:36px!important;
    padding:4px 10px!important;
    grid-template-columns:92px minmax(76px,1fr) 82px!important;
    column-gap:8px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name-wrap{
    width:92px!important;
  }

  body.attributes-workspace-compact #attributes .attr-line{
    gap:5px!important;
  }

  /* Attribute names are intentionally regular-weight; hierarchy comes from layout. */
  body.attributes-workspace-compact #attributes .attr-name{
    color:#c6ced5!important;
    font-size:11.5px!important;
    font-weight:500!important;
    letter-spacing:0!important;
  }

  /* Single-character tier tags: 高 / 中 / 低 / 折. */
  body.attributes-workspace-compact #attributes .tier{
    min-width:10px!important;
    padding:0!important;
    font-size:8.5px!important;
    font-weight:650!important;
    line-height:1!important;
    opacity:.72!important;
  }

  /* A slightly roomier slider/stepper, still compact enough for one screen. */
  body.attributes-workspace-compact #attributes .mini-slider{
    min-height:30px!important;
    height:30px!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider .range-shell,
  body.attributes-workspace-compact #attributes .mini-slider input[type="range"]{
    height:30px!important;
  }

  body.attributes-workspace-compact #attributes .stepper{
    width:82px!important;
    height:29px!important;
    min-height:29px!important;
    grid-template-columns:23px 36px 23px!important;
    border-radius:8px!important;
  }

  body.attributes-workspace-compact #attributes .stepper button,
  body.attributes-workspace-compact #attributes .stepper input{
    height:29px!important;
    min-height:29px!important;
  }

  body.attributes-workspace-compact #attributes .stepper input{
    width:36px!important;
    padding:0!important;
    text-align:center!important;
    color:#d8e0e6!important;
    background:rgba(4,8,12,.40)!important;
    font-size:13.5px!important;
    font-weight:760!important;
    text-shadow:none!important;
  }

  body.attributes-workspace-compact #attributes .stepper input:focus{
    color:#eef2f5!important;
  }

  /* Keep the changed-state cue extremely restrained; numeric colour stays neutral. */
  body.attributes-workspace-compact #attributes .attr-row.changed .attr-main{
    background:linear-gradient(90deg,rgba(205,216,227,.020),transparent 56%)!important;
  }
}

@media(min-width:1600px){
  body.attributes-workspace-compact #attributes{
    width:calc(100% - 26px)!important;
    max-width:calc(100% - 26px)!important;
    margin-right:26px!important;
    column-gap:13px!important;
    padding-bottom:26px!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:13px!important;
  }

  body.attributes-workspace-compact #attributes .attr-main{
    grid-template-columns:98px minmax(86px,1fr) 84px!important;
    column-gap:9px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name-wrap{
    width:98px!important;
  }
}

/* Preserve the one-screen intent on shorter desktops, but less aggressively than v5.5.58. */
@media(min-width:761px) and (max-height:760px){
  body.attributes-workspace-compact #attributes .attr-main{
    min-height:34px!important;
    height:34px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
  }

  body.attributes-workspace-compact #attributes .category-head{
    height:29px!important;
    min-height:29px!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:10px!important;
  }

  body.attributes-workspace-compact #attributes{
    padding-bottom:20px!important;
  }
}

/* === SOURCE: css/203-v5560-attribute-type-spacing-tune.css === */

/* v5.5.60 · Slightly larger category / attribute typography
   and roomier category headers + attribute rows. */

@media(min-width:761px){
  /* Category title: 13.5 -> 14.5 */
  body.attributes-workspace-compact #attributes .category-head h3,
  body.attributes-workspace-compact #attributes .category-head strong,
  body.attributes-workspace-compact #attributes .category-title{
    font-size:14.5px!important;
  }

  /* Attribute name: 11.5 -> 12.5 */
  body.attributes-workspace-compact #attributes .attr-name{
    font-size:12.5px!important;
  }

  /* Category header: 31 -> 35 */
  body.attributes-workspace-compact #attributes .category-head{
    height:35px!important;
    min-height:35px!important;
  }

  /* Attribute row: 36 -> 38 */
  body.attributes-workspace-compact #attributes .attr-main{
    height:38px!important;
    min-height:38px!important;
  }
}

/* Keep shorter screens usable, but still slightly larger than the prior compact fallback. */
@media(min-width:761px) and (max-height:760px){
  body.attributes-workspace-compact #attributes .category-head{
    height:32px!important;
    min-height:32px!important;
  }

  body.attributes-workspace-compact #attributes .attr-main{
    height:35px!important;
    min-height:35px!important;
  }

  body.attributes-workspace-compact #attributes .category-head h3,
  body.attributes-workspace-compact #attributes .category-head strong,
  body.attributes-workspace-compact #attributes .category-title{
    font-size:14px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name{
    font-size:12px!important;
  }
}

/* === SOURCE: css/204-v5561-attribute-comfort-density.css === */

/* v5.5.61 · Midpoint between the compact 2.0 layout and legacy v5.5.57 spacing. */

@media(min-width:761px){
  body.attributes-workspace-compact #attributes .category-head h3,
  body.attributes-workspace-compact #attributes .category-head strong,
  body.attributes-workspace-compact #attributes .category-title{
    font-size:15px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name{
    font-size:13px!important;
    font-weight:500!important;
  }

  body.attributes-workspace-compact #attributes .category-head{
    height:40px!important;
    min-height:40px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }

  body.attributes-workspace-compact #attributes .attr-main{
    height:43px!important;
    min-height:43px!important;
    padding:5px 11px!important;
    grid-template-columns:98px minmax(84px,1fr) 86px!important;
    column-gap:10px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name-wrap{
    width:98px!important;
  }

  body.attributes-workspace-compact #attributes .stepper{
    width:86px!important;
    height:31px!important;
    min-height:31px!important;
    grid-template-columns:24px 38px 24px!important;
  }

  body.attributes-workspace-compact #attributes .stepper button,
  body.attributes-workspace-compact #attributes .stepper input{
    height:31px!important;
    min-height:31px!important;
  }

  body.attributes-workspace-compact #attributes .stepper input{
    width:38px!important;
    font-size:13.5px!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider{
    min-height:32px!important;
    height:32px!important;
  }

  body.attributes-workspace-compact #attributes .mini-slider .range-shell,
  body.attributes-workspace-compact #attributes .mini-slider input[type="range"]{
    height:32px!important;
  }

  body.attributes-workspace-compact #attributes{
    column-gap:13px!important;
    padding-bottom:24px!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:13px!important;
  }
}

@media(min-width:761px) and (max-height:760px){
  body.attributes-workspace-compact #attributes .category-head{
    height:36px!important;
    min-height:36px!important;
  }

  body.attributes-workspace-compact #attributes .attr-main{
    height:39px!important;
    min-height:39px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  body.attributes-workspace-compact #attributes .category-head h3,
  body.attributes-workspace-compact #attributes .category-head strong,
  body.attributes-workspace-compact #attributes .category-title{
    font-size:14.5px!important;
  }

  body.attributes-workspace-compact #attributes .attr-name{
    font-size:12.5px!important;
  }

  body.attributes-workspace-compact #attributes .attr-column{
    gap:11px!important;
  }
}


/* ===== SOURCE: css/205-v5563-attribute-match-mode.css ===== */

/* v5.5.63 · Attribute Points "Base / Match" prototype.
   The real range always edits Build Attribute. Match mode only changes presentation. */

@media(min-width:761px){
  #attributeDesktopToolbar .attribute-value-mode{
    height:32px;
    padding:2px;
    display:flex;
    align-items:center;
    flex:0 0 auto;
    border:1px solid rgba(222,230,238,.13);
    border-radius:10px;
    background:rgba(7,12,17,.24);
    box-shadow:inset 0 1px 2px rgba(0,0,0,.18);
  }

  #attributeDesktopToolbar .attribute-mode-btn{
    appearance:none;
    height:26px;
    min-width:68px;
    padding:0 10px;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#7f8a95;
    font:650 11.5px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
    white-space:nowrap;
    cursor:pointer;
    transition:color .15s ease,background .15s ease,box-shadow .15s ease;
  }
  #attributeDesktopToolbar .attribute-mode-btn:hover{
    color:#c4ccd4;
    background:rgba(255,255,255,.035);
  }
  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="base"].active{
    color:#e1e6eb;
    background:linear-gradient(180deg,rgba(229,236,243,.13),rgba(194,205,216,.065));
    box-shadow:inset 0 0 0 1px rgba(235,241,247,.10),0 1px 4px rgba(0,0,0,.18);
  }
  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="match"].active{
    color:#dfd7b7;
    background:linear-gradient(180deg,rgba(205,216,227,.105),rgba(205,216,227,.040));
    box-shadow:inset 0 0 0 1px rgba(225,233,241,.10),0 0 8px rgba(205,216,227,.025);
  }

  /* Match presentation overlays. */
  body.attribute-match-mode #attributes .range-shell{
    overflow:visible!important;
  }

  body.attribute-match-mode #attributes .visual-track{
    opacity:.23;
    transition:opacity .16s ease;
  }

  body.attribute-match-mode #attributes .attr-row.match-dragging .visual-track,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover .visual-track{
    opacity:1;
  }

  #attributes .match-result-fill,
  #attributes .match-result-dot,
  #attributes .match-base-marker,
  #attributes .match-cap-marker,
  #attributes .match-drag-value{
    display:none;
  }

  body.attribute-match-mode #attributes .match-result-fill{
    display:block;
    position:absolute;
    z-index:8;
    left:0;
    top:50%;
    width:var(--match-display-pct,0%);
    height:5px;
    transform:translateY(-50%);
    border-radius:999px;
    background:linear-gradient(90deg,rgba(189,201,211,.70),rgba(226,233,238,.92));
    box-shadow:0 0 8px rgba(205,216,227,.06);
    pointer-events:none;
    transition:
      width .22s cubic-bezier(.22,.68,.24,1),
      opacity .15s ease;
  }

  body.attribute-match-mode #attributes .match-result-dot{
    display:block;
    position:absolute;
    z-index:12;
    left:var(--match-display-pct,0%);
    top:50%;
    width:14px;
    height:14px;
    transform:translate(-50%,-50%);
    border:2px solid rgba(229,235,240,.95);
    border-radius:50%;
    background:#111820;
    box-shadow:
      0 0 0 2px rgba(205,216,227,.10),
      0 2px 8px rgba(0,0,0,.28);
    pointer-events:auto;
    transition:
      left .22s cubic-bezier(.22,.68,.24,1),
      opacity .15s ease;
  }

  body.attribute-match-mode #attributes .attr-row.match-dragging .match-result-fill,
  body.attribute-match-mode #attributes .attr-row.match-dragging .match-result-dot,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover .match-result-fill,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover .match-result-dot{
    opacity:.14;
  }

  /* The actual draggable base position only appears when the user is interacting. */
  body.attribute-match-mode #attributes .match-base-marker{
    display:block;
    position:absolute;
    z-index:14;
    left:var(--match-base-pct,0%);
    top:50%;
    width:8px;
    height:8px;
    transform:translate(-50%,-50%);
    border:1px solid rgba(225,233,239,.55);
    border-radius:50%;
    background:#121921;
    opacity:0;
    pointer-events:none;
    transition:opacity .14s ease;
  }

  body.attribute-match-mode #attributes .attr-row .range-shell:hover .match-base-marker,
  body.attribute-match-mode #attributes .attr-row.match-dragging .match-base-marker{
    opacity:.82;
  }

  /* CAP marker: always visible in Match mode when the archetype cap is below 99. */
  body.attribute-match-mode #attributes .match-cap-marker{
    display:block;
    position:absolute;
    z-index:10;
    left:var(--match-cap-pct,100%);
    top:5px;
    bottom:5px;
    width:1px;
    transform:translateX(-.5px);
    background:rgba(210,220,228,.20);
    pointer-events:none;
  }

  body.attribute-match-mode #attributes .match-cap-marker::after{
    content:"CAP";
    position:absolute;
    left:50%;
    top:-9px;
    transform:translateX(-50%);
    color:#66727d;
    font-size:7px;
    font-weight:750;
    letter-spacing:.02em;
    line-height:1;
  }

  /* During dragging: base number follows the real draggable point.
     If AP has become ineffective, the second line shows the exact wasted AP. */
  body.attribute-match-mode #attributes .attr-row.match-dragging .match-drag-value{
    display:flex;
    position:absolute;
    z-index:25;
    left:var(--match-base-pct,0%);
    bottom:calc(50% + 12px);
    transform:translateX(-50%);
    min-width:24px;
    padding:3px 5px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1px;
    border:1px solid rgba(218,227,234,.12);
    border-radius:6px;
    background:rgba(10,15,20,.94);
    box-shadow:0 5px 12px rgba(0,0,0,.28);
    pointer-events:none;
    white-space:nowrap;
  }

  body.attribute-match-mode #attributes .match-drag-value b{
    color:#e6ebef;
    font-size:10px;
    font-weight:800;
    line-height:1;
    font-variant-numeric:tabular-nums;
  }

  body.attribute-match-mode #attributes .match-drag-value small{
    display:none;
    color:#c5756d;
    font-size:7.5px;
    font-weight:760;
    line-height:1;
  }

  body.attribute-match-mode #attributes .match-drag-value.has-waste small{
    display:block;
  }

  /* Red dot is intentionally tiny: persistent warning, not a dominant state. */
  body.attribute-match-mode #attributes .match-result-dot.has-waste::after{
    content:"";
    position:absolute;
    right:-4px;
    top:-4px;
    width:6px;
    height:6px;
    border:1px solid rgba(10,15,20,.92);
    border-radius:50%;
    background:#bf645d;
    box-shadow:0 0 0 2px rgba(191,100,93,.09);
  }

  /* In idle Match mode, the browser thumb should not compete with the final marker.
     Hover/drag brings the base interaction back. */
  body.attribute-match-mode #attributes .mini-slider input[type="range"]::-webkit-slider-thumb{
    opacity:0!important;
  }
  body.attribute-match-mode #attributes .mini-slider input[type="range"]::-moz-range-thumb{
    opacity:0!important;
  }
  body.attribute-match-mode #attributes .attr-row.match-dragging .mini-slider input[type="range"]::-webkit-slider-thumb,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover input[type="range"]::-webkit-slider-thumb{
    opacity:1!important;
  }
  body.attribute-match-mode #attributes .attr-row.match-dragging .mini-slider input[type="range"]::-moz-range-thumb,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover input[type="range"]::-moz-range-thumb{
    opacity:1!important;
  }

  /* Right-side value becomes the final Match Attribute. +/- still edit base. */
  body.attribute-match-mode #attributes .stepper input{
    color:#e4e9ed!important;
    cursor:default!important;
  }

  body.attribute-match-mode #attributes .attr-row.is-over-archetype-cap .stepper input{
    color:#e4e9ed!important;
  }
}


/* ===== SOURCE: css/206-v5564-attribute-match-interaction-clean.css ===== */

/* v5.5.64 · One-track / one-thumb Match Attribute interaction.
   Final Match Attribute is expressed by the soft bar only; the only circle
   visible on hover/drag is the real draggable Build Attribute thumb. */

@media(min-width:761px){
  /* Remove prototype-only extra circles and duplicate CAP indicator. */
  body.attribute-match-mode #attributes .match-result-dot,
  body.attribute-match-mode #attributes .match-base-marker,
  body.attribute-match-mode #attributes .match-cap-marker{
    display:none!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  /* Final Match Attribute is bar-only. Slightly softer so the original price /
     cap track remains readable underneath. */
  body.attribute-match-mode #attributes .match-result-fill{
    display:block!important;
    z-index:8!important;
    height:5px!important;
    border-radius:999px!important;
    background:
      linear-gradient(
        90deg,
        rgba(205,216,227,.43),
        rgba(226,233,238,.67)
      )!important;
    box-shadow:
      0 0 8px rgba(205,216,227,.035)!important;
    opacity:.78!important;
  }

  /* While editing, let the base-price track and the real thumb become primary.
     The Match bar remains as a faint live reference. */
  body.attribute-match-mode #attributes .attr-row.match-dragging .match-result-fill,
  body.attribute-match-mode #attributes .attr-row .range-shell:hover .match-result-fill{
    opacity:.20!important;
  }

  /* Native base thumb is the only circle.
     Idle = no circle. Hover/drag = one circle at Build Attribute. */
  body.attribute-match-mode #attributes .mini-slider input[type="range"]::-webkit-slider-thumb{
    opacity:0!important;
  }
  body.attribute-match-mode #attributes .mini-slider input[type="range"]::-moz-range-thumb{
    opacity:0!important;
  }

  body.attribute-match-mode #attributes .attr-row .range-shell:hover input[type="range"]::-webkit-slider-thumb,
  body.attribute-match-mode #attributes .attr-row.match-dragging .mini-slider input[type="range"]::-webkit-slider-thumb{
    opacity:1!important;
  }
  body.attribute-match-mode #attributes .attr-row .range-shell:hover input[type="range"]::-moz-range-thumb,
  body.attribute-match-mode #attributes .attr-row.match-dragging .mini-slider input[type="range"]::-moz-range-thumb{
    opacity:1!important;
  }

  /* Wasted AP persists after release as a tiny red end tick rather than a dot. */
  #attributes .match-waste-tick{
    display:none;
  }

  body.attribute-match-mode #attributes .match-waste-tick{
    position:absolute;
    z-index:13;
    left:var(--match-display-pct,0%);
    top:50%;
    width:2px;
    height:9px;
    transform:translate(-1px,-50%);
    border-radius:2px;
    background:#b8615b;
    box-shadow:0 0 5px rgba(184,97,91,.13);
    pointer-events:none;
  }

  body.attribute-match-mode #attributes .match-waste-tick.has-waste{
    display:block;
  }

  /* During drag the waste message is already explicit, so hide the idle tick. */
  body.attribute-match-mode #attributes .attr-row.match-dragging .match-waste-tick{
    display:none!important;
  }

  /* Match AP cost toast moves to the number control, not the slider. */
  body.attribute-match-mode .ap-point-toast.match-number-anchor{
    z-index:180!important;
  }
}


/* ===== SOURCE: css/207-v5565-attribute-match-color-carry.css ===== */

/* v5.5.65 · Carry the established slider colour logic into Match mode.
   While dragging, the real Build track still shows Build colour.
   After release, the idle Match-result bar uses the final Match colour. */

@media(min-width:761px){
  body.attribute-match-mode #attributes .attr-row{
    --match-fill-color: rgba(205,216,227,.67);
  }

  body.attribute-match-mode #attributes .match-result-fill{
    background:
      linear-gradient(
        90deg,
        color-mix(in srgb, var(--match-fill-color) 72%, white 0%),
        color-mix(in srgb, var(--match-fill-color) 96%, white 0%)
      )!important;
    box-shadow:
      0 0 8px color-mix(in srgb, var(--match-fill-color) 14%, transparent)!important;
  }

  /* Fallback for engines without color-mix support. */
  @supports not (background: color-mix(in srgb, red 50%, white 50%)){
    body.attribute-match-mode #attributes .match-result-fill{
      background:var(--match-fill-color)!important;
      box-shadow:0 0 8px rgba(0,0,0,.06)!important;
    }
  }
}


/* ===== SOURCE: css/stable-bundle-020.css ===== */
/* === SOURCE: css/208-v5566-base-track-muted.css === */

/* v5.5.66 · Bring the calm Match-mode rail treatment into Base mode.
   Purchased colour remains crisp; only the passive rail is muted. */

@media(min-width:761px){
  body:not(.attribute-match-mode) #attributes .mini-slider .visual-track{
    background:
      color-mix(in srgb,var(--pc-beyond) 38%,transparent)!important;
    transition:background-color .16s ease!important;
  }

  body:not(.attribute-match-mode) #attributes .mini-slider .track-seg.affordable{
    background:
      color-mix(in srgb,var(--pc-affordable) 38%,transparent)!important;
  }

  body:not(.attribute-match-mode) #attributes .mini-slider .track-seg.unavailable{
    background:
      color-mix(in srgb,var(--pc-unavailable) 38%,transparent)!important;
  }

  /* Purchased segment keeps the existing value-state colour at full strength. */
  body:not(.attribute-match-mode) #attributes .mini-slider .track-seg.purchased{
    opacity:1!important;
  }

  /* A little more information appears only while the user is examining the rail. */
  body:not(.attribute-match-mode) #attributes .range-shell:hover .visual-track{
    background:
      color-mix(in srgb,var(--pc-beyond) 58%,transparent)!important;
  }

  body:not(.attribute-match-mode) #attributes .range-shell:hover .track-seg.affordable{
    background:
      color-mix(in srgb,var(--pc-affordable) 58%,transparent)!important;
  }

  body:not(.attribute-match-mode) #attributes .range-shell:hover .track-seg.unavailable{
    background:
      color-mix(in srgb,var(--pc-unavailable) 58%,transparent)!important;
  }

  /* Safe fallback for older browsers without color-mix. */
  @supports not (background:color-mix(in srgb,red 50%,transparent)){
    body:not(.attribute-match-mode) #attributes .mini-slider .visual-track{
      opacity:.55!important;
    }
    body:not(.attribute-match-mode) #attributes .mini-slider .track-seg.purchased{
      opacity:1!important;
    }
    body:not(.attribute-match-mode) #attributes .range-shell:hover .visual-track{
      opacity:.72!important;
    }
  }
}

/* === SOURCE: css/209-v5567-archetype-ux-state-polish.css === */

/* v5.5.67 · AP help popover, eyebrow eye-state, two-tone value modes,
   and a stronger archetype-switch affordance. */

@media(min-width:761px){
  /* ---------- 1. AP Price help: cursor-side 2 × 2 popover ---------- */
  #attributeDesktopToolbar .attribute-price-body{
    position:fixed!important;
    z-index:2147482500!important;
    left:var(--ap-price-pop-x,50%)!important;
    top:var(--ap-price-pop-y,120px)!important;
    width:310px!important;
    max-width:calc(100vw - 20px)!important;
    padding:10px!important;
    margin:0!important;
    transform:none!important;
  }

  #attributeDesktopToolbar .attribute-price-body .cost-legend{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin:0!important;
  }

  #attributeDesktopToolbar .attribute-price-body .cost-legend-item{
    min-width:0!important;
    min-height:52px!important;
    padding:8px 9px!important;
    border-radius:9px!important;
  }

  #attributeDesktopToolbar .attribute-price-body .cost-help-note{
    grid-column:1 / -1!important;
    margin-top:7px!important;
    padding-top:8px!important;
  }

  /* ---------- 2. Filtered eye = eye + eyebrow, not slash ---------- */
  #attributeDesktopToolbar .attribute-eye-off .attribute-eye-brow{
    stroke-width:2.05!important;
    opacity:.95!important;
  }

  #attributeDesktopToolbar .attribute-visibility-button.is-filtered{
    color:#d8c77f!important;
    border-color:rgba(216,199,127,.20)!important;
    background:rgba(216,199,127,.045)!important;
    box-shadow:inset 0 0 0 1px rgba(216,199,127,.018)!important;
  }

  /* ---------- 3. Base / Match use restrained distinct colours ---------- */
  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="base"].active{
    color:#8fcfc2!important;
    border-color:rgba(91,184,165,.20)!important;
    background:linear-gradient(180deg,rgba(73,165,148,.125),rgba(73,165,148,.050))!important;
    box-shadow:
      inset 0 0 0 1px rgba(126,211,195,.055),
      0 0 9px rgba(73,165,148,.025)!important;
  }

  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="match"].active{
    color:#dda087!important;
    border-color:rgba(210,119,88,.21)!important;
    background:linear-gradient(180deg,rgba(198,104,73,.125),rgba(198,104,73,.050))!important;
    box-shadow:
      inset 0 0 0 1px rgba(231,153,126,.050),
      0 0 9px rgba(198,104,73,.025)!important;
  }

  /* ---------- 5. Archetype switch is a primary interaction ---------- */
  .global-archetype-overview-card .ovc-model-trigger{
    min-height:54px!important;
    grid-template-columns:40px minmax(0,1fr) 86px!important;
    gap:9px!important;
    margin:-2px -5px!important;
    width:calc(100% + 10px)!important;
    padding:7px 5px!important;
    border:1px solid rgba(215,224,232,.075)!important;
    border-radius:12px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.018),rgba(255,255,255,.008))!important;
  }

  .global-archetype-overview-card .ovc-model-logo{
    width:38px!important;
    height:38px!important;
  }
  .global-archetype-overview-card .ovc-model-logo img{
    width:35px!important;
    height:35px!important;
  }

  .global-archetype-overview-card .ovc-model-copy{
    min-width:0!important;
    height:36px!important;
    min-height:36px!important;
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
  }

  .global-archetype-overview-card .ovc-model-copy strong{
    font-size:22px!important;
    line-height:36px!important;
    font-weight:840!important;
    letter-spacing:-.025em!important;
  }

  .global-archetype-overview-card .ovc-model-copy span{
    font-size:8.5px!important;
    line-height:1!important;
    font-weight:700!important;
  }

  .global-archetype-overview-card .ovc-model-action{
    width:86px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 9px!important;
    gap:5px!important;
    color:#aeb8c1!important;
    border-color:rgba(205,216,227,.17)!important;
    background:rgba(205,216,227,.035)!important;
    border-radius:10px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  .global-archetype-overview-card .ovc-model-action-label{
    display:inline!important;
    font-size:9.5px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:.01em!important;
  }

  .global-archetype-overview-card .ovc-model-action .ovc-chevron{
    width:11px!important;
    height:11px!important;
    flex-basis:11px!important;
  }

  .global-archetype-overview-card .ovc-model-trigger:hover{
    border-color:rgba(216,184,95,.15)!important;
    background:linear-gradient(90deg,rgba(255,255,255,.026),rgba(216,184,95,.032))!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.026),
      0 0 0 1px rgba(216,184,95,.018)!important;
  }

  .global-archetype-overview-card .ovc-model-trigger:hover .ovc-model-action,
  .global-archetype-overview-card .ovc-model-trigger[aria-expanded="true"] .ovc-model-action{
    color:#dfc878!important;
    border-color:rgba(216,184,95,.38)!important;
    background:rgba(216,184,95,.080)!important;
    box-shadow:0 0 0 3px rgba(216,184,95,.030)!important;
  }
}

@media(min-width:761px) and (max-width:1050px){
  .global-archetype-overview-card .ovc-model-trigger{
    grid-template-columns:38px minmax(0,1fr) 36px!important;
  }
  .global-archetype-overview-card .ovc-model-action{
    width:36px!important;
    padding:0!important;
  }
  .global-archetype-overview-card .ovc-model-action-label{
    display:none!important;
  }
}


/* ===== SOURCE: css/stable-bundle-021.css ===== */
/* === SOURCE: css/210-v5568-ap-price-popover-top.css === */

@media(min-width:761px){
  #attributeDesktopToolbar .attribute-price-body{
    /* Extra guard so the panel never inherits a lower legacy position. */
    top:var(--ap-price-pop-y,10px)!important;
  }
}

/* === SOURCE: css/211-v5569-ap-price-popover-balanced.css === */

@media(min-width:761px){
  #attributeDesktopToolbar .attribute-price-body{
    top:var(--ap-price-pop-y,72px)!important;
  }
}


/* ===== SOURCE: css/stable-bundle-022.css ===== */
/* === SOURCE: css/212-v5571-archetype-header-unified.css === */

/* v5.5.71 · One archetype-header geometry everywhere, including My Build.
   Selected archetype identity becomes a vertical Chinese / English lockup. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-model-trigger,
  body.build-overview-active .global-archetype-overview-card .ovc-model-trigger{
    min-height:56px!important;
    grid-template-columns:40px minmax(0,1fr) 86px!important;
    gap:9px!important;
    margin:-2px -5px!important;
    width:calc(100% + 10px)!important;
    padding:7px 5px!important;
    border:1px solid rgba(215,224,232,.075)!important;
    border-radius:12px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.018),rgba(255,255,255,.008))!important;
  }

  .global-archetype-overview-card .ovc-model-logo,
  body.build-overview-active .global-archetype-overview-card .ovc-model-logo{
    width:38px!important;
    height:38px!important;
    align-self:center!important;
  }

  .global-archetype-overview-card .ovc-model-logo img,
  body.build-overview-active .global-archetype-overview-card .ovc-model-logo img{
    width:35px!important;
    height:35px!important;
  }

  /* Selected archetype name: Chinese primary, English secondary underneath. */
  .global-archetype-overview-card .ovc-model-copy,
  body.build-overview-active .global-archetype-overview-card .ovc-model-copy{
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:3px!important;
    flex-wrap:nowrap!important;
    overflow:hidden!important;
  }

  .global-archetype-overview-card .ovc-model-copy strong,
  body.build-overview-active .global-archetype-overview-card .ovc-model-copy strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#eef2f5!important;
    font-size:20px!important;
    line-height:1.05!important;
    font-weight:840!important;
    letter-spacing:-.02em!important;
  }

  .global-archetype-overview-card .ovc-model-copy span,
  body.build-overview-active .global-archetype-overview-card .ovc-model-copy span{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#707c88!important;
    font-size:8.5px!important;
    line-height:1!important;
    font-weight:700!important;
    letter-spacing:.02em!important;
  }

  /* My Build previously had a more specific 27px legacy override.
     Explicitly lock it to the same 36px action used everywhere else. */
  .global-archetype-overview-card .ovc-model-action,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action{
    width:86px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 9px!important;
    gap:5px!important;
    align-self:center!important;
    color:#aeb8c1!important;
    border-color:rgba(205,216,227,.17)!important;
    background:rgba(205,216,227,.035)!important;
    border-radius:10px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  .global-archetype-overview-card .ovc-model-action-label,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action-label{
    display:inline!important;
    font-size:9.5px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:.01em!important;
  }

  .global-archetype-overview-card .ovc-model-action .ovc-chevron,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action .ovc-chevron{
    width:11px!important;
    height:11px!important;
    flex:0 0 11px!important;
  }
}

@media(min-width:761px) and (max-width:1050px){
  .global-archetype-overview-card .ovc-model-trigger,
  body.build-overview-active .global-archetype-overview-card .ovc-model-trigger{
    grid-template-columns:38px minmax(0,1fr) 36px!important;
  }

  .global-archetype-overview-card .ovc-model-action,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action{
    width:36px!important;
    padding:0!important;
  }

  .global-archetype-overview-card .ovc-model-action-label,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action-label{
    display:none!important;
  }
}

/* === SOURCE: css/213-v5572-body-card-flip.css === */

/* v5.5.72 · Body section becomes a two-sided stage:
   front = scaled Inspiration Player card, back = body coordinate controller. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-section{
    perspective:1100px!important;
  }

  .global-archetype-overview-card .ovc-body-flip-stage{
    position:relative!important;
    width:100%!important;
    height:330px!important;
    margin-top:10px!important;
    border-top:1px solid rgba(255,255,255,.05)!important;
    overflow:visible!important;
    perspective:1100px!important;
  }

  .global-archetype-overview-card .ovc-body-flip-inner{
    position:relative!important;
    width:100%!important;
    height:100%!important;
    transform-style:preserve-3d!important;
    transform:rotateY(0deg);
    transition:transform .48s cubic-bezier(.2,.72,.18,1)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-flip-inner{
    transform:rotateY(-180deg)!important;
  }

  .global-archetype-overview-card .ovc-body-face{
    position:absolute!important;
    inset:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transform-style:preserve-3d!important;
  }

  .global-archetype-overview-card .ovc-body-card-face{
    pointer-events:auto;
  }

  .global-archetype-overview-card .ovc-body-control-face{
    transform:rotateY(180deg)!important;
    pointer-events:none;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    pointer-events:none;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    pointer-events:auto;
  }

  /* The moved My Build portrait card keeps its original design proportions.
     The whole card is scaled as one object, so typography/icons shrink together. */
  .global-archetype-overview-card .ovc-body-card-face .overview-portrait-card{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:260px!important;
    min-width:260px!important;
    max-width:260px!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    grid-area:auto!important;
    transform:
      translate(-50%,-50%)
      scale(var(--ovc-body-card-scale,.62))!important;
    transform-origin:50% 50%!important;
    border-radius:16px!important;
    opacity:1!important;
    box-shadow:0 16px 38px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
  }

  .global-archetype-overview-card .ovc-body-card-face .overview-portrait-stage{
    min-height:390px!important;
    height:390px!important;
  }

  .global-archetype-overview-card .ovc-body-card-face .overview-portrait-footer{
    min-height:58px!important;
  }

  /* Coordinate face no longer uses the old expand/collapse height animation:
     the 3D stage owns visibility and motion now. */
  .global-archetype-overview-card .ovc-body-control-face .ovc-body-expanded{
    display:grid!important;
    width:100%!important;
    max-height:none!important;
    opacity:1!important;
    overflow:visible!important;
    margin:0!important;
    padding:12px 0 0!important;
    border-top:0!important;
    transform:none!important;
    transition:none!important;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    gap:12px!important;
    align-items:center!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-plot{
    aspect-ratio:1.45 / 1!important;
  }

  /* Horizontal chevron: right = 调节, left = 收起. */
  .global-archetype-overview-card .ovc-body-toggle .ovc-chevron{
    transform:rotate(0deg)!important;
  }
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-toggle .ovc-chevron{
    transform:rotate(180deg)!important;
  }

  /* My Build is now a two-column information page because the portrait card
     permanently lives in the persistent Body section on desktop. */
  body.build-overview-active #playerCardPanel .build-overview-grid{
    grid-template-columns:minmax(300px,.88fr) minmax(520px,1.48fr)!important;
    grid-template-areas:"profile stats"!important;
    gap:10px!important;
  }
}

/* Slightly shorter stage on compact laptop heights. */
@media(min-width:761px) and (max-height:800px){
  .global-archetype-overview-card .ovc-body-flip-stage{
    height:300px!important;
  }
}

@media(max-width:760px){
  /* Mobile keeps the original My Build portrait placement and body accordion. */
  .ovc-body-flip-stage{
    display:none!important;
  }
}


/* ===== SOURCE: css/214-v5573-body-showcase-card-flip-fix.css ===== */

/* v5.5.73 · Correct card target:
   front face uses the real black/gold Build Showcase Card, not the legacy portrait card.
   Visibility timing also guarantees that the two cube faces never leak through each other. */

@media(min-width:761px){
  /* Legacy portrait card is not part of the Body stage. */
  .global-archetype-overview-card .ovc-body-card-face .overview-portrait-card{
    display:none!important;
  }

  /* Real showcase card keeps its full native design and is scaled as one object. */
  .global-archetype-overview-card .ovc-body-card-face .fc-build-showcase-card{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:342px!important;
    min-width:342px!important;
    max-width:342px!important;
    aspect-ratio:576 / 800!important;
    margin:0!important;
    transform:
      translate(-50%,-50%)
      scale(var(--ovc-showcase-scale,.67))!important;
    transform-origin:50% 50%!important;
    filter:drop-shadow(0 15px 28px rgba(0,0,0,.29))!important;
    opacity:1!important;
    overflow:visible!important;
  }

  /* Nothing in My Build should reserve a third-column card slot after the card moves. */
  body.build-overview-active #playerCardPanel .overview-showcase-column{
    display:none!important;
  }

  /* Stronger face isolation than v5.5.72. */
  .global-archetype-overview-card .ovc-body-face{
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transform-style:preserve-3d!important;
    will-change:transform,opacity!important;
  }

  .global-archetype-overview-card .ovc-body-card-face{
    transform:translateZ(1px) rotateY(0deg)!important;
    opacity:1!important;
    visibility:visible!important;
    transition:
      opacity .16s ease 0s,
      visibility 0s linear 0s!important;
  }

  .global-archetype-overview-card .ovc-body-control-face{
    transform:translateZ(0) rotateY(180deg)!important;
    opacity:0!important;
    visibility:hidden!important;
    transition:
      opacity .16s ease .22s,
      visibility 0s linear .22s!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    opacity:0!important;
    visibility:hidden!important;
    transition:
      opacity .14s ease 0s,
      visibility 0s linear .22s!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    opacity:1!important;
    visibility:visible!important;
    transition:
      opacity .16s ease .20s,
      visibility 0s linear .20s!important;
  }

  /* The stage can be slightly taller because the real card is more visually dense. */
  .global-archetype-overview-card .ovc-body-flip-stage{
    height:342px!important;
  }
}

@media(min-width:761px) and (max-height:800px){
  .global-archetype-overview-card .ovc-body-flip-stage{
    height:310px!important;
  }
}


/* ===== SOURCE: css/215-v5574-showcase-style-mirror.css ===== */

/* v5.5.74 · Mirror the complete finalized My Build showcase-card styling
   into the persistent Body front face, then scale the whole component as one unit. */
.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{
  left:19.8%!important;
  top:16.1%!important;
  min-width:70px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.36vw,23px)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup span{
  margin-top:6px!important;
}@media (max-width:760px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{left:20.2%!important; top:16.4%!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup strong{font-size:22px!important;}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-logo{display:none!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{
  display:block;
  width:34px;
  height:34px;
  margin-top:11px;
  object-fit:contain;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.42));
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  left:0!important;
  top:52.2%!important;
  width:68px!important;
  height:68px!important;
  transform:translate(-50%,-50%)!important;
  background:linear-gradient(145deg,#f0d886,#b58d31)!important;
  border:1px solid rgba(249,226,142,.72)!important;
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)!important;
  box-shadow:0 0 12px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:"";
  position:absolute;
  inset:3px;
  border:1px solid rgba(255,245,200,.46);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-inner{
  transform:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  width:39px!important;
  height:39px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  background:linear-gradient(145deg,#eceff2,#c6cbd1)!important;
  border-color:rgba(255,255,255,.48)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver::before{
  border-color:rgba(255,255,255,.58)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stats{
  left:14.4%!important;
  right:11.9%!important;
  top:74.2%!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stat span{
  font-size:clamp(9px,.60vw,11px)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stat strong{
  margin-top:5px!important;
  font-size:clamp(18px,1.28vw,24px)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{
  left:16.8%!important;
  top:14.2%!important;
  min-width:96px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.44vw,24px)!important;
  line-height:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup span{
  margin-top:8px!important;
  font-size:clamp(10px,.82vw,14px)!important;
  line-height:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{
  width:36px!important;
  height:36px!important;
  margin-top:10px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  left:0!important;
  top:52.2%!important;
  width:76px!important;
  height:86px!important;
  transform:translate(-50%,-50%)!important;
  border:none!important;
  background:linear-gradient(180deg,#f4de94 0%,#dfbe58 100%)!important;
  clip-path:polygon(22% 0,78% 0,100% 31%,100% 55%,50% 100%,0 55%,0 31%)!important;
  box-shadow:0 0 12px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:3px!important;
  border:1px solid rgba(255,245,200,.48)!important;
  clip-path:polygon(22% 0,78% 0,100% 31%,100% 55%,50% 100%,0 55%,0 31%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  width:36px!important;
  height:36px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  background:linear-gradient(180deg,#eef2f5 0%,#c8ced5 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-identity{
  left:14.6%!important;
  right:11.8%!important;
  top:63.0%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{
  min-width:0!important;
  max-width:100%!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:12px!important;
  flex-wrap:nowrap!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  display:inline-block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 2px 9px rgba(0,0,0,.78)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{
  color:#ead58b!important;
  font-size:clamp(18px,1.34vw,24px)!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  font-family:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi",serif!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  color:#d9c47c!important;
  margin-top:0!important;
  font-size:clamp(17px,1.26vw,22px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  font-family:"Kaushan Script","Caveat","Segoe Script","Lucida Handwriting",cursive!important;
  text-transform:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stats{
  left:16.2%!important;
  right:13.7%!important;
  top:75.0%!important;
  column-gap:1px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stat span{
  font-size:clamp(10px,.68vw,12px)!important;
  letter-spacing:.02em!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stat strong{
  margin-top:4px!important;
  font-size:clamp(19px,1.36vw,25px)!important;
}@media (max-width:760px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{left:17.6%!important;top:14.5%!important;min-width:84px!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{width:70px!important;height:80px!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{gap:9px!important;}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  left:-0.4%!important;
  top:52.4%!important;
  width:78px!important;
  height:86px!important;
  transform:translate(-50%,-50%)!important;
  border:none!important;
  background:linear-gradient(180deg,#f4df98 0%,#e2c45e 58%,#d2ac3a 100%)!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  box-shadow:0 6px 14px rgba(0,0,0,.24), 0 0 0 1px rgba(233,208,120,.34) inset!important;
  overflow:hidden!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  background:linear-gradient(180deg,rgba(255,248,214,.35) 0%,rgba(255,248,214,.12) 28%,rgba(0,0,0,.05) 100%)!important;
  border:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  clip-path:polygon(20% 0,80% 0,100% 30%,100% 52%,50% 100%,0 52%,0 30%)!important;
  box-shadow:inset 0 0 0 1.5px rgba(120,82,12,.20), inset 0 -10px 16px rgba(115,82,19,.08)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-inner{
  transform:none!important;
  position:relative!important;
  z-index:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  width:34px!important;
  height:34px!important;
  object-fit:contain!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  background:linear-gradient(180deg,#eef2f5 0%,#d7dde3 55%,#bec6cf 100%)!important;
  box-shadow:0 6px 14px rgba(0,0,0,.22), 0 0 0 1px rgba(255,255,255,.26) inset!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver::before{
  background:linear-gradient(180deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.10) 30%,rgba(0,0,0,.04) 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver::after{
  box-shadow:inset 0 0 0 1.5px rgba(71,81,94,.16), inset 0 -10px 16px rgba(71,81,94,.05)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  left:-0.5%!important;
  top:52.4%!important;
  width:79px!important;
  height:88px!important;
  transform:translate(-50%,-50%)!important;
  background:none!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  overflow:visible!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background-image:var(--ps-shell-gold)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  border:0!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver::before{
  background-image:var(--ps-shell-silver)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::after{display:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-inner{
  transform:none!important;
  position:relative!important;
  z-index:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  width:34px!important;
  height:34px!important;
  filter:none!important;
}@media (max-width:760px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{width:72px!important;height:80px!important}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  --badge-h:66px!important;
  --badge-w:79.2px!important;
  --icon-box:39.5px!important;
  --gold-lift:3.93px!important;
  left:2.2%!important;
  top:52.3%!important;
  width:88px!important;
  height:78px!important;
  transform:translate(-50%,-50%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  --badge-w:66px!important;
  --icon-box:38.5px!important;
  --gold-lift:0px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{
  left:16.9%!important;
  top:17.2%!important;
  min-width:96px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:0!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup strong{
  font-size:clamp(16px,1.42vw,24px)!important;
  line-height:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup span{
  margin-top:8px!important;
  font-size:clamp(10px,.82vw,14px)!important;
  line-height:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{
  position:absolute!important;
  left:16.9%!important;
  top:28.9%!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
  object-fit:contain!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.42))!important;
  z-index:6!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{
  bottom:1.5%!important;
  height:81.8%!important;
  transform:translateX(-50%)!important;
  object-position:center bottom!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  display:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-identity{
  left:14.8%!important;
  right:12.0%!important;
  top:63.2%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{
  width:100%!important;
  text-align:center!important;
  color:#ead58b!important;
  font-size:clamp(20px,1.48vw,26px)!important;
  line-height:1.04!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  font-family:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi",serif!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stats{
  left:16.2%!important;
  right:13.7%!important;
  top:73.0%!important;
  column-gap:1px!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
    --badge-h:61px!important;
    --badge-w:73.2px!important;
    --icon-box:36.5px!important;
    --gold-lift:3.63px!important;
    width:82px!important;
    height:72px!important;
    left:2.4%!important;
  }.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
    --badge-w:61px!important;
    --icon-box:35.6px!important;
  }.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{top:17.6%!important;left:17.2%!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{left:17.2%!important;top:29.4%!important;width:34px!important;height:34px!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{height:80.6%!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stats{top:73.2%!important;}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup{display:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{
  left:50%!important;
  top:auto!important;
  bottom:5.0%!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  transform-origin:center center!important;
  object-fit:contain!important;
  z-index:9!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.48))!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  --badge-h:66px!important;
  --badge-w:79.2px!important;
  --icon-box:39.5px!important;
  --gold-lift:3.93px!important;
  left:14.0%!important;
  top:52.0%!important;
  width:88px!important;
  height:78px!important;
  transform:translate(-50%,-50%)!important;
  z-index:8!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  --badge-w:66px!important;
  --icon-box:38.5px!important;
  --gold-lift:0px!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-archetype-logo{bottom:4.9%!important;width:22px!important;height:22px!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
    --badge-h:61px!important;
    --badge-w:73.2px!important;
    --icon-box:36.5px!important;
    --gold-lift:3.63px!important;
    left:14.3%!important;
    width:82px!important;
    height:72px!important;
  }.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{--badge-w:61px!important;--icon-box:35.6px!important}}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardPlus{display:none!important}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardArchetypeLogo{display:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-clone{
  --badge-h:66px;
  --badge-w:79.2px;
  --icon-box:39.5px;
  --gold-lift:3.93px;
  position:absolute!important;
  z-index:9!important;
  width:88px!important;
  height:78px!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  overflow:visible!important;
  pointer-events:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-clone::before{
  left:50%!important;
  top:50%!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-bottom-logo{
  position:absolute!important;
  z-index:10!important;
  width:26px!important;
  height:26px!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.52))!important;
  pointer-events:none!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-clone{
    --badge-h:61px;
    --badge-w:73.2px;
    --icon-box:36.5px;
    --gold-lift:3.63px;
    width:82px!important;
    height:72px!important;
  }.global-archetype-overview-card .ovc-body-card-face .fc-build-card-bottom-logo{width:23px!important;height:23px!important}}.global-archetype-overview-card .ovc-body-card-face .fc-build-showcase-card{
  width:min(100%,350px)!important;
  margin:0 auto!important;
}@media (max-width:1050px) and (min-width:761px){.global-archetype-overview-card .ovc-body-card-face .fc-build-showcase-card{width:min(100%,304px)!important}}@media (max-width:760px){.global-archetype-overview-card .ovc-body-card-face .fc-build-showcase-card{width:min(318px,88vw)!important}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-frame{
  z-index:3!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-stage{
  z-index:2!important;
  left:11.2%!important;
  right:10.4%!important;
  top:9.8%!important;
  height:57.5%!important;
  overflow:hidden!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{
  left:50%!important;
  top:0!important;
  inset:auto!important;
  width:102%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  transform:translateX(-50%) scale(1.015)!important;
  transform-origin:50% 36%!important;
  mix-blend-mode:screen!important;
  filter:saturate(.92) contrast(1.08) brightness(.98) drop-shadow(0 8px 14px rgba(0,0,0,.24))!important;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 74%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 74%,transparent 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-fade{
  background:
    radial-gradient(circle at 50% 18%,rgba(235,197,90,.14),transparent 35%),
    linear-gradient(180deg,rgba(7,8,10,.02) 0%,transparent 54%,rgba(7,8,10,.34) 73%,rgba(7,8,10,.94) 100%),
    linear-gradient(90deg,rgba(7,8,10,.18),transparent 15%,transparent 85%,rgba(7,8,10,.18))!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  z-index:6!important;
  left:6.1%!important;
  top:49.0%!important;
  width:53px!important;
  height:53px!important;
  transform:rotate(45deg)!important;
  border:1px solid rgba(249,226,142,.72)!important;
  border-radius:0!important;
  background:linear-gradient(145deg,#f0d886,#b58d31)!important;
  box-shadow:0 0 11px rgba(216,184,95,.16),0 2px 7px rgba(0,0,0,.20)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  border:1px solid rgba(255,245,200,.46)!important;
  border-radius:0!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-inner{
  inset:0!important;
  transform:rotate(-45deg)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  width:36px!important;
  height:36px!important;
  object-fit:contain!important;
  filter:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  border-color:rgba(255,255,255,.48)!important;
  background:#e3e7ea!important;
  box-shadow:0 2px 7px rgba(0,0,0,.18)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-frame{
  z-index:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-stage{
  z-index:3!important;
  left:11.8%!important;
  right:10.9%!important;
  top:10.6%!important;
  height:55.8%!important;
  overflow:hidden!important;
  clip-path:polygon(5% 4%,18% 0,32% 0,39% 5%,46% 2%,50% 0,54% 2%,61% 5%,68% 0,82% 0,95% 4%,100% 11%,100% 100%,0 100%,0 11%);
  -webkit-mask-image:none!important;
  mask-image:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{
  z-index:1!important;
  opacity:.98!important;
  mix-blend-mode:normal!important;
  width:104%!important;
  height:104%!important;
  object-fit:cover!important;
  object-position:center 16%!important;
  transform:translateX(-50%) scale(1.02)!important;
  filter:saturate(.94) contrast(1.055) brightness(.98) drop-shadow(0 8px 16px rgba(0,0,0,.30))!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.92) 78%,transparent 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-fade{
  z-index:2!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(235,197,90,.10),transparent 37%),
    linear-gradient(180deg,transparent 0%,transparent 60%,rgba(7,8,10,.28) 77%,rgba(7,8,10,.92) 100%),
    linear-gradient(90deg,rgba(7,8,10,.12),transparent 12%,transparent 88%,rgba(7,8,10,.12))!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-level-lockup,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-identity,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-face-stats{
  z-index:6!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-stage{
  left:10.7%!important;
  right:9.9%!important;
  top:8.8%!important;
  height:59.2%!important;
  overflow:hidden!important;
  clip-path:polygon(5% 5%,18% 0,32% 0,39% 5%,46% 2%,50% 0,54% 2%,61% 5%,68% 0,82% 0,95% 5%,100% 12%,100% 100%,0 100%,0 12%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:1.5%!important;
  width:auto!important;
  height:86.1%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  filter:saturate(.96) contrast(1.04) brightness(.99) drop-shadow(0 10px 16px rgba(0,0,0,.32))!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgba(0,0,0,.92) 86%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 78%,rgba(0,0,0,.92) 86%,transparent 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player-fade{
  background:
    radial-gradient(circle at 50% 21%,rgba(236,199,96,.08),transparent 38%),
    linear-gradient(180deg,transparent 0%,transparent 68%,rgba(7,8,10,.18) 82%,rgba(7,8,10,.74) 100%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  position:relative!important;
  display:block!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  clip-path:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:var(--badge-w)!important;
  height:var(--badge-h)!important;
  transform:translate(-50%,-50%)!important;
  background:var(--fc27-ps-silver) center/100% 100% no-repeat!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.18));
  pointer-events:none!important;
  z-index:1!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus:not(.is-silver)::before{
  background-image:var(--fc27-ps-gold)!important;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.20));
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus::after{display:none!important;content:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus img{
  position:absolute!important;
  z-index:2!important;
  display:block!important;
  left:50%!important;
  top:calc(50% - var(--gold-lift,0px))!important;
  width:var(--icon-box,22px)!important;
  height:var(--icon-box,22px)!important;
  object-fit:contain!important;
  max-width:none!important;
  max-height:none!important;
  filter:none!important;
  opacity:1!important;
  transition:none!important;
  transform:translate(-50%,-50%)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus[data-badge-ready="1"] img{opacity:1!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus span{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#111820!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus[data-badge-ready="1"] span{display:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  --badge-h:72px;--badge-w:86.4px;--icon-box:43px;--gold-lift:4.29px;
  left:0!important;top:52.4%!important;
  width:96px!important;height:84px!important;
  transform:translate(-50%,-50%)!important;
  z-index:7!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  clip-path:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{--badge-w:72px;--icon-box:42px;--gold-lift:0px}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus-inner{position:absolute!important;inset:0!important;display:block!important;transform:none!important;background:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-hidden{display:none!important}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{
  font-size:clamp(22px,1.62vw,29px)!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{
  bottom:1.5%!important;
  height:77.7%!important;
  transform:translateX(-50%)!important;
  object-position:center bottom!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-player{height:76.6%!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{font-size:clamp(21px,1.56vw,27px)!important;}}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-bottom-logo{
  width:28px!important;
  height:28px!important;
  opacity:.98!important;
  filter:brightness(0) saturate(100%) invert(84%) sepia(28%) saturate(704%) hue-rotate(357deg) brightness(98%) contrast(92%) drop-shadow(0 0 10px rgba(220,186,92,.18)) drop-shadow(0 2px 5px rgba(0,0,0,.52))!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-identity{
  overflow:visible!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{
  position:relative!important;
  overflow:visible!important;
  min-height:54px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{
  position:relative!important;
  z-index:2!important;
  font-size:clamp(23px,1.68vw,29px)!important;
  line-height:1.03!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:58%!important;
  transform:translate(-50%,-50%) rotate(-7deg)!important;
  z-index:1!important;
  width:max-content!important;
  max-width:118%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  pointer-events:none!important;
  color:rgba(234,213,139,.24)!important;
  font-size:clamp(28px,2.15vw,37px)!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  font-weight:600!important;
  font-style:italic!important;
  font-family:"Segoe Script","Brush Script MT","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,244,204,.05),0 0 12px rgba(212,176,86,.06)!important;
  opacity:1!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-bottom-logo{width:25px!important;height:25px!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{min-height:50px!important;}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{font-size:clamp(22px,1.7vw,27px)!important;}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{font-size:clamp(25px,2.05vw,33px)!important;top:59%!important;}}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:60%!important;
  transform:translate(-50%,-50%) rotate(-7deg)!important;
  z-index:1!important;
  width:78%!important;
  max-width:78%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:visible!important;
  text-wrap:balance!important;
  pointer-events:none!important;
  color:rgba(233,238,245,.16)!important;
  font-size:clamp(33px,2.55vw,44px)!important;
  line-height:.88!important;
  letter-spacing:.005em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.035),0 0 14px rgba(220,228,238,.035)!important;
  opacity:1!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish.is-two-line,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span.is-two-line{
  width:66%!important;
  max-width:66%!important;
  line-height:.82!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
    font-size:clamp(30px,2.4vw,39px)!important;
    top:61%!important;
    width:80%!important;
    max-width:80%!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish.is-two-line,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span.is-two-line{
    width:69%!important;
    max-width:69%!important;
  }}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-identity{
  overflow:hidden!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{
  position:relative!important;
  overflow:hidden!important;
  min-height:60px!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup strong{
  position:relative!important;
  z-index:2!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:64%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  z-index:1!important;
  width:84%!important;
  max-width:84%!important;
  padding:0 4px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-wrap:balance!important;
  word-break:keep-all!important;
  pointer-events:none!important;
  color:rgba(236,241,247,.20)!important;
  font-size:clamp(36px,2.8vw,48px)!important;
  line-height:.84!important;
  letter-spacing:.003em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.025),0 0 10px rgba(220,228,238,.028)!important;
  opacity:1!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish.is-two-line,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span.is-two-line{
  width:70%!important;
  max-width:70%!important;
  line-height:.80!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{min-height:56px!important;}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span{
    top:65%!important;
    width:86%!important;
    max-width:86%!important;
    font-size:clamp(33px,2.6vw,42px)!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish.is-two-line,.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup span.is-two-line{
    width:74%!important;
    max-width:74%!important;
  }}.global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard{
  overflow:hidden!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglish{
  display:none!important;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-name-lockup{
  overflow:visible!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
  position:absolute!important;
  z-index:4!important;
  left:50%!important;
  top:73.2%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:138%!important;
  max-width:none!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  pointer-events:none!important;
  color:rgba(233,238,245,.16)!important;
  font-size:clamp(48px,3.9vw,66px)!important;
  line-height:.9!important;
  letter-spacing:.003em!important;
  font-weight:700!important;
  font-style:italic!important;
  font-family:"Segoe Script","Brush Script MT","Snell Roundhand","Lucida Handwriting","Apple Chancery",cursive!important;
  text-shadow:0 1px 0 rgba(255,255,255,.035),0 0 12px rgba(220,228,238,.03)!important;
  opacity:1!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{
  width:102%!important;
  white-space:normal!important;
  line-height:.80!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
    top:73.4%!important;
    width:136%!important;
    font-size:clamp(43px,3.55vw,58px)!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{
    width:100%!important;
  }}.global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard{
  overflow:visible!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishMask{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:4!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
  z-index:1!important;
  color:rgba(233,238,245,.12)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.02),0 0 10px rgba(220,228,238,.02)!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
    color:rgba(233,238,245,.115)!important;
  }}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishMask{
  
  left:12.25%!important;
  right:12.25%!important;
  top:4.6%!important;
  bottom:4.35%!important;
  inset:auto!important;
  overflow:hidden!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
  left:50.8%!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{
  left:50.4%!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishMask{
    left:12.55%!important;
    right:12.55%!important;
    top:4.8%!important;
    bottom:4.45%!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{left:50.7%!important;}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{left:50.35%!important;}}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishMask{
  position:absolute!important;
  left:12.25%!important;
  right:12.25%!important;
  top:0!important;
  bottom:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:4!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
  display:block!important;
  left:50.6%!important;
  top:73.4%!important;
  width:138%!important;
  color:rgba(233,238,245,.1305)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.025),0 0 10px rgba(220,228,238,.02)!important;
}.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{
  width:102%!important;
  left:50.25%!important;
}@media (max-width:1180px){.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishMask{
    left:12.55%!important;
    right:12.55%!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay{
    left:50.55%!important;
    top:73.5%!important;
    color:rgba(233,238,245,.126)!important;
  }.global-archetype-overview-card .ovc-body-card-face #overviewBuildCardEnglishUnderlay.is-two-line{
    left:50.2%!important;
  }}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus{
  --icon-ratio:.60;
}.global-archetype-overview-card .ovc-body-card-face .fc-build-card-plus.is-silver{
  --icon-ratio:.58;
}

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:342px!important;
    min-width:342px!important;
    max-width:342px!important;
    aspect-ratio:576 / 800!important;
    margin:0!important;
    transform:
      translate(-50%,-50%)
      scale(var(--ovc-showcase-scale,.67))!important;
    transform-origin:50% 50%!important;
    overflow:visible!important;
    isolation:isolate!important;
  }

  /* The current design uses the cloned edge badge + bottom archetype logo.
     Keep obsolete internal anchors hidden exactly as in the finished My Build card. */
  .global-archetype-overview-card .ovc-body-card-face #overviewBuildCardPlus,
  .global-archetype-overview-card .ovc-body-card-face #overviewBuildCardArchetypeLogo{
    display:none!important;
  }
}



/* ===== SOURCE: css/stable-bundle-023.css ===== */
/* === SOURCE: css/216-v5575-body-back-restore-ceremony.css === */

/* v5.5.75
   Restore the Body controller face to the mature v5.5.71 composition:
   plot first, 2×2 attribute modifiers below.
   Keep only the new cube-like two-face navigation. */

@media(min-width:761px){
  /* ---------- Restore v5.5.71 Body control composition ---------- */
  .global-archetype-overview-card .ovc-body-control-face{
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-expanded{
    display:grid!important;
    width:100%!important;
    box-sizing:border-box!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    align-items:stretch!important;

    margin:0!important;
    padding:9px 0 0!important;
    border-top:0!important;

    max-height:none!important;
    opacity:1!important;
    overflow:visible!important;
    transform:none!important;
    transition:none!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-plot{
    width:100%!important;
    aspect-ratio:1.45 / 1!important;
    min-height:0!important;
    border-radius:11px!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-dot{
    width:18px!important;
    height:18px!important;
    border-width:2px!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-mods{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:5px!important;
    align-self:start!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-mod{
    min-width:0!important;
    padding:6px 8px!important;
    border-radius:9px!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-mod span{
    font-size:8px!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-mod strong{
    font-size:11px!important;
  }

  /* Enough vertical room for the original v5.5.71 plot + modifier stack. */
  .global-archetype-overview-card .ovc-body-flip-stage{
    height:356px!important;
  }

  /* ---------- Slower, more ceremonial cube turn ---------- */
  .global-archetype-overview-card .ovc-body-flip-inner{
    transition:
      transform .86s cubic-bezier(.16,.72,.18,1)!important;
    will-change:transform!important;
  }

  /* Let the outgoing face own the first half of the turn,
     then let the incoming face appear after the midpoint. */
  .global-archetype-overview-card .ovc-body-card-face{
    opacity:1!important;
    visibility:visible!important;
    transition:
      opacity .18s ease .40s,
      visibility 0s linear .40s!important;
  }

  .global-archetype-overview-card .ovc-body-control-face{
    opacity:0!important;
    visibility:hidden!important;
    transition:
      opacity .18s ease 0s,
      visibility 0s linear .43s!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    opacity:0!important;
    visibility:hidden!important;
    transition:
      opacity .18s ease 0s,
      visibility 0s linear .43s!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    opacity:1!important;
    visibility:visible!important;
    transition:
      opacity .20s ease .40s,
      visibility 0s linear .40s!important;
  }

  /* Slight depth cue without changing the geometry of either face. */
  .global-archetype-overview-card .ovc-body-flip-stage{
    perspective:1250px!important;
  }

  .global-archetype-overview-card .ovc-body-flip-inner{
    transform-origin:50% 50%!important;
  }
}

@media(min-width:761px) and (max-height:800px){
  .global-archetype-overview-card .ovc-body-flip-stage{
    height:326px!important;
  }

  .global-archetype-overview-card .ovc-body-control-face .ovc-body-expanded{
    gap:7px!important;
    padding-top:7px!important;
  }
}

/* === SOURCE: css/217-v5576-body-slide-transition.css === */

/* v5.5.76 · Replace cube flip with horizontal slide transition.
   Default: showcase card.
   调节: card slides left, body controls slide in from the right.
   收起: reverse. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-flip-stage{
    overflow:hidden!important;
    perspective:none!important;
  }

  .global-archetype-overview-card .ovc-body-flip-inner{
    position:relative!important;
    width:100%!important;
    height:100%!important;
    transform:none!important;
    transform-style:flat!important;
    transition:none!important;
    will-change:auto!important;
  }

  .global-archetype-overview-card .ovc-body-face{
    position:absolute!important;
    inset:0!important;
    backface-visibility:visible!important;
    -webkit-backface-visibility:visible!important;
    transform-style:flat!important;
    visibility:visible!important;
    opacity:1!important;
    transition:
      transform .68s cubic-bezier(.18,.72,.18,1),
      opacity .28s ease!important;
    will-change:transform!important;
  }

  /* Front card is the default visible panel. */
  .global-archetype-overview-card .ovc-body-card-face{
    transform:translateX(0)!important;
    pointer-events:auto!important;
    z-index:2!important;
  }

  /* Body controller waits just outside the right edge. */
  .global-archetype-overview-card .ovc-body-control-face{
    transform:translateX(104%)!important;
    pointer-events:none!important;
    z-index:3!important;
  }

  /* Open: card exits left, body controls enter from right. */
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    transform:translateX(-104%)!important;
    pointer-events:none!important;
    opacity:.72!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    transform:translateX(0)!important;
    pointer-events:auto!important;
    opacity:1!important;
  }

  /* Kill all legacy rotateY transforms from v5.5.72–75. */
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-flip-inner{
    transform:none!important;
  }

  /* Horizontal arrow semantics remain:
     right = 调节, left = 收起. */
  .global-archetype-overview-card .ovc-body-toggle .ovc-chevron{
    transform:rotate(0deg)!important;
    transition:transform .28s ease!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-toggle .ovc-chevron{
    transform:rotate(180deg)!important;
  }
}

@media(min-width:761px) and (prefers-reduced-motion:reduce){
  .global-archetype-overview-card .ovc-body-face{
    transition:none!important;
  }
}

/* === SOURCE: css/218-v5577-body-slide-direction-arrow.css === */

/* v5.5.77 · Body controls enter from LEFT; showcase card exits RIGHT.
   收起 reverses the motion. Duration = 0.75s. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-face{
    transition:
      transform .75s cubic-bezier(.18,.72,.18,1),
      opacity .30s ease!important;
  }

  /* Default: showcase card visible. */
  .global-archetype-overview-card .ovc-body-card-face{
    transform:translateX(0)!important;
    pointer-events:auto!important;
    z-index:2!important;
  }

  /* Body controls wait just outside the LEFT edge. */
  .global-archetype-overview-card .ovc-body-control-face{
    transform:translateX(-104%)!important;
    pointer-events:none!important;
    z-index:3!important;
  }

  /* Adjust: body enters from left, card leaves to right. */
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    transform:translateX(104%)!important;
    pointer-events:none!important;
    opacity:.72!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    transform:translateX(0)!important;
    pointer-events:auto!important;
    opacity:1!important;
  }

  /* ---------- Arrow semantics ----------
     Default:  调节 →
     Expanded: ← 收起
  */
  .global-archetype-overview-card .ovc-body-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
  }

  .global-archetype-overview-card .ovc-body-toggle .ovc-chevron{
    order:2!important;
    transform:rotate(0deg)!important;
    transition:transform .25s ease!important;
  }

  .global-archetype-overview-card .ovc-body-toggle .ovc-body-toggle-label{
    order:1!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-toggle .ovc-chevron{
    order:1!important;
    transform:rotate(180deg)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-toggle .ovc-body-toggle-label{
    order:2!important;
  }
}

/* === SOURCE: css/219-v5578-body-slide-visibility-fix.css === */

/* v5.5.78 · Remove all leftover flip-era visibility gating.
   Both faces stay renderable; the stage clips the offscreen face, so entering
   and leaving are now symmetric translateX animations. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-card-face,
  .global-archetype-overview-card .ovc-body-control-face,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    visibility:visible!important;
  }

  .global-archetype-overview-card .ovc-body-card-face{
    opacity:1!important;
    transform:translateX(0)!important;
  }

  .global-archetype-overview-card .ovc-body-control-face{
    opacity:1!important;
    transform:translateX(-104%)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    opacity:1!important;
    transform:translateX(104%)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    opacity:1!important;
    transform:translateX(0)!important;
  }

  .global-archetype-overview-card .ovc-body-face{
    transition:
      transform .75s cubic-bezier(.18,.72,.18,1)!important;
  }
}

/* === SOURCE: css/220-v5579-body-slide-explicit-motion.css === */

/* v5.5.79 · CSS only defines the resting positions.
   The click transition itself is driven explicitly by Web Animations so the
   legacy body-expanded state cannot make the coordinate panel pop in first. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-face{
    transition:none!important;
    visibility:visible!important;
    opacity:1!important;
  }

  .global-archetype-overview-card .ovc-body-card-face{
    transform:translateX(0)!important;
  }

  .global-archetype-overview-card .ovc-body-control-face{
    transform:translateX(-104%)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    transform:translateX(104%)!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    transform:translateX(0)!important;
  }

  /* The inner body content is always fully laid out; only its whole face moves. */
  .global-archetype-overview-card .ovc-body-control-face .ovc-body-expanded,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face .ovc-body-expanded{
    display:grid!important;
    max-height:none!important;
    opacity:1!important;
    overflow:visible!important;
    transform:none!important;
    visibility:visible!important;
    transition:none!important;
  }
}


/* ===== SOURCE: css/stable-bundle-024.css ===== */
/* === SOURCE: css/221-v5580-body-slide-track.css === */

/* v5.5.80 · Robust single-track slide.
   Track content order in DOM is card then body, so visually place body left,
   card right using flex order. Default shows card; expanded slides body in
   from the left and pushes card out to the right. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-flip-stage{
    overflow:hidden!important;
    perspective:none!important;
  }

  .global-archetype-overview-card .ovc-body-flip-inner{
    position:relative!important;
    left:0!important;
    top:0!important;
    width:200%!important;
    height:100%!important;
    display:flex!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    transform:translateX(-50%)!important;
    transform-style:flat!important;
    transform-origin:0 50%!important;
    transition:transform .75s cubic-bezier(.18,.72,.18,1)!important;
    will-change:transform!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-flip-inner{
    transform:translateX(0)!important;
  }

  /* Faces become two normal halves of one track. */
  .global-archetype-overview-card .ovc-body-face,
  .global-archetype-overview-card .ovc-body-card-face,
  .global-archetype-overview-card .ovc-body-control-face,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    position:relative!important;
    inset:auto!important;
    flex:0 0 50%!important;
    width:50%!important;
    height:100%!important;
    box-sizing:border-box!important;
    transform:none!important;
    transition:none!important;
    visibility:visible!important;
    opacity:1!important;
    backface-visibility:visible!important;
    -webkit-backface-visibility:visible!important;
    transform-style:flat!important;
  }

  /* DOM order is card then controls. Reorder so controls occupy the left half. */
  .global-archetype-overview-card .ovc-body-control-face{
    order:1!important;
    pointer-events:none!important;
  }

  .global-archetype-overview-card .ovc-body-card-face{
    order:2!important;
    pointer-events:auto!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face{
    pointer-events:auto!important;
  }

  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-card-face{
    pointer-events:none!important;
  }

  /* Keep the restored v5.5.71 body controls permanently laid out offscreen. */
  .global-archetype-overview-card .ovc-body-control-face .ovc-body-expanded,
  .global-archetype-overview-card .ovc-body-section.expanded .ovc-body-control-face .ovc-body-expanded{
    display:grid!important;
    max-height:none!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:visible!important;
    transform:none!important;
    transition:none!important;
  }
}

@media(min-width:761px) and (prefers-reduced-motion:reduce){
  .global-archetype-overview-card .ovc-body-flip-inner{
    transition:none!important;
  }
}

/* === SOURCE: css/222-v5581-card-3d-tilt.css === */

/* v5.5.81 · Subtle physical-card hover tilt.
   Preserve the exact card scale/position; only add a small perspective rotation. */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-card-face{
    perspective:1000px!important;
  }

  .global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard{
    --v5581-rx:0deg;
    --v5581-ry:0deg;
    transform:
      translate(-50%,-50%)
      perspective(1000px)
      rotateX(var(--v5581-rx))
      rotateY(var(--v5581-ry))
      scale(var(--ovc-showcase-scale,.67))!important;
    transform-origin:50% 50%!important;
    transform-style:preserve-3d!important;
    transition:
      transform .16s cubic-bezier(.2,.7,.2,1),
      filter .22s ease!important;
    will-change:transform!important;
  }

  .global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard.v5581-tilting{
    transition:
      transform .085s linear,
      filter .16s ease!important;
    filter:drop-shadow(0 19px 34px rgba(0,0,0,.34))!important;
  }

  .global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard.v5581-settling{
    transition:
      transform .46s cubic-bezier(.16,.78,.18,1),
      filter .38s ease!important;
  }
}

@media(min-width:761px) and (prefers-reduced-motion:reduce){
  .global-archetype-overview-card .ovc-body-card-face #overviewBuildShowcaseCard{
    --v5581-rx:0deg!important;
    --v5581-ry:0deg!important;
    transition:none!important;
  }
}


/* ===== SOURCE: css/223-v5582-showcase-aura-plus-stack.css ===== */

/* v5.5.83: superseded by fixed-column implementation below */


/* ===== SOURCE: css/224-v5583-card-plus-column-fix.css ===== */

/* v5.5.84: superseded by v5.5.84 UT-style column implementation below */


/* ===== SOURCE: css/225-v5584-card-plus-ut-column.css ===== */

/* v5.5.85: superseded by fc27-placement implementation below */


/* ===== SOURCE: css/226-v5585-card-plus-fc27-placement.css ===== */

/* v5.5.86: superseded by black-gold FC27 badge implementation below */


/* ===== SOURCE: css/227-v5586-card-badge-fc27-black-gold.css ===== */

/* v5.5.87: superseded by nameplate-stack implementation below */


/* ===== SOURCE: css/228-v5587-card-badge-nameplate-stack.css ===== */

/* v5.5.88: superseded by unified local-coordinate badge stack below */


/* ===== SOURCE: css/229-v5588-card-badge-unified-stack.css ===== */

#overviewBuildCardPlus,
.fc-build-card-plus-clone,
.fc-build-card-plus-column,
.fc-build-card-badge-column,
.fc-build-card-badge-stack{
  display:none!important;
}

.fc27-card-plus-stack{
  position:absolute!important;
  z-index:12!important;
  left:10.7%!important;
  top:65.2%!important;
  width:0!important;
  height:0!important;
  overflow:visible!important;
  pointer-events:none!important;
  transform:none!important;
}

.fc27-card-plus-item{
  position:absolute!important;
  left:0!important;
  width:43px!important;
  height:36px!important;
  transform:translate(-50%,-50%)!important;
  pointer-events:none!important;
  overflow:visible!important;
  background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 100'%3E%3Cdefs%3E%3ClinearGradient id='b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%2316191e'/%3E%3Cstop offset='1' stop-color='%23090c10'/%3E%3C/linearGradient%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffe39a'/%3E%3Cstop offset='.55' stop-color='%23e2ba55'/%3E%3Cstop offset='1' stop-color='%23b98524'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpolygon points='30,1 90,1 119,33 60,99 1,33' fill='url(%23b)' stroke='url(%23g)' stroke-width='5'/%3E%3Cpolygon points='31,7 89,7 111,34 60,90 9,34' fill='none' stroke='%23f1d27a' stroke-opacity='.38' stroke-width='1.6'/%3E%3C/svg%3E") center/100% 100% no-repeat!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.34))!important;
}
.fc27-card-plus-item img{
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  top:48%!important;
  width:18px!important;
  height:18px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  opacity:1!important;
  filter:brightness(0) saturate(100%) invert(84%) sepia(26%) saturate(1030%) hue-rotate(352deg) brightness(101%) contrast(94%)!important;
}

@media(max-width:1180px){
  .fc27-card-plus-item{width:40px!important;height:33.5px!important;}
  .fc27-card-plus-item img{width:16.8px!important;height:16.8px!important;}
}


/* ===== SOURCE: css/230-v5591-specialization-portrait-fit-fix.css ===== */

/* v5.5.91
   Kroos / Nedved look correct on the My Build showcase card, so the source cutouts
   are fine. The specialization page was the problem: its compact portrait slot plus
   the global equip zoom (1.14) caused these two transparent cutouts to be framed too tight.
   Fix only the specialization cards, keep the showcase card unchanged. */

#specializationCards .specialization-card[data-spec-card="maestro_plus"] .spec-player-image img,
#specializationCards .specialization-card[data-spec-card="heartbeat"] .spec-player-image img{
  object-fit:contain!important;
  object-position:center bottom!important;
}

/* Quiet base framing for these two cards in all non-equipped states. */
#specializationCards .specialization-card.spec-card.state-1[data-spec-card="maestro_plus"] .spec-player-image img,
#specializationCards .specialization-card.spec-card.state-1[data-spec-card="heartbeat"] .spec-player-image img{
  transform:scale(.985)!important;
  transform-origin:50% 62%!important;
}
#specializationCards .specialization-card.spec-card.state-2[data-spec-card="maestro_plus"] .spec-player-image img,
#specializationCards .specialization-card.spec-card.state-2[data-spec-card="heartbeat"] .spec-player-image img{
  transform:scale(.985)!important;
  transform-origin:50% 62%!important;
}

/* Equipped state still gets ceremony, but at a much smaller zoom for these two. */
#specializationCards .specialization-card.spec-card.state-3[data-spec-card="maestro_plus"] .spec-player-image img,
#specializationCards .specialization-card.spec-card.state-3[data-spec-card="heartbeat"] .spec-player-image img,
#specializationCards .specialization-card.spec-card.state-3[data-spec-card="maestro_plus"]:hover .spec-player-image img,
#specializationCards .specialization-card.spec-card.state-3[data-spec-card="heartbeat"]:hover .spec-player-image img{
  transform:scale(1.14)!important;
  transform-origin:50% 62%!important;
}

@media(max-width:1280px){
  #specializationCards .specialization-card.spec-card.state-3[data-spec-card="maestro_plus"] .spec-player-image img,
  #specializationCards .specialization-card.spec-card.state-3[data-spec-card="heartbeat"] .spec-player-image img{
    transform:scale(1.14)!important;
  }
}


/* ===== SOURCE: css/231-v5592-playstyle-duplicate-guard-style.css ===== */

.ps-duplicate-warning{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:2px 10px;
  align-items:center;
  margin:0 0 10px;
  padding:8px 11px;
  border:1px solid rgba(214,151,82,.24);
  border-radius:10px;
  background:rgba(151,86,34,.075);
}
.ps-duplicate-warning strong{
  color:#d7a36f;
  font-size:10.5px;
  font-weight:780;
}
.ps-duplicate-warning span{
  min-width:0;
  color:#aeb7c0;
  font-size:9.5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ps-duplicate-warning small{
  grid-column:2;
  color:#707b85;
  font-size:8.5px;
}

.ovc-ps-duplicate-warning{
  margin-top:7px;
  padding:6px 8px;
  border:1px solid rgba(214,151,82,.20);
  border-radius:8px;
  background:rgba(151,86,34,.065);
  color:#b98b61;
  font-size:8px;
  line-height:1.35;
}


/* ===== SOURCE: css/232-v5593-playstyle-duplicate-visual-style.css ===== */

/* v5.5.93
   Make externally provided PlayStyles visible before the user opens the detail panel.
   The tile gets a restrained amber state + a small source flag (AMP / 设施 / 原). */

#playstylesPanel .ps-page-k6 .ps-badge-tile.external-provided{
  border-color:rgba(214,171,96,.34)!important;
  background:
    linear-gradient(180deg,rgba(214,171,96,.045),rgba(214,171,96,0) 56%),
    linear-gradient(145deg,#233244,#182634 72%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(214,171,96,.07),
    0 0 0 1px rgba(214,171,96,.06),
    0 8px 18px rgba(0,0,0,.16)!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.external-provided .ps-icon-shell::before{
  box-shadow:
    0 0 0 1px rgba(237,199,111,.18),
    0 0 12px rgba(201,150,57,.07),
    0 2px 8px rgba(0,0,0,.16)!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.external-provided .ps-icon-shell img{
  opacity:.96!important;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.external-provided.selected{
  border-color:rgba(220,187,105,.64)!important;
  box-shadow:
    0 0 0 2px rgba(184,142,61,.12),
    0 10px 24px rgba(0,0,0,.26)!important;
}
#playstylesPanel .ps-page-k6 .ps-source-flag{
  position:absolute;
  right:5px;
  top:5px;
  z-index:4;
  min-width:16px;
  height:14px;
  padding:0 4px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(235,197,109,.42);
  background:rgba(29,24,18,.96);
  color:#eed495;
  box-shadow:0 2px 8px rgba(0,0,0,.26);
  font-size:8px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1;
  pointer-events:none;
}
#playstylesPanel .ps-page-k6 .ps-badge-tile.external-provided.equipped .ps-source-flag{
  background:rgba(35,30,21,.98);
}
@media (max-width:1280px){
  #playstylesPanel .ps-page-k6 .ps-source-flag{
    right:4px;
    top:4px;
    min-width:15px;
    height:13px;
    padding:0 3px;
    font-size:7px;
  }
}


/* ===== SOURCE: css/233-v5594-playstyle-coexistence-style.css ===== */

#playstylesPanel .ps-page-k6 .ps-external-equipped-check{position:absolute;z-index:6;right:-4px;top:-5px;width:18px;height:18px;display:grid;place-items:center;border:2px solid #111923;border-radius:50%;background:#d3ad58;color:#211a0c;font-size:9px;font-weight:950;box-shadow:0 2px 8px rgba(0,0,0,.25)}
#playstylesPanel .ps-page-k6 .ps-badge-tile.external-silver-equipped{border-color:rgba(211,173,88,.26)!important;box-shadow:inset 0 0 0 1px rgba(211,173,88,.055),0 8px 18px rgba(0,0,0,.14)!important}
#playstylesPanel .ps-page-k6 .ps-conflict-dot{position:absolute;z-index:7;right:4px;bottom:4px;width:9px;height:9px;border:2px solid #111923;border-radius:50%;background:#dc5b5b;box-shadow:0 2px 7px rgba(0,0,0,.26);pointer-events:none}
#playstylesPanel .ps-page-k6 .ps-badge-tile.covered-by-plus{border-color:rgba(207,91,91,.28)!important}
#playstylesPanel .ps-page-k6 .ps-duplicate-inline-warning{display:grid;gap:3px;margin:9px 0 7px;padding:7px 9px;border:1px solid rgba(201,133,78,.20);border-radius:8px;background:rgba(126,75,35,.07);line-height:1.42}
#playstylesPanel .ps-page-k6 .ps-duplicate-inline-warning b{color:#d1a16d;font-size:9px;font-weight:850}
#playstylesPanel .ps-page-k6 .ps-duplicate-inline-warning span{color:#7f8a94;font-size:8px}
.global-archetype-overview-card .ovc-ps-badge,.global-archetype-overview-card .ovc-ps-slot{position:relative}
.global-archetype-overview-card .ovc-ps-issue-dot{position:absolute;z-index:8;right:0;top:1px;width:8px;height:8px;border:2px solid #0d151d;border-radius:50%;background:#dc5b5b;box-shadow:0 2px 6px rgba(0,0,0,.30);pointer-events:auto}
.global-archetype-overview-card .ovc-ps-slot.duplicate-hidden{opacity:.28}


/* ===== SOURCE: css/stable-bundle-025.css ===== */
/* === SOURCE: css/234-v5595-playstyle-source-warning-style.css === */

/* AMP chooser: source checks use the same visual language as the PlayStyle page.
   Green = regular PlayStyle slot. Sand-gold = club facility. */
.fc27-amp-modal-choice{
  position:relative!important;
}
.fc27-amp-modal-choice.current{
  border-color:rgba(216,184,95,.42)!important;
  background:rgba(216,184,95,.055)!important;
  box-shadow:inset 0 0 0 1px rgba(216,184,95,.08)!important;
}
.fc27-amp-source-check{
  position:absolute;
  z-index:8;
  top:5px;
  width:16px;
  height:16px;
  display:grid;
  place-items:center;
  border:2px solid #0b1219;
  border-radius:50%;
  font-size:8px;
  line-height:1;
  font-weight:950;
  font-style:normal;
  box-shadow:0 2px 7px rgba(0,0,0,.27);
  pointer-events:auto;
}
.fc27-amp-source-check.regular{
  right:5px;
  background:#55b982;
  color:#07150e;
}
.fc27-amp-source-check.facility{
  right:24px;
  background:#d3ad58;
  color:#211a0c;
}

/* Facility page: active reward badge gets the same restrained red issue dot. */
.facility-ps-badge.has-ps-issue{
  position:relative!important;
}
.facility-ps-conflict-dot{
  position:absolute;
  z-index:6;
  right:-1px;
  top:-2px;
  width:9px;
  height:9px;
  border:2px solid #111923;
  border-radius:50%;
  background:#dc5b5b;
  box-shadow:0 2px 6px rgba(0,0,0,.28);
  pointer-events:none;
}
.facility-slot-foot .facility-ps-conflict-dot{
  right:0;
  top:-1px;
}
.facility-summary-playstyles .facility-ps-conflict-dot{
  right:1px;
  top:0;
}

/* === SOURCE: css/235-v5596-amp-representative-priority-style.css === */

.global-archetype-overview-card .ovc-ps-source-amp[data-amp-remove]{
  cursor:pointer!important;
}
.global-archetype-overview-card .ovc-ps-source-amp[data-amp-remove]::after{
  content:"AMP";
  position:absolute;
  z-index:7;
  left:50%;
  bottom:-5px;
  transform:translateX(-50%);
  padding:1px 3px;
  border-radius:999px;
  border:1px solid rgba(214,181,90,.26);
  background:rgba(19,17,12,.92);
  color:#d6b55a;
  font-size:5.5px;
  font-weight:900;
  line-height:1;
  letter-spacing:.03em;
  pointer-events:none;
  opacity:.78;
}
.global-archetype-overview-card .ovc-ps-source-amp[data-amp-remove]:hover::after{
  opacity:1;
}

/* === SOURCE: css/236-v5597-amp-interaction-repair-style.css === */

.global-archetype-overview-card .ovc-ps-source-amp[data-amp-remove]{
  cursor:pointer!important;
}
.global-archetype-overview-card .ovc-ps-source-amp[data-amp-remove]:hover{
  filter:brightness(1.13)!important;
}

/* === SOURCE: css/237-v5598-amp-silver-independent-style.css === */

/* Silver AMP keeps its own physical slot even when duplicated.
   Only the badge art is dimmed; the red issue dot stays vivid and clickable. */
.global-archetype-overview-card .ovc-ps-source-amp.is-inactive-duplicate{
  opacity:1!important;
  filter:none!important;
}
.global-archetype-overview-card .ovc-ps-source-amp.is-inactive-duplicate .overview-badge-shell{
  opacity:.34!important;
  filter:grayscale(.72) brightness(.68)!important;
  transition:opacity .14s ease,filter .14s ease!important;
}
.global-archetype-overview-card .ovc-ps-source-amp.is-inactive-duplicate:hover .overview-badge-shell{
  opacity:.46!important;
  filter:grayscale(.55) brightness(.78)!important;
}
.global-archetype-overview-card .ovc-ps-source-amp.is-inactive-duplicate .ovc-ps-issue-dot{
  opacity:1!important;
  filter:none!important;
}

/* === SOURCE: css/238-v5599-ap-calculator-validation-style.css === */

#diyPanel .diy-attr-row.is-below-minimum .diy-attr-input{
  color:#8b7370!important;
  border-color:rgba(184,105,96,.24)!important;
}
#diyPanel .diy-attr-row.is-below-minimum .diy-attr-copy::after{
  content:"低于有效范围";
  margin-left:5px;
  color:#8f6864;
  font-size:7px;
  font-weight:700;
}


/* ===== SOURCE: css/stable-bundle-026.css ===== */
/* === SOURCE: css/239-v5600-ap-calculator-import-archetype-style.css === */

#diyPanel .diy-attribute-head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  flex:0 0 auto;
}

#diyPanel .diy-import-archetype-btn{
  width:104px;
  height:34px;
  min-height:34px;
  padding:0 9px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(167,180,191,.22);
  border-radius:9px;
  background:
    linear-gradient(180deg,rgba(137,153,166,.09),rgba(92,106,119,.035));
  color:#c7d0d7;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 3px 10px rgba(0,0,0,.12);
  cursor:pointer;
  transition:border-color .14s ease,background .14s ease,transform .14s ease,box-shadow .14s ease;
}

#diyPanel .diy-import-archetype-btn span{
  font-size:11.5px;
  font-weight:790;
  line-height:1;
  color:#cbd3da;
}

#diyPanel .diy-import-archetype-btn small{
  margin-top:3px;
  font-size:8px;
  line-height:1;
  font-weight:650;
  color:#707d88;
}

#diyPanel .diy-import-archetype-btn:hover{
  border-color:rgba(196,207,216,.38);
  background:
    linear-gradient(180deg,rgba(153,169,182,.135),rgba(103,118,131,.052));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 5px 14px rgba(0,0,0,.15);
  transform:translateY(-1px);
}

#diyPanel .diy-import-archetype-btn:active{
  transform:translateY(0);
}

@media(max-width:760px){
  #diyPanel .diy-attribute-head-actions{gap:5px}
  #diyPanel .diy-import-archetype-btn{
    width:96px;
    height:34px;
  }
}

/* === SOURCE: css/240-v5601-ap-calculator-archetype-picker-style.css === */

#diyPanel .diy-import-archetype-wrap{
  position:relative;
  flex:0 0 auto;
}

#diyPanel .diy-import-archetype-menu{
  position:absolute;
  z-index:80;
  top:calc(100% + 7px);
  right:0;
  width:286px;
  max-height:390px;
  overflow:auto;
  padding:7px;
  border:1px solid rgba(169,183,195,.16);
  border-radius:12px;
  background:rgba(10,15,20,.985);
  box-shadow:0 18px 42px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.025);
  scrollbar-width:thin;
}

#diyPanel .diy-import-archetype-menu[hidden]{
  display:none!important;
}

#diyPanel .diy-import-archetype-option{
  width:100%;
  min-height:47px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:6px 7px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
  transition:background .13s ease,border-color .13s ease;
}

#diyPanel .diy-import-archetype-option:hover{
  border-color:rgba(177,191,202,.14);
  background:rgba(255,255,255,.035);
}

#diyPanel .diy-import-archetype-option.is-current{
  border-color:rgba(211,177,91,.18);
  background:rgba(211,177,91,.035);
}

#diyPanel .diy-import-archetype-option img,
#diyPanel .diy-import-archetype-logo-placeholder{
  width:30px;
  height:30px;
  object-fit:contain;
  display:block;
}

#diyPanel .diy-import-archetype-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

#diyPanel .diy-import-archetype-copy strong{
  color:#d9e0e6;
  font-size:10.5px;
  font-weight:760;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#diyPanel .diy-import-archetype-copy small{
  color:#65717c;
  font-size:7.5px;
  font-weight:650;
  letter-spacing:.035em;
}

#diyPanel .diy-import-archetype-state{
  min-width:32px;
  padding:3px 5px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:999px;
  color:#798590;
  font-size:7px;
  font-weight:800;
  text-align:center;
}

#diyPanel .diy-import-archetype-option.is-current .diy-import-archetype-state{
  color:#d8bd70;
  border-color:rgba(211,177,91,.20);
  background:rgba(211,177,91,.04);
}

@media(max-width:760px){
  #diyPanel .diy-import-archetype-menu{
    width:min(286px,86vw);
    right:0;
  }
}


/* ===== SOURCE: css/stable-bundle-027.css ===== */
/* === SOURCE: css/241-v5602-mybuild-layout-mode-body-visibility-style.css === */

@media(min-width:761px){
  /* My Build: keep the stats area on the LEFT and deliberately reserve the
     entire right column for future content. */
  body.build-overview-active #playerCardPanel .build-overview-grid{
    grid-template-columns:minmax(520px,1.48fr) minmax(300px,.88fr)!important;
    grid-template-areas:"stats reserved"!important;
    gap:10px!important;
    align-items:start!important;
  }
  body.build-overview-active #playerCardPanel .overview-stats-card{
    grid-area:stats!important;
    justify-self:stretch!important;
    width:auto!important;
    margin-left:0!important;
  }

  /* Exact visual language of Attribute Points Base / Match toggle. */
  #playerCardPanel .build-value-mode{
    height:32px!important;
    padding:2px!important;
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    border:1px solid rgba(222,230,238,.13)!important;
    border-radius:10px!important;
    background:rgba(7,12,17,.24)!important;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.18)!important;
  }
  #playerCardPanel .build-mode-btn{
    appearance:none!important;
    height:26px!important;
    min-width:68px!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#7f8a95!important;
    font:650 11.5px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    transition:color .15s ease,background .15s ease,box-shadow .15s ease!important;
  }
  #playerCardPanel .build-mode-btn:hover{
    color:#c4ccd4!important;
    background:rgba(255,255,255,.035)!important;
  }
  #playerCardPanel .build-mode-btn[data-build-mode="base"].active{
    color:#e1e6eb!important;
    background:linear-gradient(180deg,rgba(229,236,243,.13),rgba(194,205,216,.065))!important;
    box-shadow:inset 0 0 0 1px rgba(235,241,247,.10),0 1px 4px rgba(0,0,0,.18)!important;
  }
  #playerCardPanel .build-mode-btn[data-build-mode="match"].active{
    color:#dfd7b7!important;
    background:linear-gradient(180deg,rgba(205,216,227,.105),rgba(205,216,227,.040))!important;
    box-shadow:inset 0 0 0 1px rgba(225,233,241,.10),0 0 8px rgba(205,216,227,.025)!important;
  }

  /* Body visibility never erases the configured modifiers. It only marks the
     Body bonus as currently not applied. Keep the controller usable. */
  .global-archetype-overview-card .ovc-body-section.effects-paused .ovc-body-mods{
    opacity:.34!important;
    filter:saturate(.40)!important;
  }
  .global-archetype-overview-card .ovc-body-section .ovc-body-mods{
    transition:opacity .15s ease,filter .15s ease!important;
  }
  .global-archetype-overview-card .ovc-body-section.effects-paused .ovc-body-plot,
  .global-archetype-overview-card .ovc-body-section.effects-paused .ovc-body-actions,
  .global-archetype-overview-card .ovc-body-section.effects-paused .ovc-body-main{
    opacity:1!important;
    pointer-events:auto!important;
    filter:none!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body.build-overview-active #playerCardPanel .build-overview-grid{
    grid-template-columns:minmax(0,1fr) minmax(220px,.52fr)!important;
  }
}

@media(max-width:760px){
  body.build-overview-active #playerCardPanel .build-overview-grid{
    grid-template-columns:1fr!important;
    grid-template-areas:"stats"!important;
  }
}

/* === SOURCE: css/242-v5603-mybuild-mode-color-and-body-display-fix.css === */

/* Match the CURRENT Attribute Points toolbar colours exactly:
   Base = restrained green, Match = restrained orange. */
#playerCardPanel .build-mode-btn[data-build-mode="base"].active{
  color:#8fcfc2!important;
  border-color:rgba(91,184,165,.20)!important;
  background:linear-gradient(180deg,rgba(73,165,148,.125),rgba(73,165,148,.050))!important;
  box-shadow:
    inset 0 0 0 1px rgba(126,211,195,.055),
    0 0 9px rgba(73,165,148,.025)!important;
}
#playerCardPanel .build-mode-btn[data-build-mode="match"].active{
  color:#dda087!important;
  border-color:rgba(210,119,88,.21)!important;
  background:linear-gradient(180deg,rgba(198,104,73,.125),rgba(198,104,73,.050))!important;
  box-shadow:
    inset 0 0 0 1px rgba(231,153,126,.050),
    0 0 9px rgba(198,104,73,.025)!important;
}

/* v5.6.02 briefly dimmed the Body controller when Body was hidden in My Build.
   v5.6.03 explicitly cancels that behaviour: Body remains fully interactive. */
.global-archetype-overview-card .ovc-body-section.effects-paused .ovc-body-mods,
.global-archetype-overview-card .ovc-body-section .ovc-body-mods{
  opacity:1!important;
  filter:none!important;
}
.global-archetype-overview-card .ovc-body-section.effects-paused,
.global-archetype-overview-card .ovc-body-section.effects-paused *{
  pointer-events:auto!important;
}

/* === SOURCE: css/243-v5605-high-similarity-v1-style.css === */

.ut-high-breakdown{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  margin-top:7px;
  padding-top:6px;
  border-top:1px solid rgba(255,255,255,.045);
}
.ut-high-breakdown span{
  display:inline-flex;
  align-items:center;
  gap:3px;
  min-height:18px;
  padding:0 6px;
  border:1px solid rgba(255,255,255,.065);
  border-radius:999px;
  background:rgba(255,255,255,.018);
  color:#74808b;
  font-size:7.5px;
  font-weight:720;
  line-height:1;
}
.ut-high-breakdown b{
  color:#b8c2ca;
  font-size:8px;
}
.ut-high-breakdown .is-penalty{
  color:#c98176;
  border-color:rgba(200,104,91,.12);
  background:rgba(200,104,91,.035);
}
.ut-high-breakdown .is-bonus{
  color:#87b99f;
  border-color:rgba(91,173,128,.12);
  background:rgba(91,173,128,.035);
}

/* === SOURCE: css/244-v5606-basic-similarity-v1-style.css === */

.ut-high-breakdown .is-star{
  color:#dfbf72;
  border-color:rgba(218,180,83,.16);
  background:rgba(218,180,83,.045);
}
.ut-basic-breakdown span{
  padding-left:5px;
  padding-right:5px;
}

/* === SOURCE: css/245-v5607-basic-similarity-star-tune-style.css === */

.ut-high-breakdown .is-archetype{
  color:#9eb4c7;
  border-color:rgba(135,163,187,.14);
  background:rgba(135,163,187,.035);
}

/* === SOURCE: css/246-v5609-similarity-top-silhouette-style.css === */

.ut-compact-player.is-top{
  grid-template-columns:28px minmax(0,1fr) 104px;
}
.ut-ea-card-preview{
  width:104px;
  align-self:center;
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
}
.ut-ea-card-link{
  position:relative;
  width:96px;
  height:112px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  border:1px solid rgba(219,184,95,.16);
  border-radius:14px;
  overflow:hidden;
  text-decoration:none;
  background:
    radial-gradient(circle at 50% 34%,rgba(220,185,95,.10),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.028),rgba(219,184,95,.025) 58%,rgba(9,11,14,.10));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 8px 24px rgba(0,0,0,.13);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.ut-ea-card-link:hover{
  transform:translateY(-2px);
  border-color:rgba(219,184,95,.30);
  background:
    radial-gradient(circle at 50% 34%,rgba(220,185,95,.15),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.038),rgba(219,184,95,.038) 58%,rgba(9,11,14,.10));
}
.ut-ea-silhouette{
  position:absolute;
  left:8px;
  right:8px;
  top:5px;
  height:93px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  opacity:.70;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.24));
}
.ut-ea-silhouette svg{
  width:75px;
  height:91px;
  overflow:visible;
}
.ut-ea-silhouette circle,
.ut-ea-silhouette path{
  fill:rgba(190,198,203,.17);
  stroke:rgba(224,229,232,.10);
  stroke-width:1.3;
}
.ut-ea-card-overlay{
  position:relative;
  z-index:2;
  width:100%;
  min-height:30px;
  padding:5px 6px 6px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  background:linear-gradient(180deg,transparent,rgba(7,9,12,.86) 38%,rgba(7,9,12,.96));
  text-align:center;
}
.ut-ea-card-overlay b{
  color:#cfb36e;
  font-size:7.2px;
  font-weight:850;
  letter-spacing:.09em;
}
.ut-ea-card-overlay small{
  color:#8e9aa4;
  font-size:7px;
  font-weight:700;
}
.ut-ea-card-caption{
  color:#6f7b85;
  font-size:6.8px;
  font-weight:800;
  letter-spacing:.10em;
}
@media(max-width:560px){
  .ut-compact-player.is-top{
    grid-template-columns:28px minmax(0,1fr) 82px;
  }
  .ut-ea-card-preview{width:82px}
  .ut-ea-card-link{
    width:76px;
    height:92px;
    border-radius:12px;
  }
  .ut-ea-silhouette{
    left:5px;
    right:5px;
    top:4px;
    height:75px;
  }
  .ut-ea-silhouette svg{
    width:60px;
    height:73px;
  }
  .ut-ea-card-overlay{
    min-height:26px;
    padding:4px 4px 5px;
  }
}

/* === SOURCE: css/247-v5618-build-card-badge-centerline-fix.css === */

/* v5.6.18 · final-position override: the later clean-badge layer had reset the build-card badge to left:0.
   Move the visible badge center right so it aligns with the intended card-side vertical guide. */
body.build-overview-active .fc-build-card-plus{
  left:4.0%!important;
}
@media(max-width:1180px){
  body.build-overview-active .fc-build-card-plus{left:4.0%!important;}
}


/* ===== SOURCE: css/248-v5626-mybuild-singlepage-style.css ===== */

#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell,#mb24Library{height:548px!important;min-height:548px!important}
#myBuildShowcaseV2{overflow:hidden!important}
#myBuildShowcaseV2::after{background:linear-gradient(90deg,rgba(5,7,10,.70) 0%,rgba(5,7,10,.46) 38%,rgba(5,7,10,.26) 72%,rgba(5,7,10,.34) 100%),linear-gradient(180deg,rgba(4,6,9,.08),rgba(4,6,9,.20))!important}
.mb26-shell{position:relative;z-index:3;height:100%;padding:17px 19px 19px;display:flex;flex-direction:column;min-width:0}
.mb26-kicker{font-size:8px;letter-spacing:.24em;font-weight:800;color:#bca66f;text-transform:uppercase;opacity:.88}
.mb26-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:8px}
.mb26-head-left{min-width:0}
.mb26-title-row{display:flex;align-items:center;gap:8px;min-width:0}
.mb26-level{font-size:18px;line-height:1;font-weight:850;color:#e8e8e6;white-space:nowrap}
.mb26-title-dot{font-size:14px;color:#777f88;line-height:1}
.mb26-title{margin:0;min-width:0;font-size:clamp(22px,1.45vw,27px);line-height:1.06;font-weight:820;letter-spacing:-.03em;color:#f3f4f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-edit,.mb26-icon{border:0;background:transparent;color:#b69a52;padding:0;display:grid;place-items:center;cursor:pointer;transition:color .14s ease,transform .14s ease,background .14s ease}
.mb26-edit{width:25px;height:25px;border-radius:8px;flex:0 0 auto}
.mb26-edit:hover,.mb26-icon:hover{color:#e0c471;transform:translateY(-1px)}
.mb26-edit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mb26-archetype{display:flex;align-items:center;gap:9px;margin-top:8px;min-width:0;color:#dfe3e7}
.mb26-archetype-logo{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 3px 7px rgba(0,0,0,.28));flex:0 0 auto}
.mb26-archetype-text{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}
.mb26-archetype-cn{font-size:16px;font-weight:800;color:#edf0f2}
.mb26-archetype-en{font-size:11px;font-weight:650;color:#77828e;letter-spacing:.01em}
.mb26-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding-top:2px}
.mb26-icon{width:30px;height:30px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(8,12,17,.35);color:#8f9aa5}
.mb26-icon:hover{background:rgba(255,255,255,.045);border-color:rgba(213,182,102,.19);color:#d4b76a}
.mb26-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mb26-theme-dots{display:flex;align-items:center;gap:7px;margin-left:5px;padding:0 2px}
.mb26-theme-dot{appearance:none;border:0;width:7px;height:7px;border-radius:50%;padding:0;background:#4c5660;opacity:.52;cursor:pointer;box-shadow:none;transition:transform .14s ease,background .14s ease,opacity .14s ease,box-shadow .14s ease}
.mb26-theme-dot:hover{opacity:.86;transform:scale(1.18)}
.mb26-theme-dot.active{background:#d1b15f;opacity:1;transform:scale(1.28);box-shadow:0 0 0 3px rgba(209,177,95,.09)}
.mb26-divider{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.11),rgba(255,255,255,.055) 72%,transparent);margin:13px 0 13px}
.mb26-main{display:grid;grid-template-columns:minmax(205px,.78fr) repeat(3,minmax(0,1fr));gap:0;flex:1;min-height:0}
.mb26-info{min-width:0;padding:2px 17px 6px 0;border-right:1px solid rgba(255,255,255,.075);display:flex;flex-direction:column}
.mb26-select-row{display:flex;gap:7px;align-items:center}
.mb26-select-wrap{position:relative;display:block;min-width:0}
.mb26-select-wrap::after{content:'›';position:absolute;right:9px;top:50%;transform:translateY(-53%) rotate(90deg);font-size:14px;color:#79848f;pointer-events:none}
.mb26-select{appearance:none;height:31px;border:1px solid rgba(255,255,255,.085);border-radius:9px;background:rgba(8,12,17,.42);color:#e6e9ec;padding:0 27px 0 10px;font-size:10.5px;font-weight:750;outline:none}
.mb26-select.formation{width:103px}.mb26-select.position{width:68px}
.mb26-select:focus{border-color:rgba(209,177,95,.36)}
.mb26-info-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
.mb26-info-item{min-width:0}
.mb26-info-item span{display:block;margin-bottom:3px;font-size:7.5px;color:#707b87;letter-spacing:.03em}
.mb26-info-item strong{display:block;font-size:11.5px;color:#e3e6e9;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-ps{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055);display:grid;gap:6px}
.mb26-ps-row{display:flex;align-items:center;gap:5px;min-height:32px;flex-wrap:wrap}
.mb26-ps-empty{font-size:9px;color:#65717d}
.mb26-ps-copy{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;cursor:help}
.mb26-ps-copy .overview-badge-shell{--badge-h:27px;--badge-w:27px;--icon-box:15px;--gold-lift:0px;width:34px!important;height:34px!important}
.mb26-ps-copy.plus .overview-badge-shell.plus{--badge-h:27px;--badge-w:31px;--icon-box:15px;--gold-lift:1.4px}
.mb26-ps-copy .ovc-ps-issue-dot{display:none!important}
.mb26-attrs{display:contents}
.mb26-attr-col{min-width:0;padding:0 14px;border-right:1px solid rgba(255,255,255,.055)}
.mb26-attr-col:last-child{border-right:0;padding-right:0}
.mb26-group+.mb26-group{margin-top:14px;padding-top:11px;border-top:1px solid rgba(255,255,255,.065)}
.mb26-group h4{margin:0 0 5px;color:#d1b15f;font-size:10px;font-weight:850;letter-spacing:.035em}
.mb26-attr-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;min-height:20px;border-bottom:1px solid rgba(255,255,255,.032);gap:7px}
.mb26-attr-row:last-child{border-bottom:0}
.mb26-attr-row span{min-width:0;font-size:9.5px;color:#aab2ba;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-attr-row strong{text-align:right;font-size:10.5px;font-weight:850;font-variant-numeric:tabular-nums}
.mb26-togglebar{position:absolute;right:18px;bottom:18px;z-index:7;display:flex;align-items:center;gap:10px;padding:5px 7px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(8,11,15,.52);backdrop-filter:blur(8px)}
.mb26-toggle{display:flex;align-items:center;gap:5px;font-size:8.5px;color:#8d97a1;font-weight:700;cursor:pointer}
.mb26-toggle input{display:none}
.mb26-switch{width:27px;height:16px;border-radius:999px;background:#39414a;border:1px solid rgba(255,255,255,.08);position:relative;display:inline-block}
.mb26-switch::after{content:'';position:absolute;width:10px;height:10px;left:2px;top:2px;border-radius:50%;background:#e8eaec;transition:transform .15s ease}
.mb26-toggle input:checked+.mb26-switch{background:#8e773a;border-color:#a98d47}.mb26-toggle input:checked+.mb26-switch::after{transform:translateX(11px)}
.mb26-watermark{position:absolute;right:1.5%;bottom:3%;z-index:1;max-width:52%;font-family:"Segoe Script","Brush Script MT","Snell Roundhand",cursive;font-size:clamp(52px,4.8vw,78px);font-style:italic;line-height:.9;color:rgba(228,232,236,.035);transform:rotate(-7deg);pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:clip}
.mb26-site{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);z-index:8;color:rgba(190,196,202,.45);font-size:7.5px;letter-spacing:.13em;white-space:nowrap;text-transform:lowercase;pointer-events:none}
.mb26-title-input{height:32px;min-width:220px;max-width:420px;border:0;border-bottom:1px solid rgba(209,177,95,.42);background:transparent;color:#f2f3f4;font-size:24px;font-weight:820;outline:none;padding:0 2px}
.mb26-save-flash{animation:mb26save .55s ease}@keyframes mb26save{0%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}45%{box-shadow:0 0 0 4px rgba(209,177,95,.13)}100%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}}
#mb24Library .mb26-lib-list{display:grid;gap:8px;padding-top:10px;max-height:410px;overflow:auto}
#mb24Library .mb26-lib-card{padding:10px 11px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.018)}
#mb24Library .mb26-lib-card strong{display:block;color:#dfe4e8;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#mb24Library .mb26-lib-card span{display:block;margin-top:4px;color:#6f7b87;font-size:8px}
#mb24Library .mb24-library-empty.has-builds{display:block!important;height:auto!important;padding:0!important;background:transparent!important;border:0!important}
#mb24Library .mb24-library-empty.has-builds .mb24-library-empty-inner{display:none!important}
@media(max-width:1240px) and (min-width:901px){#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell,#mb24Library{height:565px!important;min-height:565px!important}.mb26-main{grid-template-columns:minmax(190px,.76fr) repeat(3,minmax(0,1fr))}.mb26-attr-col{padding:0 10px}.mb26-info{padding-right:12px}}
@media(max-width:900px){#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell{height:auto!important;min-height:650px!important}.mb26-main{grid-template-columns:1fr 1fr;gap:12px}.mb26-info{grid-column:1/-1;border-right:0;border-bottom:1px solid rgba(255,255,255,.07);padding:0 0 12px}.mb26-attr-col{border-right:0;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px!important}.mb26-attr-col:nth-child(4){grid-column:1/-1}.mb26-togglebar{position:static;margin-top:10px;align-self:flex-end}.mb26-site{position:static;transform:none;text-align:center;margin-top:7px}}
@media(max-width:760px){.mb26-main{grid-template-columns:1fr}.mb26-attr-col:nth-child(4){grid-column:auto}.mb26-head{gap:8px}.mb26-actions{gap:5px}.mb26-level{font-size:15px}.mb26-title{font-size:21px}.mb26-archetype-cn{font-size:14px}.mb26-info-line{grid-template-columns:repeat(3,1fr)}}


/* ===== SOURCE: css/250-v5623-mybuild-showcase-v2-style.css ===== */

body.build-overview-active #playerCardPanel .build-overview-grid{display:none!important}
body.build-overview-active #playerCardPanel{overflow:visible}
body.build-overview-active #playerCardPanel .build-overview-head{margin-bottom:10px}
body.build-overview-active #playerCardPanel .build-workspace-toolbar{display:none!important}
#myBuildShowcaseV2{
  --mb-bg:none;
  --mb-accent:#d7b96a;
  position:relative;
  min-height:610px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:24px;
  overflow:hidden;
  background:#091018;
  box-shadow:0 24px 70px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.035);
  isolation:isolate;
}
#myBuildShowcaseV2::before{
  content:"";position:absolute;inset:0;z-index:-4;
  background-image:var(--mb-bg);
  background-size:cover;background-position:center;
  filter:saturate(.92) brightness(.78);
  transform:scale(1.015);
}
#myBuildShowcaseV2::after{
  content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(4,8,13,.88) 0%,rgba(5,10,16,.73) 43%,rgba(5,10,16,.35) 76%,rgba(4,8,13,.58) 100%),
    linear-gradient(180deg,rgba(3,7,11,.24),rgba(3,7,11,.40));
}
.mb2-glass{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.04),transparent 30%,rgba(255,255,255,.012) 75%);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.mb2-watermark{position:absolute;right:3.5%;bottom:-1%;z-index:-1;max-width:62%;overflow:hidden;white-space:nowrap;color:rgba(225,231,238,.065);font:italic 400 clamp(82px,9vw,150px)/.8 "Segoe Script","Brush Script MT","Snell Roundhand",cursive;letter-spacing:-.06em;transform:rotate(-5deg);pointer-events:none;user-select:none}
.mb2-shell{min-height:610px;padding:24px 28px 25px;display:flex;flex-direction:column}
.mb2-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.mb2-kicker{font-size:9px;letter-spacing:.28em;font-weight:800;color:rgba(226,207,154,.78)}
.mb2-theme-picks{display:flex;align-items:center;gap:8px}
.mb2-theme-label{font-size:9px;color:#74808d;margin-right:2px}
.mb2-theme-btn{width:34px;height:18px;border:1px solid rgba(255,255,255,.15);border-radius:5px;padding:0;overflow:hidden;background-size:cover;background-position:center;opacity:.62;transition:.16s ease;box-shadow:none}
.mb2-theme-btn:hover{opacity:.9;transform:translateY(-1px)}
.mb2-theme-btn.active{opacity:1;border-color:rgba(226,194,108,.72);box-shadow:0 0 0 2px rgba(216,184,95,.10)}
.mb2-title-line{display:flex;align-items:center;gap:10px;min-width:0}
.mb2-title{margin:0;color:#f3f4f6;font-size:clamp(27px,2.2vw,38px);line-height:1.08;font-weight:800;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb2-title-input{width:min(520px,70vw);height:44px;border:0;border-bottom:1px solid rgba(216,184,95,.65);border-radius:0;background:rgba(255,255,255,.025);color:#f3f4f6;padding:0 8px;font-size:clamp(25px,2vw,36px);font-weight:800;outline:none}
.mb2-edit{width:30px;height:30px;display:grid;place-items:center;border:1px solid transparent;border-radius:9px;background:transparent;color:#9b8755;padding:0;flex:0 0 auto}
.mb2-edit:hover{background:rgba(216,184,95,.08);border-color:rgba(216,184,95,.14);color:#d5b666}
.mb2-edit svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.mb2-subline{margin-top:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#bbc2ca;font-size:14px}
.mb2-level{font-weight:800;color:#e7e9ec}.mb2-dot{color:#59636f}.mb2-archetype{font-weight:720;color:#d8c082;cursor:help}
.mb2-selectors{margin-top:16px;display:flex;align-items:center;gap:10px}
.mb2-select-wrap{position:relative;display:inline-flex;align-items:center}
.mb2-select{appearance:none;-webkit-appearance:none;width:auto;min-width:116px;height:38px;padding:0 34px 0 13px;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:rgba(8,13,19,.48);color:#e8ebef;font-size:12px;font-weight:700;outline:none;backdrop-filter:blur(8px)}
.mb2-select.position{min-width:82px}
.mb2-select:focus{border-color:rgba(216,184,95,.45)}
.mb2-select-wrap::after{content:"⌄";position:absolute;right:12px;top:8px;color:#8f98a3;font-size:15px;pointer-events:none}
.mb2-tabs{display:flex;gap:34px;margin-top:20px;border-bottom:1px solid rgba(255,255,255,.075)}
.mb2-tab{position:relative;height:42px;border:0;background:transparent;color:#7c8793;font-size:13px;font-weight:750;padding:0 2px;letter-spacing:.01em}
.mb2-tab.active{color:#eef1f4}
.mb2-tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:3px;background:linear-gradient(90deg,#c9a856,#efd895)}
.mb2-page{display:none;min-height:385px}.mb2-page.active{display:block}
.mb2-overview{padding-top:23px}
.mb2-meta{display:flex;align-items:center;gap:0;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:19px}
.mb2-meta-item{min-width:118px;padding:0 24px;border-left:1px solid rgba(255,255,255,.065)}
.mb2-meta-item:first-child{padding-left:0;border-left:0}.mb2-meta-item span{display:block;color:#707b87;font-size:9px;letter-spacing:.06em;margin-bottom:5px}.mb2-meta-item strong{display:block;color:#eef1f4;font-size:15px;font-weight:760}
.mb2-playstyles{display:flex;align-items:flex-start;gap:15px;flex-wrap:wrap;padding-top:28px;max-width:860px}
.mb2-ps{position:relative;display:grid;place-items:center;flex:0 0 auto;transform:rotate(45deg);border-radius:11px;transition:transform .16s ease,filter .16s ease;cursor:help}
.mb2-ps:hover{transform:rotate(45deg) translateY(-2px);filter:brightness(1.08)}
.mb2-ps.plus{width:54px;height:54px;background:linear-gradient(145deg,#f3d37a,#9e7629);border:1px solid rgba(255,234,174,.70);box-shadow:0 8px 24px rgba(171,123,31,.17),inset 0 1px 0 rgba(255,255,255,.35)}
.mb2-ps.silver{width:44px;height:44px;background:linear-gradient(145deg,rgba(235,240,245,.16),rgba(80,91,103,.17));border:1px solid rgba(218,226,235,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.mb2-ps img{width:72%;height:72%;object-fit:contain;display:block;transform:rotate(-45deg);filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}
.mb2-ps-fallback{transform:rotate(-45deg);font-size:8px;font-weight:900;color:#121519}.mb2-ps.silver .mb2-ps-fallback{color:#e4e8ed}
.mb2-empty-ps{color:#697481;font-size:11px;padding:12px 0}
.mb2-detail-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 0 8px}
.mb2-toggle{display:flex;align-items:center;gap:7px;color:#a9b1ba;font-size:11px;font-weight:720;user-select:none}.mb2-toggle input{position:absolute;opacity:0;pointer-events:none}.mb2-switch{position:relative;width:36px;height:21px;border-radius:999px;background:#303844;border:1px solid #424c58;transition:.15s}.mb2-switch::after{content:"";position:absolute;width:15px;height:15px;left:2px;top:2px;border-radius:50%;background:#eef1f4;transition:.15s;box-shadow:0 1px 3px rgba(0,0,0,.35)}.mb2-toggle input:checked+.mb2-switch{background:#8f7434;border-color:#b09147}.mb2-toggle input:checked+.mb2-switch::after{transform:translateX(15px)}
.mb2-detail-note{margin-right:auto;color:#66717e;font-size:9px;letter-spacing:.02em}
.mb2-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:18px;padding-top:8px}
.mb2-stat-group{min-width:0;padding-top:12px;border-top:1px solid rgba(255,255,255,.075)}
.mb2-stat-group h4{margin:0 0 8px;color:#d4b76a;font-size:11px;letter-spacing:.04em;font-weight:800}
.mb2-stat-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;min-height:25px;border-bottom:1px solid rgba(255,255,255,.038);gap:8px}.mb2-stat-row:last-child{border-bottom:0}.mb2-stat-row span{min-width:0;color:#adb5be;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb2-stat-row strong{color:#eef1f4;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;font-weight:800}
.mb2-footline{margin-top:auto;padding-top:14px;display:flex;justify-content:flex-end;color:rgba(255,255,255,.24);font-size:8px;letter-spacing:.18em}
@media(max-width:1180px){#myBuildShowcaseV2,.mb2-shell{min-height:650px}.mb2-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.mb2-watermark{font-size:100px}.mb2-playstyles{max-width:700px}}
@media(max-width:760px){#myBuildShowcaseV2{border-radius:18px;min-height:0}.mb2-shell{min-height:0;padding:18px 16px 20px}.mb2-title{font-size:25px}.mb2-topline{align-items:flex-start}.mb2-theme-label{display:none}.mb2-meta-item{min-width:50%;padding:8px 14px;border-left:0}.mb2-meta-item:nth-child(even){border-left:1px solid rgba(255,255,255,.06)}.mb2-stats{grid-template-columns:1fr 1fr;gap:14px}.mb2-ps.plus{width:46px;height:46px}.mb2-ps.silver{width:40px;height:40px}.mb2-detail-toolbar{flex-wrap:wrap}.mb2-detail-note{width:100%;order:2}.mb2-watermark{font-size:74px;right:1%}}
@media(max-width:440px){.mb2-stats{grid-template-columns:1fr}.mb2-select{min-width:104px}.mb2-meta-item{min-width:100%;border-left:0!important;padding-left:0}.mb2-theme-btn{width:29px}.mb2-tabs{gap:24px}}


/* ===== SOURCE: css/251-v5624-mybuild-compact-library-style.css ===== */

/* Keep My Build as a compact showcase instead of a full-width hero. */
body.build-overview-active #playerCardPanel{
  display:block!important;
  flex:0 0 auto!important;
  min-height:0!important;
}
body.build-overview-active #playerCardPanel .build-overview-head{margin-bottom:8px!important}
#mb24Workspace{
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.88fr);
  gap:14px;
  align-items:stretch;
}
#mb24Workspace>#myBuildShowcaseV2{min-width:0}
#myBuildShowcaseV2{
  min-height:500px!important;
  height:500px;
  border-radius:20px!important;
}
#myBuildShowcaseV2::before{
  background-size:100% 100%!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:saturate(.98) brightness(.93)!important;
  transform:none!important;
}
#myBuildShowcaseV2::after{
  background:
    linear-gradient(90deg,rgba(4,8,13,.76) 0%,rgba(5,10,16,.49) 44%,rgba(5,10,16,.18) 74%,rgba(4,8,13,.34) 100%),
    linear-gradient(180deg,rgba(3,7,11,.10),rgba(3,7,11,.24))!important;
}
#myBuildShowcaseV2[data-theme="classic"]::after{
  background:
    linear-gradient(90deg,rgba(5,7,9,.67),rgba(8,9,9,.36) 47%,rgba(5,6,7,.20) 76%,rgba(4,5,6,.34)),
    linear-gradient(180deg,rgba(0,0,0,.07),rgba(0,0,0,.18))!important;
}
#myBuildShowcaseV2[data-theme="pitch"]::after{
  background:
    linear-gradient(90deg,rgba(3,8,10,.66),rgba(4,10,12,.34) 47%,rgba(4,10,12,.16) 76%,rgba(2,7,9,.30)),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.18))!important;
}
#myBuildShowcaseV2[data-theme="arena"]::after{
  background:
    linear-gradient(90deg,rgba(4,8,13,.70),rgba(4,10,17,.39) 47%,rgba(4,11,19,.18) 76%,rgba(3,8,14,.30)),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.20))!important;
}
.mb2-shell{min-height:500px!important;height:500px;padding:19px 22px 18px!important}
.mb2-topline{margin-bottom:11px!important}
.mb2-title{font-size:clamp(24px,1.8vw,32px)!important}
.mb2-subline{margin-top:6px!important;font-size:13px!important}
.mb2-selectors{margin-top:11px!important}
.mb2-select{height:34px!important}
.mb2-tabs{margin-top:13px!important;height:38px!important}
.mb2-tab{height:38px!important}
.mb2-page{min-height:0!important}
.mb2-overview{
  padding-top:17px!important;
  display:none!important;
  grid-template-columns:minmax(255px,.78fr) minmax(0,1.22fr);
  gap:24px;
  align-items:center;
}
.mb2-overview.active{display:grid!important}
.mb2-meta{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:center;
  border-bottom:0!important;
  padding:0 18px 0 0!important;
  border-right:1px solid rgba(255,255,255,.075);
}
.mb2-meta-item{
  min-width:0!important;
  padding:11px 14px!important;
  border-left:0!important;
  border-top:1px solid rgba(255,255,255,.05);
}
.mb2-meta-item:nth-child(-n+2){border-top:0}
.mb2-meta-item:nth-child(odd){padding-left:0!important}
.mb2-meta-item span{font-size:8px!important;margin-bottom:3px!important;color:#75808c!important}
.mb2-meta-item strong{font-size:14px!important}
/* My Build is a display surface: reuse the Archetype Overview badge shell exactly,
   without source dots, labels, duplicate warnings, or extra plate generation. */
.mb2-playstyles{
  display:flex!important;
  align-content:center;
  align-items:center!important;
  gap:6px!important;
  row-gap:8px!important;
  flex-wrap:wrap!important;
  padding:0!important;
  max-width:none!important;
  min-height:108px;
}
.mb24-ps-badge{
  position:relative;
  width:46px;height:46px;flex:0 0 46px;
  display:grid;place-items:center;
  cursor:help;
  transition:transform .14s ease,filter .14s ease;
}
.mb24-ps-badge:hover{transform:translateY(-1px);filter:brightness(1.08)}
.mb24-ps-badge .overview-badge-shell{
  --badge-h:36px;--badge-w:36px;--icon-box:21px;--gold-lift:0px;
  width:46px!important;height:46px!important;
}
.mb24-ps-badge.plus .overview-badge-shell.plus{
  --badge-h:36px;--badge-w:43px;--icon-box:21px;--gold-lift:2.05px;
}
.mb24-ps-badge img{display:block}
.mb2-empty-ps{padding:0!important}
.mb2-watermark{bottom:1%!important;right:2.5%!important;max-width:70%!important;font-size:clamp(64px,6.5vw,108px)!important;color:rgba(225,231,238,.055)!important}
.mb2-detail-toolbar{padding:9px 0 5px!important}
.mb2-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:22px!important;row-gap:10px!important;padding-top:3px!important}
.mb2-stat-group{padding-top:8px!important}
.mb2-stat-group h4{margin-bottom:4px!important}
.mb2-stat-row{min-height:21px!important}
.mb2-footline{padding-top:7px!important}

/* Reserved Build Library column. */
.mb24-library{
  position:relative;
  min-height:500px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:20px;
  overflow:hidden;
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008) 46%,transparent 72%),
    rgba(11,17,23,.78);
  box-shadow:0 18px 46px rgba(0,0,0,.17);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:18px;
}
.mb24-library::after{
  content:"LIBRARY";
  position:absolute;right:-5px;bottom:-14px;
  color:rgba(225,231,238,.026);
  font-size:78px;font-weight:900;letter-spacing:-.06em;
  pointer-events:none;
}
.mb24-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.065)}
.mb24-library-kicker{display:block;color:#776f5e;font-size:8px;font-weight:800;letter-spacing:.20em;margin-bottom:5px}
.mb24-library h3{margin:0;color:#edf0f3;font-size:18px;letter-spacing:-.02em}
.mb24-library-count{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:23px;padding:0 7px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:#7f8994;font-size:9px;font-weight:800}
.mb24-library-tabs{display:flex;gap:20px;padding:12px 0 10px}
.mb24-library-tab{position:relative;color:#c4cbd2;font-size:10px;font-weight:780}.mb24-library-tab.muted{color:#59636e}
.mb24-library-tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:#c8aa5c}
.mb24-library-empty{height:380px;display:grid;place-items:center;text-align:center;color:#626d78;padding:30px}
.mb24-library-empty-inner{max-width:230px}
.mb24-library-empty-mark{width:42px;height:42px;margin:0 auto 12px;border:1px solid rgba(216,184,95,.15);border-radius:13px;display:grid;place-items:center;color:#a68c4e;background:rgba(216,184,95,.035);font-size:20px}
.mb24-library-empty strong{display:block;color:#aab2bb;font-size:11px;margin-bottom:6px}
.mb24-library-empty span{display:block;font-size:9px;line-height:1.55}

@media(max-width:1320px) and (min-width:901px){
  #mb24Workspace{grid-template-columns:minmax(0,1.5fr) minmax(270px,.82fr)}
  #myBuildShowcaseV2,.mb2-shell,.mb24-library{height:510px;min-height:510px!important}
  .mb2-overview{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:17px}
  .mb24-ps-badge{width:42px;height:42px;flex-basis:42px}
  .mb24-ps-badge .overview-badge-shell{width:42px!important;height:42px!important}
}
@media(max-width:900px){
  #mb24Workspace{grid-template-columns:1fr}
  #myBuildShowcaseV2,.mb2-shell{height:auto;min-height:520px!important}
  .mb24-library{min-height:330px}
  .mb24-library-empty{height:220px}
}
@media(max-width:760px){
  .mb2-overview,.mb2-overview.active{grid-template-columns:1fr!important;gap:15px!important}
  .mb2-meta{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.065)!important;padding:0 0 13px!important}
  .mb2-playstyles{padding-top:3px!important}
  .mb2-stats{grid-template-columns:1fr 1fr!important}
}


/* ===== SOURCE: css/252-v5625-mybuild-layout-rebuild-style.css ===== */

/* Keep the Showcase in the original Build Overview footprint and permanently
   reserve the right column for the local Build Library. */
body.build-overview-active #playerCardPanel{min-width:0!important;overflow:visible!important}
#mb24Workspace{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.82fr)!important;
  gap:14px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  align-items:stretch!important;
}
#mb24Workspace>#myBuildShowcaseV2,
#mb24Workspace>#mb24Library{min-width:0!important;width:auto!important}
#myBuildShowcaseV2,
#myBuildShowcaseV2 .mb2-shell,
#mb24Library{
  height:430px!important;
  min-height:430px!important;
}
#myBuildShowcaseV2{border-radius:19px!important}
#myBuildShowcaseV2::before{
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:saturate(.97) brightness(.90)!important;
  transform:none!important;
}
#myBuildShowcaseV2[data-theme="classic"]::before{filter:saturate(.98) brightness(1.03)!important}
#myBuildShowcaseV2[data-theme="pitch"]::before{filter:saturate(.90) brightness(.91)!important}
#myBuildShowcaseV2[data-theme="arena"]::before{filter:saturate(.92) brightness(.90)!important}
#myBuildShowcaseV2::after{
  background:
    linear-gradient(90deg,rgba(5,8,11,.76) 0%,rgba(6,10,14,.48) 42%,rgba(6,10,14,.27) 70%,rgba(5,8,11,.35) 100%),
    linear-gradient(180deg,rgba(3,6,9,.08),rgba(3,6,9,.24))!important;
}
#myBuildShowcaseV2[data-theme="classic"]::after{
  background:
    linear-gradient(90deg,rgba(4,6,8,.63),rgba(5,7,9,.36) 48%,rgba(4,6,8,.18) 76%,rgba(3,5,7,.26)),
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.14))!important;
}
.mb2-shell{padding:15px 18px 13px!important}
.mb2-topline{margin-bottom:8px!important}
.mb2-kicker{font-size:8px!important;letter-spacing:.24em!important}
.mb2-theme-btn{width:31px!important;height:17px!important}
.mb2-title{font-size:clamp(22px,1.55vw,28px)!important;line-height:1.05!important}
.mb2-edit{width:26px!important;height:26px!important}
.mb2-edit svg{width:13px!important;height:13px!important}
.mb2-subline{margin-top:4px!important;font-size:12px!important;gap:8px!important}
.mb2-selectors{margin-top:8px!important;gap:8px!important}
.mb2-select{height:31px!important;min-width:104px!important;padding-left:11px!important;padding-right:30px!important;font-size:11px!important}
.mb2-select.position{min-width:72px!important}
.mb2-select-wrap::after{right:10px!important;top:5px!important;font-size:14px!important}
.mb2-tabs{margin-top:10px!important;height:34px!important;gap:26px!important}
.mb2-tab{height:34px!important;font-size:11.5px!important}
.mb2-page{min-height:0!important}
.mb2-overview,
.mb2-overview.active{
  padding-top:10px!important;
  display:none!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto 1fr!important;
  gap:10px!important;
  align-items:start!important;
}
.mb2-overview.active{display:grid!important}
.mb2-meta{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  border-right:0!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  padding:0 0 10px!important;
  gap:0!important;
}
.mb2-meta-item{
  min-width:0!important;
  padding:4px 10px!important;
  border-top:0!important;
  border-left:1px solid rgba(255,255,255,.055)!important;
}
.mb2-meta-item:first-child{padding-left:0!important;border-left:0!important}
.mb2-meta-item span{font-size:7.5px!important;margin-bottom:2px!important;color:#78828d!important;letter-spacing:.04em!important}
.mb2-meta-item strong{font-size:12px!important;white-space:nowrap!important}
.mb2-playstyles{
  display:flex!important;
  align-items:center!important;
  align-content:flex-start!important;
  gap:5px!important;
  row-gap:6px!important;
  flex-wrap:wrap!important;
  padding:3px 0 0!important;
  min-height:0!important;
  max-width:none!important;
  overflow:visible!important;
}
.mb25-ps-copy{
  width:37px;height:37px;flex:0 0 37px;
  display:grid;place-items:center;
  cursor:help;
  transition:transform .14s ease,filter .14s ease;
}
.mb25-ps-copy:hover{transform:translateY(-1px);filter:brightness(1.06)}
.mb25-ps-copy .overview-badge-shell{
  --badge-h:29px;--badge-w:29px;--icon-box:16px;--gold-lift:0px;
  width:37px!important;height:37px!important;
}
.mb25-ps-copy.plus .overview-badge-shell.plus{
  --badge-h:29px;--badge-w:34px;--icon-box:16px;--gold-lift:1.6px;
}
.mb25-ps-copy .ovc-ps-issue-dot{display:none!important}
.mb2-empty-ps{padding:7px 0!important;font-size:10px!important}
.mb2-watermark{right:2%!important;bottom:-2%!important;max-width:62%!important;font-size:clamp(58px,5.5vw,88px)!important;color:rgba(225,231,238,.045)!important}
.mb2-footline{padding-top:4px!important;font-size:7px!important}
.mb2-detail-toolbar{padding:7px 0 2px!important;gap:10px!important}
.mb2-detail-note{display:none!important}
.mb2-toggle{font-size:10px!important;gap:5px!important}
.mb2-switch{width:32px!important;height:19px!important}
.mb2-switch::after{width:13px!important;height:13px!important}
.mb2-toggle input:checked+.mb2-switch::after{transform:translateX(13px)!important}
.mb2-stats{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  column-gap:20px!important;
  row-gap:6px!important;
  padding-top:2px!important;
}
.mb2-stat-group{padding-top:6px!important}
.mb2-stat-group h4{margin:0 0 3px!important;font-size:10px!important}
.mb2-stat-row{min-height:18px!important;grid-template-columns:minmax(0,1fr) 30px!important}
.mb2-stat-row span{font-size:9.5px!important}
.mb2-stat-row strong{font-size:10.5px!important}
.mb24-library{padding:15px!important;border-radius:19px!important}
.mb24-library-head{padding-bottom:11px!important}
.mb24-library h3{font-size:16px!important}
.mb24-library-tabs{padding:10px 0 8px!important}
.mb24-library-empty{height:312px!important;padding:22px!important}
@media(max-width:1240px) and (min-width:901px){
  #mb24Workspace{grid-template-columns:minmax(0,1.42fr) minmax(270px,.86fr)!important}
  #myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell,#mb24Library{height:440px!important;min-height:440px!important}
  .mb2-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .mb2-meta-item:nth-child(4){border-left:0!important}
  .mb2-meta-item{padding-top:3px!important;padding-bottom:3px!important}
}
@media(max-width:900px){
  #mb24Workspace{grid-template-columns:1fr!important}
  #myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell{height:auto!important;min-height:430px!important}
  #mb24Library{height:auto!important;min-height:300px!important}
  .mb2-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .mb2-meta-item:nth-child(4){border-left:0!important}
}
@media(max-width:760px){
  .mb2-meta{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mb2-meta-item:nth-child(odd){border-left:0!important}
  .mb2-meta-item:nth-child(4){border-left:1px solid rgba(255,255,255,.055)!important}
  .mb2-stats{grid-template-columns:1fr 1fr!important}
}


/* ===== SOURCE: css/253-v5627-mybuild-singlepage-style.css ===== */

#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell,#mb24Library{height:548px!important;min-height:548px!important}
#myBuildShowcaseV2{overflow:hidden!important}
#myBuildShowcaseV2::after{background:linear-gradient(90deg,rgba(5,7,10,.70) 0%,rgba(5,7,10,.46) 38%,rgba(5,7,10,.26) 72%,rgba(5,7,10,.34) 100%),linear-gradient(180deg,rgba(4,6,9,.08),rgba(4,6,9,.20))!important}
.mb26-shell{position:relative;z-index:3;height:100%;padding:17px 19px 19px;display:flex;flex-direction:column;min-width:0}
.mb26-kicker{font-size:8px;letter-spacing:.24em;font-weight:800;color:#bca66f;text-transform:uppercase;opacity:.88}
.mb26-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:8px}
.mb26-head-left{min-width:0}
.mb26-title-row{display:flex;align-items:center;gap:8px;min-width:0}
.mb26-level{font-size:18px;line-height:1;font-weight:850;color:#e8e8e6;white-space:nowrap}
.mb26-title-dot{font-size:14px;color:#777f88;line-height:1}
.mb26-title{margin:0;min-width:0;font-size:clamp(22px,1.45vw,27px);line-height:1.06;font-weight:820;letter-spacing:-.03em;color:#f3f4f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-edit,.mb26-icon{border:0;background:transparent;color:#b69a52;padding:0;display:grid;place-items:center;cursor:pointer;transition:color .14s ease,transform .14s ease,background .14s ease}
.mb26-edit{width:25px;height:25px;border-radius:8px;flex:0 0 auto}
.mb26-edit:hover,.mb26-icon:hover{color:#e0c471;transform:translateY(-1px)}
.mb26-edit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mb26-archetype{display:flex;align-items:center;gap:9px;margin-top:8px;min-width:0;color:#dfe3e7}
.mb26-archetype-logo{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 3px 7px rgba(0,0,0,.28));flex:0 0 auto}
.mb26-archetype-text{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}
.mb26-archetype-cn{font-size:16px;font-weight:800;color:#edf0f2}
.mb26-archetype-en{font-size:11px;font-weight:650;color:#77828e;letter-spacing:.01em}
.mb26-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding-top:2px}
.mb26-icon{width:30px;height:30px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(8,12,17,.35);color:#8f9aa5}
.mb26-icon:hover{background:rgba(255,255,255,.045);border-color:rgba(213,182,102,.19);color:#d4b76a}
.mb26-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mb26-theme-dots{display:flex;align-items:center;gap:7px;margin-left:5px;padding:0 2px}
.mb26-theme-dot{appearance:none;border:0;width:7px;height:7px;border-radius:50%;padding:0;background:#4c5660;opacity:.52;cursor:pointer;box-shadow:none;transition:transform .14s ease,background .14s ease,opacity .14s ease,box-shadow .14s ease}
.mb26-theme-dot:hover{opacity:.86;transform:scale(1.18)}
.mb26-theme-dot.active{background:#d1b15f;opacity:1;transform:scale(1.28);box-shadow:0 0 0 3px rgba(209,177,95,.09)}
.mb26-divider{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.11),rgba(255,255,255,.055) 72%,transparent);margin:13px 0 13px}
.mb26-main{display:grid;grid-template-columns:minmax(205px,.78fr) repeat(3,minmax(0,1fr));gap:0;flex:1;min-height:0}
.mb26-info{min-width:0;padding:2px 17px 6px 0;border-right:1px solid rgba(255,255,255,.075);display:flex;flex-direction:column}
.mb26-select-row{display:flex;gap:7px;align-items:center}
.mb26-select-wrap{position:relative;display:block;min-width:0}
.mb26-select-wrap::after{content:'›';position:absolute;right:9px;top:50%;transform:translateY(-53%) rotate(90deg);font-size:14px;color:#79848f;pointer-events:none}
.mb26-select{appearance:none;height:31px;border:1px solid rgba(255,255,255,.085);border-radius:9px;background:rgba(8,12,17,.42);color:#e6e9ec;padding:0 27px 0 10px;font-size:10.5px;font-weight:750;outline:none}
.mb26-select.formation{width:103px}.mb26-select.position{width:68px}
.mb26-select:focus{border-color:rgba(209,177,95,.36)}
.mb26-info-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
.mb26-info-item{min-width:0}
.mb26-info-item span{display:block;margin-bottom:3px;font-size:7.5px;color:#707b87;letter-spacing:.03em}
.mb26-info-item strong{display:block;font-size:11.5px;color:#e3e6e9;font-weight:780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-ps{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055);display:grid;gap:6px}
.mb26-ps-row{display:flex;align-items:center;gap:5px;min-height:32px;flex-wrap:wrap}
.mb26-ps-empty{font-size:9px;color:#65717d}
.mb26-ps-copy{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;cursor:help}
.mb26-ps-copy .overview-badge-shell{--badge-h:27px;--badge-w:27px;--icon-box:15px;--gold-lift:0px;width:34px!important;height:34px!important}
.mb26-ps-copy.plus .overview-badge-shell.plus{--badge-h:27px;--badge-w:31px;--icon-box:15px;--gold-lift:1.4px}
.mb26-ps-copy .ovc-ps-issue-dot{display:none!important}
.mb26-attrs{display:contents}
.mb26-attr-col{min-width:0;padding:0 14px;border-right:1px solid rgba(255,255,255,.055)}
.mb26-attr-col:last-child{border-right:0;padding-right:0}
.mb26-group+.mb26-group{margin-top:14px;padding-top:11px;border-top:1px solid rgba(255,255,255,.065)}
.mb26-group h4{margin:0 0 5px;color:#d1b15f;font-size:10px;font-weight:850;letter-spacing:.035em}
.mb26-attr-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;min-height:20px;border-bottom:1px solid rgba(255,255,255,.032);gap:7px}
.mb26-attr-row:last-child{border-bottom:0}
.mb26-attr-row span{min-width:0;font-size:9.5px;color:#aab2ba;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb26-attr-row strong{text-align:right;font-size:10.5px;font-weight:850;font-variant-numeric:tabular-nums}
.mb26-togglebar{position:absolute;right:18px;bottom:18px;z-index:7;display:flex;align-items:center;gap:10px;padding:5px 7px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(8,11,15,.52);backdrop-filter:blur(8px)}
.mb26-toggle{display:flex;align-items:center;gap:5px;font-size:8.5px;color:#8d97a1;font-weight:700;cursor:pointer}
.mb26-toggle input{display:none}
.mb26-switch{width:27px;height:16px;border-radius:999px;background:#39414a;border:1px solid rgba(255,255,255,.08);position:relative;display:inline-block}
.mb26-switch::after{content:'';position:absolute;width:10px;height:10px;left:2px;top:2px;border-radius:50%;background:#e8eaec;transition:transform .15s ease}
.mb26-toggle input:checked+.mb26-switch{background:#8e773a;border-color:#a98d47}.mb26-toggle input:checked+.mb26-switch::after{transform:translateX(11px)}
.mb26-watermark{position:absolute;right:1.5%;bottom:3%;z-index:1;max-width:52%;font-family:"Segoe Script","Brush Script MT","Snell Roundhand",cursive;font-size:clamp(52px,4.8vw,78px);font-style:italic;line-height:.9;color:rgba(228,232,236,.035);transform:rotate(-7deg);pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:clip}
.mb26-site{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);z-index:8;color:rgba(190,196,202,.45);font-size:7.5px;letter-spacing:.13em;white-space:nowrap;text-transform:lowercase;pointer-events:none}
.mb26-title-input{height:32px;min-width:220px;max-width:420px;border:0;border-bottom:1px solid rgba(209,177,95,.42);background:transparent;color:#f2f3f4;font-size:24px;font-weight:820;outline:none;padding:0 2px}
.mb26-save-flash{animation:mb26save .55s ease}@keyframes mb26save{0%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}45%{box-shadow:0 0 0 4px rgba(209,177,95,.13)}100%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}}
#mb24Library .mb26-lib-list{display:grid;gap:8px;padding-top:10px;max-height:410px;overflow:auto}
#mb24Library .mb26-lib-card{padding:10px 11px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.018)}
#mb24Library .mb26-lib-card strong{display:block;color:#dfe4e8;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#mb24Library .mb26-lib-card span{display:block;margin-top:4px;color:#6f7b87;font-size:8px}
#mb24Library .mb24-library-empty.has-builds{display:block!important;height:auto!important;padding:0!important;background:transparent!important;border:0!important}
#mb24Library .mb24-library-empty.has-builds .mb24-library-empty-inner{display:none!important}
@media(max-width:1240px) and (min-width:901px){#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell,#mb24Library{height:565px!important;min-height:565px!important}.mb26-main{grid-template-columns:minmax(190px,.76fr) repeat(3,minmax(0,1fr))}.mb26-attr-col{padding:0 10px}.mb26-info{padding-right:12px}}
@media(max-width:900px){#myBuildShowcaseV2,#myBuildShowcaseV2 .mb2-shell{height:auto!important;min-height:650px!important}.mb26-main{grid-template-columns:1fr 1fr;gap:12px}.mb26-info{grid-column:1/-1;border-right:0;border-bottom:1px solid rgba(255,255,255,.07);padding:0 0 12px}.mb26-attr-col{border-right:0;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px!important}.mb26-attr-col:nth-child(4){grid-column:1/-1}.mb26-togglebar{position:static;margin-top:10px;align-self:flex-end}.mb26-site{position:static;transform:none;text-align:center;margin-top:7px}}
@media(max-width:760px){.mb26-main{grid-template-columns:1fr}.mb26-attr-col:nth-child(4){grid-column:auto}.mb26-head{gap:8px}.mb26-actions{gap:5px}.mb26-level{font-size:15px}.mb26-title{font-size:21px}.mb26-archetype-cn{font-size:14px}.mb26-info-line{grid-template-columns:repeat(3,1fr)}}


/* ===== SOURCE: css/255-v5628-mybuild-singlepage-style.css ===== */

#myBuildShowcaseV2,#mb24Library{height:584px!important;min-height:584px!important}
#myBuildShowcaseV2{overflow:hidden!important}
#myBuildShowcaseV2::before{inset:-6px!important;background-size:cover!important;background-position:center center!important;transform:scale(1.045)!important;filter:saturate(.94) brightness(.80)!important}
#myBuildShowcaseV2[data-theme="classic"]::before{transform:scale(1.08)!important;background-position:center 53%!important;filter:saturate(.96) brightness(.84)!important}
#myBuildShowcaseV2[data-theme="pitch"]::before{transform:scale(1.05)!important;background-position:center 50%!important}
#myBuildShowcaseV2[data-theme="arena"]::before{transform:scale(1.03)!important;background-position:center 50%!important}
#myBuildShowcaseV2::after{background:linear-gradient(90deg,rgba(5,8,12,.78) 0%,rgba(5,8,12,.62) 36%,rgba(5,8,12,.28) 72%,rgba(5,8,12,.45) 100%),linear-gradient(180deg,rgba(4,6,9,.10),rgba(4,6,9,.24))!important}
#myBuildShowcaseV2 .mb28-shell{position:relative;z-index:4;height:100%;padding:22px 20px 18px;display:flex;flex-direction:column;min-width:0}
#myBuildShowcaseV2 .mb28-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
#myBuildShowcaseV2 .mb28-head-left{min-width:0;display:flex;flex-direction:column;gap:8px}
#myBuildShowcaseV2 .mb28-title-row{display:flex;align-items:center;gap:9px;min-width:0}
#myBuildShowcaseV2 .mb28-title-combo{display:flex;align-items:baseline;gap:9px;min-width:0;white-space:nowrap}
#myBuildShowcaseV2 .mb28-level{font-size:17px;line-height:1;font-weight:860;color:#edf0f3;white-space:nowrap}
#myBuildShowcaseV2 .mb28-title-dot{font-size:14px;line-height:1;color:#6e7781}
#myBuildShowcaseV2 .mb28-title{margin:0;min-width:0;font-size:clamp(21px,1.45vw,28px);line-height:1.06;font-weight:840;letter-spacing:-.035em;color:#f3f4f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb28-edit,#myBuildShowcaseV2 .mb28-icon{border:0;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer;transition:color .14s ease,transform .14s ease,background .14s ease,border-color .14s ease}
#myBuildShowcaseV2 .mb28-edit{width:23px;height:23px;border-radius:8px;color:#b69a52;flex:0 0 auto}
#myBuildShowcaseV2 .mb28-edit:hover,#myBuildShowcaseV2 .mb28-icon:hover{color:#e0c471;transform:translateY(-1px)}
#myBuildShowcaseV2 .mb28-edit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#myBuildShowcaseV2 .mb28-archetype{display:flex;align-items:center;gap:9px;min-width:0}
#myBuildShowcaseV2 .mb28-archetype-logo{width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.28));flex:0 0 auto}
#myBuildShowcaseV2 .mb28-archetype-text{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}
#myBuildShowcaseV2 .mb28-archetype-cn{font-size:16px;font-weight:810;color:#edf1f4}
#myBuildShowcaseV2 .mb28-archetype-en{font-size:10.5px;font-weight:700;color:#7a848f;letter-spacing:.01em}
#myBuildShowcaseV2 .mb28-tools{display:flex;align-items:flex-start;gap:9px;flex:0 0 auto;padding-top:8px}
#myBuildShowcaseV2 .mb28-icon{width:29px;height:29px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(8,12,17,.36);color:#96a0aa}
#myBuildShowcaseV2 .mb28-icon:hover{background:rgba(255,255,255,.045);border-color:rgba(213,182,102,.2);color:#d4b76a}
#myBuildShowcaseV2 .mb28-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#myBuildShowcaseV2 .mb28-theme-dots{display:flex;align-items:center;gap:8px;margin-left:4px;padding:6px 0}
#myBuildShowcaseV2 .mb28-theme-dot{appearance:none;border:0;width:8px;height:8px;border-radius:50%;padding:0;background:#4b5660;opacity:.55;cursor:pointer;transition:transform .14s ease,background .14s ease,opacity .14s ease,box-shadow .14s ease}
#myBuildShowcaseV2 .mb28-theme-dot:hover{opacity:.86;transform:scale(1.15)}
#myBuildShowcaseV2 .mb28-theme-dot.active{background:#d1b15f;opacity:1;transform:scale(1.3);box-shadow:0 0 0 3px rgba(209,177,95,.09)}
#myBuildShowcaseV2 .mb28-divider{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,.055) 72%,transparent);margin:14px 0 16px}
#myBuildShowcaseV2 .mb28-main{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;flex:1;min-height:0}
#myBuildShowcaseV2 .mb28-info{min-width:0;padding-right:12px;border-right:1px solid rgba(255,255,255,.075);display:flex;flex-direction:column}
#myBuildShowcaseV2 .mb28-select-row{display:flex;gap:8px;align-items:center}
#myBuildShowcaseV2 .mb28-select-wrap{position:relative;display:block;min-width:0}
#myBuildShowcaseV2 .mb28-select-wrap::after{content:'›';position:absolute;right:9px;top:50%;transform:translateY(-53%) rotate(90deg);font-size:14px;color:#79848f;pointer-events:none}
#myBuildShowcaseV2 .mb28-select{appearance:none;height:34px;border:1px solid rgba(255,255,255,.085);border-radius:11px;background:rgba(8,12,17,.42);color:#e6e9ec;padding:0 28px 0 12px;font-size:11.5px;font-weight:770;outline:none}
#myBuildShowcaseV2 .mb28-select.formation{width:108px}#myBuildShowcaseV2 .mb28-select.position{width:86px}
#myBuildShowcaseV2 .mb28-select:focus{border-color:rgba(209,177,95,.36)}
#myBuildShowcaseV2 .mb28-info-line{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
#myBuildShowcaseV2 .mb28-info-item span{display:block;margin-bottom:3px;font-size:8px;color:#6f7a86;letter-spacing:.03em}
#myBuildShowcaseV2 .mb28-info-item strong{display:block;font-size:14.5px;font-weight:800;color:#e6ebef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb28-ps{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.055);display:grid;gap:6px;align-content:start}
#myBuildShowcaseV2 .mb28-ps-row{display:flex;align-items:center;gap:5px;min-height:28px;flex-wrap:wrap}
#myBuildShowcaseV2 .mb28-ps-empty{font-size:9px;color:#65717d}
#myBuildShowcaseV2 .mb28-ps-copy{width:33px;height:33px;display:grid;place-items:center;flex:0 0 33px;cursor:help}
#myBuildShowcaseV2 .mb28-ps-copy .overview-badge-shell{--badge-h:26px;--badge-w:26px;--icon-box:15px;--gold-lift:0px;width:33px!important;height:33px!important}
#myBuildShowcaseV2 .mb28-ps-copy.plus .overview-badge-shell.plus{--badge-h:26px;--badge-w:30px;--icon-box:15px;--gold-lift:1px}
#myBuildShowcaseV2 .mb28-ps-copy .ovc-ps-issue-dot{display:none!important}
#myBuildShowcaseV2 .mb28-attrs-wrap{min-width:0;display:flex;flex-direction:column;min-height:0}
#myBuildShowcaseV2 .mb28-attrs-head{display:flex;justify-content:flex-end;align-items:center;min-height:24px;margin-bottom:6px}
#myBuildShowcaseV2 .mb28-togglebar{display:flex;align-items:center;gap:10px;padding:0}
#myBuildShowcaseV2 .mb28-toggle{display:flex;align-items:center;gap:6px;font-size:9px;color:#98a1a9;font-weight:760;cursor:pointer}
#myBuildShowcaseV2 .mb28-toggle input{display:none}
#myBuildShowcaseV2 .mb28-switch{width:29px;height:17px;border-radius:999px;background:#39414a;border:1px solid rgba(255,255,255,.08);position:relative;display:inline-block}
#myBuildShowcaseV2 .mb28-switch::after{content:'';position:absolute;width:10px;height:10px;left:2px;top:2px;border-radius:50%;background:#e8eaec;transition:transform .15s ease}
#myBuildShowcaseV2 .mb28-toggle input:checked+.mb28-switch{background:#8e773a;border-color:#a98d47}#myBuildShowcaseV2 .mb28-toggle input:checked+.mb28-switch::after{transform:translateX(12px)}
#myBuildShowcaseV2 .mb28-attr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;flex:1;min-height:0}
#myBuildShowcaseV2 .mb28-attr-col{min-width:0;padding:0 10px;border-right:1px solid rgba(255,255,255,.055)}
#myBuildShowcaseV2 .mb28-attr-col:last-child{border-right:0;padding-right:0}
#myBuildShowcaseV2 .mb28-group+.mb28-group{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}
#myBuildShowcaseV2 .mb28-group h4{margin:0 0 6px;color:#d1b15f;font-size:12px;font-weight:860;letter-spacing:.02em}
#myBuildShowcaseV2 .mb28-attr-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;min-height:24px;border-bottom:1px solid rgba(255,255,255,.035);gap:8px}
#myBuildShowcaseV2 .mb28-attr-row:last-child{border-bottom:0}
#myBuildShowcaseV2 .mb28-attr-row span{min-width:0;font-size:11.5px;color:#c7cfd6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb28-attr-row strong{text-align:right;font-size:13.5px;font-weight:860;font-variant-numeric:tabular-nums}
#myBuildShowcaseV2 .mb28-watermark{position:absolute;right:1.8%;bottom:3.5%;z-index:1;max-width:50%;font-family:"Segoe Script","Brush Script MT","Snell Roundhand",cursive;font-size:clamp(50px,4.5vw,76px);font-style:italic;line-height:.9;color:rgba(228,232,236,.032);transform:rotate(-7deg);pointer-events:none;white-space:nowrap;overflow:hidden}
#myBuildShowcaseV2 .mb28-site{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);z-index:8;color:rgba(190,196,202,.46);font-size:8px;letter-spacing:.14em;white-space:nowrap;text-transform:lowercase;pointer-events:none}
#myBuildShowcaseV2 .mb28-title-input{height:34px;min-width:220px;max-width:420px;border:0;border-bottom:1px solid rgba(209,177,95,.42);background:transparent;color:#f2f3f4;font-size:24px;font-weight:840;outline:none;padding:0 2px}
#myBuildShowcaseV2 .mb28-save-flash{animation:mb28save .55s ease}@keyframes mb28save{0%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}45%{box-shadow:0 0 0 4px rgba(209,177,95,.13)}100%{box-shadow:0 0 0 0 rgba(209,177,95,.0)}}
#mb24Library .mb26-lib-list{display:grid;gap:8px;padding-top:10px;max-height:438px;overflow:auto}
@media(max-width:1240px) and (min-width:901px){#myBuildShowcaseV2,#mb24Library{height:602px!important;min-height:602px!important}#myBuildShowcaseV2 .mb28-main{grid-template-columns:220px minmax(0,1fr)}#myBuildShowcaseV2 .mb28-attr-col{padding:0 8px}#myBuildShowcaseV2 .mb28-attr-row span{font-size:10.8px}#myBuildShowcaseV2 .mb28-attr-row strong{font-size:12.8px}}
@media(max-width:900px){#myBuildShowcaseV2{height:auto!important;min-height:730px!important}#myBuildShowcaseV2 .mb28-main{grid-template-columns:1fr}#myBuildShowcaseV2 .mb28-info{border-right:0;border-bottom:1px solid rgba(255,255,255,.07);padding:0 0 12px;margin-bottom:12px}#myBuildShowcaseV2 .mb28-attr-grid{grid-template-columns:1fr 1fr}#myBuildShowcaseV2 .mb28-attr-col{border-right:0;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px!important}#myBuildShowcaseV2 .mb28-attr-grid .mb28-attr-col:last-child{grid-column:1/-1}#myBuildShowcaseV2 .mb28-site{position:static;transform:none;text-align:center;margin-top:8px}}
@media(max-width:760px){#myBuildShowcaseV2 .mb28-head{gap:8px}#myBuildShowcaseV2 .mb28-title{font-size:20px}#myBuildShowcaseV2 .mb28-level{font-size:15px}#myBuildShowcaseV2 .mb28-archetype-cn{font-size:14px}#myBuildShowcaseV2 .mb28-archetype-en{font-size:10px}#myBuildShowcaseV2 .mb28-info-item strong{font-size:13px}#myBuildShowcaseV2 .mb28-attr-grid{grid-template-columns:1fr}}


/* ===== SOURCE: css/257-v5629-mybuild-style.css ===== */

#myBuildShowcaseV2,#mb24Library{height:590px!important;min-height:590px!important}
#myBuildShowcaseV2 .mb29-shell{position:relative;z-index:4;height:100%;padding:22px 20px 18px;display:flex;flex-direction:column;min-width:0}
#myBuildShowcaseV2 .mb29-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
#myBuildShowcaseV2 .mb29-head-left{min-width:0;display:flex;flex-direction:column;gap:8px}
#myBuildShowcaseV2 .mb29-title-row{display:flex;align-items:center;gap:9px;min-width:0}
#myBuildShowcaseV2 .mb29-title-combo{display:flex;align-items:baseline;gap:9px;min-width:0;white-space:nowrap}
#myBuildShowcaseV2 .mb29-level{font-size:17px;line-height:1;font-weight:860;color:#edf0f3;white-space:nowrap}
#myBuildShowcaseV2 .mb29-title-dot{font-size:14px;line-height:1;color:#6e7781}
#myBuildShowcaseV2 .mb29-title{margin:0;min-width:0;font-size:clamp(21px,1.45vw,28px);line-height:1.06;font-weight:840;letter-spacing:-.035em;color:#f3f4f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb29-edit,#myBuildShowcaseV2 .mb29-icon{border:0;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer;transition:color .14s ease,transform .14s ease,background .14s ease,border-color .14s ease}
#myBuildShowcaseV2 .mb29-edit{width:23px;height:23px;border-radius:8px;color:#b69a52;flex:0 0 auto}
#myBuildShowcaseV2 .mb29-edit:hover,#myBuildShowcaseV2 .mb29-icon:hover{color:#e0c471;transform:translateY(-1px)}
#myBuildShowcaseV2 .mb29-edit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#myBuildShowcaseV2 .mb29-archetype{display:flex;align-items:center;gap:9px;min-width:0}
#myBuildShowcaseV2 .mb29-archetype-logo{width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.28));flex:0 0 auto}
#myBuildShowcaseV2 .mb29-archetype-text{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}
#myBuildShowcaseV2 .mb29-archetype-cn{font-size:16px;font-weight:810;color:#edf1f4}
#myBuildShowcaseV2 .mb29-archetype-en{font-size:10.5px;font-weight:700;color:#7a848f;letter-spacing:.01em}
/* background dots sit ABOVE save/export */
#myBuildShowcaseV2 .mb29-tools{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex:0 0 auto;padding-top:4px}
#myBuildShowcaseV2 .mb29-theme-dots{display:flex;align-items:center;gap:9px;padding:0 7px 0 0;height:12px}
#myBuildShowcaseV2 .mb29-theme-dot{appearance:none;border:0;width:8px;height:8px;border-radius:50%;padding:0;background:#4b5660;opacity:.55;cursor:pointer;transition:transform .14s ease,background .14s ease,opacity .14s ease,box-shadow .14s ease}
#myBuildShowcaseV2 .mb29-theme-dot:hover{opacity:.86;transform:scale(1.15)}
#myBuildShowcaseV2 .mb29-theme-dot.active{background:#d1b15f;opacity:1;transform:scale(1.3);box-shadow:0 0 0 3px rgba(209,177,95,.09)}
#myBuildShowcaseV2 .mb29-action-row{display:flex;align-items:center;gap:9px}
#myBuildShowcaseV2 .mb29-icon{width:29px;height:29px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(8,12,17,.36);color:#96a0aa}
#myBuildShowcaseV2 .mb29-icon:hover{background:rgba(255,255,255,.045);border-color:rgba(213,182,102,.2);color:#d4b76a}
#myBuildShowcaseV2 .mb29-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#myBuildShowcaseV2 .mb29-divider{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,.055) 72%,transparent);margin:14px 0 16px}
#myBuildShowcaseV2 .mb29-main{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;flex:1;min-height:0}
#myBuildShowcaseV2 .mb29-info{min-width:0;padding-right:12px;border-right:1px solid rgba(255,255,255,.075);display:flex;flex-direction:column}
#myBuildShowcaseV2 .mb29-picker-row{display:flex;gap:8px;align-items:center;position:relative;z-index:20}
#myBuildShowcaseV2 .mb29-picker{position:relative;min-width:0}
#myBuildShowcaseV2 .mb29-picker.formation{width:126px}#myBuildShowcaseV2 .mb29-picker.position{width:92px}
#myBuildShowcaseV2 .mb29-picker-btn{width:100%;height:34px;border:1px solid rgba(255,255,255,.085);border-radius:11px;background:rgba(8,12,17,.46);color:#e6e9ec;padding:0 11px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;font-weight:770;cursor:pointer;text-align:left}
#myBuildShowcaseV2 .mb29-picker-btn:hover,#myBuildShowcaseV2 .mb29-picker.open .mb29-picker-btn{border-color:rgba(209,177,95,.30);background:rgba(13,18,25,.62)}
#myBuildShowcaseV2 .mb29-picker-caret{font-size:13px;color:#7d8792;transform:rotate(90deg);line-height:1}
#myBuildShowcaseV2 .mb29-picker-menu{display:none;position:absolute;left:0;top:calc(100% + 7px);z-index:80;width:max-content;min-width:100%;max-height:270px;overflow:auto;padding:6px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(8,12,17,.88);backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%);box-shadow:0 16px 42px rgba(0,0,0,.46)}
#myBuildShowcaseV2 .mb29-picker.open .mb29-picker-menu{display:grid;grid-template-columns:1fr;gap:2px}
#myBuildShowcaseV2 .mb29-picker.formation .mb29-picker-menu{min-width:150px}
#myBuildShowcaseV2 .mb29-picker-option{height:30px;border:0;border-radius:8px;background:transparent;color:#aeb6be;padding:0 10px;text-align:left;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer}
#myBuildShowcaseV2 .mb29-picker-option:hover{background:rgba(255,255,255,.055);color:#f0f2f4}
#myBuildShowcaseV2 .mb29-picker-option.active{background:rgba(209,177,95,.11);color:#e2c677}
#myBuildShowcaseV2 .mb29-info-line{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
#myBuildShowcaseV2 .mb29-info-item span{display:block;margin-bottom:3px;font-size:8px;color:#6f7a86;letter-spacing:.03em}
#myBuildShowcaseV2 .mb29-info-item strong{display:block;font-size:14.5px;font-weight:800;color:#e6ebef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb29-ps{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.055);display:grid;gap:6px;align-content:start}
#myBuildShowcaseV2 .mb29-ps-row{display:flex;align-items:center;gap:5px;min-height:28px;flex-wrap:wrap}
#myBuildShowcaseV2 .mb29-ps-empty{font-size:9px;color:#65717d}
#myBuildShowcaseV2 .mb29-ps-copy{width:33px;height:33px;display:grid;place-items:center;flex:0 0 33px;cursor:help}
#myBuildShowcaseV2 .mb29-ps-copy .overview-badge-shell{--badge-h:26px;--badge-w:26px;--icon-box:15px;--gold-lift:0px;width:33px!important;height:33px!important}
#myBuildShowcaseV2 .mb29-ps-copy.plus .overview-badge-shell.plus{--badge-h:26px;--badge-w:30px;--icon-box:15px;--gold-lift:1px}
#myBuildShowcaseV2 .mb29-ps-copy .ovc-ps-issue-dot{display:none!important}
#myBuildShowcaseV2 .mb29-attrs-wrap{min-width:0;display:flex;flex-direction:column;min-height:0}
#myBuildShowcaseV2 .mb29-attrs-head{display:flex;justify-content:flex-end;align-items:center;min-height:24px;margin-bottom:6px}
#myBuildShowcaseV2 .mb29-togglebar{display:flex;align-items:center;gap:10px}
#myBuildShowcaseV2 .mb29-toggle{display:flex;align-items:center;gap:6px;font-size:9px;color:#98a1a9;font-weight:760;cursor:pointer}
#myBuildShowcaseV2 .mb29-toggle input{display:none}
#myBuildShowcaseV2 .mb29-switch{width:29px;height:17px;border-radius:999px;background:#39414a;border:1px solid rgba(255,255,255,.08);position:relative;display:inline-block}
#myBuildShowcaseV2 .mb29-switch::after{content:'';position:absolute;width:10px;height:10px;left:2px;top:2px;border-radius:50%;background:#e8eaec;transition:transform .15s ease}
#myBuildShowcaseV2 .mb29-toggle input:checked+.mb29-switch{background:#8e773a;border-color:#a98d47}#myBuildShowcaseV2 .mb29-toggle input:checked+.mb29-switch::after{transform:translateX(12px)}
#myBuildShowcaseV2 .mb29-attr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;flex:1;min-height:0}
#myBuildShowcaseV2 .mb29-attr-col{min-width:0;padding:0 9px;border-right:1px solid rgba(255,255,255,.055)}
#myBuildShowcaseV2 .mb29-attr-col:last-child{border-right:0;padding-right:0}
#myBuildShowcaseV2 .mb29-group+.mb29-group{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}
#myBuildShowcaseV2 .mb29-group h4{margin:0 0 6px;color:#d1b15f;font-size:12px;font-weight:860;letter-spacing:.02em}
#myBuildShowcaseV2 .mb29-attr-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;min-height:24px;border-bottom:1px solid rgba(255,255,255,.035);gap:8px}
#myBuildShowcaseV2 .mb29-attr-row:last-child{border-bottom:0}
#myBuildShowcaseV2 .mb29-attr-row span{min-width:0;font-size:11.5px;color:#c7cfd6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#myBuildShowcaseV2 .mb29-attr-row strong{text-align:right;font-size:13.5px;font-weight:860;font-variant-numeric:tabular-nums}
#myBuildShowcaseV2 .mb29-watermark{position:absolute;right:1.8%;bottom:3.5%;z-index:1;max-width:50%;font-family:"Segoe Script","Brush Script MT","Snell Roundhand",cursive;font-size:clamp(50px,4.5vw,76px);font-style:italic;line-height:.9;color:rgba(228,232,236,.032);transform:rotate(-7deg);pointer-events:none;white-space:nowrap;overflow:hidden}
#myBuildShowcaseV2 .mb29-site{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);z-index:8;color:rgba(190,196,202,.46);font-size:8px;letter-spacing:.14em;white-space:nowrap;text-transform:lowercase;pointer-events:none}
#myBuildShowcaseV2 .mb29-title-input{height:34px;min-width:220px;max-width:420px;border:0;border-bottom:1px solid rgba(209,177,95,.42);background:transparent;color:#f2f3f4;font-size:24px;font-weight:840;outline:none;padding:0 2px}
#myBuildShowcaseV2 .mb29-save-flash{animation:mb29save .55s ease}@keyframes mb29save{0%{box-shadow:0 0 0 0 rgba(209,177,95,0)}45%{box-shadow:0 0 0 4px rgba(209,177,95,.13)}100%{box-shadow:0 0 0 0 rgba(209,177,95,0)}}
@media(max-width:1240px) and (min-width:901px){#myBuildShowcaseV2,#mb24Library{height:608px!important;min-height:608px!important}#myBuildShowcaseV2 .mb29-main{grid-template-columns:220px minmax(0,1fr)}#myBuildShowcaseV2 .mb29-attr-row span{font-size:10.8px}#myBuildShowcaseV2 .mb29-attr-row strong{font-size:12.8px}}
@media(max-width:900px){#myBuildShowcaseV2{height:auto!important;min-height:740px!important}#myBuildShowcaseV2 .mb29-main{grid-template-columns:1fr}#myBuildShowcaseV2 .mb29-info{border-right:0;border-bottom:1px solid rgba(255,255,255,.07);padding:0 0 12px;margin-bottom:12px}#myBuildShowcaseV2 .mb29-attr-grid{grid-template-columns:1fr 1fr}#myBuildShowcaseV2 .mb29-attr-col{border-right:0;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px!important}#myBuildShowcaseV2 .mb29-attr-grid .mb29-attr-col:last-child{grid-column:1/-1}#myBuildShowcaseV2 .mb29-site{position:static;transform:none;text-align:center;margin-top:8px}}
@media(max-width:760px){#myBuildShowcaseV2 .mb29-head{gap:8px}#myBuildShowcaseV2 .mb29-title{font-size:20px}#myBuildShowcaseV2 .mb29-level{font-size:15px}#myBuildShowcaseV2 .mb29-archetype-cn{font-size:14px}#myBuildShowcaseV2 .mb29-archetype-en{font-size:10px}#myBuildShowcaseV2 .mb29-info-item strong{font-size:13px}#myBuildShowcaseV2 .mb29-attr-grid{grid-template-columns:1fr}}


/* ===== SOURCE: css/259-v5631-mybuild-polish.css ===== */

/* Right-side attribute typography: +1px without changing the existing layout. */
#myBuildShowcaseV2 .mb29-group h4{font-size:13px!important}
#myBuildShowcaseV2 .mb29-attr-row span{font-size:12.5px!important}
#myBuildShowcaseV2 .mb29-attr-row strong{font-size:14.5px!important}
@media(max-width:1240px) and (min-width:901px){
  #myBuildShowcaseV2 .mb29-attr-row span{font-size:11.8px!important}
  #myBuildShowcaseV2 .mb29-attr-row strong{font-size:13.8px!important}
}

/* Theme 1: keep the actual source background but reveal more of its gold atmosphere.
   A subtle extra gold haze compensates for the wide source crop without touching 2/3. */
#myBuildShowcaseV2[data-theme="classic"]::before{
  inset:-2px!important;
  transform:scale(1.018)!important;
  background-size:cover!important;
  background-position:center 48%!important;
  filter:saturate(1.02) brightness(.92)!important;
}
#myBuildShowcaseV2[data-theme="classic"]::after{
  background:
    radial-gradient(32% 44% at 4% 89%,rgba(184,133,47,.15),transparent 72%),
    radial-gradient(28% 40% at 96% 88%,rgba(177,126,43,.13),transparent 74%),
    radial-gradient(30% 24% at 8% 8%,rgba(164,119,42,.065),transparent 76%),
    linear-gradient(90deg,rgba(5,8,12,.73) 0%,rgba(5,8,12,.58) 36%,rgba(5,8,12,.26) 72%,rgba(5,8,12,.39) 100%),
    linear-gradient(180deg,rgba(4,6,9,.08),rgba(4,6,9,.20))!important;
}


/* ===== SOURCE: css/260-v5632-mybuild-theme-stars.css ===== */

/* Theme 1: push the source image slightly beyond the card and lower it a touch,
   so the bottom edge never shows a seam and the gold atmosphere is more visible. */
#myBuildShowcaseV2[data-theme="classic"]::before{
  inset:-12px -10px -26px -10px !important;
  transform:none !important;
  background-size:106% auto !important;
  background-position:center 52% !important;
  filter:saturate(1.03) brightness(.94) !important;
}
#myBuildShowcaseV2[data-theme="classic"]::after{
  background:
    radial-gradient(34% 46% at 4% 90%,rgba(184,133,47,.16),transparent 72%),
    radial-gradient(28% 42% at 96% 89%,rgba(177,126,43,.15),transparent 74%),
    radial-gradient(34% 24% at 8% 8%,rgba(164,119,42,.07),transparent 76%),
    linear-gradient(90deg,rgba(5,8,12,.71) 0%,rgba(5,8,12,.56) 35%,rgba(5,8,12,.24) 72%,rgba(5,8,12,.37) 100%),
    linear-gradient(180deg,rgba(4,6,9,.06),rgba(4,6,9,.18)) !important;
}

/* Acceleration type: keep the same semantic colors as the left overview,
   but make them smaller and more restrained for the showcase card. */
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"]{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:22px;padding:0 9px;border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  font-size:13.5px;font-weight:820;letter-spacing:.01em;
  width:max-content;max-width:100%;
}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"][data-accel="Controlled"]{
  color:#88d9a5;border-color:rgba(84,197,127,.22);background:rgba(84,197,127,.07);box-shadow:0 0 0 2px rgba(84,197,127,.028);
}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"][data-accel="Explosive"]{
  color:#f09a8e;border-color:rgba(233,101,88,.20);background:rgba(233,101,88,.065);box-shadow:0 0 0 2px rgba(233,101,88,.026);
}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"][data-accel="Lengthy"]{
  color:#91befe;border-color:rgba(76,133,220,.22);background:rgba(76,133,220,.07);box-shadow:0 0 0 2px rgba(76,133,220,.028);
}

/* Skill / weak foot stars: only lit stars, compact and aligned. */
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="stars"]{
  display:flex;align-items:center;gap:3px;min-height:20px;
  width:max-content;max-width:100%;
}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="stars"] .mb32-star{
  display:inline-block;font-size:12px;line-height:1;color:#d2b56a;opacity:.84;
  text-shadow:0 0 8px rgba(209,177,95,.06);
}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="stars"] .mb32-star.empty{display:none}
@media(max-width:760px){
  #myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"]{font-size:12.8px;padding:0 8px;min-height:21px}
  #myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="stars"] .mb32-star{font-size:11px}
}


/* ===== SOURCE: css/261-v5633-mybuild-final-polish.css ===== */

/* Website is export-only; keep the interactive card clean. */
#myBuildShowcaseV2 .mb29-site{display:none!important}

/* Theme 1: move the actual background image downward while keeping oversized coverage.
   This is deliberately the opposite of the previous crop tweak. */
#myBuildShowcaseV2[data-theme="classic"]::before{
  inset:-22px!important;
  background-size:cover!important;
  background-position:center center!important;
  transform:translateY(16px) scale(1.045)!important;
  transform-origin:center center!important;
  filter:saturate(1.02) brightness(.92)!important;
}
#myBuildShowcaseV2[data-theme="classic"]::after{
  background:
    radial-gradient(34% 48% at 4% 92%,rgba(184,133,47,.16),transparent 72%),
    radial-gradient(29% 44% at 96% 91%,rgba(177,126,43,.14),transparent 74%),
    linear-gradient(90deg,rgba(5,8,12,.72) 0%,rgba(5,8,12,.57) 35%,rgba(5,8,12,.25) 72%,rgba(5,8,12,.38) 100%),
    linear-gradient(180deg,rgba(4,6,9,.06),rgba(4,6,9,.18))!important;
}

/* Acceleration: color only, no capsule/background/border. */
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="accel"],
#myBuildShowcaseV2 .mb29-info-item strong[data-mb33-role="accel"]{
  display:block!important;
  min-height:0!important;
  width:auto!important;
  max-width:none!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:14.5px!important;
  font-weight:800!important;
}
#myBuildShowcaseV2 .mb29-info-item strong[data-accel="Controlled"]{color:#72b98c!important}
#myBuildShowcaseV2 .mb29-info-item strong[data-accel="Explosive"]{color:#c87972!important}
#myBuildShowcaseV2 .mb29-info-item strong[data-accel="Lengthy"]{color:#7698c8!important}

/* Lit-star-only display, aligned with the other left-column values. */
#myBuildShowcaseV2 .mb29-info-item strong[data-mb33-role="stars"],
#myBuildShowcaseV2 .mb29-info-item strong[data-mb32-role="stars"]{
  display:flex!important;align-items:center!important;gap:3px!important;
  min-height:20px!important;width:max-content!important;
}
#myBuildShowcaseV2 .mb33-star,
#myBuildShowcaseV2 .mb32-star{
  display:inline-block!important;
  font-size:12.5px!important;line-height:1!important;
  color:#cdb16b!important;opacity:.78!important;
  text-shadow:none!important;
}


/* ===== SOURCE: css/262-v5635-mybuild-title-live-style.css ===== */

/* LV and custom title are now peers, both in a restrained warm-gold tone. */
#myBuildShowcaseV2 .mb29-level,
#myBuildShowcaseV2 .mb29-title{
  color:#c9ad68!important;
  font-size:clamp(24px,1.42vw,28px)!important;
  line-height:1.04!important;
  font-weight:830!important;
}
#myBuildShowcaseV2 .mb29-title-dot{color:rgba(201,173,104,.48)!important;font-size:16px!important}
#myBuildShowcaseV2 .mb29-edit{color:#aa8f50!important}

/* Acceleration stays color-only and deliberately muted. */
#myBuildShowcaseV2 .mb29-info-item strong[data-mb35-accel="Controlled"]{color:#6fa986!important}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb35-accel="Explosive"]{color:#bd7770!important}
#myBuildShowcaseV2 .mb29-info-item strong[data-mb35-accel="Lengthy"]{color:#728fb7!important}


/* ===== SOURCE: css/stable-bundle-028.css ===== */
/* === SOURCE: css/263-v5639-facility-selector-polish.css === */

/* Keep selector tiles visually stable during repeated clicks/rerenders. */
body.facility-drawer-open .facility-picker-tile{
  overflow:hidden!important;
  scroll-margin:0!important;
}

/* Restore the Lv3 reward preview on every facility tile.
   It stays smaller than the facility logo and deliberately low-saturation. */
body.facility-drawer-open .facility-picker-reward{
  display:grid!important;
  place-items:center!important;
  position:absolute!important;
  right:8px!important;
  bottom:7px!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  pointer-events:none!important;
  opacity:.76!important;
  filter:saturate(.58) brightness(.93)!important;
}
body.facility-drawer-open .facility-picker-reward .facility-ps-badge{
  transform:scale(.58)!important;
  transform-origin:center!important;
  margin:0!important;
  flex:0 0 auto!important;
}
body.facility-drawer-open .facility-picker-reward .facility-ps-badge.plus{
  transform:scale(.54)!important;
}
body.facility-drawer-open .facility-picker-tile .facility-picker-current,
body.facility-drawer-open .facility-picker-tile .facility-picker-hint{
  margin-right:28px!important;
}
body.facility-drawer-open .facility-picker-tile:hover .facility-picker-reward{
  opacity:.88!important;
  filter:saturate(.66) brightness(.98)!important;
}

/* Prevent browser focus scrolling from visually nudging the document while the modal is open. */
body.facility-drawer-open .facility-picker-tile:focus,
body.facility-drawer-open .facility-level-card:focus{
  scroll-margin:0!important;
}

/* === SOURCE: css/264-v5640-facility-tile-lv3-badge-fix.css === */

/* The old selector stylesheet intentionally hid reward previews with a more-specific
   !important rule. Override that exact selector so ONLY the 34 left-side facility
   tiles show their Lv3 PlayStyle / PlayStyle+ reward. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward{
  display:grid!important;
  place-items:center!important;
  position:absolute!important;
  right:10px!important;
  bottom:9px!important;
  width:25px!important;
  height:25px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
  opacity:.72!important;
  filter:saturate(.55) brightness(.92)!important;
  z-index:4!important;
}

/* Keep it clearly smaller than the facility logo. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward .facility-ps-badge{
  transform:scale(.57)!important;
  transform-origin:center!important;
  margin:0!important;
  flex:0 0 auto!important;
}
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward .facility-ps-badge.plus{
  transform:scale(.53)!important;
}

/* Give the bottom status text enough breathing room. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-current,
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-hint{
  margin-right:31px!important;
}

/* Very restrained hover lift only. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile:hover .facility-picker-reward{
  opacity:.82!important;
  filter:saturate(.62) brightness(.96)!important;
}

/* === SOURCE: css/265-v5641-facility-scroll-badge-inset.css === */

/* Move the Lv3 reward further inside each facility tile so the diamond plate
   never touches/crops against the rounded card edge. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward{
  right:16px!important;
  bottom:14px!important;
}

/* === SOURCE: css/266-v5642-facility-reward-inset.css === */

/* The Lv3 reward belongs inside each LEFT facility card.
   Pull it further inward from both the rounded right edge and bottom edge. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward{
  right:22px!important;
  bottom:18px!important;
  width:28px!important;
  height:28px!important;
}

/* Center the visual badge inside a slightly larger safe box so its diamond / plus
   plate never touches the tile clipping boundary. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward .facility-ps-badge{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  margin:0!important;
  transform:scale(.57)!important;
  transform-origin:center center!important;
}
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-reward .facility-ps-badge.plus{
  transform:scale(.53)!important;
}

/* Do not reserve excessive horizontal space in the tile copy; the reward sits in
   the visual lower-right corner only. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-current,
body.facility-drawer-open .facility-selector-grid .facility-picker-tile .facility-picker-hint{
  margin-right:34px!important;
}

/* === SOURCE: css/267-v5643-facility-badge-apclear-fix.css === */

/* The facility cards had overflow:hidden from the older selector layout.
   That clips the far corner of the rotated PlayStyle diamond even when the badge
   is already visually inset from the rounded card border. The card itself does
   not need clipping, so let the small reward plate render fully. */
body.facility-drawer-open .facility-selector-grid .facility-picker-tile{
  overflow:visible!important;
}
body.facility-drawer-open .facility-selector-grid .facility-picker-reward,
body.facility-drawer-open .facility-selector-grid .facility-picker-reward .facility-ps-badge{
  overflow:visible!important;
}

/* AP calculator: center the single-attribute remove × optically and geometrically.
   Hide the text-node glyph and draw a dedicated centered glyph so font baselines
   cannot pull it upward/downward. */
#diyPanel .diy-attr-clear{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  font-size:0!important;
  line-height:1!important;
  text-align:center!important;
}
#diyPanel .diy-attr-clear::before{
  content:"×";
  display:block;
  font-family:Arial,"Microsoft YaHei",sans-serif;
  font-size:13px;
  font-weight:600;
  line-height:1;
  width:13px;
  height:13px;
  text-align:center;
  transform:translateY(-.25px);
}

/* === SOURCE: css/268-v570-build-library-style.css === */

#mb24Library{
  position:relative!important;
  z-index:120!important;
  isolation:isolate!important;
  pointer-events:auto!important;
  overflow:hidden!important;
}
#mb24Library::before,#mb24Library::after{pointer-events:none!important;z-index:0!important}
#mb24Library .mb24-library-head{position:relative!important;z-index:2!important;padding-bottom:10px!important}
#mb24Library .mb24-library-tabs{display:none!important}
#mb24Library .mb24-library-count{
  width:auto!important;min-width:52px!important;padding:0 10px!important;
  white-space:nowrap!important;font-variant-numeric:tabular-nums!important;
}
#mb24Library .mb24-library-empty{
  position:relative!important;z-index:2!important;
  display:block!important;width:100%!important;height:auto!important;min-height:0!important;
  padding:0!important;margin:0!important;border:0!important;background:transparent!important;
  text-align:left!important;overflow:visible!important;
}
#mb24Library .mb70-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:7px 0 10px;padding:0 1px;
}
#mb24Library .mb70-sort-group{display:flex;align-items:center;gap:6px;min-width:0}
#mb24Library .mb70-sort-label{color:#59636d;font-size:8px;font-weight:760;margin-right:2px}
#mb24Library .mb70-sort{
  height:24px;padding:0 8px;border:1px solid rgba(255,255,255,.065);border-radius:8px;
  background:rgba(255,255,255,.018);color:#68737e;font:760 8px/1 inherit;cursor:pointer;
}
#mb24Library .mb70-sort:hover{color:#aeb6bd;border-color:rgba(255,255,255,.12)}
#mb24Library .mb70-sort.active{
  color:#c4a95e;border-color:rgba(209,177,95,.18);background:rgba(209,177,95,.055)
}
#mb24Library .mb70-cap{color:#4f5963;font-size:8px;font-weight:720;white-space:nowrap}
#mb24Library .mb70-list{
  display:flex;flex-direction:column;gap:9px;width:100%;max-height:476px;
  overflow-y:auto;overflow-x:hidden;padding:0 3px 3px 0;box-sizing:border-box;scrollbar-width:thin;
}
#mb24Library .mb70-row{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:5px;width:100%;
}
#mb24Library .mb70-card{
  display:block;width:100%;min-width:0;box-sizing:border-box;
  border:1px solid rgba(255,255,255,.075);border-radius:13px;
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  padding:11px 12px 10px;text-align:left;color:inherit;cursor:pointer;pointer-events:auto;
  transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease;
}
#mb24Library .mb70-card:hover{
  border-color:rgba(209,177,95,.30);
  background:linear-gradient(145deg,rgba(209,177,95,.082),rgba(255,255,255,.018));
  box-shadow:inset 0 0 0 1px rgba(209,177,95,.035);
  transform:translateY(-1px);
}
#mb24Library .mb70-card:active{transform:translateY(0)}
#mb24Library .mb70-title{
  display:block;color:#e5e9ed;font-size:11.5px;font-weight:820;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#mb24Library .mb70-date{float:right;color:#525c66;font-size:7.5px;font-weight:650;margin-left:8px}
#mb24Library .mb70-meta{
  display:block;margin-top:4px;color:#77828d;font-size:8.8px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#mb24Library .mb70-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
#mb24Library .mb70-tag{
  height:18px;display:inline-flex;align-items:center;padding:0 6px;border-radius:999px;
  border:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.018);
  color:#65707a;font-size:7.5px;font-weight:760;
}
#mb24Library .mb70-tag.on{
  color:#bba25d;border-color:rgba(209,177,95,.15);background:rgba(209,177,95,.045)
}
#mb24Library .mb70-more{
  align-self:stretch;border:1px solid rgba(255,255,255,.055);border-radius:10px;
  background:rgba(255,255,255,.015);color:#65707a;cursor:pointer;display:grid;place-items:center;
  font-size:15px;padding:0;pointer-events:auto;
}
#mb24Library .mb70-more:hover{
  color:#c4a95e;border-color:rgba(209,177,95,.18);background:rgba(209,177,95,.045)
}
#mb24Library .mb70-empty{
  min-height:325px;display:grid;place-items:center;text-align:center;
  color:#59636d;border:1px dashed rgba(255,255,255,.04);border-radius:13px;
}
#mb24Library .mb70-empty strong{display:block;color:#707b85;font-size:10px}
#mb24Library .mb70-empty span{display:block;margin-top:6px;color:#4e5861;font-size:8px}

.mb70-menu{
  position:fixed;z-index:51000;min-width:120px;padding:5px;border:1px solid rgba(255,255,255,.09);
  border-radius:10px;background:rgba(11,16,22,.985);box-shadow:0 14px 42px rgba(0,0,0,.42);
}
.mb70-menu[hidden]{display:none!important}
.mb70-menu button{
  display:block;width:100%;height:30px;border:0;border-radius:7px;background:transparent;
  color:#929ca5;text-align:left;padding:0 9px;font:730 9px/1 inherit;cursor:pointer;
}
.mb70-menu button:hover{background:rgba(255,255,255,.045);color:#e1e5e8}
.mb70-menu button.danger{color:#b67c74}
.mb70-menu button.danger:hover{background:rgba(179,92,80,.08);color:#d79990}

.mb70-overlay{
  position:fixed;inset:0;z-index:50000;background:rgba(2,5,8,.78);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  display:flex;align-items:center;justify-content:center;padding:24px;
}
.mb70-overlay[hidden]{display:none!important}
.mb70-overlay.preview{align-items:flex-start;overflow:auto;padding-top:28px;padding-bottom:28px}
.mb70-preview{
  width:min(1180px,calc(100vw - 34px));
  border:1px solid rgba(255,255,255,.09);border-radius:20px;
  background:rgba(8,12,17,.985);box-shadow:0 38px 110px rgba(0,0,0,.60);overflow:hidden;
}
.mb70-preview-head,.mb70-preview-foot{
  display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;
}
.mb70-preview-head{border-bottom:1px solid rgba(255,255,255,.06)}
.mb70-preview-foot{border-top:1px solid rgba(255,255,255,.06)}
.mb70-preview-head strong{display:block;color:#e2e6e9;font-size:12px}
.mb70-preview-head span{display:block;margin-top:3px;color:#66717b;font-size:8px}
.mb70-preview-stage{padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.014),transparent)}
.mb70-preview-stage .mb70-preview-card{pointer-events:none}
.mb70-preview-stage #myBuildShowcaseV2{
  width:100%!important;height:584px!important;min-height:584px!important;margin:0!important;
}
.mb70-preview-stage #myBuildShowcaseV2 .mb29-tools,
.mb70-preview-stage #myBuildShowcaseV2 .mb29-togglebar,
.mb70-preview-stage #myBuildShowcaseV2 .mb29-edit,
.mb70-preview-stage #myBuildShowcaseV2 .mb29-picker-menu,
.mb70-preview-stage #myBuildShowcaseV2 .mb29-picker-caret{display:none!important}
.mb70-scope-row{display:flex;flex-wrap:wrap;gap:6px}
.mb70-scope{
  height:20px;display:inline-flex;align-items:center;padding:0 7px;border-radius:999px;
  border:1px solid rgba(209,177,95,.15);background:rgba(209,177,95,.045);
  color:#bda55f;font-size:8px;font-weight:760;
}
.mb70-x{
  width:30px;height:30px;border:1px solid rgba(255,255,255,.07);border-radius:10px;
  background:rgba(255,255,255,.025);color:#7d8791;display:grid;place-items:center;cursor:pointer;font-size:17px;
}
.mb70-x:hover{color:#e4e7ea;border-color:rgba(255,255,255,.14)}
.mb70-modal{
  width:min(520px,calc(100vw - 32px));border:1px solid rgba(255,255,255,.10);border-radius:18px;
  background:linear-gradient(155deg,rgba(20,27,35,.995),rgba(8,12,17,.995));
  box-shadow:0 34px 100px rgba(0,0,0,.58);overflow:hidden;color:#dfe4e9;
}
.mb70-modal-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:18px 19px 14px;border-bottom:1px solid rgba(255,255,255,.065);
}
.mb70-modal-head small{
  display:block;color:#89794d;font-size:8px;font-weight:820;letter-spacing:.16em;margin-bottom:5px;
}
.mb70-modal-head h3{margin:0;color:#eff1f3;font-size:18px;line-height:1.1}
.mb70-modal-body{padding:17px 19px 18px}
.mb70-modal-foot{
  display:flex;justify-content:flex-end;gap:8px;padding:13px 19px 17px;
  border-top:1px solid rgba(255,255,255,.055);
}
.mb70-btn{
  height:34px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);color:#aeb7bf;font:760 10px/1 inherit;cursor:pointer;
}
.mb70-btn:hover{border-color:rgba(255,255,255,.15);color:#e3e7ea}
.mb70-btn.primary{
  border-color:rgba(209,177,95,.23);background:rgba(209,177,95,.10);color:#d9bf75;
}
.mb70-btn.danger{
  border-color:rgba(190,91,78,.20);background:rgba(190,91,78,.055);color:#c98d83;
}
.mb70-input{
  width:100%;height:38px;border:1px solid rgba(255,255,255,.09);border-radius:11px;
  background:rgba(4,8,12,.42);color:#eceff1;padding:0 11px;outline:none;
  font:760 12px/1 inherit;box-sizing:border-box;
}
.mb70-input:focus{border-color:rgba(209,177,95,.32)}
.mb70-field-label{display:block;margin-bottom:7px;color:#727d88;font-size:9px;font-weight:740}
.mb70-section-title{margin:16px 0 8px;color:#8c969f;font-size:9px;font-weight:780}
.mb70-checks{display:grid;gap:6px}
.mb70-check{
  min-height:40px;padding:0 11px;border:1px solid rgba(255,255,255,.065);border-radius:11px;
  background:rgba(255,255,255,.018);display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.mb70-check strong{font-size:10.5px;color:#cfd5da}
.mb70-check small{font-size:8px;color:#69747e;margin-left:6px}
.mb70-check input{accent-color:#b99a4a;width:14px;height:14px}
.mb70-check.locked{opacity:.75}
.mb70-copy{color:#aab2b9;font-size:10.5px;line-height:1.72}
.mb70-copy strong{color:#d9be72}
.mb70-summary{
  margin-top:12px;padding:10px 11px;border:1px solid rgba(255,255,255,.065);border-radius:11px;
  background:rgba(255,255,255,.018);color:#7d8892;font-size:9px;line-height:1.65;
}
.mb70-toast{
  position:fixed;right:24px;bottom:24px;z-index:52000;min-width:180px;max-width:360px;
  padding:11px 14px;border:1px solid rgba(209,177,95,.18);border-radius:12px;
  background:rgba(12,18,24,.96);box-shadow:0 16px 44px rgba(0,0,0,.35);
  color:#d5bd78;font-size:10px;font-weight:760;opacity:0;transform:translateY(8px);
  transition:.18s ease;pointer-events:none;
}
.mb70-toast.show{opacity:1;transform:translateY(0)}


/* ===== SOURCE: css/269-v571-build-library-compact-ui.css ===== */

/* Sort controls: smaller, consistent, comfortable width */
#mb24Library .mb70-toolbar{
  justify-content:flex-start!important;
  gap:12px!important;
  margin:6px 0 10px!important;
}
#mb24Library .mb70-sort-group{
  gap:6px!important;
}
#mb24Library .mb70-sort-label{
  font-size:7.5px!important;
  margin-right:4px!important;
}
#mb24Library .mb70-sort{
  min-width:68px!important;
  height:24px!important;
  padding:0 10px!important;
  font-size:7.7px!important;
  font-weight:760!important;
  border-radius:8px!important;
}
#mb24Library .mb70-cap{
  margin-left:auto!important;
  font-size:7.8px!important;
}

/* Two-line compact Build cards */
#mb24Library .mb70-list{
  gap:7px!important;
  max-height:476px!important;
}
#mb24Library .mb70-row{
  grid-template-columns:minmax(0,1fr)!important;
}
#mb24Library .mb70-card{
  position:relative!important;
  min-height:74px!important;
  padding:11px 44px 10px 13px!important;
  border-radius:12px!important;
}
#mb24Library .mb70-title{
  display:inline!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  vertical-align:middle!important;
}
#mb24Library .mb70-title::after{
  content:"  ";
}
#mb24Library .mb70-meta{
  display:inline!important;
  margin:0 0 0 7px!important;
  font-size:8.7px!important;
  color:#77828d!important;
  vertical-align:middle!important;
}
#mb24Library .mb70-date{
  position:absolute!important;
  right:12px!important;
  top:11px!important;
  float:none!important;
  margin:0!important;
  font-size:7.4px!important;
}
#mb24Library .mb70-tags{
  margin-top:9px!important;
  gap:5px!important;
}
#mb24Library .mb70-tag{
  height:18px!important;
  padding:0 6px!important;
  font-size:7.3px!important;
}

/* Remove old vertical "..." button completely */
#mb24Library .mb70-more{
  display:none!important;
}

/* Hovering the Build name reveals a compact rename affordance */
#mb24Library .mb70-title-wrap{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  max-width:58%!important;
}
#mb24Library .mb70-rename-inline{
  width:18px!important;
  height:18px!important;
  display:inline-grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:#626d77!important;
  font-size:10px!important;
  line-height:1!important;
  cursor:pointer!important;
  opacity:0!important;
  transform:translateX(-2px)!important;
  transition:opacity .15s ease,transform .15s ease,color .15s ease,background .15s ease!important;
}
#mb24Library .mb70-title-wrap:hover .mb70-rename-inline{
  opacity:1!important;
  transform:translateX(0)!important;
}
#mb24Library .mb70-rename-inline:hover{
  color:#c9ad67!important;
  background:rgba(209,177,95,.06)!important;
}

/* Small delete button in lower-right, similar to facility-page utility action */
#mb24Library .mb70-delete-inline{
  position:absolute!important;
  right:10px!important;
  bottom:9px!important;
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.018)!important;
  color:#68737d!important;
  cursor:pointer!important;
  font-size:11px!important;
  line-height:1!important;
  z-index:4!important;
  transition:border-color .15s ease,color .15s ease,background .15s ease!important;
}
#mb24Library .mb70-delete-inline:hover{
  color:#c98b82!important;
  border-color:rgba(194,100,87,.18)!important;
  background:rgba(194,100,87,.055)!important;
}


/* ===== SOURCE: css/270-v572-build-library-polish.css ===== */

/* Premium apply button in preview footer */
#mb70Preview .mb70-btn.primary[data-mb70-apply]{
  position:relative!important;
  overflow:hidden!important;
  min-width:132px!important;
  height:36px!important;
  padding:0 18px!important;
  border-radius:11px!important;
  border:1px solid rgba(214,183,96,.34)!important;
  background:
    linear-gradient(180deg,rgba(210,179,92,.16),rgba(171,141,65,.10))!important;
  color:#dfc77c!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.025em!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 7px 22px rgba(0,0,0,.18)!important;
  transition:
    border-color .18s ease,
    color .18s ease,
    background .18s ease,
    transform .18s ease,
    box-shadow .18s ease!important;
}
#mb70Preview .mb70-btn.primary[data-mb70-apply]::before{
  content:"";
  position:absolute;
  top:-35%;
  left:-38%;
  width:32%;
  height:170%;
  transform:skewX(-24deg);
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,244,198,.06),
    rgba(255,244,198,.28),
    rgba(255,244,198,.06),
    transparent
  );
  opacity:0;
  pointer-events:none;
}
#mb70Preview .mb70-btn.primary[data-mb70-apply]:hover{
  border-color:rgba(226,194,104,.52)!important;
  color:#f0d98d!important;
  background:
    linear-gradient(180deg,rgba(218,187,101,.21),rgba(170,139,64,.12))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 9px 28px rgba(0,0,0,.22),
    0 0 0 1px rgba(212,180,91,.035)!important;
  transform:translateY(-1px)!important;
}
#mb70Preview .mb70-btn.primary[data-mb70-apply]:hover::before{
  opacity:1;
  animation:mb572ApplySweep .72s ease-out 1;
}
#mb70Preview .mb70-btn.primary[data-mb70-apply]:active{
  transform:translateY(0)!important;
}
@keyframes mb572ApplySweep{
  0%{left:-38%}
  100%{left:118%}
}

/* Make inline delete utility a little clearer while remaining restrained */
#mb24Library .mb70-delete-inline{
  font-family:Arial,"Microsoft YaHei",sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
}


/* ===== SOURCE: css/271-v573-build-library-sort-toggle-style.css ===== */

#mb24Library .mb70-sort{
  min-width:76px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
}
#mb24Library .mb73-sort-arrow{
  display:inline-block;
  width:9px;
  color:#6b747d;
  font-size:8px;
  font-weight:800;
  line-height:1;
  transform:translateY(-.2px);
}
#mb24Library .mb70-sort.active .mb73-sort-arrow{
  color:#c8ab60;
}


/* ===== SOURCE: css/272-v576-buildlib-fixes.css ===== */

/* Rename: the title area itself is the control; no nested button inside the card button. */
#mb24Library .mb70-title-wrap{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  cursor:text!important;
  z-index:8!important;
}
#mb24Library .mb70-title-wrap .mb70-rename-inline{
  display:none!important;
}
#mb24Library .mb70-title-wrap::after{
  content:"✎";
  display:inline-block;
  color:#626d77;
  font-size:10px;
  line-height:1;
  opacity:0;
  transform:translateX(-2px);
  transition:opacity .15s ease,transform .15s ease,color .15s ease;
  pointer-events:none;
}
#mb24Library .mb70-title-wrap:hover::after{
  opacity:1;
  transform:translateX(0);
  color:#c9ad67;
}

/* Preview footer: apply shifts left, export sits to its right. */
#mb70Preview .mb76-preview-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:8px;
}
#mb70Preview .mb76-export{
  position:relative;
  overflow:hidden;
  width:38px;
  min-width:38px;
  height:36px;
  padding:0;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.028);
  color:#8f99a2;
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}
#mb70Preview .mb76-export svg{
  width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
}
#mb70Preview .mb76-export::before{
  content:"";
  position:absolute;top:-35%;left:-50%;width:42%;height:170%;
  transform:skewX(-24deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),rgba(255,255,255,.22),rgba(255,255,255,.06),transparent);
  opacity:0;pointer-events:none;
}
#mb70Preview .mb76-export:hover{
  color:#d8c177;border-color:rgba(209,177,95,.25);
  background:rgba(209,177,95,.055);transform:translateY(-1px);
}
#mb70Preview .mb76-export:hover::before{
  opacity:1;animation:mb76Sweep .66s ease-out 1;
}
@keyframes mb76Sweep{from{left:-50%}to{left:125%}}

/* Dedicated rename dialog. */
#mb76Rename{
  position:fixed;inset:0;z-index:54000;
  background:rgba(2,5,8,.78);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  display:flex;align-items:center;justify-content:center;padding:24px;
}
#mb76Rename[hidden]{display:none!important}


/* ===== SOURCE: css/273-v5717-pc-portrait-engine-style.css ===== */

@media(min-width:761px){
  #overviewBuildShowcaseCard .fc27-clean-card-root{display:none}

  #overviewBuildShowcaseCard.fc27-clean-active > .fc-build-card-frame,
  #overviewBuildShowcaseCard.fc27-clean-active > .fc-build-card-player-stage{
    display:none!important;
  }

  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-card-root{
    display:block;
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background-image:var(--fc27-clean-card-face);
    background-size:100% 100%;
    background-position:center;
    background-repeat:no-repeat;
    overflow:hidden;
  }

  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-portrait-window{
    position:absolute;
    left:var(--fc27-clean-vp-left,10.8%);
    top:var(--fc27-clean-vp-top,10.2%);
    width:var(--fc27-clean-vp-width,79.8%);
    height:var(--fc27-clean-vp-height,55.5%);
    overflow:hidden;
    z-index:2;
  }

  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-portrait{
    position:absolute;
    left:calc(50% + var(--fc27-clean-x,0%));
    top:calc(50% + var(--fc27-clean-y,0%));
    width:auto;
    height:var(--fc27-clean-scale,100%);
    max-width:none;
    max-height:none;
    transform:translate(-50%,-50%);
    transform-origin:center center;
    object-fit:contain;
    opacity:1;
    filter:none;
    mix-blend-mode:normal;
  }

  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-frame-strip{
    position:absolute;
    inset:0;
    z-index:4;
    background-image:var(--fc27-clean-card-face);
    background-size:100% 100%;
    background-position:center;
    background-repeat:no-repeat;
  }
  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-frame-top{clip-path:inset(0 0 80% 0)}
  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-frame-left{clip-path:inset(0 84% 0 0)}
  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-frame-right{clip-path:inset(0 0 0 84%)}
  #overviewBuildShowcaseCard.fc27-clean-active .fc27-clean-frame-bottom{clip-path:inset(61% 0 0 0)}

  #overviewBuildShowcaseCard.fc27-clean-active .fc-build-card-level-lockup,
  #overviewBuildShowcaseCard.fc27-clean-active .fc-build-card-plus,
  #overviewBuildShowcaseCard.fc27-clean-active .fc-build-card-identity,
  #overviewBuildShowcaseCard.fc27-clean-active .fc-build-card-face-stats{
    z-index:7!important;
  }
}


/* ===== SOURCE: css/274-v583-card-renderer-style.css ===== */

@media(min-width:761px){
  #overviewBuildShowcaseCard{
    position:relative!important;
    isolation:isolate!important;
  }

  /* Legacy DOM stays alive only as a data bridge. */
  #overviewBuildShowcaseCard > :not(#fc27CardRendererRoot){
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  #fc27CardRendererRoot{
    --cr-name:#FEF7FF;
    --cr-stat-label:#E6F8FF;
    --cr-stat-value:#E6F8FF;
    --cr-ps-icon:#FEF7FF;
    --cr-ps-border:#FFFDFF;
    --cr-ps-bg:#331A44;
    --cr-logo:#E6F8FF;

    position:absolute!important;
    inset:0!important;
    z-index:50!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:visible!important;
    pointer-events:none!important;
    container-type:inline-size;
    font-variant-numeric:tabular-nums lining-nums;
  }

  #fc27CardRendererRoot .cr-face{
    position:absolute;inset:0;z-index:1;width:100%;height:100%;
    object-fit:contain;pointer-events:none;
  }

  #fc27CardRendererRoot .cr-portrait-window{
    position:absolute;z-index:2;overflow:hidden;pointer-events:none;
    left:10.8%;
    top:10.2%;
    width:79.8%;
    height:55.5%;
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);
    mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);
  }

  #fc27CardRendererRoot .cr-portrait{
    position:absolute;
    max-width:none;
    max-height:none;
    width:auto;
    object-fit:contain;
    transform:translate(-50%,-50%);
    transform-origin:center center;
    pointer-events:none;
    opacity:1;
    filter:none;
    mix-blend-mode:normal;
  }

  #fc27CardRendererRoot .cr-name{
    position:absolute;z-index:6;
    left:50%;top:68.8%;
    width:82%;transform:translate(-50%,-50%);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    text-align:center;color:var(--cr-name);
    font-family:"STKaiti","KaiTi","Kaiti SC","Microsoft YaHei",sans-serif;
    font-size:8.9535cqw;
    line-height:1;font-weight:900;letter-spacing:.015em;
    text-shadow:0 2px 7px rgba(20,5,35,.68);
  }

  #fc27CardRendererRoot .cr-stats{
    position:absolute;z-index:6;
    left:50%;top:77.9%;
    width:74%;
    transform:translate(-50%,-50%);
    display:grid;grid-template-columns:repeat(6,minmax(0,1fr));
    gap:1px;text-align:center;
  }

  #fc27CardRendererRoot .cr-stat-label{
    display:block;color:var(--cr-stat-label);
    font-size:3.1395cqw;
    line-height:1;font-weight:900;letter-spacing:.025em;
    text-shadow:0 2px 6px rgba(20,5,35,.72);
  }

  #fc27CardRendererRoot .cr-stat-value{
    display:block;margin-top:5px;color:var(--cr-stat-value);
    font-size:5.6977cqw;
    line-height:1;font-weight:950;letter-spacing:-.02em;
    text-shadow:0 2px 6px rgba(20,5,35,.72);
  }

  #fc27CardRendererRoot .cr-ps-stack{
    position:absolute;z-index:7;
    left:11%;top:64.7%;
    width:0;height:0;
    overflow:visible;
    pointer-events:none;
  }

  #fc27CardRendererRoot .cr-ps{
    position:absolute;z-index:1;
    left:0;
    top:var(--cr-ps-offset,0cqw);
    width:11.6279cqw;
    height:9.7674cqw;
    transform:translate(-50%,-50%);
    filter:drop-shadow(0 2px 5px rgba(0,0,0,.36));
    pointer-events:none;
  }
  #fc27CardRendererRoot .cr-ps-shell,
  #fc27CardRendererRoot .cr-ps-fill{
    position:absolute;inset:0;
    clip-path:polygon(24% 0,76% 0,100% 33%,50% 100%,0 33%);
  }
  #fc27CardRendererRoot .cr-ps-shell{background:var(--cr-ps-border);}
  #fc27CardRendererRoot .cr-ps-fill{inset:3px;background:var(--cr-ps-bg);}

  #fc27CardRendererRoot .cr-ps-icon{
    position:absolute;z-index:2;left:50%;top:46%;
    width:42%;height:50%;transform:translate(-50%,-50%);
    background:var(--cr-ps-icon);
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
    -webkit-mask-position:center;mask-position:center;
    -webkit-mask-size:contain;mask-size:contain;
  }
  #fc27CardRendererRoot .cr-ps-fallback{
    position:absolute;z-index:2;inset:0;display:none;place-items:center;
    color:var(--cr-ps-icon);font-size:2.2cqw;font-weight:950;
  }

  #fc27CardRendererRoot .cr-logo{
    position:absolute;z-index:7;
    left:50%;top:86.4%;
    width:7.4419cqw;
    height:7.4419cqw;
    transform:translate(-50%,-50%);
    background:var(--cr-logo);
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
    -webkit-mask-position:center;mask-position:center;
    -webkit-mask-size:contain;mask-size:contain;
    filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));
  }
}

@media(max-width:760px){
  #fc27CardRendererRoot{display:none!important;}
}


/* ===== SOURCE: css/275-v584-theme-shuffle-style.css ===== */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-body-card-face{
    position:relative!important;
  }

  #fc27ThemeShuffle{
    position:absolute!important;
    top:9px!important;
    right:10px!important;
    z-index:80!important;

    width:27px!important;
    height:27px!important;
    padding:0!important;
    margin:0!important;

    display:grid!important;
    place-items:center!important;

    border:1px solid rgba(255,255,255,.11)!important;
    border-radius:8px!important;
    background:rgba(7,11,15,.68)!important;
    color:rgba(235,239,242,.72)!important;

    box-shadow:0 5px 16px rgba(0,0,0,.20)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;

    cursor:pointer!important;
    opacity:.78!important;
    transition:
      opacity .14s ease,
      border-color .14s ease,
      background .14s ease,
      transform .14s ease!important;
  }

  #fc27ThemeShuffle:hover{
    opacity:1!important;
    border-color:rgba(255,255,255,.20)!important;
    background:rgba(11,16,21,.84)!important;
  }

  #fc27ThemeShuffle:active{
    transform:scale(.94)!important;
  }

  #fc27ThemeShuffle svg{
    width:13px!important;
    height:13px!important;
    display:block!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    pointer-events:none!important;
  }
}

@media(max-width:760px){
  #fc27ThemeShuffle{display:none!important;}
}


/* ===== SOURCE: css/stable-bundle-029.css ===== */
/* === SOURCE: css/276-v587-portrait-polish-style.css === */

@media(min-width:761px){
  /* 1) Subtle vintage treatment. Intentionally restrained so face detail stays clean. */
  #fc27CardRendererRoot .cr-portrait{
    filter:
      saturate(.955)
      contrast(.985)
      brightness(.998)
      sepia(.035)!important;
  }

  /* Keep the existing calibrated portrait geometry unchanged; only soften its visual exit. */
  #fc27CardRendererRoot .cr-portrait-window{
    -webkit-mask-image:linear-gradient(
      to bottom,
      #000 0%,
      #000 74%,
      rgba(0,0,0,.98) 79%,
      rgba(0,0,0,.80) 86%,
      rgba(0,0,0,.42) 93%,
      transparent 100%
    )!important;
    mask-image:linear-gradient(
      to bottom,
      #000 0%,
      #000 74%,
      rgba(0,0,0,.98) 79%,
      rgba(0,0,0,.80) 86%,
      rgba(0,0,0,.42) 93%,
      transparent 100%
    )!important;
  }

  /* 2) Fine print-like grain over the portrait only. */
  #fc27CardRendererRoot .cr-portrait-window::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:4;
    pointer-events:none;
    opacity:.032;
    mix-blend-mode:soft-light;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.78'/%3E%3C/svg%3E");
    background-size:82px 82px;
  }

  /* 3) Soft shadow / atmospheric blend at the cut line. */
  #fc27CardRendererRoot .cr-portrait-window::after{
    content:"";
    position:absolute;
    left:-4%;
    right:-4%;
    bottom:-1%;
    height:28%;
    z-index:5;
    pointer-events:none;
    background:
      radial-gradient(ellipse at 50% 92%, rgba(0,0,0,.24) 0%, rgba(0,0,0,.13) 34%, rgba(0,0,0,0) 72%),
      linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,.055) 48%, rgba(0,0,0,.18) 100%);
    filter:blur(4px);
    opacity:.82;
  }
}

/* === SOURCE: css/277-v5812-overview-signature-switch-style.css === */

@media(min-width:761px){
  .global-archetype-overview-card .ovc-playstyle-section{
    position:relative!important;
    overflow:visible!important;
  }

  .global-archetype-overview-card .ovc-ps-badge.pc-signature-switchable{
    cursor:pointer!important;
    overflow:visible!important;
  }

  .global-archetype-overview-card .pc-signature-switch-mark{
    position:absolute!important;
    right:-2px!important;
    top:-2px!important;
    z-index:9!important;
    width:13px!important;
    height:13px!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid rgba(238,205,102,.48)!important;
    border-radius:50%!important;
    background:#11171d!important;
    color:#e3c66d!important;
    box-shadow:0 2px 7px rgba(0,0,0,.36)!important;
    font:900 8px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    letter-spacing:-1px!important;
    pointer-events:none!important;
  }

  .global-archetype-overview-card .ovc-ps-badge.pc-signature-switchable:hover .pc-signature-switch-mark{
    border-color:rgba(238,205,102,.78)!important;
    background:#171e24!important;
    color:#f0d47d!important;
  }

  .global-archetype-overview-card .pc-signature-picker{
    position:absolute!important;
    z-index:160!important;
    left:auto!important;
    right:0!important;
    top:41px!important;
    width:min(318px,calc(100% - 66px))!important;
    padding:9px!important;
    border:1px solid rgba(255,255,255,.095)!important;
    border-radius:11px!important;
    background:rgba(12,17,22,.975)!important;
    box-shadow:0 18px 44px rgba(0,0,0,.42)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-4px)!important;
    transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
  }

  .global-archetype-overview-card .pc-signature-picker.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .global-archetype-overview-card .pc-signature-picker-head{
    display:flex!important;
    align-items:baseline!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:1px 2px 7px!important;
  }

  .global-archetype-overview-card .pc-signature-picker-head strong{
    color:#dbe1e6!important;
    font-size:9px!important;
    font-weight:850!important;
  }

  .global-archetype-overview-card .pc-signature-picker-head span{
    color:#65717b!important;
    font-size:7px!important;
    font-weight:650!important;
  }

  .global-archetype-overview-card .pc-signature-choices{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }

  .global-archetype-overview-card .pc-signature-choice{
    min-width:0!important;
    min-height:54px!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 13px!important;
    align-items:center!important;
    gap:6px!important;
    padding:7px!important;
    border:1px solid rgba(255,255,255,.07)!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.018)!important;
    color:#8d98a1!important;
    text-align:left!important;
    cursor:pointer!important;
    transition:border-color .14s ease,background .14s ease!important;
  }

  .global-archetype-overview-card .pc-signature-choice:hover{
    border-color:rgba(216,184,95,.24)!important;
    background:rgba(216,184,95,.045)!important;
  }

  .global-archetype-overview-card .pc-signature-choice.active{
    border-color:rgba(216,184,95,.34)!important;
    background:rgba(216,184,95,.075)!important;
  }

  .global-archetype-overview-card .pc-signature-choice-badge{
    width:34px!important;
    height:34px!important;
    display:grid!important;
    place-items:center!important;
    overflow:visible!important;
  }

  .global-archetype-overview-card .pc-signature-choice-badge .overview-badge-shell{
    --badge-h:28px;
    --badge-w:33px;
    --icon-box:15px;
    --gold-lift:1.45px;
    width:34px!important;
    height:34px!important;
  }

  .global-archetype-overview-card .pc-signature-choice-badge.silver .overview-badge-shell{
    --badge-h:28px;
    --badge-w:28px;
    --gold-lift:0px;
  }

  .global-archetype-overview-card .pc-signature-choice-copy{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:2px!important;
  }

  .global-archetype-overview-card .pc-signature-choice-copy small{
    color:#6f7b85!important;
    font-size:6.5px!important;
    font-weight:760!important;
  }

  .global-archetype-overview-card .pc-signature-choice-copy strong{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#d7dde2!important;
    font-size:8px!important;
    font-weight:860!important;
  }

  .global-archetype-overview-card .pc-signature-choice.active .pc-signature-choice-copy strong{
    color:#e3ca78!important;
  }

  .global-archetype-overview-card .pc-signature-choice-check{
    color:#d9bd67!important;
    font-size:9px!important;
    font-style:normal!important;
    font-weight:900!important;
    opacity:0!important;
  }

  .global-archetype-overview-card .pc-signature-choice.active .pc-signature-choice-check{
    opacity:1!important;
  }
}

@media(max-width:760px){
  .pc-signature-picker,.pc-signature-switch-mark{display:none!important;}
}


/* ===== SOURCE: css/stable-bundle-030.css ===== */
/* === SOURCE: css/278-v5813-prelaunch-polish-style.css === */

@media(min-width:761px){
  /* ===== Signature PlayStyle+ chooser: only badge + Chinese name ===== */
  .global-archetype-overview-card .pc-signature-picker{
    width:244px!important;
    padding:8px!important;
    border-radius:13px!important;
  }
  .global-archetype-overview-card .pc-signature-picker-head{display:none!important;}
  .global-archetype-overview-card .pc-signature-choices{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .global-archetype-overview-card .pc-signature-choice{
    position:relative!important;
    min-height:82px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    padding:8px 7px!important;
    border-radius:10px!important;
    text-align:center!important;
  }
  .global-archetype-overview-card .pc-signature-choice-badge{
    width:40px!important;
    height:40px!important;
  }
  .global-archetype-overview-card .pc-signature-choice-badge .overview-badge-shell{
    --badge-h:34px!important;
    --badge-w:40px!important;
    --icon-box:18px!important;
    --gold-lift:1.7px!important;
    width:40px!important;
    height:40px!important;
  }
  .global-archetype-overview-card .pc-signature-choice-badge.silver .overview-badge-shell{
    --badge-h:34px!important;
    --badge-w:34px!important;
    --gold-lift:0px!important;
  }
  .global-archetype-overview-card .pc-signature-choice-copy{
    min-width:0!important;
    width:100%!important;
    display:block!important;
  }
  .global-archetype-overview-card .pc-signature-choice-copy small{display:none!important;}
  .global-archetype-overview-card .pc-signature-choice-copy strong{
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#c9d0d6!important;
    font-size:11.5px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:center!important;
  }
  .global-archetype-overview-card .pc-signature-choice.active .pc-signature-choice-copy strong{
    color:#e3ca78!important;
  }

  /* ===== AP calculator: simplify to a 10.5 / 11.5 / 13.5 / 14 scale ===== */
  #diyPanel .diy-section-head span,
  #diyPanel .diy-section-head small,
  #diyPanel .diy-attr-group-head span,
  #diyPanel .diy-attr-source,
  #diyPanel .diy-badge-group-head strong,
  #diyPanel .diy-badge-group-head span,
  #diyPanel .diy-badge-name,
  #diyPanel .diy-requirement-summary,
  #diyPanel .diy-calculate-btn small,
  #diyPanel .diy-import-archetype-btn small,
  #diyPanel .diy-import-archetype-copy small,
  #diyPanel .diy-import-archetype-state,
  .diy-result-head span,
  .diy-result-copy span,
  .diy-result-row.impossible .diy-result-cost,
  .diy-detail-head small,
  .diy-detail-total span,
  .diy-detail-row>em{
    font-size:10.5px!important;
  }
  #diyPanel .diy-import-archetype-copy strong,
  .diy-result-rank,
  .diy-result-copy strong,
  .diy-detail-row>span,
  .diy-detail-row>b{
    font-size:11.5px!important;
  }
  #diyPanel .diy-section-head strong{font-size:13.5px!important;}
  #diyPanel .diy-toolbar-metric>strong{font-size:14px!important;}
  #diyPanel .diy-import-archetype-option{min-height:50px!important;}
  #diyPanel .diy-import-archetype-state{min-width:38px!important;padding:4px 6px!important;}
  #diyPanel .diy-badge-btn{height:68px!important;}
  #diyPanel .diy-calculate-btn small{margin-top:3px!important;}
  .diy-result-meta{font-size:11.5px!important;}

  /* ===== My Build showcase: remove tiny labels while preserving density ===== */
  #myBuildShowcaseV2 .mb29-archetype-en,
  #myBuildShowcaseV2 .mb29-picker-option,
  #myBuildShowcaseV2 .mb29-info-item span,
  #myBuildShowcaseV2 .mb29-ps-empty,
  #myBuildShowcaseV2 .mb29-toggle{
    font-size:10.5px!important;
  }
  #myBuildShowcaseV2 .mb29-picker-btn,
  #myBuildShowcaseV2 .mb29-attr-row span{
    font-size:11.5px!important;
  }
  #myBuildShowcaseV2 .mb29-group h4{font-size:12px!important;}
  #myBuildShowcaseV2 .mb29-attr-row strong{font-size:13.5px!important;}

  /* Saved Build library / dialogs: minimum readable size = 10.5px. */
  #mb24Library .mb70-sort-label,
  #mb24Library .mb70-sort,
  #mb24Library .mb70-cap,
  #mb24Library .mb70-meta,
  #mb24Library .mb70-date,
  #mb24Library .mb70-tag,
  #mb24Library .mb70-empty span,
  .mb70-menu button,
  .mb70-preview-head span,
  .mb70-scope,
  .mb70-modal-head small,
  .mb70-field-label,
  .mb70-section-title,
  .mb70-check small,
  .mb70-summary{
    font-size:10.5px!important;
  }
  #mb24Library .mb70-title,
  .mb70-preview-head strong,
  .mb70-input,
  .mb70-copy,
  .mb70-check strong{
    font-size:11.5px!important;
  }
  #mb24Library .mb70-sort{height:28px!important;min-width:72px!important;}
  #mb24Library .mb70-card{min-height:80px!important;}
  #mb24Library .mb70-tag{height:20px!important;padding:0 7px!important;}
  .mb70-menu button{height:32px!important;}
  .mb70-scope{height:22px!important;}
  .mb70-check{min-height:43px!important;}
}

/* === SOURCE: css/279-v5814-prelaunch-typography-polish.css === */

@media(min-width:761px){

  /* =========================================================
     1) Overview gender / unit switch:
        exact inner-half geometry + hard edge protection.
     ========================================================= */
  .global-archetype-overview-card .ovc-pill-switch,
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch{
    box-sizing:border-box!important;
    min-width:64px!important;
    height:30px!important;
    padding:3px!important;
    overflow:hidden!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .global-archetype-overview-card .ovc-pill-switch[data-size="sm"],
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch[data-size="sm"]{
    min-width:58px!important;
  }

  .global-archetype-overview-card .ovc-pill-switch::before,
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch::before{
    box-sizing:border-box!important;
    left:3px!important;
    top:3px!important;
    bottom:3px!important;
    width:calc((100% - 6px) / 2)!important;
    max-width:calc((100% - 6px) / 2)!important;
  }

  .global-archetype-overview-card .ovc-pill-switch[data-state="right"]::before,
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch[data-state="right"]::before{
    transform:translateX(100%)!important;
  }

  .global-archetype-overview-card .ovc-pill-switch .opt,
  body.build-overview-active .global-archetype-overview-card .ovc-pill-switch .opt{
    min-width:0!important;
    padding:0!important;
    font-size:11.5px!important;
    line-height:1!important;
  }

  /* =========================================================
     2) Global Archetype Overview:
        protect small text while preserving the existing spacing.
        Most support text -> 10.5px, normal labels -> 11.5px.
     ========================================================= */
  .global-archetype-overview-card .ovc-model-copy span,
  body.build-overview-active .global-archetype-overview-card .ovc-model-copy span{
    font-size:10.5px!important;
    line-height:1.15!important;
  }

  .global-archetype-overview-card .ovc-model-action-label,
  body.build-overview-active .global-archetype-overview-card .ovc-model-action-label{
    font-size:10.5px!important;
    line-height:1!important;
  }

  .global-archetype-overview-card .ovc-meter-label,
  body.build-overview-active .global-archetype-overview-card .ovc-meter-label,
  .global-archetype-overview-card .ovc-meter-meta span,
  body.build-overview-active .global-archetype-overview-card .ovc-meter-meta span{
    font-size:10.5px!important;
    line-height:1.15!important;
  }

  .global-archetype-overview-card .ovc-meter-meta strong,
  body.build-overview-active .global-archetype-overview-card .ovc-meter-meta strong{
    font-size:13.5px!important;
    line-height:1!important;
  }

  .global-archetype-overview-card .ovc-level-float,
  body.build-overview-active .global-archetype-overview-card .ovc-level-float{
    width:52px!important;
    height:29px!important;
    font-size:10.5px!important;
  }

  .global-archetype-overview-card .ovc-star-label,
  body.build-overview-active .global-archetype-overview-card .ovc-star-label{
    font-size:11.5px!important;
  }

  .global-archetype-overview-card .ovc-ps-label,
  body.build-overview-active .global-archetype-overview-card .ovc-ps-label{
    font-size:10.5px!important;
    line-height:1.1!important;
  }

  .global-archetype-overview-card .ovc-signature-upgrade-hint,
  body.build-overview-active .global-archetype-overview-card .ovc-signature-upgrade-hint{
    font-size:9.5px!important;
    line-height:1.1!important;
  }

  .global-archetype-overview-card .ovc-body-chip,
  body.build-overview-active .global-archetype-overview-card .ovc-body-chip{
    font-size:11.5px!important;
  }

  .global-archetype-overview-card .ovc-body-chip b,
  body.build-overview-active .global-archetype-overview-card .ovc-body-chip b{
    font-size:15.5px!important;
  }

  .global-archetype-overview-card .ovc-body-toggle-label,
  .global-archetype-overview-card .ovc-body-reset-label,
  body.build-overview-active .global-archetype-overview-card .ovc-body-toggle-label,
  body.build-overview-active .global-archetype-overview-card .ovc-body-reset-label{
    font-size:10.5px!important;
  }

  .global-archetype-overview-card .ovc-accelerate strong,
  body.build-overview-active .global-archetype-overview-card .ovc-accelerate strong{
    font-size:11.5px!important;
  }

  .global-archetype-overview-card .ovc-body-axis{
    font-size:10px!important;
    padding:3px 4px!important;
    border-radius:5px!important;
  }

  .global-archetype-overview-card .ovc-body-mod span{
    font-size:10.5px!important;
    line-height:1.15!important;
  }

  .global-archetype-overview-card .ovc-body-mod strong{
    font-size:13.5px!important;
    line-height:1!important;
  }

  /* =========================================================
     3A) AMP modal:
         remove 7–8px text while keeping the grid compact.
     ========================================================= */
  .fc27-amp-modal{
    width:min(560px,92vw)!important;
  }

  .fc27-amp-modal-title strong{
    font-size:13.5px!important;
  }

  .fc27-amp-modal-title small,
  .fc27-amp-modal-note,
  .fc27-amp-modal-foot,
  .fc27-amp-modal-clear{
    font-size:10.5px!important;
    line-height:1.35!important;
  }

  .fc27-amp-modal-note{
    white-space:normal!important;
  }

  .fc27-amp-modal-tier button{
    height:28px!important;
    padding:0 10px!important;
    font-size:10.5px!important;
  }

  .fc27-amp-modal-choice{
    min-height:74px!important;
    gap:5px!important;
    padding:6px 4px!important;
  }

  .fc27-amp-modal-choice>span:last-child{
    font-size:10.5px!important;
    line-height:1.15!important;
  }

  .fc27-amp-modal-clear{
    height:28px!important;
    padding:0 10px!important;
  }

  /* =========================================================
     3B) Similar player drawer / generated results:
         main support text >=10.5px; micro EA-card labels use 9.5px
         to keep the small preview card visually balanced.
     ========================================================= */
  .ut-drawer-beta{
    height:20px!important;
    padding:0 7px!important;
    font-size:9.5px!important;
  }

  .ut-db-readyline,
  .ut-result-topline,
  .ut-compact-meta span,
  .ut-compact-score span,
  .ut-compact-stat span,
  .ut-official-footnote{
    font-size:10.5px!important;
    line-height:1.35!important;
  }

  .ut-compact-name{
    font-size:13.5px!important;
  }

  .ut-compact-score strong{
    font-size:14px!important;
  }

  .ut-compact-stat strong{
    font-size:12px!important;
  }

  .ut-high-breakdown span,
  .ut-basic-breakdown span{
    min-height:21px!important;
    padding:0 7px!important;
    font-size:10px!important;
    line-height:1!important;
  }

  .ut-high-breakdown b{
    font-size:10.5px!important;
  }

  .ut-ea-card-overlay b,
  .ut-ea-card-overlay small,
  .ut-ea-card-caption{
    font-size:9.5px!important;
    line-height:1.15!important;
    letter-spacing:.04em!important;
  }

  /* =========================================================
     3C) Saved Build preview:
         make the read-only explanation actually readable.
     ========================================================= */
  .mb70-preview-head strong{
    font-size:13.5px!important;
    line-height:1.2!important;
  }

  .mb70-preview-head span{
    margin-top:4px!important;
    font-size:11.5px!important;
    line-height:1.4!important;
  }
}

/* === SOURCE: css/280-v5815-similarity-link-style.css === */

@media(min-width:761px){
  /* First result uses the same geometry as every other row. Only a restrained
     gold tint remains to communicate rank #1. */
  .ut-compact-player.is-top{
    grid-template-columns:28px minmax(0,1fr)!important;
    border-color:rgba(219,184,95,.18)!important;
    background:
      linear-gradient(180deg,rgba(219,184,95,.052),rgba(219,184,95,.018))!important;
    box-shadow:inset 0 0 0 1px rgba(219,184,95,.022)!important;
  }

  .ut-compact-player{
    cursor:pointer!important;
    transition:
      border-color .14s ease,
      background .14s ease,
      transform .14s ease!important;
  }

  .ut-compact-player:hover{
    border-color:rgba(255,255,255,.13)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.047),rgba(255,255,255,.021))!important;
  }

  .ut-compact-player.is-top:hover{
    border-color:rgba(219,184,95,.25)!important;
    background:linear-gradient(180deg,rgba(219,184,95,.070),rgba(219,184,95,.024))!important;
  }

  .ut-compact-player:focus-visible{
    outline:none!important;
    border-color:rgba(219,184,95,.42)!important;
    box-shadow:0 0 0 2px rgba(219,184,95,.10)!important;
  }
}

.ut-player-link-confirm-backdrop{
  position:fixed;
  inset:0;
  z-index:99998;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(4,7,10,.66);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

.ut-player-link-confirm{
  width:min(360px,92vw);
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:#111820;
  box-shadow:0 24px 64px rgba(0,0,0,.42);
  overflow:hidden;
}

.ut-player-link-confirm-body{
  padding:18px 18px 15px;
}

.ut-player-link-confirm-kicker{
  color:#7d8993;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.08em;
}

.ut-player-link-confirm-name{
  margin-top:7px;
  color:#eef2f5;
  font-size:15px;
  font-weight:850;
  line-height:1.25;
}

.ut-player-link-confirm-copy{
  margin-top:7px;
  color:#7f8b95;
  font-size:10.5px;
  line-height:1.45;
}

.ut-player-link-confirm-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:12px 14px 14px;
  border-top:1px solid rgba(255,255,255,.055);
}

.ut-player-link-confirm-actions button{
  height:34px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  color:#88949e;
  font-size:11.5px;
  font-weight:800;
  cursor:pointer;
}

.ut-player-link-confirm-actions button:hover{
  border-color:rgba(255,255,255,.15);
  color:#d8dee3;
}

.ut-player-link-confirm-actions .confirm{
  border-color:rgba(219,184,95,.26);
  background:rgba(219,184,95,.085);
  color:#d9bf79;
}

.ut-player-link-confirm-actions .confirm:hover{
  border-color:rgba(219,184,95,.38);
  background:rgba(219,184,95,.12);
  color:#ead494;
}


/* ===== SOURCE: css/281-v590-pc-premium-ui-preview.css ===== */

@media(min-width:761px){
  body{
    --pc-atmo:#c9ab5c;
    --pc-atmo-rgb:201,171,92;
    --pc-atmo-soft:#9d8245;
    --pc-cloud-rgb:86,111,132;
    --pc-bg-top:#0a0f14;
    --pc-bg-mid:#080d11;
    --pc-bg-bottom:#070b0f;
    --pc-panel:14,21,27;
    --pc-panel-2:10,16,21;
    --pc-line:255,255,255;
    --pc-gold:#c7aa60;
    --pc-gold-rgb:199,170,96;
    background:var(--pc-bg-bottom)!important;
    transition:background .24s ease;
  }

  body[data-pc-ui-theme="theme2"]{
    --pc-atmo:#76b59f;
    --pc-atmo-rgb:118,181,159;
    --pc-atmo-soft:#4f8274;
    --pc-cloud-rgb:74,118,127;
    --pc-bg-top:#091315;
    --pc-bg-mid:#081014;
    --pc-bg-bottom:#070d10;
    --pc-panel:13,23,25;
    --pc-panel-2:8,17,19;
  }

  body[data-pc-ui-theme="theme3"]{
    --pc-atmo:#88a9d3;
    --pc-atmo-rgb:136,169,211;
    --pc-atmo-soft:#5d7fa9;
    --pc-cloud-rgb:84,107,141;
    --pc-bg-top:#0d141b;
    --pc-bg-mid:#0a1016;
    --pc-bg-bottom:#090d12;
    --pc-panel:16,23,31;
    --pc-panel-2:10,16,23;
  }

  html{
    background:var(--pc-bg-bottom)!important;
  }

  body .shell{
    position:relative!important;
    isolation:isolate!important;
    background:
      radial-gradient(1100px 430px at 44% -120px,rgba(var(--pc-cloud-rgb),.17),transparent 67%),
      radial-gradient(780px 360px at 103% 2%,rgba(var(--pc-atmo-rgb),.060),transparent 72%),
      linear-gradient(180deg,var(--pc-bg-top) 0%,var(--pc-bg-mid) 42%,var(--pc-bg-bottom) 100%)!important;
    transition:background .24s ease!important;
  }

  body .shell::before{
    content:"";
    position:fixed;
    z-index:0;
    pointer-events:none;
    left:0;right:0;top:0;
    height:460px;
    opacity:.32;
    background-image:
      linear-gradient(rgba(255,255,255,.013) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.010) 1px,transparent 1px);
    background-size:38px 38px;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.48) 48%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.48) 48%,transparent 100%);
  }

  body .topbar,
  body .workspace{
    position:relative;
    z-index:1;
  }

  /* ---------- Top bar ---------- */
  body .topbar{
    border-bottom:1px solid rgba(var(--pc-line),.065)!important;
    background:
      linear-gradient(180deg,rgba(var(--pc-panel-2),.92),rgba(var(--pc-panel-2),.79))!important;
    -webkit-backdrop-filter:blur(18px) saturate(112%);
    backdrop-filter:blur(18px) saturate(112%);
    box-shadow:
      inset 0 -1px 0 rgba(var(--pc-atmo-rgb),.035),
      0 10px 34px rgba(0,0,0,.18)!important;
  }

  body .site-brand-copy .eyebrow{
    color:rgba(var(--pc-atmo-rgb),.76)!important;
    letter-spacing:.15em!important;
  }

  body .site-brand-copy h1{
    color:#edf1f3!important;
    text-shadow:0 1px 14px rgba(0,0,0,.20)!important;
  }

  body .site-brand-copy .subtitle{
    color:#6f7a84!important;
  }

  body .version{
    border:1px solid rgba(var(--pc-atmo-rgb),.11)!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.018)!important;
    color:#7f8a93!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  /* ---------- Main glass language ---------- */
  body .panel,
  body .advanced-panel,
  body .advanced-card,
  body .feature-page-card,
  body .overview-card,
  body .diy-panel,
  body .mastery-card,
  body .facilities-card,
  body .specialization-card,
  body .ps-library-card,
  body .ps-signature-card,
  body .ps-slots-card,
  body .facility-budget-card,
  body .facility-preview-card,
  body .facility-slot-card,
  body .facility-level-card,
  body .facility-level-card-summary,
  body .mb70-card,
  body .mb70-preview-card{
    border-color:rgba(var(--pc-atmo-rgb),.095)!important;
    background:
      linear-gradient(155deg,
        rgba(255,255,255,.030),
        rgba(var(--pc-atmo-rgb),.010) 34%,
        rgba(var(--pc-panel),.925) 58%,
        rgba(var(--pc-panel-2),.965) 100%)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.026),
      0 12px 30px rgba(0,0,0,.11)!important;
    transition:
      background .22s ease,
      border-color .22s ease,
      box-shadow .22s ease!important;
  }

  body .panel:hover,
  body .advanced-card:hover,
  body .specialization-card:hover,
  body .mastery-card:hover,
  body .facility-slot-card:hover{
    border-color:rgba(var(--pc-atmo-rgb),.145)!important;
  }

  /* Stronger shell cards: atmosphere at the top, darkness below. */
  body .global-archetype-overview-card,
  body .build-overview-panel,
  body .specialization-panel,
  body .feature-panel,
  body #masteryPanel,
  body #facilitiesPanel,
  body #playstylesPanel,
  body #diyPanel{
    border-color:rgba(var(--pc-atmo-rgb),.10)!important;
  }

  /* ---------- Navigation ---------- */
  body .editor-view-tabs{
    padding:6px 8px!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.095)!important;
    border-radius:12px!important;
    background:
      linear-gradient(180deg,rgba(var(--pc-panel),.90),rgba(var(--pc-panel-2),.94))!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 10px 28px rgba(0,0,0,.12)!important;
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
  }

  body .editor-view-tab{
    border-radius:8px!important;
    color:#77838c!important;
    transition:color .16s ease,background .16s ease,box-shadow .16s ease!important;
  }

  body .editor-view-tab:hover{
    color:#b8c1c7!important;
    background:rgba(255,255,255,.020)!important;
  }

  /* Gold remains interaction semantics, exactly like Mobile. */
  body .editor-view-tab.active{
    color:#e2c979!important;
    background:rgba(var(--pc-gold-rgb),.070)!important;
    box-shadow:inset 0 0 0 1px rgba(var(--pc-gold-rgb),.075)!important;
  }

  body .editor-view-sep{
    color:rgba(255,255,255,.055)!important;
  }

  body .editor-beta{
    color:rgba(var(--pc-atmo-rgb),.62)!important;
  }

  /* ---------- Workspace toolbar ---------- */
  body .workspace-toolbar{
    border-color:rgba(var(--pc-atmo-rgb),.085)!important;
    border-radius:11px!important;
    background:
      linear-gradient(180deg,rgba(var(--pc-panel),.82),rgba(var(--pc-panel-2),.90))!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.022),
      0 8px 22px rgba(0,0,0,.095)!important;
  }

  body .toolbar-icon-button,
  body .toolbar-text-button,
  body .toolbar-visibility-button,
  body .page-tool-button,
  body .facility-page-tool-btn,
  body .mastery-bulk-btn{
    border-color:rgba(var(--pc-atmo-rgb),.09)!important;
    background:rgba(255,255,255,.015)!important;
    color:#87929a!important;
  }

  body .toolbar-icon-button:hover:not(:disabled),
  body .toolbar-text-button:hover:not(:disabled),
  body .toolbar-visibility-button:hover:not(:disabled),
  body .page-tool-button:hover:not(:disabled),
  body .facility-page-tool-btn:hover:not(:disabled),
  body .mastery-bulk-btn:hover:not(:disabled){
    border-color:rgba(var(--pc-atmo-rgb),.20)!important;
    background:rgba(var(--pc-atmo-rgb),.050)!important;
    color:#cbd3d8!important;
  }

  /* ---------- Decorative headings ---------- */
  body .workspace-decor-header{
    position:relative!important;
  }

  body .workspace-decor-header::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:1px;
    background:
      linear-gradient(90deg,
        rgba(var(--pc-atmo-rgb),.25),
        rgba(255,255,255,.040) 36%,
        transparent 86%);
    pointer-events:none;
  }

  body .workspace-decor-title,
  body .advanced-kicker,
  body .attribute-eye-brow,
  body .build-control-eyebrow{
    color:rgba(var(--pc-atmo-rgb),.67)!important;
  }

  body .feature-page-card>header,
  body .build-overview-head,
  body .specialization-page-head{
    position:relative!important;
  }

  body .feature-page-card>header::before,
  body .build-overview-head::before,
  body .specialization-page-head::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:3px;
    height:18px;
    border-radius:99px;
    transform:translateY(-50%);
    background:
      linear-gradient(180deg,
        rgba(var(--pc-atmo-rgb),.92),
        rgba(var(--pc-atmo-rgb),.42));
    box-shadow:0 0 16px rgba(var(--pc-atmo-rgb),.16);
    pointer-events:none;
  }

  body .feature-page-card>header>*,
  body .build-overview-head>*,
  body .specialization-page-head>*{
    position:relative;
    z-index:1;
  }

  /* ---------- Inputs / search / selects ---------- */
  body input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),
  body select,
  body textarea,
  body .facility-searchbox{
    border-color:rgba(var(--pc-atmo-rgb),.09)!important;
    background:rgba(var(--pc-panel-2),.80)!important;
    color:#c6ced4!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  }

  body input:not([type="range"]):focus,
  body select:focus,
  body textarea:focus{
    border-color:rgba(var(--pc-atmo-rgb),.24)!important;
    box-shadow:0 0 0 2px rgba(var(--pc-atmo-rgb),.045)!important;
  }

  /* ---------- Drawers / modals ---------- */
  body .ut-sim-drawer,
  body .diy-result-dialog,
  body .fc27-amp-modal,
  body .mb70-modal{
    border-color:rgba(var(--pc-atmo-rgb),.13)!important;
    background:
      linear-gradient(180deg,
        rgba(var(--pc-panel),.985),
        rgba(var(--pc-panel-2),.995))!important;
    box-shadow:
      0 28px 76px rgba(0,0,0,.50),
      inset 0 1px 0 rgba(255,255,255,.030)!important;
  }

  body .ut-drawer-head,
  body .diy-result-head,
  body .fc27-amp-modal-head,
  body .mb70-modal-head{
    border-bottom-color:rgba(var(--pc-atmo-rgb),.08)!important;
  }

  body .ut-drawer-mode-btn.active{
    border-color:rgba(var(--pc-gold-rgb),.20)!important;
    background:rgba(var(--pc-gold-rgb),.065)!important;
    color:#ddc476!important;
  }

  /* ---------- Scrollbars ---------- */
  body *{
    scrollbar-color:rgba(var(--pc-atmo-rgb),.16) transparent;
  }

  body *::-webkit-scrollbar-thumb{
    background:rgba(var(--pc-atmo-rgb),.14)!important;
    border-radius:99px!important;
  }

  /* ---------- Premium theme switch ---------- */
  #pcPremiumThemeControl{
    position:relative;
    display:flex;
    align-items:center;
    margin-left:8px;
  }

  #pcPremiumThemeButton{
    position:relative;
    width:34px;
    height:30px;
    padding:0;
    border:1px solid rgba(var(--pc-atmo-rgb),.11);
    border-radius:9px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.034),rgba(255,255,255,.012));
    color:#aeb7bd;
    display:grid;
    place-items:center;
    box-shadow:
      0 8px 22px rgba(0,0,0,.18),
      inset 0 1px 0 rgba(255,255,255,.045);
    cursor:pointer;
    -webkit-backdrop-filter:blur(16px) saturate(116%);
    backdrop-filter:blur(16px) saturate(116%);
    transition:
      transform .10s ease,
      border-color .16s ease,
      background .16s ease;
  }

  #pcPremiumThemeButton:hover{
    border-color:rgba(var(--pc-atmo-rgb),.22);
    background:rgba(var(--pc-atmo-rgb),.035);
  }

  #pcPremiumThemeButton:active{
    transform:scale(.96);
  }

  #pcPremiumThemeDots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    height:12px;
  }

  #pcPremiumThemeDots i{
    display:block;
    width:4px;height:4px;
    border-radius:50%;
    background:#aeb6bc;
    box-shadow:0 0 8px rgba(var(--pc-atmo-rgb),.10);
  }

  #pcPremiumThemeDots i:nth-child(2){
    width:5px;height:5px;
    background:var(--pc-atmo);
    box-shadow:0 0 10px rgba(var(--pc-atmo-rgb),.24);
  }

  #pcPremiumThemeMenu{
    position:absolute;
    right:0;
    top:38px;
    z-index:400;
    width:210px;
    padding:8px;
    border:1px solid rgba(var(--pc-atmo-rgb),.12);
    border-radius:14px;
    background:
      linear-gradient(180deg,
        rgba(var(--pc-panel),.985),
        rgba(var(--pc-panel-2),.995));
    box-shadow:
      0 24px 64px rgba(0,0,0,.48),
      inset 0 1px 0 rgba(255,255,255,.025);
    -webkit-backdrop-filter:blur(18px) saturate(118%);
    backdrop-filter:blur(18px) saturate(118%);
  }

  #pcPremiumThemeMenu[hidden]{
    display:none!important;
  }

  .pc-premium-theme-head{
    padding:4px 7px 8px;
    font-size:9px;
    letter-spacing:.13em;
    color:#707b84;
  }

  .pc-premium-theme-option{
    width:100%;
    min-height:44px;
    padding:6px 7px;
    border:0;
    border-radius:10px;
    background:transparent;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 20px;
    gap:9px;
    align-items:center;
    color:#c7ced3;
    text-align:left;
    cursor:pointer;
  }

  .pc-premium-theme-option:hover{
    background:rgba(255,255,255,.025);
  }

  .pc-premium-theme-option.active{
    background:rgba(var(--pc-gold-rgb),.055);
    box-shadow:inset 0 0 0 1px rgba(var(--pc-gold-rgb),.065);
  }

  .pc-premium-theme-thumb{
    width:44px;
    height:30px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.06);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }

  .pc-premium-theme-thumb.t1{
    background:
      radial-gradient(circle at 52% 0%,rgba(86,111,132,.22),transparent 56%),
      linear-gradient(145deg,#12191f,#090e13 78%);
  }

  .pc-premium-theme-thumb.t2{
    background:
      radial-gradient(circle at 12% 0%,rgba(120,182,161,.23),transparent 46%),
      linear-gradient(145deg,#121c20,#091015 78%);
  }

  .pc-premium-theme-thumb.t3{
    background:
      radial-gradient(circle at 52% 0%,rgba(107,145,184,.20),transparent 54%),
      linear-gradient(180deg,#121a22,#0a0f14 82%);
  }

  .pc-premium-theme-copy{
    min-width:0;
  }

  .pc-premium-theme-copy strong{
    display:block;
    font-size:11px;
    line-height:1.1;
    color:#dde3e7;
    font-weight:800;
  }

  .pc-premium-theme-copy span{
    display:block;
    margin-top:3px;
    font-size:9.5px;
    line-height:1;
    color:#6f7a84;
  }

  .pc-premium-theme-check{
    opacity:0;
    color:#d0b56a;
    font-size:12px;
    font-weight:900;
    text-align:center;
  }

  .pc-premium-theme-option.active .pc-premium-theme-check{
    opacity:1;
  }
}


/* ===== SOURCE: css/282-v591-brand-theme-menu-fix.css ===== */

@media(min-width:761px){
  /* Keep the top chrome above every workspace/card stacking context. */
  body .topbar,
  body.attributes-workspace-compact .topbar,
  body.non-attribute-editor-active .topbar{
    position:relative!important;
    z-index:5000!important;
    isolation:isolate!important;
    overflow:visible!important;
  }

  body .topbar>.site-brand,
  body .topbar>.version,
  body #pcPremiumThemeControl{
    position:relative!important;
  }

  body #pcPremiumThemeControl{
    z-index:5100!important;
    overflow:visible!important;
  }

  body #pcPremiumThemeButton{
    z-index:2!important;
  }

  body #pcPremiumThemeMenu{
    z-index:99999!important;
    overflow:visible!important;
  }

  /* Explicitly keep content/navigation below the theme flyout. */
  body .editor-view-tabs,
  body .workspace,
  body .workspace-decor-header,
  body .workspace-toolbar{
    position:relative!important;
    z-index:1!important;
  }

  /* Brand/version refinement: DarkGlass stays as an internal system name only. */
  body .topbar .version{
    letter-spacing:.035em!important;
    color:#7f8991!important;
    border-color:rgba(var(--pc-atmo-rgb),.10)!important;
  }

  body .site-brand-copy h1{
    letter-spacing:-.025em!important;
  }

  body .site-brand-copy .eyebrow{
    letter-spacing:.14em!important;
  }
}


/* ===== SOURCE: css/283-v592-contact-author-style.css ===== */

@media(min-width:761px){
  /* Brand title requested for the future shared PC / responsive shell. */
  .site-brand-copy h1{
    display:flex!important;
    align-items:baseline!important;
    gap:7px!important;
    min-width:0!important;
    white-space:nowrap!important;
  }

  .site-brand-copy h1 .pc-brand-main{
    color:#eef2f4!important;
    font-weight:850!important;
  }

  .site-brand-copy h1 .pc-brand-divider{
    color:rgba(var(--pc-atmo-rgb),.34)!important;
    font-weight:500!important;
  }

  .site-brand-copy h1 .pc-brand-cn{
    color:#bac3c9!important;
    font-size:.82em!important;
    font-weight:760!important;
    letter-spacing:.01em!important;
  }

  /* Group version / theme / contact into one right-side action rail. */
  #pcTopbarActions{
    margin-left:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    position:relative!important;
    z-index:5200!important;
    overflow:visible!important;
  }

  #pcTopbarActions>.version{
    margin:0 5px 0 0!important;
  }

  #pcPremiumThemeControl{
    margin-left:0!important;
  }

  #pcContactAuthorControl{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    z-index:5200!important;
    overflow:visible!important;
  }

  #pcContactAuthorButton{
    width:34px!important;
    height:30px!important;
    padding:0!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.11)!important;
    border-radius:9px!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.034),rgba(255,255,255,.012))!important;
    color:#aeb7bd!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:
      0 8px 22px rgba(0,0,0,.18),
      inset 0 1px 0 rgba(255,255,255,.045)!important;
    cursor:pointer!important;
    transition:
      transform .10s ease,
      border-color .16s ease,
      color .16s ease,
      background .16s ease!important;
  }

  #pcContactAuthorButton:hover{
    border-color:rgba(var(--pc-atmo-rgb),.22)!important;
    background:rgba(var(--pc-atmo-rgb),.035)!important;
    color:#d8dfe3!important;
  }

  #pcContactAuthorButton:active{
    transform:scale(.96)!important;
  }

  #pcContactAuthorButton svg{
    width:14px!important;
    height:14px!important;
    display:block!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.75!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    pointer-events:none!important;
  }

  #pcContactAuthorPanel{
    position:absolute!important;
    right:0!important;
    top:38px!important;
    z-index:99999!important;
    width:252px!important;
    padding:9px!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.12)!important;
    border-radius:14px!important;
    background:
      linear-gradient(180deg,
        rgba(var(--pc-panel),.988),
        rgba(var(--pc-panel-2),.997))!important;
    box-shadow:
      0 24px 64px rgba(0,0,0,.48),
      inset 0 1px 0 rgba(255,255,255,.026)!important;
    -webkit-backdrop-filter:blur(18px) saturate(118%)!important;
    backdrop-filter:blur(18px) saturate(118%)!important;
    overflow:hidden!important;
  }

  #pcContactAuthorPanel[hidden]{
    display:none!important;
  }

  .pc-contact-head{
    padding:7px 8px 10px!important;
    border-bottom:1px solid rgba(var(--pc-atmo-rgb),.065)!important;
  }

  .pc-contact-head strong{
    display:block!important;
    color:#e5eaed!important;
    font-size:13.5px!important;
    line-height:1.1!important;
    font-weight:850!important;
  }

  .pc-contact-head span{
    display:block!important;
    margin-top:5px!important;
    color:#707c85!important;
    font-size:10px!important;
    line-height:1.2!important;
  }

  .pc-contact-item{
    width:100%!important;
    min-height:48px!important;
    padding:7px 8px!important;
    margin:0!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#c8d0d5!important;
    display:grid!important;
    grid-template-columns:30px minmax(0,1fr) 17px!important;
    gap:9px!important;
    align-items:center!important;
    text-align:left!important;
    cursor:pointer!important;
    text-decoration:none!important;
    transition:background .14s ease!important;
  }

  .pc-contact-item:hover{
    background:rgba(255,255,255,.026)!important;
  }

  .pc-contact-item-icon{
    width:30px!important;
    height:30px!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.10)!important;
    border-radius:9px!important;
    display:grid!important;
    place-items:center!important;
    color:rgba(var(--pc-atmo-rgb),.82)!important;
    background:rgba(var(--pc-atmo-rgb),.028)!important;
  }

  .pc-contact-item-icon svg{
    width:14px!important;
    height:14px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.75!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  .pc-contact-item-copy{
    min-width:0!important;
  }

  .pc-contact-item-copy strong{
    display:block!important;
    color:#d8dee2!important;
    font-size:11.5px!important;
    line-height:1.1!important;
    font-weight:800!important;
  }

  .pc-contact-item-copy span{
    display:block!important;
    margin-top:4px!important;
    color:#707c85!important;
    font-size:9.5px!important;
    line-height:1.15!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }

  .pc-contact-item-arrow{
    color:#5f6b73!important;
    font-size:12px!important;
    text-align:center!important;
  }

  .pc-contact-foot{
    padding:8px 8px 4px!important;
    margin-top:3px!important;
    border-top:1px solid rgba(var(--pc-atmo-rgb),.055)!important;
    color:#58636c!important;
    font-size:9px!important;
    line-height:1.25!important;
  }

  /* Feedback temporary notice. */
  #pcFeedbackNoticeBackdrop{
    position:fixed!important;
    inset:0!important;
    z-index:120000!important;
    display:grid!important;
    place-items:center!important;
    padding:20px!important;
    background:rgba(0,0,0,.48)!important;
    -webkit-backdrop-filter:blur(6px)!important;
    backdrop-filter:blur(6px)!important;
  }

  #pcFeedbackNoticeBackdrop[hidden]{
    display:none!important;
  }

  #pcFeedbackNotice{
    width:min(360px,92vw)!important;
    padding:16px!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.14)!important;
    border-radius:16px!important;
    background:
      linear-gradient(180deg,
        rgba(var(--pc-panel),.995),
        rgba(var(--pc-panel-2),.999))!important;
    box-shadow:
      0 30px 90px rgba(0,0,0,.56),
      inset 0 1px 0 rgba(255,255,255,.03)!important;
  }

  #pcFeedbackNotice .pc-feedback-icon{
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    display:grid!important;
    place-items:center!important;
    margin-bottom:11px!important;
    color:rgba(var(--pc-atmo-rgb),.86)!important;
    border:1px solid rgba(var(--pc-atmo-rgb),.13)!important;
    background:rgba(var(--pc-atmo-rgb),.038)!important;
  }

  #pcFeedbackNotice .pc-feedback-icon svg{
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.75!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  #pcFeedbackNotice h3{
    margin:0!important;
    color:#e7ecef!important;
    font-size:15px!important;
    line-height:1.2!important;
    font-weight:850!important;
  }

  #pcFeedbackNotice p{
    margin:8px 0 0!important;
    color:#87929a!important;
    font-size:11.5px!important;
    line-height:1.55!important;
  }

  #pcFeedbackNotice .pc-feedback-actions{
    display:flex!important;
    justify-content:flex-end!important;
    gap:8px!important;
    margin-top:15px!important;
  }

  #pcFeedbackNotice .pc-feedback-btn{
    height:31px!important;
    padding:0 11px!important;
    border:1px solid rgba(255,255,255,.085)!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.018)!important;
    color:#89949c!important;
    font-size:10.5px!important;
    font-weight:800!important;
    cursor:pointer!important;
  }

  #pcFeedbackNotice .pc-feedback-btn.primary{
    border-color:rgba(var(--pc-gold-rgb),.22)!important;
    background:rgba(var(--pc-gold-rgb),.075)!important;
    color:#dcc575!important;
  }

  #pcFeedbackNotice .pc-feedback-btn:hover{
    border-color:rgba(var(--pc-atmo-rgb),.20)!important;
    color:#cbd3d8!important;
  }
}


/* ===== SOURCE: css/284-v593-header-contact-logo-polish.css ===== */

@media(min-width:761px){
  /* Header now visibly participates in the active UI theme. */
  body .topbar{
    position:relative!important;
    overflow:visible!important;
    background:
      radial-gradient(520px 120px at 17% -20%,
        rgba(var(--pc-atmo-rgb),.115),
        transparent 68%),
      radial-gradient(360px 120px at 82% -40%,
        rgba(var(--pc-cloud-rgb),.075),
        transparent 72%),
      linear-gradient(180deg,
        rgba(var(--pc-panel),.82),
        rgba(var(--pc-panel-2),.66))!important;
    border-bottom:1px solid rgba(var(--pc-atmo-rgb),.105)!important;
    box-shadow:
      inset 0 -1px 0 rgba(255,255,255,.018),
      0 12px 30px rgba(0,0,0,.11)!important;
    -webkit-backdrop-filter:blur(18px) saturate(116%)!important;
    backdrop-filter:blur(18px) saturate(116%)!important;
    transition:
      background .22s ease,
      border-color .22s ease!important;
  }

  body .topbar::after{
    content:"";
    position:absolute;
    pointer-events:none;
    left:20px;right:20px;bottom:-1px;
    height:1px;
    background:
      linear-gradient(90deg,
        transparent 0%,
        rgba(var(--pc-atmo-rgb),.20) 12%,
        rgba(var(--pc-atmo-rgb),.055) 45%,
        transparent 84%);
    opacity:.9;
  }

  body .site-brand{
    position:relative!important;
    z-index:1!important;
  }

  /* The supplied logo has baked-in black background.
     Screen blend visually removes the black block without altering the asset. */
  body .site-logo{
    width:118px!important;
    height:40px!important;
    object-fit:contain!important;
    mix-blend-mode:screen!important;
    opacity:.98!important;
    filter:brightness(1.02) contrast(1.03)!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body .site-brand-copy .eyebrow{
    color:rgba(var(--pc-atmo-rgb),.76)!important;
  }

  body .site-brand-copy h1 .pc-brand-divider{
    color:rgba(var(--pc-atmo-rgb),.42)!important;
  }

  body .site-brand-copy h1 .pc-brand-cn{
    color:#b9c2c8!important;
  }

  /* Contact entry: explicit text, no login/avatar ambiguity. */
  #pcContactAuthorButton{
    width:auto!important;
    min-width:72px!important;
    height:30px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:9px!important;
    color:#98a3aa!important;
    font-size:10.5px!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
  }

  #pcContactAuthorButton svg{
    display:none!important;
  }

  /* Compact contact menu: only Bilibili + Feedback. */
  #pcContactAuthorPanel{
    width:192px!important;
    padding:6px!important;
    border-radius:12px!important;
  }

  #pcContactAuthorPanel .pc-contact-head,
  #pcContactAuthorPanel .pc-contact-foot{
    display:none!important;
  }

  #pcContactAuthorPanel .pc-contact-item{
    min-height:41px!important;
    padding:6px 7px!important;
    grid-template-columns:27px minmax(0,1fr) 14px!important;
    gap:8px!important;
    border-radius:8px!important;
  }

  #pcContactAuthorPanel .pc-contact-item + .pc-contact-item{
    margin-top:2px!important;
  }

  #pcContactAuthorPanel .pc-contact-item-icon{
    width:27px!important;
    height:27px!important;
    border-radius:8px!important;
  }

  #pcContactAuthorPanel .pc-contact-item-icon svg{
    width:13px!important;
    height:13px!important;
  }

  #pcContactAuthorPanel .pc-contact-item-copy strong{
    font-size:11.5px!important;
  }

  #pcContactAuthorPanel .pc-contact-item-copy span{
    margin-top:2px!important;
    font-size:9.5px!important;
  }

  #pcContactAuthorPanel .pc-contact-item-arrow{
    font-size:11px!important;
  }
}


/* ===== SOURCE: css/285-v594-header-build-theme-style.css ===== */

@media(min-width:761px){
  /* ============================================================
     Header: no independent block. Let the shell's active theme
     atmosphere continue through the header naturally.
     ============================================================ */
  body .topbar,
  body.attributes-workspace-compact .topbar,
  body.non-attribute-editor-active .topbar{
    position:relative!important;
    z-index:5000!important;
    overflow:visible!important;
    isolation:isolate!important;

    background:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;

    border-bottom:1px solid rgba(var(--pc-atmo-rgb),.070)!important;
  }

  body .topbar::before{
    content:"";
    position:absolute;
    z-index:0;
    pointer-events:none;
    left:-2%;
    right:-2%;
    top:-18px;
    bottom:-18px;
    background:
      radial-gradient(430px 100px at 16% 16%,
        rgba(var(--pc-atmo-rgb),.080),
        transparent 72%),
      radial-gradient(360px 100px at 76% -10%,
        rgba(var(--pc-cloud-rgb),.050),
        transparent 74%);
    opacity:.84;
  }

  body .topbar::after{
    content:"";
    position:absolute;
    z-index:0;
    pointer-events:none;
    left:0;
    right:0;
    bottom:-1px;
    height:1px;
    background:
      linear-gradient(90deg,
        transparent,
        rgba(var(--pc-atmo-rgb),.14) 12%,
        rgba(255,255,255,.025) 48%,
        transparent 90%);
  }

  body .topbar>*{
    position:relative;
    z-index:1;
  }

  /* Real-alpha logo: no screen blend, no baked black rectangle. */
  body .site-logo{
    width:118px!important;
    height:40px!important;
    object-fit:contain!important;
    mix-blend-mode:normal!important;
    opacity:1!important;
    filter:none!important;
    background:transparent!important;
  }

  /* ============================================================
     Right-side top tools:
       [Mobile palette] [联系作者]
                   Build 5.9.12
     ============================================================ */
  #pcTopbarActions{
    margin-left:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:center!important;
    gap:3px!important;
    min-width:max-content!important;
    overflow:visible!important;
  }

  #pcTopbarActionMain{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    overflow:visible!important;
  }

  #pcTopbarActions>.version{
    order:2!important;
    margin:0 4px 0 0!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#59656e!important;
    font-size:8.5px!important;
    font-weight:650!important;
    line-height:1.05!important;
    letter-spacing:.03em!important;
  }

  #pcPremiumThemeControl,
  #pcContactAuthorControl{
    margin:0!important;
    overflow:visible!important;
  }

  /* Mobile v1.20 palette button language. */
  #pcPremiumThemeButton{
    position:relative!important;
    width:48px!important;
    height:36px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:13px!important;
    background:
      linear-gradient(180deg,
        rgba(255,255,255,.058),
        rgba(255,255,255,.018))!important;
    color:#aeb7bd!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:
      0 10px 26px rgba(0,0,0,.18),
      inset 0 1px 0 rgba(255,255,255,.050)!important;
    -webkit-backdrop-filter:blur(18px) saturate(118%)!important;
    backdrop-filter:blur(18px) saturate(118%)!important;
  }

  #pcPremiumThemeButton::before{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    pointer-events:none;
    background:
      radial-gradient(circle at 50% 0%,
        rgba(var(--pc-atmo-rgb),.20),
        transparent 66%);
  }

  #pcPremiumThemeButton:active{
    transform:scale(.965)!important;
    border-color:rgba(215,189,119,.24)!important;
    background:
      linear-gradient(180deg,
        rgba(215,189,119,.075),
        rgba(255,255,255,.018))!important;
  }

  #pcPremiumThemeButton .theme-palette-icon{
    position:relative;
    z-index:2;
    width:23px;
    height:23px;
    overflow:visible;
    filter:drop-shadow(0 3px 7px rgba(0,0,0,.22));
  }

  #pcPremiumThemeButton .theme-palette-outline{
    fill:none;
    stroke:#aeb8bf;
    stroke-width:1.45;
    stroke-linecap:round;
    stroke-linejoin:round;
    opacity:.92;
  }

  #pcPremiumThemeButton .theme-palette-dot{
    fill:#88949c;
    opacity:.86;
  }

  #pcPremiumThemeButton .theme-palette-dot.d2{
    fill:var(--pc-atmo)!important;
    opacity:1;
    filter:drop-shadow(0 0 3px rgba(var(--pc-atmo-rgb),.38));
  }

  #pcPremiumThemeButton .theme-palette-notch{
    fill:#0c1217;
    stroke:#75818a;
    stroke-width:.8;
    opacity:.92;
  }

  #pcContactAuthorButton{
    min-width:82px!important;
    height:36px!important;
    padding:0 12px!important;
    border-radius:13px!important;
    font-size:10.5px!important;
  }

  #pcPremiumThemeMenu,
  #pcContactAuthorPanel{
    top:44px!important;
  }

  /* ============================================================
     My Build Showcase:
     remove independent background picker and bind the background
     directly to the current global UI theme.
     Slightly stronger than the normal workspace atmosphere.
     ============================================================ */
  #myBuildShowcaseV2 .mb29-theme-dots,
  #myBuildShowcaseV2 [data-mb29-theme]{
    display:none!important;
  }

  #myBuildShowcaseV2 .mb29-tools{
    gap:0!important;
    padding-top:4px!important;
  }

  #myBuildShowcaseV2::before{
    inset:0!important;
    transform:none!important;
    filter:none!important;
    background-image:none!important;
    background-size:auto!important;
    background-position:center!important;
    opacity:1!important;
  }

  body[data-pc-ui-theme="theme1"] #myBuildShowcaseV2{
    border-color:rgba(199,170,96,.20)!important;
  }
  body[data-pc-ui-theme="theme1"] #myBuildShowcaseV2::before{
    background:
      radial-gradient(105% 64% at 82% -4%,
        rgba(73,103,130,.26),
        transparent 58%),
      radial-gradient(74% 50% at 12% 2%,
        rgba(199,170,96,.18),
        transparent 48%),
      linear-gradient(128deg,
        transparent 0 39%,
        rgba(255,255,255,.018) 39.3% 39.8%,
        transparent 40.1% 100%),
      linear-gradient(155deg,
        #151b21 0%,
        #0d1318 47%,
        #080d11 100%)!important;
  }

  body[data-pc-ui-theme="theme2"] #myBuildShowcaseV2{
    border-color:rgba(116,177,158,.23)!important;
  }
  body[data-pc-ui-theme="theme2"] #myBuildShowcaseV2::before{
    background:
      radial-gradient(112% 62% at 82% -4%,
        rgba(70,124,138,.25),
        transparent 58%),
      radial-gradient(70% 44% at 14% 0%,
        rgba(116,177,158,.21),
        transparent 47%),
      repeating-linear-gradient(90deg,
        rgba(130,177,163,.025) 0 1px,
        transparent 1px 44px),
      linear-gradient(158deg,
        #142023 0%,
        #0c1618 47%,
        #071013 100%)!important;
  }

  body[data-pc-ui-theme="theme3"] #myBuildShowcaseV2{
    border-color:rgba(111,142,177,.22)!important;
  }
  body[data-pc-ui-theme="theme3"] #myBuildShowcaseV2::before{
    background:
      radial-gradient(118% 64% at 50% -9%,
        rgba(96,137,181,.23),
        transparent 56%),
      radial-gradient(68% 42% at 87% 0%,
        rgba(52,81,118,.18),
        transparent 48%),
      repeating-linear-gradient(90deg,
        rgba(120,149,176,.030) 0 1px,
        transparent 1px 46px),
      linear-gradient(180deg,
        #151e27 0%,
        #0c141b 55%,
        #080e13 100%)!important;
  }

  #myBuildShowcaseV2::after{
    background:
      linear-gradient(90deg,
        rgba(4,7,10,.76) 0%,
        rgba(4,8,11,.52) 35%,
        rgba(4,8,11,.18) 74%,
        rgba(4,7,10,.31) 100%),
      linear-gradient(180deg,
        rgba(2,5,7,.03),
        rgba(2,5,7,.21))!important;
  }
}


/* ===== SOURCE: css/stable-bundle-031.css ===== */
/* === SOURCE: css/286-v595-header-body-card-polish.css === */

@media(min-width:761px){
  /* Brand: cleaner separation and a web-native transparent mark. */
  body .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>.site-brand,
  body.non-attribute-editor-active .topbar>.site-brand{
    gap:18px!important;
  }

  body .site-logo{
    width:154px!important;
    height:48px!important;
    object-fit:contain!important;
    mix-blend-mode:normal!important;
    filter:none!important;
    opacity:1!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body .site-brand-copy{
    gap:5px!important;
  }

  body .site-brand-copy h1{
    display:flex!important;
    align-items:center!important;
    gap:0!important;
    white-space:nowrap!important;
    line-height:1!important;
    letter-spacing:0!important;
  }

  body .site-brand-copy h1 .pc-brand-main{
    display:block!important;
    font-size:24px!important;
    line-height:1!important;
    letter-spacing:-.035em!important;
    font-weight:880!important;
  }

  body .site-brand-copy h1 .pc-brand-divider{
    display:block!important;
    flex:0 0 auto!important;
    width:1px!important;
    height:25px!important;
    margin:0 14px!important;
    overflow:hidden!important;
    color:transparent!important;
    font-size:0!important;
    background:linear-gradient(180deg,
      rgba(var(--pc-atmo-rgb),.18),
      rgba(var(--pc-atmo-rgb),.64),
      rgba(var(--pc-atmo-rgb),.18))!important;
    border-radius:99px!important;
  }

  body .site-brand-copy h1 .pc-brand-cn{
    display:block!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:-.012em!important;
    color:#bbc4ca!important;
  }

  body .site-brand-copy .eyebrow{
    font-size:7.5px!important;
    letter-spacing:.17em!important;
  }

  /* Expanded Body panel: attribute deltas first, plot second. */
  .global-archetype-overview-card .ovc-body-expanded{
    gap:11px!important;
  }

  .global-archetype-overview-card .ovc-body-mods{
    margin:0!important;
    gap:7px!important;
  }

  .global-archetype-overview-card .ovc-body-mod{
    min-height:40px!important;
    padding:8px 10px!important;
    border-radius:10px!important;
  }

  .global-archetype-overview-card .ovc-body-mod span{
    font-size:11.5px!important;
    line-height:1.15!important;
    font-weight:760!important;
    letter-spacing:0!important;
  }

  .global-archetype-overview-card .ovc-body-mod strong{
    font-size:14px!important;
    line-height:1!important;
    font-weight:900!important;
  }

  .global-archetype-overview-card .ovc-body-plot{
    margin-top:1px!important;
  }
}

/* === SOURCE: css/287-v596-header-priority-nav-fix.css === */

@media(min-width:761px){
  /* ---------------------------------------------------------
     1) Active navigation:
        restore line-only highlight, remove the solid block
        introduced by the later Premium UI layer.
     --------------------------------------------------------- */
  body .editor-view-tab.active,
  body.attributes-workspace-compact .editor-view-tab.active,
  body.non-attribute-editor-active .editor-view-tab.active{
    background:transparent!important;
    box-shadow:none!important;
    border-color:transparent!important;
    color:#e2c979!important;
  }

  body .editor-view-tab.active:hover,
  body.attributes-workspace-compact .editor-view-tab.active:hover,
  body.non-attribute-editor-active .editor-view-tab.active:hover{
    background:rgba(var(--pc-gold-rgb),.018)!important;
    box-shadow:none!important;
  }

  body .editor-view-tab.active::after,
  body.attributes-workspace-compact .editor-view-tab.active::after,
  body.non-attribute-editor-active .editor-view-tab.active::after{
    left:15px!important;
    right:15px!important;
    bottom:-1px!important;
    height:2px!important;
    border-radius:99px!important;
    background:linear-gradient(90deg,
      transparent,
      rgba(var(--pc-gold-rgb),.90) 18%,
      rgba(var(--pc-gold-rgb),.90) 82%,
      transparent)!important;
    box-shadow:0 0 8px rgba(var(--pc-gold-rgb),.14)!important;
  }

  /* ---------------------------------------------------------
     2) Header geometry:
        old attribute-page CSS has higher specificity and was
        forcing h1 back to display:block. Match/exceed that
        specificity at EOF so every editor page uses ONE header.
     --------------------------------------------------------- */
  body .topbar,
  body.attributes-workspace-compact .topbar,
  body.non-attribute-editor-active .topbar{
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
  }

  body .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>.site-brand,
  body.non-attribute-editor-active .topbar>.site-brand,
  body.attributes-workspace-compact .topbar>div:first-child{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    flex-wrap:nowrap!important;
    min-width:max-content!important;
    width:max-content!important;
    max-width:none!important;
    gap:18px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  body .site-logo,
  body.attributes-workspace-compact .site-logo,
  body.non-attribute-editor-active .site-logo{
    display:block!important;
    flex:0 0 154px!important;
    width:154px!important;
    height:48px!important;
    min-width:154px!important;
    max-width:154px!important;
    object-fit:contain!important;
    align-self:center!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    mix-blend-mode:normal!important;
    filter:none!important;
    opacity:1!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body .site-brand-copy,
  body.attributes-workspace-compact .site-brand-copy,
  body.non-attribute-editor-active .site-brand-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    flex:0 0 auto!important;
    min-width:max-content!important;
    width:max-content!important;
    max-width:none!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    translate:none!important;
    position:static!important;
  }

  body .topbar .eyebrow,
  body.attributes-workspace-compact .topbar .eyebrow,
  body.non-attribute-editor-active .topbar .eyebrow{
    display:block!important;
    width:max-content!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    white-space:nowrap!important;
    transform:none!important;
    position:static!important;
  }

  body .site-brand-copy h1,
  body.attributes-workspace-compact .site-brand-copy h1,
  body.non-attribute-editor-active .site-brand-copy h1,
  body.attributes-workspace-compact .topbar h1,
  body.non-attribute-editor-active .topbar h1{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    white-space:nowrap!important;
    line-height:1!important;
    letter-spacing:0!important;
    transform:none!important;
    position:static!important;
  }

  body .site-brand-copy h1 .pc-brand-main,
  body.attributes-workspace-compact .site-brand-copy h1 .pc-brand-main,
  body.non-attribute-editor-active .site-brand-copy h1 .pc-brand-main{
    display:block!important;
    flex:0 0 auto!important;
    font-size:24px!important;
    line-height:1!important;
    letter-spacing:-.035em!important;
    font-weight:880!important;
    white-space:nowrap!important;
  }

  body .site-brand-copy h1 .pc-brand-divider,
  body.attributes-workspace-compact .site-brand-copy h1 .pc-brand-divider,
  body.non-attribute-editor-active .site-brand-copy h1 .pc-brand-divider{
    display:block!important;
    flex:0 0 1px!important;
    width:1px!important;
    height:25px!important;
    margin:0 14px!important;
    overflow:hidden!important;
    color:transparent!important;
    font-size:0!important;
    background:linear-gradient(180deg,
      rgba(var(--pc-atmo-rgb),.18),
      rgba(var(--pc-atmo-rgb),.64),
      rgba(var(--pc-atmo-rgb),.18))!important;
    border-radius:99px!important;
  }

  body .site-brand-copy h1 .pc-brand-cn,
  body.attributes-workspace-compact .site-brand-copy h1 .pc-brand-cn,
  body.non-attribute-editor-active .site-brand-copy h1 .pc-brand-cn{
    display:block!important;
    flex:0 0 auto!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:-.012em!important;
    color:#bbc4ca!important;
    white-space:nowrap!important;
  }
}


/* ===== SOURCE: css/288-v597-final-small-polish.css ===== */

@media(min-width:761px){

  /* =========================================================
     1) Navigation: every page uses the same minimal Attribute-page language.
     No card border / no capsule panel / no page-to-page visual jump.
     ========================================================= */
  body .editor-view-tabs,
  body.attributes-workspace-compact .editor-view-tabs,
  body.non-attribute-editor-active .editor-view-tabs{
    box-sizing:border-box!important;
    min-height:64px!important;
    margin:0 0 16px!important;
    padding:0 14px!important;

    display:flex!important;
    align-items:center!important;
    gap:0!important;

    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;

    overflow-x:auto!important;
    overflow-y:visible!important;
  }

  body .editor-view-tab,
  body.attributes-workspace-compact .editor-view-tab,
  body.non-attribute-editor-active .editor-view-tab{
    min-height:64px!important;
    padding:0 16px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#7f8a94!important;
  }

  body .editor-view-tab:hover,
  body.attributes-workspace-compact .editor-view-tab:hover,
  body.non-attribute-editor-active .editor-view-tab:hover{
    background:transparent!important;
    color:#b8c1c7!important;
  }

  body .editor-view-tab.active,
  body.attributes-workspace-compact .editor-view-tab.active,
  body.non-attribute-editor-active .editor-view-tab.active{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    color:#e2c979!important;
  }

  body .editor-view-tab.active::after,
  body.attributes-workspace-compact .editor-view-tab.active::after,
  body.non-attribute-editor-active .editor-view-tab.active::after{
    left:15px!important;
    right:15px!important;
    bottom:0!important;
    height:2px!important;
    border-radius:99px!important;
    background:linear-gradient(
      90deg,
      transparent,
      rgba(var(--pc-gold-rgb),.90) 18%,
      rgba(var(--pc-gold-rgb),.90) 82%,
      transparent
    )!important;
    box-shadow:0 0 8px rgba(var(--pc-gold-rgb),.12)!important;
  }

  body .editor-view-sep,
  body.attributes-workspace-compact .editor-view-sep,
  body.non-attribute-editor-active .editor-view-sep{
    color:rgba(255,255,255,.095)!important;
  }

  /* =========================================================
     2) Base / Match value mode:
        neutral default + same restrained gold selected state.
     ========================================================= */
  #attributeDesktopToolbar .attribute-mode-btn,
  #playerCardPanel .build-mode-btn{
    color:#84909a!important;
    background:transparent!important;
    border-color:transparent!important;
    box-shadow:none!important;
  }

  #attributeDesktopToolbar .attribute-mode-btn:hover,
  #playerCardPanel .build-mode-btn:hover{
    color:#b9c2c9!important;
    background:rgba(255,255,255,.025)!important;
  }

  #attributeDesktopToolbar .attribute-mode-btn.active,
  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="base"].active,
  #attributeDesktopToolbar .attribute-mode-btn[data-attribute-mode="match"].active,
  #playerCardPanel .build-mode-btn.active,
  #playerCardPanel .build-mode-btn[data-build-mode="base"].active,
  #playerCardPanel .build-mode-btn[data-build-mode="match"].active{
    color:#e1c878!important;
    border-color:rgba(var(--pc-gold-rgb),.19)!important;
    background:linear-gradient(
      180deg,
      rgba(var(--pc-gold-rgb),.105),
      rgba(var(--pc-gold-rgb),.042)
    )!important;
    box-shadow:
      inset 0 0 0 1px rgba(var(--pc-gold-rgb),.045),
      0 0 9px rgba(var(--pc-gold-rgb),.025)!important;
  }

  /* =========================================================
     3) AP price explanation Bilibili detail link.
     ========================================================= */
  #attributePriceHelp .attribute-price-video-link{
    margin-top:8px!important;
    padding-top:8px!important;
    border-top:1px solid rgba(255,255,255,.055)!important;
  }

  #attributePriceHelp .attribute-price-video-link a{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    color:#cdb76e!important;
    font-size:10.5px!important;
    line-height:1.2!important;
    font-weight:760!important;
    text-decoration:none!important;
    transition:color .14s ease,opacity .14s ease!important;
  }

  #attributePriceHelp .attribute-price-video-link a:hover{
    color:#ead58a!important;
  }
}


/* ===== SOURCE: css/289-v5910-specialty-portrait-isolation-style.css ===== */

/* New specialty portrait layer deliberately contains NO <img>.
   This prevents all old .spec-player-image img animation code from ever touching it. */

#specializationCards .specialization-card.spec-card .spec-player-image {
  position:relative!important;
  height:108px!important;
  flex:0 0 108px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 50% 10%, rgba(96,126,154,.24), transparent 52%),
    radial-gradient(circle at 50% 110%, rgba(211,184,95,.15), transparent 44%),
    linear-gradient(180deg, rgba(18,27,35,.99), rgba(9,15,20,.99))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}

#specializationCards .specialization-card.spec-card.state-3 .spec-player-image {
  height:108px!important;
  flex-basis:108px!important;
  background:
    radial-gradient(circle at 50% 8%, rgba(110,142,173,.28), transparent 52%),
    radial-gradient(circle at 50% 112%, rgba(211,184,95,.20), transparent 46%),
    linear-gradient(180deg, rgba(19,29,38,.99), rgba(10,16,21,.99))!important;
}

#specializationCards .spec-player-image::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:25% 50%;
  opacity:.28;
}

#specializationCards .spec-player-image::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 25%,rgba(0,0,0,.12) 100%);
}

#specializationCards .spec-player-glow-v2 {
  position:absolute;
  inset:-18% -8% 0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 20%,rgba(112,153,188,.13),transparent 34%),
    radial-gradient(circle at 50% 86%,rgba(211,184,95,.10),transparent 34%);
  transition:opacity .55s ease,filter .55s ease;
}

#specializationCards .spec-player-stage-v2 {
  position:absolute;
  inset:0;
  z-index:2;
  overflow:hidden;
  transform:none!important;
  animation:none!important;
}

#specializationCards .spec-player-portrait-v2 {
  position:absolute;
  left:calc(50% + var(--spec-portrait-x,0%));
  top:calc(50% + var(--spec-portrait-y,18%));
  width:auto;
  height:var(--spec-portrait-scale,105%);
  aspect-ratio:var(--spec-portrait-aspect,0.82);
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
  background-image:var(--spec-portrait-image);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.28));
  pointer-events:none;
  animation:none!important;
  transition:filter .28s ease,opacity .28s ease!important;
}

#specializationCards .specialization-card.state-1 .spec-player-portrait-v2 {
  filter:grayscale(.78) saturate(.38) brightness(.70) drop-shadow(0 12px 18px rgba(0,0,0,.22));
}

#specializationCards .specialization-card:hover .spec-player-portrait-v2,
#specializationCards .specialization-card.state-3 .spec-player-portrait-v2,
#specializationCards .specialization-card.state-3:hover .spec-player-portrait-v2,
#specializationCards .specialization-card.just-equipped .spec-player-portrait-v2 {
  transform:translate(-50%,-50%)!important;
}

#specializationCards .specialization-card.spec-card.just-equipped {
  animation:none!important;
  transform:none!important;
}

#specializationCards .specialization-card.spec-card .spec-player-image > span {
  position:absolute;
  z-index:5;
  left:14px;
  bottom:10px;
}

/* Only atmosphere changes on equip; portrait geometry never changes. */
#specializationCards .specialization-card.spec-card.state-3 .spec-player-glow-v2 {
  opacity:1;
  filter:brightness(1.08);
}


/* ===== SOURCE: css/290-v5911-specialty-portrait-img-fix-style.css ===== */

#specializationCards .spec-player-wrap-v2{
  position:relative!important;
  height:108px!important;
  flex:0 0 108px!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

#specializationCards .spec-player-wrap-v2 > .spec-player-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  z-index:1!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

#specializationCards .spec-player-wrap-v2 > .spec-player-portrait-v2{
  position:absolute!important;
  z-index:3!important;
  left:calc(50% + var(--spec-portrait-x,0%))!important;
  top:calc(50% + var(--spec-portrait-y,18%))!important;
  width:auto!important;
  height:var(--spec-portrait-scale,105%)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  aspect-ratio:var(--spec-portrait-ratio,1)!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.28))!important;
  transition:filter .28s ease,opacity .28s ease!important;
  animation:none!important;
  pointer-events:none!important;
}

#specializationCards .specialization-card:hover .spec-player-wrap-v2 > .spec-player-portrait-v2,
#specializationCards .specialization-card.state-3 .spec-player-wrap-v2 > .spec-player-portrait-v2,
#specializationCards .specialization-card.just-equipped .spec-player-wrap-v2 > .spec-player-portrait-v2{
  transform:translate(-50%,-50%)!important;
}

#specializationCards .specialization-card.state-1 .spec-player-wrap-v2 > .spec-player-portrait-v2{
  filter:grayscale(.78) saturate(.38) brightness(.70) drop-shadow(0 12px 18px rgba(0,0,0,.22))!important;
}

#specializationCards .spec-player-wrap-v2 > .spec-player-fade{
  position:absolute!important;
  z-index:4!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:48%!important;
  pointer-events:none!important;
}

#specializationCards .spec-player-wrap-v2 > .spec-player-label-v2{
  position:absolute!important;
  z-index:5!important;
  left:14px!important;
  bottom:10px!important;
  color:#b8c1c9!important;
  font-size:9px!important;
  font-weight:750!important;
  text-shadow:0 2px 8px rgba(0,0,0,.5)!important;
  pointer-events:none!important;
}

#specializationCards .specialization-card.state-1 .spec-player-label-v2{
  color:#747f89!important;
}

/* Critical isolation rule:
   legacy code only searches `.spec-player-image img`.
   New portrait IMG is a sibling, never a descendant of `.spec-player-image`. */
#specializationCards .spec-player-image img{
  display:none!important;
}


/* ===== SOURCE: css/291-pc-presplit-v15-toolbar-preset-style.css ===== */

@media(min-width:861px){
  /* Align each toolbar to the real content rail directly below it. */
  #masteryCard > .mastery-toolbar.workspace-toolbar{
    width:93%!important;
    max-width:1140px!important;
    margin-left:0!important;
    margin-right:auto!important;
  }
  #facilitiesCard > .facility-toolbar.workspace-toolbar{
    width:80%!important;
    max-width:80%!important;
    margin-left:0!important;
    margin-right:auto!important;
  }
}
@media(min-width:861px) and (max-width:1180px){
  #masteryCard > .mastery-toolbar.workspace-toolbar{
    width:96%!important;
    max-width:96%!important;
  }
}
@media(min-width:901px){
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar{
    width:min(1182px,100%)!important;
    max-width:1182px!important;
    margin-left:0!important;
    margin-right:auto!important;
  }
}
@media(max-width:900px) and (min-width:761px){
  #masteryCard > .mastery-toolbar.workspace-toolbar,
  #facilitiesCard > .facility-toolbar.workspace-toolbar,
  #specializationPanel .specialization-workspace-toolbar.workspace-toolbar{
    width:100%!important;
    max-width:100%!important;
  }
}

/* Explicit toolbar order: actions -> presets -> live stats -> help -> rail edge. */
#masteryCard .mastery-toolbar-tools,
#facilitiesCard .facility-toolbar-tools{
  flex-wrap:nowrap!important;
}

#masteryCard .mastery-toolbar-stats,
#facilitiesCard .facility-toolbar-stats{
  min-width:0!important;
  flex:1 1 auto!important;
}

#masteryCard .mastery-toolbar-help,
#facilitiesCard .facility-toolbar-help{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.workspace-toolbar .pc-preset-slot{
  position:relative!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  overflow:visible!important;
  font-size:10.5px!important;
  letter-spacing:.02em!important;
}
#masteryCard .pc-preset-slot-mastery{
  width:48px!important;
  min-width:48px!important;
  flex:0 0 48px!important;
}
#facilitiesCard .pc-preset-slot-facility{
  width:34px!important;
  min-width:34px!important;
  flex:0 0 34px!important;
}

/* Saved-preset marker: same low-volume signal language as Mobile. */
.workspace-toolbar .pc-preset-slot.has-data{
  color:#d8c47b!important;
  border-color:rgba(215,181,90,.19)!important;
  background:linear-gradient(180deg,rgba(215,181,90,.055),rgba(215,181,90,.022))!important;
}
.workspace-toolbar .pc-preset-slot.has-data::after{
  content:"";
  position:absolute;
  right:4px;
  top:4px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#d8b85f;
  box-shadow:0 0 0 2px rgba(13,18,23,.90),0 0 7px rgba(215,181,90,.20);
}
.workspace-toolbar .pc-preset-save-button{
  color:#aeb7c0!important;
}

/* Modal */
#pcPresetBackdrop{
  position:fixed;
  inset:0;
  z-index:12000;
  display:none;
  background:rgba(0,0,0,.54);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
}
#pcPresetBackdrop.show{display:block}

#pcPresetModal{
  position:fixed;
  left:50%;
  top:50%;
  z-index:12010;
  width:min(430px,calc(100vw - 34px));
  transform:translate(-50%,-48%) scale(.985);
  opacity:0;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:
    linear-gradient(180deg,rgba(19,26,33,.985),rgba(9,14,19,.995));
  box-shadow:
    0 30px 90px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(255,255,255,.035);
  overflow:hidden;
  transition:opacity .16s ease,transform .18s cubic-bezier(.22,.78,.24,1);
}
#pcPresetModal.show{
  opacity:1;
  pointer-events:auto;
  transform:translate(-50%,-50%) scale(1);
}
.pc-preset-modal-head{
  min-height:68px;
  padding:13px 15px 11px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.pc-preset-modal-head small{
  display:block;
  color:#766a4c;
  font-size:8px;
  font-weight:850;
  letter-spacing:.14em;
}
.pc-preset-modal-head strong{
  display:block;
  margin-top:4px;
  color:#e6ebef;
  font-size:15px;
  font-weight:850;
}
.pc-preset-modal-head span{
  display:block;
  margin-top:4px;
  color:#727e88;
  font-size:9px;
  line-height:1.45;
}
.pc-preset-close{
  width:30px;height:30px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:9px;
  background:rgba(255,255,255,.018);
  color:#87929a;
  font-size:18px;
  cursor:pointer;
}
.pc-preset-modal-body{padding:13px 15px 15px}
.pc-preset-warning{
  padding:10px 11px;
  border:1px solid rgba(215,181,90,.10);
  border-radius:10px;
  background:rgba(215,181,90,.035);
  color:#9d916e;
  font-size:9.5px;
  line-height:1.55;
}
.pc-preset-slot-list{
  display:grid;
  gap:7px;
}
.pc-preset-slot-card{
  width:100%;
  min-height:48px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:10px;
  background:rgba(255,255,255,.018);
  color:#cbd2d7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-align:left;
  cursor:pointer;
}
.pc-preset-slot-card:hover{
  border-color:rgba(215,181,90,.18);
  background:rgba(215,181,90,.035);
}
.pc-preset-slot-card strong{font-size:11px}
.pc-preset-slot-card span{font-size:8.5px;color:#6f7b84}
.pc-preset-slot-card.occupied strong{color:#dec879}
.pc-preset-modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-top:12px;
}
.pc-preset-modal-action{
  min-width:78px;
  height:34px;
  padding:0 11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(255,255,255,.02);
  color:#aeb7bf;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.pc-preset-modal-action.primary{
  color:#ddc77c;
  border-color:rgba(215,181,90,.22);
  background:rgba(215,181,90,.055);
}
.pc-preset-modal-action.danger{
  color:#dca08f;
  border-color:rgba(204,113,85,.24);
  background:rgba(204,113,85,.055);
}

/* Tiny feedback toast */
#pcPresetToast{
  position:fixed;
  left:50%;
  top:22px;
  z-index:12100;
  transform:translate(-50%,-7px);
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(13,19,24,.96);
  color:#cbd3d9;
  box-shadow:0 10px 28px rgba(0,0,0,.30);
  font-size:9px;
  font-weight:800;
  opacity:0;
  pointer-events:none;
  transition:opacity .15s ease,transform .18s ease;
}
#pcPresetToast.show{
  opacity:1;
  transform:translate(-50%,0);
}


/* ===== SOURCE: css/292-pc-presplit-v16-frameless-advanced-workspace.css ===== */

/* The late global "glass language" paints .advanced-panel/.advanced-card with
   a full-area tinted surface. Once the toolbar was narrowed to the content rail,
   that old surface became visible on the right and below as a large color block.
   Keep glass only on the actual toolbar and inner functional cards. */

body #advancedPanel,
body #advancedPanel.advanced-panel,
body #masteryCard,
body #masteryCard.mastery-card,
body #facilitiesCard,
body #facilitiesCard.facilities-card{
  background:transparent!important;
  border-color:transparent!important;
  border-width:0!important;
  box-shadow:none!important;
}

/* Prevent the global hover layer from bringing the outer frame back. */
body #masteryCard:hover,
body #facilitiesCard:hover{
  border-color:transparent!important;
  box-shadow:none!important;
}

/* Page headers should float directly on the main workspace background. */
body #masteryCard > header,
body #facilitiesCard > header{
  background:transparent!important;
  border-bottom-color:transparent!important;
  box-shadow:none!important;
}

/* Facilities had an additional large radial wash on the whole lower workspace.
   Remove only that broad wash; budget cards / selected cards keep their own glass. */
body #facilitiesWorkspace.facilities-workspace{
  background:transparent!important;
}

/* Keep the actual content surfaces intact and premium. */
body #masteryCard .workspace-toolbar,
body #facilitiesCard .workspace-toolbar,
body #masteryCard .mastery-group,
body #facilitiesCard .facility-budget-card,
body #facilitiesCard .facility-preview-card,
body #facilitiesCard .facility-slot-card{
  /* intentionally no reset here */
}

