:root{
  --bg:#111315;
  --panel:#181b1f;
  --panel-alt:#1d2126;
  --panel-hover:#22272d;
  --line:#32373d;
  --line-strong:#464c54;
  --text:#eef0f2;
  --muted:#9ba2aa;
  --accent:#4d8fc9;
  --accent-hover:#5d9bd2;
  --accent-soft:#1d3345;
  --success:#62b58d;
  --danger:#d36b73;
  --warning:#c99a52;
  --wow-class-death-knight:#C41E3A;
  --wow-class-demon-hunter:#A330C9;
  --wow-class-druid:#FF7C0A;
  --wow-class-evoker:#33937F;
  --wow-class-hunter:#AAD372;
  --wow-class-mage:#3FC7EB;
  --wow-class-monk:#00FF98;
  --wow-class-paladin:#F48CBA;
  --wow-class-priest:#FFFFFF;
  --wow-class-rogue:#FFF468;
  --wow-class-shaman:#0070DD;
  --wow-class-warlock:#8788EE;
  --wow-class-warrior:#C69B6D;
}
*{box-sizing:border-box}
html{color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:#80b8e5;text-decoration:none}a:hover{color:#a5cff0;text-decoration:underline}
button,input,select,textarea{font:inherit}code,.mono,pre{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #78aee0;outline-offset:2px}

/* WoW class colors: used consistently for player names in server- and JS-rendered UI. */
.player-name{color:var(--text)}
.wow-class-death-knight{color:var(--wow-class-death-knight)!important}
.wow-class-demon-hunter{color:var(--wow-class-demon-hunter)!important}
.wow-class-druid{color:var(--wow-class-druid)!important}
.wow-class-evoker{color:var(--wow-class-evoker)!important}
.wow-class-hunter{color:var(--wow-class-hunter)!important}
.wow-class-mage{color:var(--wow-class-mage)!important}
.wow-class-monk{color:var(--wow-class-monk)!important}
.wow-class-paladin{color:var(--wow-class-paladin)!important}
.wow-class-priest{color:var(--wow-class-priest)!important}
.wow-class-rogue{color:var(--wow-class-rogue)!important}
.wow-class-shaman{color:var(--wow-class-shaman)!important}
.wow-class-warlock{color:var(--wow-class-warlock)!important}
.wow-class-warrior{color:var(--wow-class-warrior)!important}
.player-name-link:hover .player-name,.player-name-link:focus-visible .player-name{filter:brightness(1.15)}
select.player-class-select{font-weight:650}
select.player-class-select option{font-weight:650}

.topbar{position:sticky;top:0;z-index:20;height:56px;padding:0 max(18px,calc((100vw - 1400px)/2));display:flex;align-items:center;gap:24px;background:#15181b;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:15px;font-weight:700;white-space:nowrap}.brand:hover{text-decoration:none;color:#fff}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid #5f6a74;background:#22272c;color:#dce5ec;border-radius:2px;font-size:11px;letter-spacing:.04em}
.nav{display:flex;align-items:stretch;height:100%;margin-left:auto}.nav>a,.link-button{display:flex;align-items:center;color:#aeb4bb;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer;border-radius:0}.nav>a.active,.nav>a:hover,.link-button:hover{color:#fff;background:#1b1f23;border-bottom-color:var(--accent);text-decoration:none}.nav-logout{display:flex;margin:0}.nav-toggle{display:none;margin-left:auto;border:1px solid var(--line);background:#1d2125;color:#fff;font-size:19px;width:34px;height:34px;border-radius:2px}

.page-shell{width:min(1400px,calc(100% - 32px));margin:28px auto 64px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:20px}.page-heading h1{font-size:30px;line-height:1.15;margin:2px 0 6px;font-weight:700;letter-spacing:-.02em}.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-weight:700;font-size:10px;color:#7f8994;margin:0}.muted,.subtle{color:var(--muted)}.subtle{font-size:12px}.narrow{max-width:880px;margin:auto}

.card{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:18px;margin-bottom:16px}.card h2{margin:0 0 12px;font-size:18px;font-weight:650}.card-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.card-head h2{margin:1px 0}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.results-grid{grid-template-columns:1fr}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat-card{background:#171a1d;border:1px solid var(--line);border-left:3px solid #4b5660;border-radius:2px;padding:14px}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;font-size:26px;margin:2px 0;font-variant-numeric:tabular-nums}.stat-card small{color:#7f8790}

.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid #4a5159;background:#24282d;color:#edf0f2;border-radius:0;padding:8px 12px;font-weight:650;cursor:pointer;text-decoration:none}.button:hover{background:#2b3036;border-color:#5b636c;text-decoration:none;color:#fff}.button-primary{background:#356d9b;border-color:#4d8fc9;color:#fff}.button-primary:hover{background:#407dab;border-color:#62a0d3}.button-danger{background:#572a30;border-color:#8b464f;color:#ffdadd}.button-danger:hover{background:#663139}.button-wide{width:100%}.button-large{padding:10px 17px;font-size:15px}.button-small{min-height:30px;padding:5px 8px;font-size:12px}.button-row,.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.icon-button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);background:#22262a;color:#fff;font-size:19px;cursor:pointer;border-radius:2px}

.flash-stack{display:grid;gap:7px;margin-bottom:14px}.flash{padding:10px 12px;border:1px solid;border-radius:2px}.flash-success{border-color:#3e705a;background:#182b23}.flash-danger{border-color:#744047;background:#341d21}.flash-warning{border-color:#735d37;background:#332b1d}.error-text{color:#ef9199}.callout{background:#151a1f;border:1px solid #35404a;border-left:3px solid var(--accent);border-radius:2px;padding:12px 14px;margin:14px 0}.callout.warning{border-left-color:var(--warning)}.callout code{display:block;margin:7px 0;color:#dce4ea}

label{display:grid;gap:6px;color:#d7dadd;font-weight:600}input,select,textarea{width:100%;min-height:38px;border:1px solid #41474e;border-radius:0;background:#111417;color:#f3f4f5;padding:8px 9px;outline:none}textarea{min-height:160px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#6a9bc2;box-shadow:none}input[type=checkbox],input[type=radio]{width:16px;min-height:16px;accent-color:#5e9ad0}.form-card>label,.form-card>.form-grid{margin-bottom:13px}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:repeat(2,1fr)}.form-grid.four{grid-template-columns:repeat(4,1fr)}.check-control{display:flex;align-items:center;gap:7px;font-weight:550}.check-control input{width:auto}.filter-bar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;background:#171a1d;border:1px solid var(--line);padding:12px;border-radius:3px;margin-bottom:12px}.filter-bar .search-field{min-width:220px}.rank-filter{flex:1;min-width:260px}.rank-filter>span{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.chip-row{display:flex;flex-wrap:wrap;gap:5px}.chip{display:flex;align-items:center;gap:5px;border:1px solid #424950;border-radius:2px;padding:5px 8px;background:#191d21;font-size:12px;cursor:pointer}.chip:has(input:checked){background:var(--accent-soft);border-color:#4679a3}.chip input{width:14px;min-height:14px}.sim-ranks{margin-top:12px}

.table-wrap{overflow:auto;padding:0}.table-wrap table{width:100%;border-collapse:collapse;min-width:760px}.table-wrap th{position:sticky;top:0;background:#202429;color:#b6bcc3;text-transform:uppercase;letter-spacing:.045em;font-size:10px;text-align:left;padding:9px 11px;border-bottom:1px solid var(--line-strong);z-index:1}.table-wrap td{padding:10px 11px;border-bottom:1px solid #2a2f34;vertical-align:middle}.table-wrap tr:hover td{background:#1d2125}.roster-table{max-height:68vh}.check-col{width:42px}.rank-badge{display:inline-grid;place-items:center;min-width:26px;height:24px;border-radius:2px;background:#252a30;border:1px solid #3b424a;font-weight:750}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 10px}.selection-count{color:var(--muted);margin-right:auto}.table-input{border:1px solid transparent;background:transparent;padding:5px;min-height:32px}.table-input:focus{border-color:#48525c;background:#111417}.badge{display:inline-flex;border-radius:2px;padding:3px 7px;background:#30353b;color:#c8cdd2;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.badge-complete,.badge-running{background:#1d4032;color:#8ed7b4}.badge-queued{background:#293449;color:#afc4e6}.badge-failed,.badge-cancelled{background:#4a252b;color:#f0a0a8}.badge-warning{background:#493b22;color:#e5bf77}.status-dot{border-radius:2px;padding:4px 7px;font-size:11px;font-weight:750}.status-ok{background:#1d4032;color:#8ed7b4}.status-bad{background:#4a252b;color:#f0a0a8}

.detail-list{display:grid;gap:7px;margin:0}.detail-list>div{display:flex;justify-content:space-between;border-bottom:1px solid #30353a;padding:7px 0;gap:15px}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;font-weight:650;text-align:right}.steps.compact{padding-left:18px}.steps.compact li{margin:7px 0}.empty-state{text-align:center;padding:28px;color:var(--muted)}

.sim-builder{display:grid;gap:0}.step-number{float:left;display:grid;place-items:center;width:25px;height:25px;border:1px solid #56616a;border-radius:2px;background:#252a2f;color:#dbe0e4;font-weight:800;margin-right:9px;font-size:12px}.choice-grid{display:grid;gap:9px}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice-card{position:relative;display:block;padding:13px;border:1px solid #41484f;border-radius:0;background:#171b1f;cursor:pointer}.choice-card:hover{background:#1d2227}.choice-card:has(input:checked){border-color:#568ab5;background:#182734;border-left-width:3px}.choice-card input{position:absolute;top:12px;right:12px}.choice-card strong{display:block;font-size:14px;margin-right:22px}.choice-card span{display:block;color:var(--muted);font-weight:400;font-size:12px;margin-top:4px}.submit-bar{position:sticky;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#171b1fee;border:1px solid #41484f;padding:11px 12px;border-radius:0;z-index:5}

.progress-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.progress{height:10px;border-radius:1px;background:#0c0f11;overflow:hidden;border:1px solid #33383d}.progress-bar{height:100%;background:#4f8fc3;transition:width .3s ease}.job-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.job-stats>div{background:#14171a;border:1px solid #2d3237;border-radius:2px;padding:9px}.job-stats span{display:block;color:var(--muted);font-size:11px}.job-stats strong{font-size:18px}.error-panel{white-space:pre-wrap;background:#28181b;color:#f0a1a8;border:1px solid #693a40;padding:12px;border-radius:2px;max-height:360px;overflow:auto}

.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:14px;gap:0}.tab-button{border:0;border-right:1px solid #32373c;border-top:1px solid #32373c;background:#181b1e;color:#aeb4ba;padding:9px 13px;cursor:pointer;border-radius:0}.tab-button:first-child{border-left:1px solid #32373c}.tab-button.active{color:#fff;background:#22272c;border-bottom:2px solid var(--accent);margin-bottom:-1px}.tab-panel[hidden]{display:none!important}
.chart-card select{max-width:320px}.chart-wrap{position:relative;height:420px}.chart-wrap.tall{height:600px}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:var(--muted);padding:30px;pointer-events:none}.chart-empty.hidden{display:none}.code-card summary{cursor:pointer;font-weight:700}.code-card pre{max-height:620px;overflow:auto;background:#0e1113;padding:12px;border:1px solid #2b3035;border-radius:2px;color:#d8dde1}.modal{width:min(600px,calc(100% - 30px));border:1px solid #49515a;border-radius:0;background:#181c20;color:#fff;padding:18px}.modal::backdrop{background:#090b0dcc}.modal form{display:grid;gap:12px}
.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(420px,100%);background:#181b1f;border:1px solid #3c4248;border-radius:0;padding:24px}.login-brand{margin-bottom:22px}.login-card h1{font-size:25px;margin:0 0 6px}.login-card label{margin:17px 0}.login-card .flash{margin:10px 0}

.profile-source{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.profile-editor textarea{min-height:360px;font-size:12px;line-height:1.35}.inline-note{font-size:12px;color:var(--muted);margin:7px 0}.compat-warning{border-left-color:#c99a52}.form-section-title{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#929aa2;margin:18px 0 8px}

.job-stats-four{grid-template-columns:repeat(4,minmax(0,1fr))}.job-stats-five{grid-template-columns:repeat(5,minmax(0,1fr))}.job-stats-six{grid-template-columns:repeat(6,minmax(0,1fr))}.cpu-note{margin:12px 0 15px;padding:9px 11px;border-radius:2px;background:#151a1f;border:1px solid #34404a;color:var(--muted)}
.task-card-head{align-items:flex-start}.task-summary-pills{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.task-pill{display:inline-flex;gap:5px;align-items:center;padding:5px 8px;border-radius:2px;border:1px solid #3a4148;background:#22272c;color:#c1c7cd;font-size:11px}.task-pill-running{background:#1c3535;color:#92d4ce}.task-pill-complete{background:#1d3b30;color:#8fd4b4}.task-pill-failed{background:#49252a;color:#efa0a8}.task-pill-skipped{background:#493b22;color:#e5bf77}.task-filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:13px 0}.task-filters label:not(.check-control){min-width:180px}.task-baseline-toggle{padding-bottom:8px}.task-table-wrap{max-height:58vh;border:1px solid #343a40;border-radius:2px}.task-table{min-width:780px!important}.task-table tbody tr.task-running td{background:#1c2d2d}.task-table tbody tr.task-failed td{background:#321e22}.task-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:750;text-transform:uppercase}.task-status-dot{width:7px;height:7px;border-radius:1px;background:#7f8790}.task-status-running .task-status-dot{background:#62b6a5}.task-status-complete .task-status-dot{background:#62b58d}.task-status-failed .task-status-dot{background:#d36b73}.task-status-skipped .task-status-dot{background:#d0a34d}.task-status-queued .task-status-dot{background:#8797b0}.task-duration{font-variant-numeric:tabular-nums;color:var(--muted)}

@media(max-width:980px){.stat-grid{grid-template-columns:repeat(2,1fr)}.grid.two,.choice-grid.three{grid-template-columns:1fr}.form-grid.four{grid-template-columns:repeat(2,1fr)}.nav-toggle{display:block}.nav{display:none;position:absolute;top:56px;left:0;right:0;height:auto;background:#15181b;border-bottom:1px solid var(--line);padding:7px 12px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav>a,.link-button{padding:10px 8px;border-bottom:0;border-left:2px solid transparent}.nav>a.active{border-left-color:var(--accent)}.page-shell{width:min(100% - 22px,1400px)}}
@media(max-width:620px){.page-heading{flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr}.form-grid.two,.form-grid.four{grid-template-columns:1fr}.submit-bar{position:static;flex-direction:column;align-items:stretch}.button-large{width:100%}.chart-wrap.tall{height:480px}.topbar{height:52px;padding:0 10px}.nav{top:52px}.page-shell{margin-top:18px}.card{padding:13px}.stat-card strong{font-size:23px}.job-stats-four,.job-stats-five,.job-stats-six{grid-template-columns:repeat(2,1fr)}.task-summary-pills{justify-content:flex-start}.task-card-head{flex-direction:column}.tabs{overflow-x:auto}.tab-button{white-space:nowrap}}

/* Character profile override editor */
.top-gap{margin-top:12px}
.override-section{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}
.override-section:first-of-type{border-top:0;padding-top:0;margin-top:0}
.override-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}
.override-heading h3{margin:0 0 3px;font-size:15px}
.override-heading p{margin:0}
.field-source{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;align-items:start;margin:8px 0 0;color:var(--muted);font-size:12px}
.field-source code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c8ced5}
.gear-override-grid{display:grid;border:1px solid var(--line);border-bottom:0}
.gear-override-row{display:grid;grid-template-columns:120px minmax(0,.9fr) minmax(280px,1.1fr);gap:12px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--line);background:#15181b}
.gear-override-row:nth-child(even){background:#171b1f}
.gear-slot{display:grid;gap:1px}.gear-slot strong{font-size:13px}.gear-slot span{font-size:10px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace}
.gear-base{min-width:0;display:grid;gap:2px}.gear-base span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#757e87}.gear-base code{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#aeb6be;font-size:11px}
.gear-input{display:grid;grid-template-columns:60px minmax(0,1fr);align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.gear-input input{min-width:0}
.inline-danger-form{display:inline-block;margin-top:8px}
.button:disabled{opacity:.42;cursor:not-allowed;background:#23272b;border-color:#3b4147;color:#8d949b}
@media(max-width:900px){.gear-override-row{grid-template-columns:100px 1fr}.gear-input{grid-column:1/-1;grid-template-columns:100px 1fr}.gear-base{min-width:0}}
@media(max-width:620px){.gear-override-row{grid-template-columns:1fr}.gear-input{grid-column:auto;grid-template-columns:1fr}.field-source{grid-template-columns:1fr}.override-heading{display:grid}}
.effective-profile-preview{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.effective-profile-preview summary{cursor:pointer;font-weight:650;color:#cbd2d8}.effective-profile-preview pre{margin:10px 0 0;max-height:420px;overflow:auto;background:#101316;border:1px solid var(--line);padding:12px;font-size:11px;white-space:pre-wrap}
.compact-textarea{min-height:96px}.quick-paste{background:#14181c;border:1px solid var(--line);padding:12px;margin-top:0}.quick-paste + .override-section{margin-top:16px}

/* v1.4 — spec talent library */
.section-rule{border:0;border-top:1px solid var(--line);margin:22px 0}
.spec-fallback-form{display:grid;gap:12px}.spec-group{padding:0}.spec-group .card-head{padding:14px 16px;border-bottom:1px solid var(--line);margin:0}.spec-fallback-list{display:grid}.spec-fallback-row{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:16px;padding:11px 16px;border-bottom:1px solid var(--line);font-weight:400}.spec-fallback-row:last-child{border-bottom:0}.spec-label{display:grid;gap:2px}.spec-label small{color:var(--muted);font-size:11px}.spec-fallback-row input{min-width:0}
@media(max-width:700px){.spec-fallback-row{grid-template-columns:1fr;gap:7px}}

/* v1.5 — per-task SimulationCraft HTML reports */
.task-report-cell{white-space:nowrap;width:1%}
.task-report-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.task-report-button{min-height:30px;padding:5px 9px;font-size:12px;border-radius:2px}
.task-table th:last-child,.task-table td:last-child{text-align:right}

/* v1.6: trinket/spec eligibility */
.compatibility-mode { margin-bottom: 18px; }
.compat-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); margin-bottom:16px; }
.spec-compat-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.spec-compat-group { min-width:0; margin:0; padding:12px; border:1px solid var(--border); border-radius:2px; }
.spec-compat-group legend { padding:0 6px; font-weight:700; }
.spec-check { display:flex; align-items:flex-start; gap:9px; padding:7px 4px; cursor:pointer; }
.spec-check input { margin-top:3px; }
.spec-check span { display:flex; flex-direction:column; line-height:1.2; }
.spec-check small { color:var(--muted); margin-top:3px; }
.spec-check:hover { background:rgba(255,255,255,.025); }
@media (max-width:700px){ .compat-toolbar { align-items:flex-start; flex-direction:column; } }

/* Item references / Wowhead tooltips */
.trinket-name-edit {
  display: grid;
  grid-template-columns: minmax(12rem, 1fr) 2rem;
  gap: .45rem;
  align-items: center;
}
.item-tooltip-button {
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 1px solid var(--border);
  border-radius: 0;
  color: var(--text);
  background: var(--panel-2, var(--panel));
  font: 700 .78rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-decoration: none;
  cursor: help;
}
.item-tooltip-button:hover,
.item-tooltip-button:focus-visible {
  border-color: var(--text-muted, var(--muted));
  background: var(--panel);
  outline: none;
}
.item-tooltip-button.disabled {
  opacity: .38;
  cursor: not-allowed;
}
.item-tooltip-link {
  color: inherit;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  cursor: help;
}
.item-tooltip-link:hover,
.item-tooltip-link:focus-visible {
  text-decoration-style: solid;
}
.item-heading-link {
  text-decoration-thickness: 2px;
}
.item-tooltip-unavailable {
  text-decoration: none;
  cursor: default;
}
.item-reference {
  display: none;
  align-items: flex-start;
  gap: .55rem;
  margin-top: .8rem;
  padding-top: .7rem;
  border-top: 1px solid var(--border);
  min-height: 2rem;
}
.item-reference.has-item {
  display: flex;
}
.item-reference [data-item-reference-id]:not([hidden]) {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
}
.item-reference-label {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
  padding-top: 6px;
  flex: 0 0 auto;
}
.item-reference-link {
  font-weight: 650;
}

/* v1.7.2: WoW-style Epic item links */
:root { --wow-epic: #a335ee; --wow-epic-hover: #c56cff; }
a.item-tooltip-link,
a.item-tooltip-link:visited,
.item-tooltip-unavailable {
  color: var(--wow-epic);
}
.item-tooltip-link {
  display: inline;
  font-weight: 650;
  text-decoration: none;
  cursor: help;
  white-space: normal;
}
a.item-tooltip-link:hover,
a.item-tooltip-link:focus-visible {
  color: var(--wow-epic-hover);
  text-decoration: none;
  outline: none;
}
.item-heading-link {
  font-weight: inherit;
}
.item-tooltip-unavailable {
  text-decoration: none;
  cursor: default;
  opacity: .75;
}
.trinket-name-cell {
  min-width: 13rem;
}


/* v1.9: guild rank labels */
.rank-label{display:inline-block;font-weight:700;white-space:nowrap;color:#d8dde3}
.field-help{display:block;margin-top:4px;color:var(--muted);font-size:11px;font-weight:400}
.rank-name-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:10px 0 14px}
.rank-name-grid label{margin:0}
.field-label{display:block;margin-bottom:5px;font-weight:700}


/* v1.11: trinket quick-selection toolbar and item icons */
.trinket-selection-card{padding:12px 14px;margin-bottom:12px}
.trinket-selection-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.trinket-selection-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.trinket-selection-controls .button-row{flex:1 1 auto}
.trinket-bulk-ilvl{display:flex;align-items:end;gap:7px;flex-wrap:wrap}.trinket-bulk-ilvl label{min-width:185px}.trinket-bulk-ilvl input{min-width:185px}.trinket-bulk-ilvl .autosave-status{align-self:center}
.selection-dropdown{display:grid;gap:4px;min-width:205px;font-size:11px;color:var(--muted)}
.selection-dropdown select{min-height:34px}
.item-link-wrap{display:inline-flex;align-items:center;gap:7px;vertical-align:middle}
.trinket-item-icon{width:28px;height:28px;flex:0 0 28px;border:1px solid #525860;border-radius:2px;background:#0e1113;object-fit:cover;image-rendering:auto}
.trinket-name-cell{display:grid;gap:4px}
.trinket-name-cell small{padding-left:35px}
.loot-source{font-weight:700}
.loot-source-raid{color:#e3bb69}.loot-source-dungeon{color:#7eb6df}.loot-source-custom{color:var(--muted)}
@media (max-width:760px){.trinket-selection-head{align-items:flex-start;flex-direction:column}.selection-dropdown{width:100%}.trinket-selection-controls form{width:100%}.trinket-selection-controls form .button{width:100%}}

/* v1.12: adjustable results workspace */
.results-heading{margin-bottom:14px}
.results-run-card{padding:0;margin-bottom:14px;overflow:hidden}
.results-run-head{padding:15px 16px;margin:0;border-bottom:1px solid var(--line)}
.results-run-summary{display:grid;justify-items:end;line-height:1}.results-run-summary strong{font-size:24px;font-variant-numeric:tabular-nums}.results-run-summary span{margin-top:5px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.results-source-toolbar{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line);background:#15181b}
.compact-field{display:grid;gap:5px;min-width:220px;color:var(--muted);font-size:11px;font-weight:600}.compact-field select{min-height:36px;color:var(--text)}
.results-config-warning{padding:9px 16px;border-bottom:1px solid #6b5531;background:#2b2418;color:#e5c995;font-size:12px}
.run-picker{max-height:290px;overflow:auto;background:#121518}
.run-picker-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 16px;border-bottom:1px solid #292e33;cursor:pointer}.run-picker-row:last-child{border-bottom:0}.run-picker-row:hover{background:#191d21}.run-picker-row:has(input:checked){background:#182431;box-shadow:inset 3px 0 0 var(--accent)}
.run-picker-row input{width:15px;height:15px;margin:0}.run-picker-main{display:grid;min-width:0}.run-picker-title{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run-picker-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:3px;color:var(--muted);font-size:11px}.run-picker-meta .badge{font-size:10px;padding:1px 5px}.run-picker-side{display:grid;justify-items:end;gap:2px;color:var(--muted);font-size:11px;white-space:nowrap}
.results-panel{padding:0;overflow:hidden}.results-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:15px 16px;border-bottom:1px solid var(--line)}.results-panel-heading h2{margin-bottom:0}.primary-selector{min-width:300px}
.results-panel .item-reference{padding-left:16px;padding-right:16px}
.results-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--line);background:#15181b}.results-controls>label{display:grid;gap:4px;min-width:125px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.results-controls select{min-height:34px;color:var(--text);text-transform:none;letter-spacing:normal;font-weight:400}.results-controls .check-field{display:flex;flex-direction:row;align-items:center;gap:7px;min-height:34px;padding:0 7px;color:#c8ced4;text-transform:none;letter-spacing:normal;font-size:12px}.results-controls .check-field input{margin:0}
.results-chart-wrap{height:560px;margin:0;padding:12px 14px 8px}.results-data-table{border-top:1px solid var(--line);background:#14171a}.results-data-table summary{cursor:pointer;padding:10px 16px;color:#cdd3d8;font-weight:700;user-select:none}.results-data-table[open] summary{border-bottom:1px solid var(--line)}.results-data-table .table-wrap{max-height:430px;overflow:auto}.results-data-table table{margin:0}.results-data-table th{position:sticky;top:0;z-index:2;background:#171b1f}.results-data-table td,.results-data-table th{white-space:nowrap}.results-data-table td:first-child{white-space:normal;min-width:220px}
@media(max-width:800px){.results-source-toolbar,.results-panel-heading{align-items:stretch;flex-direction:column}.primary-selector,.compact-field{min-width:0;width:100%}.run-picker-row{grid-template-columns:22px minmax(0,1fr)}.run-picker-side{grid-column:2;justify-items:start}.results-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.results-controls>label{min-width:0}.results-chart-wrap{height:500px}}
@media(max-width:520px){.results-controls{grid-template-columns:1fr}.results-source-toolbar .button-row{display:grid;grid-template-columns:1fr 1fr;width:100%}.results-run-summary{justify-items:start}.run-picker-meta{gap:5px}.results-chart-wrap{height:460px}}

/* v1.13 autosave state */
.autosave-status{font-size:.78rem;color:var(--muted,#9ba2aa);min-width:5.5rem;text-align:right;white-space:nowrap}
.autosave-status[data-state="saving"]{color:#d6b85f}
.autosave-status[data-state="saved"]{color:#78b985}
.autosave-status[data-state="error"]{color:#d97878;max-width:24rem;overflow:hidden;text-overflow:ellipsis}
.autosave-status.compact{min-width:4.5rem}
.autosave-page-status{display:flex;justify-content:flex-end;margin:.35rem 0 .75rem}
.selection-autosave{display:flex;align-items:center;margin-left:auto}

/* v1.14: calmer information hierarchy, progressive disclosure, combo drill-down */
.page-actions,.job-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.action-menu{position:relative;display:inline-block}
.action-menu>summary,.control-popover>summary,.disclosure-summary,.compact-disclosure>summary{list-style:none}
.action-menu>summary::-webkit-details-marker,.control-popover>summary::-webkit-details-marker,.disclosure-summary::-webkit-details-marker,.compact-disclosure>summary::-webkit-details-marker{display:none}
.action-menu-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:35;min-width:210px;padding:5px;background:#171a1d;border:1px solid var(--line-strong);box-shadow:0 12px 28px rgba(0,0,0,.32)}
.action-menu-panel form{margin:0}.menu-action{display:flex;width:100%;min-height:34px;align-items:center;padding:7px 9px;border:0;background:transparent;color:#dfe3e6;text-align:left;cursor:pointer;font-weight:600;text-decoration:none}.menu-action:hover{background:#24292e;color:#fff;text-decoration:none}.menu-action-danger{color:#ef9ba2}.menu-action-danger:hover{background:#3a2226;color:#ffc2c7}
.icon-menu-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer}.icon-menu-button:hover{border-color:var(--line);background:#202429;color:#fff}.action-menu-right .action-menu-panel{right:0}.actions-col,.row-actions{width:42px;text-align:right}

.disclosure-card{padding:0;overflow:visible}.disclosure-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer;user-select:none}.disclosure-summary:hover{background:#1b1f23}.disclosure-summary>span:first-child{display:grid;gap:2px}.disclosure-summary strong{font-size:16px}.disclosure-summary small{color:var(--muted);font-weight:400}.summary-meta{display:flex;align-items:baseline;gap:5px;color:var(--muted);white-space:nowrap}.summary-meta strong{font-size:20px;color:var(--text)}.disclosure-body{border-top:1px solid var(--line);padding:14px 16px}.results-run-card .disclosure-body{padding:0}

.control-strip{position:relative;gap:9px}.control-strip>label{min-width:150px}.control-popover{position:relative;align-self:end}.control-popover>summary{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border:1px solid #41474e;background:#1b1f23;color:#d7dce0;cursor:pointer;font-size:12px;font-weight:650;text-transform:none;letter-spacing:normal}.control-popover>summary:hover,.control-popover[open]>summary{background:#252a30;border-color:#59616a}.control-popover-body{position:absolute;right:0;top:calc(100% + 6px);z-index:12;display:grid;gap:10px;min-width:270px;padding:12px;background:#171a1d;border:1px solid var(--line-strong);box-shadow:0 12px 28px rgba(0,0,0,.34)}.control-popover-body>label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.control-popover-body .check-field{display:flex;flex-direction:row;align-items:center;gap:7px;color:#c8ced4;text-transform:none;letter-spacing:normal;font-size:12px}
.segmented-actions{display:flex;align-items:center;gap:0}.segmented-actions .button{border-right-width:0}.segmented-actions .button:last-child{border-right-width:1px}

.results-tabs{position:sticky;top:56px;z-index:8;background:var(--bg);padding-top:4px}.results-panel-heading{align-items:center}.results-chart-wrap{min-height:420px}.chart-empty{display:grid;place-items:center;height:100%;color:var(--muted);text-align:center;padding:30px}.chart-empty.hidden{display:none}
.combo-workspace{display:grid;grid-template-columns:1fr;gap:0}.combo-summary-pane,.combo-detail-pane{min-width:0}.combo-detail-pane{border-top:1px solid var(--line-strong);background:#16191c}.subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--line)}.subsection-heading>div{display:grid;gap:2px}.subsection-heading strong{font-size:14px}.subsection-heading span{color:var(--muted);font-size:11px}.combo-detail-heading{align-items:end}.combo-selector{min-width:min(520px,48vw)}.combo-summary-chart{height:520px;padding:12px 14px}.combo-detail-chart{height:560px;padding:12px 14px}.combo-detail-controls{border-top:0}.combo-selected-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 16px;border-bottom:1px solid var(--line);background:#182431}.combo-selected-summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combo-selected-summary span{color:var(--muted);font-size:11px;white-space:nowrap}.clickable-row{cursor:pointer}.clickable-row:hover td,.clickable-row:focus td{background:#202831!important}.clickable-row:focus{outline:0}

.settings-layout{align-items:start}.settings-tools{padding:0;overflow:visible}.settings-tools>.card-head{padding:16px;margin:0;border-bottom:1px solid var(--line)}.settings-list{display:grid}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid #2b3035;color:var(--text);text-decoration:none}.settings-row:hover{background:#1d2227;text-decoration:none;color:#fff}.settings-row>span:first-child{display:grid;gap:3px}.settings-row small{color:var(--muted);font-weight:400}.settings-action-block{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line)}.settings-action-block p{margin:3px 0 0}.compact-disclosure{padding:0}.compact-disclosure>summary{padding:12px 16px;cursor:pointer;color:#cfd4d8;font-weight:650}.compact-disclosure>summary:hover{background:#1d2227}.compact-disclosure>*:not(summary){margin-left:16px;margin-right:16px}

.filter-bar-auto{align-items:center}.filter-bar-auto label{align-self:end}.filter-clear{align-self:center;margin-left:auto;white-space:nowrap}.subtle-link{color:var(--muted);font-size:12px;text-decoration:none}.subtle-link:hover{color:var(--text)}

.profile-editor.disclosure-card .disclosure-body{padding:16px}.profile-editor.disclosure-card form{margin-top:12px}

@media(max-width:900px){
  .page-heading{align-items:stretch}.page-actions{justify-content:flex-start}.combo-detail-heading{align-items:stretch;flex-direction:column}.combo-selector{min-width:0;width:100%}.combo-selected-summary{align-items:flex-start;flex-direction:column}.combo-selected-summary span{white-space:normal}.settings-action-block{align-items:flex-start;flex-direction:column}.control-popover-body{right:auto;left:0}
}
@media(max-width:600px){
  .page-heading{flex-direction:column}.page-actions{width:100%}.page-actions>.button{flex:1}.action-menu{flex:0 0 auto}.control-strip>label{min-width:calc(50% - 6px)}.control-popover{width:100%}.control-popover>summary{width:100%}.control-popover-body{position:static;margin-top:6px;width:100%;box-shadow:none}.segmented-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:5px}.segmented-actions .button{border-right-width:1px}.combo-summary-chart,.combo-detail-chart{height:470px}}
.builder-note{margin:0 0 14px;padding:9px 12px;border-left:3px solid #4f6578;background:#151a1f;color:#cbd1d6;font-size:12px}.builder-note strong{color:#edf0f2}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-advanced{margin-top:14px;border-top:1px solid var(--line)}.inline-advanced>summary{padding:11px 0 0;cursor:pointer;color:#cbd1d6;font-weight:650}.inline-advanced>summary:hover{color:#fff}.top-gap{margin-top:10px}.primary-run-settings{align-items:end}
@media(max-width:820px){.form-grid.three{grid-template-columns:1fr}.choice-grid.three{grid-template-columns:1fr}.submit-bar{position:static;align-items:stretch;flex-direction:column}.submit-bar .button-row{display:grid;grid-template-columns:1fr 1fr}.submit-bar .button{width:100%}}
@media(max-width:520px){.submit-bar .button-row{grid-template-columns:1fr}}


/* v1.15: viewport-level popovers, sortable roster, compact ilvl filter */
.popover-portal{position:fixed!important;right:auto!important;bottom:auto!important;z-index:1200!important;box-sizing:border-box;max-width:calc(100vw - 16px)}
.sortable-table th{padding:0}.sortable-table th.check-col{padding:9px 11px}.sort-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;color:#b6bcc3;text-decoration:none;white-space:nowrap}.sort-header:hover,.sort-header.active{color:#eef2f5;background:#252a2f;text-decoration:none}.sort-indicator{color:#69737c;font-size:10px}.sort-header.active .sort-indicator{color:var(--accent)}
.min-ilvl-field{min-width:100px;max-width:125px}.min-ilvl-field input{min-width:0}
@media(max-width:700px){.min-ilvl-field{max-width:none;min-width:110px}.popover-portal{max-width:calc(100vw - 16px)!important}}

/* v1.16: guild profiles, inline /simc, stable table cells, icon-rich selectors */
.table-wrap td.actions{display:table-cell;white-space:nowrap;text-align:right}
.table-wrap td.actions .autosave-status{margin-right:7px}
.guild-switcher{margin-left:auto;display:flex;align-items:center}.guild-switcher select{min-height:32px;max-width:240px;padding:5px 28px 5px 9px;background:#15191d;border-color:#3b4249;font-size:12px}.guild-switcher-empty{margin-left:auto;color:#8bc0e6;font-size:12px;font-weight:700}.sr-only{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}
.guild-profiles-card{margin-bottom:14px}.guild-profile-list{display:grid;gap:8px}.guild-profile-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid var(--line);background:#171b1f}.guild-profile-row.is-active{border-color:#456c88;background:#172027}.guild-profile-form{min-width:0}.guild-profile-title{display:flex;align-items:center;gap:8px;margin-bottom:9px}.guild-profile-title .autosave-status{margin-left:auto}.guild-grid{grid-template-columns:minmax(150px,1.1fr) 110px minmax(160px,1fr) minmax(160px,1fr) 100px}.guild-profile-actions{display:flex;align-items:flex-start;gap:6px}.active-guild-banner{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:8px;padding:9px 12px;margin-bottom:12px;border:1px solid #35556b;background:#141d23}.active-guild-banner>span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.active-guild-banner>small{color:var(--muted)}
.profile-cell{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-profile-button{border:0;background:transparent;padding:0;cursor:pointer}.profile-paste-area{min-height:330px;resize:vertical}.modal-wide{width:min(900px,calc(100vw - 32px))}
.rich-item-select{position:relative;min-width:220px}.rich-item-select>select[data-rich-native]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rich-item-trigger{min-height:38px;display:flex;align-items:center;padding:5px 9px;border:1px solid #444b52;background:#111417;cursor:pointer;outline:none}.rich-item-trigger:focus{border-color:#5b7388}.rich-item-trigger .item-link-wrap{pointer-events:auto}.rich-item-menu{position:fixed;z-index:10020;width:min(440px,calc(100vw - 24px));max-height:min(460px,70vh);overflow:auto;padding:5px;background:#15191d;border:1px solid #4a525a;box-shadow:0 16px 36px rgba(0,0,0,.45)}.rich-item-option{display:flex;align-items:center;min-height:38px;padding:5px 7px;cursor:pointer;border:1px solid transparent}.rich-item-option:hover,.rich-item-option:focus,.rich-item-option[aria-selected="true"]{background:#23292f;border-color:#38414a;outline:none}.rich-item-option .item-link-wrap{pointer-events:auto}.rich-item-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.rich-item-copy>small{color:var(--muted);font-size:.76rem;line-height:1.25;white-space:normal}.item-icon-placeholder{width:28px;height:28px;display:inline-block;margin-right:7px;border:1px solid #3b4249;background:#0f1214}.result-item{display:inline-flex;align-items:center;gap:6px}.result-item .trinket-item-icon{width:22px;height:22px;flex-basis:22px}.result-item-link{color:var(--wow-epic);font-weight:650;text-decoration:none}.result-item-link:visited{color:var(--wow-epic)}.result-item-link:hover{color:var(--wow-epic-hover)}.combo-item-pair{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.combo-plus{color:var(--muted);padding:0 2px}.chart-icon-registry{position:absolute;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:980px){.guild-grid{grid-template-columns:1fr 1fr}.guild-profile-row{grid-template-columns:1fr}.guild-profile-actions{justify-content:flex-end}.guild-switcher{order:3;width:100%;margin:6px 0 0}.guild-switcher select{max-width:none;width:100%}}
.table-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}

/* SimulationCraft updater status. Kept compact so it remains useful on every
   authenticated page without competing with primary navigation. */
.simc-update-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 8px;border:1px solid #394047;background:#191d21;color:#aeb7bf;font-size:11px;font-weight:700;white-space:nowrap}
.simc-update-countdown{padding-left:7px;border-left:1px solid #343b42;color:#7f8a93;font-variant-numeric:tabular-nums;font-weight:650}
.simc-update-dot{width:7px;height:7px;border-radius:50%;background:#6f7b84;flex:0 0 auto}
.simc-update-updated .simc-update-dot,.simc-update-up_to_date .simc-update-dot{background:#53b175}
.simc-update-building .simc-update-dot,.simc-update-fetching .simc-update-dot,.simc-update-checking .simc-update-dot,.simc-update-activating .simc-update-dot{background:#d9a441;animation:simc-pulse 1.2s ease-in-out infinite}
.simc-update-waiting_for_idle{border-color:#6d5b2f;color:#e4c774}.simc-update-waiting_for_idle .simc-update-dot{background:#e4b847}
.simc-update-failed{border-color:#6d3535;color:#e08b8b}.simc-update-failed .simc-update-dot{background:#d35b5b}
@keyframes simc-pulse{0%,100%{opacity:.45}50%{opacity:1}}
@media(max-width:1100px){.simc-update-pill{display:none}}

/* Simulation pre-submit profile refresh progress */
.sim-refresh-progress{margin-top:14px;margin-bottom:14px}.sim-refresh-progress[hidden]{display:none}.sim-refresh-progress .progress{height:12px}.sim-refresh-progress .error-text:empty{display:none}

/* Compact skip diagnostics: collapsed by default so robust jobs stay readable. */
.skip-details{margin-top:10px;border-top:1px solid var(--line)}
.skip-details[hidden]{display:none}
.skip-details>summary{display:flex;align-items:center;gap:8px;width:max-content;padding:9px 0 2px;color:var(--muted);font-size:12px;font-weight:700;cursor:pointer;user-select:none}
.skip-details>summary:hover{color:var(--text)}
.skip-details-list{display:grid;gap:6px;margin-top:8px;padding:9px 11px;border:1px solid #3f3a2c;background:#191814}
.skip-detail-row{display:grid;grid-template-columns:minmax(110px,180px) minmax(0,1fr) auto;gap:10px;align-items:start;font-size:12px}
.skip-detail-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e4e7e9}
.skip-detail-reason{color:#bdc3c8;overflow-wrap:anywhere}
.skip-detail-count{color:var(--muted);font-size:11px;white-space:nowrap}
@media(max-width:700px){.skip-detail-row{grid-template-columns:1fr}.skip-detail-count{white-space:normal}}

/* Results: realm-aware multi-character comparison on the Trinket tab. */
.character-compare-popover>.character-compare-body{min-width:380px;max-width:min(440px,calc(100vw - 32px));gap:9px}
.character-compare-search{min-width:0!important}
.character-compare-search input{width:100%;min-height:34px}
.character-compare-actions{display:grid;grid-template-columns:auto 1fr auto;gap:6px}
.character-compare-actions .button{min-height:32px;padding:5px 8px;white-space:nowrap}
.character-compare-list{max-height:320px;overflow:auto;border:1px solid #30363c;background:#111417}
.character-compare-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;border-bottom:1px solid #262b30;cursor:pointer;text-transform:none;letter-spacing:normal;font-size:12px;font-weight:500}
.character-compare-row:last-child{border-bottom:0}
.character-compare-row:hover{background:#191e23}
.character-compare-row:has(input:checked){background:#17202a}
.character-compare-row input{width:15px;height:15px;margin:0}
.character-compare-row .player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}
.character-compare-row small{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px;font-weight:400}
.character-compare-status{min-height:16px;font-size:11px}
@media(max-width:520px){.character-compare-popover>.character-compare-body{min-width:0;max-width:none}.character-compare-actions{grid-template-columns:1fr 1fr}.character-compare-actions [data-trinket-characters-visible]{grid-column:1/-1;grid-row:1}.character-compare-row small{max-width:100px}}
.character-compare-row[hidden]{display:none}

/* Results decision views: loot priority + roster heatmap */
.loot-priority-view{background:#14171a}
.loot-priority-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line)}
.loot-priority-stat{display:grid;gap:5px;padding:14px 16px;border-right:1px solid var(--line);min-width:0}
.loot-priority-stat:last-child{border-right:0}.loot-priority-stat span{color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.loot-priority-stat strong{font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loot-priority-note{padding:9px 16px;border-bottom:1px solid var(--line);font-size:11px}.loot-priority-table-wrap{max-height:620px;overflow:auto}.loot-priority-table{margin:0}.loot-priority-table th{position:sticky;top:0;z-index:2;background:#171b1f}.loot-priority-table td,.loot-priority-table th{white-space:nowrap}.loot-priority-table .loot-rank{font-weight:800;color:#d3d8dd;font-variant-numeric:tabular-nums}.loot-priority-table tr.loot-priority-top td{background:#1a2227}.loot-priority-table tr.loot-priority-top:hover td{background:#222c32}
.heatmap-summary{padding:9px 16px;border-bottom:1px solid var(--line);background:#14171a;font-size:11px}.heatmap-controls .heatmap-find-field input{min-width:150px}.heatmap-help{max-width:260px;margin:4px 0 0;font-size:10px;line-height:1.45}.heatmap-scrollbar-top{height:17px;overflow-x:auto;overflow-y:hidden;background:#111417;border-bottom:1px solid var(--line);scrollbar-gutter:stable}.heatmap-scrollbar-top[hidden]{display:none!important}.heatmap-scrollbar-top>div{height:1px}.heatmap-wrap{position:relative;max-height:72vh;min-height:360px;overflow:auto;background:#111417;scrollbar-gutter:stable}.results-heatmap{--heatmap-col-width:112px;--heatmap-player-width:190px;--heatmap-cell-pad:7px 8px;--heatmap-font-size:11px;width:max-content;min-width:0;margin:0;border-collapse:separate;border-spacing:0}.results-heatmap[data-density="dense"]{--heatmap-col-width:88px;--heatmap-cell-pad:6px 6px;--heatmap-font-size:10px}.results-heatmap[data-density="comfortable"]{--heatmap-col-width:148px;--heatmap-cell-pad:9px 10px;--heatmap-font-size:11px}.results-heatmap th,.results-heatmap td{border-right:1px solid #30353a;border-bottom:1px solid #30353a}.results-heatmap thead th{position:sticky;top:0;z-index:5;background:#171b1f;box-shadow:0 1px 0 #3a4148}.results-heatmap .heatmap-player-head{left:0;z-index:8;box-sizing:border-box;width:var(--heatmap-player-width);min-width:var(--heatmap-player-width);max-width:var(--heatmap-player-width);text-align:left}.results-heatmap .heatmap-player-cell{position:sticky;left:0;z-index:4;box-sizing:border-box;width:var(--heatmap-player-width);min-width:var(--heatmap-player-width);max-width:var(--heatmap-player-width);padding:var(--heatmap-cell-pad);overflow:hidden;text-overflow:ellipsis;background:#161a1e;text-align:left;white-space:nowrap;box-shadow:1px 0 0 #3a4148}.results-heatmap .heatmap-trinket-head{box-sizing:border-box;width:var(--heatmap-col-width);min-width:var(--heatmap-col-width);max-width:var(--heatmap-col-width);padding:7px 7px 6px;vertical-align:bottom;text-align:left;cursor:pointer}.heatmap-item{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:6px;min-width:0}.heatmap-item .trinket-item-icon{width:22px;height:22px}.heatmap-item-link{display:-webkit-box;overflow:hidden;color:#f000ff;text-decoration:none;font-weight:700;line-height:1.15;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-break:break-word}.heatmap-item-link:hover{text-decoration:underline}.results-heatmap[data-density="dense"] .heatmap-item{grid-template-columns:18px minmax(0,1fr);gap:4px}.results-heatmap[data-density="dense"] .heatmap-item .trinket-item-icon{width:18px;height:18px}.results-heatmap[data-density="dense"] .heatmap-item-link{font-size:10px;-webkit-line-clamp:2}.results-heatmap .heatmap-trinket-head small{display:block;margin-top:4px;color:var(--muted);font-size:9px;font-weight:500;white-space:nowrap}.heatmap-cell{box-sizing:border-box;width:var(--heatmap-col-width);min-width:var(--heatmap-col-width);max-width:var(--heatmap-col-width);padding:var(--heatmap-cell-pad);text-align:right;font-size:var(--heatmap-font-size);font-weight:750;font-variant-numeric:tabular-nums;color:#f1f4f6;white-space:nowrap;transition:filter .08s ease,outline-color .08s ease}.results-heatmap tbody tr:hover>.heatmap-cell,.results-heatmap tbody tr:hover>.heatmap-player-cell{filter:brightness(1.12)}.heatmap-cell:hover{outline:1px solid #b7c1ca;outline-offset:-1px}.heatmap-col-focus{filter:brightness(1.13);outline:1px solid rgba(202,214,224,.52);outline-offset:-1px}.heatmap-trinket-head.heatmap-col-focus{background:#232a30}.heatmap-col-locked{outline:2px solid #7faed0!important;outline-offset:-2px}.heatmap-trinket-head.heatmap-col-locked{background:#26333c}.heatmap-find-match{outline:2px solid #d7b457!important;outline-offset:-2px}.heatmap-missing{background:#14171a!important;color:#5f6870;text-align:center;font-weight:500}.heatmap-wrap>.empty-state:not([hidden]){min-height:360px;display:grid;place-items:center}.heatmap-wrap>.empty-state[hidden]{display:none!important}
@media(max-width:800px){.loot-priority-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.loot-priority-stat:nth-child(2){border-right:0}.loot-priority-stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.results-heatmap{--heatmap-player-width:150px;--heatmap-col-width:102px}.results-heatmap[data-density="dense"]{--heatmap-col-width:82px}.results-heatmap[data-density="comfortable"]{--heatmap-col-width:132px}.heatmap-controls .heatmap-find-field input{min-width:120px}}


/* Result table sorting + heatmap trinket-header sorting */
table[data-click-sort] thead th[data-sort-type]{cursor:pointer;user-select:none;padding-right:25px;position:sticky}
table[data-click-sort] thead th[data-sort-type]::after{content:'↕';position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#65717b;font-size:10px;font-weight:800;opacity:.55}
table[data-click-sort] thead th[data-sort-type]:hover{background:#22282d;color:#eef2f5}
table[data-click-sort] thead th[data-sort-type]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
table[data-click-sort] thead th[data-sort-type][aria-sort="ascending"]::after{content:'▲';color:var(--accent);opacity:1}
table[data-click-sort] thead th[data-sort-type][aria-sort="descending"]::after{content:'▼';color:var(--accent);opacity:1}
.heatmap-item{grid-template-columns:22px minmax(0,1fr) 14px}
.results-heatmap[data-density="dense"] .heatmap-item{grid-template-columns:18px minmax(0,1fr) 12px}
.heatmap-wowhead-link{display:inline-grid;place-items:center;align-self:start;width:14px;height:14px;margin-top:1px;color:#77838d;text-decoration:none;font-size:11px;font-weight:800;line-height:1;border-radius:2px}
.heatmap-wowhead-link:hover,.heatmap-wowhead-link:focus-visible{color:#d8e2ea;background:#2a3137;text-decoration:none}
.heatmap-trinket-head.heatmap-sort-active{background:#26333c;box-shadow:inset 0 -2px 0 #7faed0,0 1px 0 #3a4148}
.heatmap-trinket-head.heatmap-sort-active small{color:#c7d9e6;font-weight:750}
/* Realm slugs stay lowercase internally for Blizzard/API identity, but realm names are
   rendered in title case throughout the UI (e.g. Twisting-Nether). */
.realm-name, .realm-input { text-transform: capitalize; }


/* New Simulation: visible saved selection + one-off custom character scope. */
.choice-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.sim-selected-preview,.sim-custom-selector{margin-top:12px;border:1px solid #333a40;background:#13171a}
.sim-selected-preview[hidden],.sim-custom-selector[hidden],.sim-ranks[hidden]{display:none!important}
.sim-selection-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #30363c;background:#171b1f}
.sim-selection-head>div{min-width:0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.sim-selection-head strong{font-size:13px}.sim-selection-head .muted{font-size:11px;font-weight:500}
.sim-selected-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));max-height:190px;overflow:auto}
.sim-selected-row{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:7px 10px;border-right:1px solid #292f34;border-bottom:1px solid #292f34;min-width:0}
.sim-selected-row .player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750}
.sim-selected-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}
.sim-selection-empty{margin:0;padding:11px 12px}
.sim-custom-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;padding:10px 12px;border-bottom:1px solid #30363c}
.sim-custom-search{min-width:0}.sim-custom-search input{min-height:34px}
.sim-custom-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.sim-custom-actions .button{min-height:34px}
.sim-custom-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));max-height:390px;overflow:auto;background:#111417}
.sim-custom-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;border-right:1px solid #262c31;border-bottom:1px solid #262c31;cursor:pointer;text-transform:none;letter-spacing:normal;font-size:12px;font-weight:500;min-width:0}
.sim-custom-row:hover{background:#191e23}.sim-custom-row:has(input:checked){background:#17222b}.sim-custom-row[hidden]{display:none}
.sim-custom-row input{width:15px;height:15px;margin:0}.sim-custom-row .player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:750}
.sim-custom-row small{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px;font-weight:400}
.sim-custom-status{min-height:30px;padding:8px 12px;border-top:1px solid #30363c;font-size:11px}
@media(max-width:1150px){.choice-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.choice-grid.four{grid-template-columns:1fr}.sim-custom-toolbar{grid-template-columns:1fr}.sim-custom-actions{justify-content:stretch}.sim-custom-actions .button{flex:1}.sim-custom-list,.sim-selected-list{grid-template-columns:1fr}.sim-custom-row small{max-width:110px}}

/* New Simulation: browser-private trinket picker and upgrade-track levels */
.step-number-inline{position:static;display:inline-grid;margin-right:7px;vertical-align:middle}
.sim-trinket-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 150px minmax(260px,360px);align-items:end;gap:10px}
.sim-trinket-toolbar label{min-width:0}.sim-trinket-toolbar input,.sim-trinket-toolbar select{min-height:36px}
.sim-trinket-actions{align-items:center;margin:10px 0}.sim-trinket-actions [data-sim-trinket-status]{margin-left:auto;font-size:11px}
.sim-trinket-list{display:grid;max-height:470px;overflow:auto;border:1px solid #30363c;background:#111417}
.sim-trinket-row{display:grid;grid-template-columns:minmax(240px,1fr) 82px minmax(250px,1.15fr) minmax(255px,340px) 72px;align-items:center;gap:10px;padding:7px 9px;border-bottom:1px solid #262c31;min-width:0}
.sim-trinket-meta{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:.78rem;line-height:1.25;color:#aeb8bf}.sim-trinket-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sim-trinket-meta strong{color:#d9e0e5;font-weight:600}
.sim-trinket-row:last-child{border-bottom:0}.sim-trinket-row:hover{background:#171c20}.sim-trinket-row.is-selected{background:#17222b}.sim-trinket-row[hidden]{display:none}
.sim-trinket-check{display:flex;align-items:center;gap:8px;min-width:0;text-transform:none;letter-spacing:normal}.sim-trinket-check input{width:16px;height:16px;margin:0;flex:0 0 auto}
.sim-trinket-check .item-link-wrap{min-width:0;display:flex;align-items:center;gap:6px}.sim-trinket-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sim-trinket-ilvl select{width:100%;min-height:34px}.sim-trinket-advanced{font-size:10px;color:var(--muted);text-align:right}.sim-trinket-advanced:hover{color:var(--text)}
.source-badge{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Simulation job: immutable configuration snapshot */
.simulation-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.simulation-summary-grid>div{display:grid;gap:2px;padding:10px;background:#14171a;border:1px solid #2d3237}.simulation-summary-grid span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.simulation-summary-grid strong{font-size:14px;overflow-wrap:anywhere}.simulation-summary-grid small{font-size:10px;color:var(--muted)}
.simulation-summary-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.simulation-summary-details details{border:1px solid #30363c;background:#111417}.simulation-summary-details summary{padding:9px 10px;cursor:pointer;font-weight:700}.simulation-summary-list,.simulation-summary-character-list{max-height:270px;overflow:auto;border-top:1px solid #30363c}.simulation-summary-list>div,.simulation-summary-character-list>div{display:flex;justify-content:space-between;gap:10px;padding:6px 9px;border-bottom:1px solid #252b30;font-size:11px}.simulation-summary-list span,.simulation-summary-character-list small{color:var(--muted);white-space:nowrap}.simulation-summary-character-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto}.simulation-summary-character-list .player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.sim-trinket-toolbar{grid-template-columns:1fr 140px}.sim-global-ilvl{grid-column:1/-1}.sim-trinket-row{grid-template-columns:minmax(220px,1fr) 70px minmax(230px,1fr) minmax(210px,280px)}.sim-trinket-advanced{display:none}.simulation-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.sim-trinket-toolbar{grid-template-columns:1fr}.sim-global-ilvl{grid-column:auto}.sim-trinket-row{grid-template-columns:minmax(0,1fr) minmax(190px,1fr)}.sim-trinket-row .source-badge{display:none}.sim-trinket-meta{grid-column:1/-1}.sim-trinket-ilvl{grid-column:2}.sim-trinket-actions [data-sim-trinket-status]{width:100%;margin-left:0}.simulation-summary-grid,.simulation-summary-details{grid-template-columns:1fr}}

/* Results: make trinkets omitted by the current character-result view discoverable. */
.results-hidden-trinkets{position:relative;display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin:0 16px 10px;padding:5px 8px;border:1px solid #4a4430;background:#1a1812;color:#d7c77f;font-size:10px;font-weight:750;line-height:1.25;cursor:help}
.results-hidden-trinkets[hidden]{display:none!important}
.results-hidden-trinkets:focus{outline:2px solid #8d7b3d;outline-offset:2px}
.results-hidden-trinkets-tooltip{position:absolute;z-index:40;left:0;top:calc(100% + 6px);display:none;width:max-content;min-width:250px;max-width:min(460px,calc(100vw - 48px));max-height:340px;overflow:auto;padding:9px 11px;border:1px solid #50575e;background:#0e1114;color:#d9dde0;box-shadow:0 10px 28px rgba(0,0,0,.45);font-size:11px;font-weight:500;line-height:1.45;white-space:pre-line;text-align:left}
.results-hidden-trinkets:hover .results-hidden-trinkets-tooltip,.results-hidden-trinkets:focus .results-hidden-trinkets-tooltip{display:block}

/* v1.18: compact, progressive-disclosure interface + private account controls */
.topbar{height:50px;gap:12px;padding:0 max(14px,calc((100vw - 1320px)/2))}
.brand{gap:8px;font-size:14px}.brand-mark{width:28px;height:28px}
.nav{margin-left:auto}.nav>a,.link-button{padding:0 10px;font-size:13px}
.guild-switcher{margin-left:4px}.guild-switcher select{min-height:30px;max-width:190px;padding-top:4px;padding-bottom:4px}
.simc-update-pill{min-height:26px;padding:3px 6px;font-size:10px}
.page-shell{width:min(1320px,calc(100% - 28px));margin:20px auto 52px}
.page-heading{margin-bottom:14px}.page-heading h1{font-size:26px;margin-bottom:4px}.compact-heading{margin-bottom:12px}
.card{padding:15px;margin-bottom:12px}.card-head{gap:12px;margin-bottom:10px}.card h2{font-size:17px;margin-bottom:9px}
.grid{gap:12px}.stat-grid{gap:9px;margin-bottom:12px}.stat-card{padding:11px 12px}.stat-card strong{font-size:23px}
.button{min-height:32px;padding:6px 10px}.button-small{min-height:28px;padding:4px 8px}
input,select,textarea{min-height:34px;padding:6px 8px}.form-grid{gap:9px}.form-card>label,.form-card>.form-grid{margin-bottom:10px}
.filter-bar{gap:8px;padding:9px;margin-bottom:10px}.table-wrap th{padding:7px 9px}.table-wrap td{padding:8px 9px}
.empty-state{padding:20px}.compact-empty{padding:16px}
.settings-tools>.card-head{padding:13px 14px}.settings-row{padding:11px 14px}.settings-action-block{padding:11px 14px}.compact-disclosure>summary{padding:10px 14px}

/* Guilds stay scannable; editing is available without keeping every field open. */
.guild-profiles-card{margin-bottom:12px}.guild-profile-list{gap:6px}
.guild-profile-row{display:block;padding:0;border:1px solid var(--line);background:#15191d}
.guild-profile-row.is-active{border-color:#456c88;background:#151d23}
.guild-profile-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px}
.guild-profile-copy{min-width:0;display:grid;gap:3px}.guild-profile-name{display:flex;align-items:center;gap:7px;min-width:0}.guild-profile-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guild-profile-meta{display:flex;align-items:center;gap:0;flex-wrap:wrap;color:var(--muted);font-size:11px}.guild-profile-meta span+span::before{content:'·';padding:0 6px;color:#5f6870}
.guild-profile-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}
.guild-profile-editor{border-top:1px solid #2b3136}.guild-profile-editor>summary{list-style:none;padding:8px 11px;color:#aeb7bf;font-size:11px;font-weight:700;cursor:pointer;user-select:none}.guild-profile-editor>summary::-webkit-details-marker{display:none}.guild-profile-editor>summary::before{content:'›';display:inline-block;margin-right:7px;color:#74808a;transition:transform .12s ease}.guild-profile-editor[open]>summary::before{transform:rotate(90deg)}.guild-profile-editor>summary:hover{background:#1b2024;color:#eef2f5}
.guild-profile-form{padding:10px 11px 12px;background:#111518}.guild-editor-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:11px}.guild-grid{grid-template-columns:minmax(150px,1.1fr) 105px minmax(145px,1fr) minmax(145px,1fr) 90px}

/* Password-only account controls are intentionally one disclosure, not another permanent panel. */
.account-access{padding:0;scroll-margin-top:64px}.account-access-body{display:grid;gap:12px}.account-note{padding:9px 11px;border-left:3px solid var(--accent);background:#141a1f;color:#c7ced4;font-size:12px}.account-grid{align-items:start}.account-panel{min-width:0;padding:12px;border:1px solid #30363c;background:#13171a}.account-panel-accent{border-color:#36556b;background:#141c22}.account-panel h3{margin:0 0 8px;font-size:14px}.account-panel p{margin:0 0 10px}.stack-form{display:grid;gap:8px}.stack-form+.stack-form{margin-top:13px;padding-top:13px;border-top:1px solid #2e3439}.stack-form .button{justify-self:start}.field-help{color:var(--muted);font-size:10px;font-weight:500}.summary-meta>span:first-child{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.button:disabled{opacity:.45;cursor:not-allowed}

/* Login copy is shorter and calmer despite supporting multiple private accounts. */
.login-card{width:min(390px,100%);padding:21px}.login-brand{margin-bottom:17px}.login-card h1{font-size:23px}.login-card label{margin:14px 0}

@media(max-width:1180px){.simc-update-pill{display:none}.brand-name{display:none}}
@media(max-width:980px){
  .topbar{height:50px;flex-wrap:wrap}.nav{top:50px}.guild-switcher{order:3;width:100%;margin:5px 0 0}.guild-switcher select{max-width:none;width:100%}
  .guild-grid{grid-template-columns:1fr 1fr}.guild-profile-summary{align-items:flex-start}.guild-profile-meta{max-width:680px}
}
@media(max-width:620px){
  .page-shell{width:min(100% - 18px,1320px);margin-top:14px}.card{padding:12px}.topbar{padding:0 9px}.nav{top:50px}
  .guild-profile-summary{align-items:flex-start}.guild-profile-meta{display:grid;gap:2px}.guild-profile-meta span+span::before{display:none}.guild-profile-actions{margin-left:auto}.guild-grid{grid-template-columns:1fr}
  .account-grid{grid-template-columns:1fr}.stack-form .button{width:100%}
}
/* Keep the compact header on one row on tablet/mobile; the menu owns the second layer. */
@media(max-width:980px){
  .topbar{flex-wrap:nowrap}
  .guild-switcher{order:0;width:auto;max-width:min(44vw,240px);margin-left:0}
  .guild-switcher select{width:auto;max-width:100%}
  .guild-switcher-empty{margin-left:0;white-space:nowrap}
  .nav-toggle{margin-left:auto}
}
@media(max-width:620px){
  .guild-switcher{max-width:46vw}.guild-switcher select{font-size:11px}
}

/* Admin settings layout: consistent section gutters, form baselines, and responsive grids. */
.settings-layout{align-items:stretch;margin-bottom:12px}
.settings-layout>.card{height:100%;margin-bottom:0}
.settings-tools{height:100%}

.admin-section{padding:0;overflow:visible}
.admin-section>.admin-section-head{padding:14px 16px;margin:0;border-bottom:1px solid var(--line);align-items:center}
.admin-section>.admin-section-head h2{margin:1px 0 2px}
.admin-section>.admin-section-head .muted{margin:2px 0 0;max-width:760px}
.admin-section-body{display:grid;gap:12px;padding:14px 16px 16px}

.admin-credential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.admin-form-panel{min-width:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding:13px;border:1px solid #30363c;background:#13171a}
.admin-form-panel-accent{border-color:#36556b;background:#141c22}
.admin-form-panel h3{margin:0 0 4px;font-size:14px;line-height:1.3}
.admin-form-panel>p{margin:0 0 10px;min-height:2.9em}
.admin-form-panel .stack-form{display:flex;flex-direction:column;gap:8px;height:100%}
.admin-form-panel .stack-form .button{align-self:flex-start;margin-top:auto}

.admin-account-list,.admin-guild-list{margin:0}
.admin-account-list .guild-profile-summary,.admin-guild-list .guild-profile-summary{min-height:52px}
.admin-account-list .guild-profile-actions form{margin:0}
.admin-account-editor{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,.85fr);gap:12px;padding:12px;background:#111518}
.admin-account-edit-form{align-content:start}
.field-label-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}
.admin-account-edit-form .button{justify-self:start}
.admin-danger-panel{display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-width:0;padding:12px;border:1px solid #55353a;border-left:3px solid #8b464f;background:#1d1517}
.admin-danger-panel p{margin:4px 0 0}
.admin-danger-panel .button{align-self:flex-start}

/* Six guild fields = six deliberate columns on wide admin screens. */
.admin-guild-list .guild-profile-form{padding:12px}
.admin-guild-list .guild-grid{grid-template-columns:minmax(170px,1.2fr) minmax(160px,1fr) 110px minmax(160px,1fr) minmax(160px,1fr) 92px;gap:10px;align-items:start}
.admin-guild-list .guild-grid>label{min-width:0;align-content:start}
.admin-guild-list .guild-grid input,.admin-guild-list .guild-grid select{min-width:0}
.admin-guild-list .guild-editor-head{margin-bottom:10px}

.admin-add-guild-form{display:grid;gap:10px}
.admin-add-guild-form>.card-head{margin-bottom:2px}
.admin-add-guild-form>label,.admin-add-guild-form>.form-grid{margin:0}
.admin-add-guild-form>.button{margin-top:2px}

@media(max-width:1100px){
  .admin-guild-list .guild-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .admin-credential-grid{grid-template-columns:1fr}
  .admin-form-panel>p{min-height:0}
  .admin-account-editor{grid-template-columns:1fr}
  .admin-danger-panel .button{width:100%}
}
@media(max-width:700px){
  .settings-layout{grid-template-columns:1fr}
  .admin-section>.admin-section-head{flex-direction:column;align-items:stretch}
  .admin-section>.admin-section-head>.button{width:100%}
  .admin-section-body{padding:10px}
  .admin-guild-list .guild-grid{grid-template-columns:1fr}
  .admin-form-panel .stack-form .button,.admin-account-edit-form .button{width:100%}
}

/* v1.19: section workspaces reduce long-page scrolling without removing controls. */
.compact-page-heading{margin-bottom:10px}
.settings-workspace,.sim-step-workspace{scroll-margin-top:62px}
.workspace-tabs{position:sticky;top:50px;z-index:12;margin:0 0 12px;background:#14181b;box-shadow:0 5px 12px rgba(0,0,0,.18);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.workspace-tabs .tab-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px;white-space:nowrap}
.workspace-tabs .tab-button small{display:inline-grid;place-items:center;min-width:20px;height:18px;padding:0 5px;border-radius:9px;background:#2c3339;color:#aeb7bf;font-size:10px;font-weight:800}
.workspace-tabs .tab-button.active small{background:#315a78;color:#e9f4fc}
.workspace-panel{min-width:0}
.workspace-panel>.card:last-child{margin-bottom:0}
.settings-primary-card{max-width:1040px}
.settings-default-grid{align-items:start}
.guild-access-card{margin-bottom:12px}
.section-divider{display:flex;align-items:center;gap:10px;margin:2px 0 0;color:#8d969e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.section-divider::before,.section-divider::after{content:'';height:1px;flex:1;background:#30363b}

.sim-step-tabs .tab-button{min-width:132px}
.tab-step-number{display:grid;place-items:center;width:21px;height:21px;border:1px solid #4b555e;background:#20262b;color:#cbd2d8;font-size:10px;font-weight:850}
.sim-step-tabs .tab-button.active .tab-step-number{border-color:#5d9bd2;background:#2e628b;color:#fff}
.sim-step-panel>.card,.sim-step-panel>details.card{margin-bottom:12px}
.sim-step-panel>details.card[open]>.disclosure-summary{border-bottom:1px solid #30363b}
.step-tab-actions{display:flex;justify-content:flex-end;gap:8px;margin:2px 0 0}
.step-tab-actions .button:first-child:not(:only-child){margin-right:auto}
.step-tab-actions-before-submit{margin-bottom:10px}
.sim-step-panel .submit-bar{margin-bottom:0}

@media(max-width:900px){
  .settings-default-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-tabs{margin-left:-2px;margin-right:-2px}
  .workspace-tabs .tab-button{min-width:max-content;flex:1}
}
@media(max-width:620px){
  .workspace-tabs{top:50px;margin-left:-9px;margin-right:-9px;padding-left:9px;padding-right:9px}
  .workspace-tabs .tab-button{padding:8px 11px}
  .settings-default-grid{grid-template-columns:1fr}
  .sim-step-tabs .tab-button{min-width:94px}
  .tab-step-number{width:19px;height:19px}
  .step-tab-actions{display:grid;grid-template-columns:1fr 1fr}
  .step-tab-actions .button{width:100%;margin:0!important}
  .step-tab-actions .button:only-child{grid-column:1/-1}
}
.character-workspace{scroll-margin-top:62px}
.character-tabs .tab-button{min-width:120px}
.character-workspace [data-tab-panel="base"]>.card:last-child{margin-bottom:0}
@media(max-width:620px){.character-tabs .tab-button{min-width:max-content;flex:1}}

/* v1.20: combine account + guild administration into one account-first workspace. */
.account-guild-workspace .admin-section-body{gap:14px}
.account-create-panel{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,2.2fr);gap:16px;align-items:end}
.account-create-panel>div{align-self:start}
.account-create-panel>div p{margin:4px 0 0}
.account-create-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:end}
.account-create-form .button{min-height:36px;white-space:nowrap}
.account-workspace-list{display:grid;gap:8px}
.account-workspace-item{border:1px solid var(--line);background:#15191d;overflow:visible}
.account-workspace-item.is-current{border-color:#456c88;background:#151d23}
.account-workspace-summary{list-style:none;display:block;padding:0;cursor:pointer;user-select:none}
.account-workspace-summary::-webkit-details-marker{display:none}
.account-workspace-summary:hover{background:#1a2024}
.account-summary-main{display:flex;align-items:center;min-height:56px;padding:10px 12px}
.account-disclosure-caret{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;color:#78838c;font-size:20px;line-height:1;transition:transform .14s ease}
.account-workspace-item[open] .account-disclosure-caret{transform:rotate(90deg)}
.account-summary-copy{min-width:0;display:grid;gap:3px}
.account-summary-title{display:flex;align-items:center;gap:7px;min-width:0}
.account-summary-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-workspace-body{display:grid;gap:12px;padding:12px;border-top:1px solid #2b3136;background:#111518}
.account-settings-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,.8fr);gap:12px}
.account-settings-panel,.account-danger-panel,.account-guilds-panel{min-width:0;padding:12px;border:1px solid #30363c;background:#14181b}
.account-danger-panel{display:flex;flex-direction:column;justify-content:space-between;gap:16px;border-color:#55353a;border-left:3px solid #8b464f;background:#1d1517}
.account-danger-panel h3,.account-settings-panel h3,.account-guilds-panel h3{margin:1px 0 2px;font-size:14px}
.account-danger-panel p{margin:4px 0 0}
.account-danger-panel .button{align-self:flex-start}
.subsection-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.subsection-head .eyebrow{margin-bottom:1px}
.subsection-head form{margin:0;flex:0 0 auto}
.account-guilds-panel{padding:0;overflow:visible}
.account-guilds-head{align-items:center;margin:0;padding:12px;border-bottom:1px solid #30363c}
.account-guilds-head .muted{margin:3px 0 0}
.account-guild-list{padding:10px;margin:0}
.account-guild-list .guild-profile-row:last-child{margin-bottom:0}
.account-guild-list .guild-profile-form{padding:10px 11px 12px}
.account-guild-list .guild-grid{grid-template-columns:minmax(150px,1.1fr) 105px minmax(145px,1fr) minmax(145px,1fr) 90px;gap:10px;align-items:start}
.guild-account-move-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border-top:1px solid #2b3136;background:#151a1e}
.guild-account-move-row>div{display:grid;gap:2px}
.guild-account-move-row>div .muted{font-size:11px}
.guild-move-form{display:flex;align-items:end;gap:7px;min-width:min(100%,360px)}
.guild-move-form select{min-width:170px;max-width:250px}
.admin-access-card .admin-section-body{max-width:720px}
.admin-password-panel{display:grid;grid-template-columns:minmax(170px,.75fr) minmax(0,1.5fr);gap:16px;align-items:start}
.admin-password-panel>div p{margin:4px 0 0}
.admin-password-panel .stack-form{max-width:460px;width:100%}

@media(max-width:1050px){
  .account-create-panel{grid-template-columns:1fr}
  .account-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-create-form .button{width:100%}
  .account-guild-list .guild-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .account-settings-grid{grid-template-columns:1fr}
  .admin-password-panel{grid-template-columns:1fr}
  .admin-password-panel .stack-form{max-width:none}
}
@media(max-width:700px){
  .account-create-form{grid-template-columns:1fr}
  .subsection-head,.account-guilds-head,.guild-account-move-row{align-items:stretch;flex-direction:column}
  .subsection-head .button,.account-guilds-head .button,.account-danger-panel .button{width:100%}
  .guild-move-form{width:100%;min-width:0}
  .guild-move-form select{flex:1;min-width:0;max-width:none}
  .account-guild-list .guild-grid{grid-template-columns:1fr}
  .account-workspace-body{padding:9px}
}

/* v1.21: keep object-specific controls with the object they configure. */
.guild-local-tools{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.75fr);gap:10px;padding:0 11px 12px;background:#111518}
.guild-rank-editor{margin:0;border:1px solid #30363c;background:#15191d}
.guild-rank-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px}
.guild-rank-editor>summary>span:first-child{display:grid;gap:2px}.guild-rank-editor>summary small{color:var(--muted);font-size:10px;font-weight:500}
.guild-rank-inline-list{display:grid;gap:7px;padding:9px 10px 10px;border-top:1px solid #2e3439}
.guild-rank-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.guild-rank-inline-form label{display:grid;grid-template-columns:minmax(110px,.55fr) minmax(150px,1fr);gap:8px;align-items:center;margin:0}
.guild-rank-inline-form label>span{display:flex;justify-content:space-between;gap:8px;font-size:11px}.guild-rank-inline-form label small{color:var(--muted);font-weight:500}
.guild-connection-test{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #30363c;background:#15191d}
.guild-connection-test>div{display:grid;gap:2px}.guild-connection-test .muted{font-size:11px}.guild-connection-test form{margin:0;flex:0 0 auto}

.inline-spec-fallback-form{display:grid;gap:9px;margin:10px 0 14px;padding:11px;border:1px solid #36556b;background:#141c22}
.inline-spec-fallback-form .override-heading{margin:0}.inline-spec-fallback-form label{margin:0}
.profile-section-divider{margin:14px 0 10px}
.character-workspace [data-tab-panel="profile"]>.card:last-child{margin-bottom:0}

.results-primary-action{display:flex;align-items:end;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.results-primary-action .primary-selector{min-width:min(320px,100%)}
.button.is-disabled,.button[aria-disabled="true"]{opacity:.45;pointer-events:none;cursor:not-allowed}

@media(max-width:900px){
  .guild-local-tools{grid-template-columns:1fr}
  .results-primary-action{justify-content:stretch}.results-primary-action .primary-selector{flex:1}
}
@media(max-width:620px){
  .guild-rank-inline-form,.guild-rank-inline-form label{grid-template-columns:1fr}
  .guild-connection-test{align-items:stretch;flex-direction:column}.guild-connection-test .button{width:100%}
  .results-primary-action{display:grid;grid-template-columns:1fr}.results-primary-action .button{width:100%}
}
.sim-trinket-rule-button{display:inline-flex;align-items:center;justify-content:flex-end;justify-self:end;padding:2px 0;border:0;background:transparent;cursor:pointer;font:inherit}
@media(max-width:900px){.sim-trinket-rule-button{display:inline-flex!important;grid-column:1/-1;justify-self:end}}

/* v1.21: administrator SimulationCraft maintenance workspace. */
.simc-admin-card{max-width:1040px}
.simc-admin-card>.card-head{align-items:flex-start;gap:14px}
.simc-admin-card>.card-head .badge{flex:0 0 auto;margin-top:2px}
.simc-admin-body{display:grid;gap:14px;padding:14px}
.simc-version-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.simc-version-item{display:grid;gap:5px;min-width:0;padding:11px 12px;border:1px solid #30363c;background:#15191d}
.simc-version-item>span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.simc-version-item>strong,.simc-version-item>code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.simc-version-item>code{color:#d8e5ef;background:transparent;padding:0}
.simc-admin-status-line{display:flex;align-items:center;gap:9px;min-height:32px;padding:9px 10px;border:1px solid #30363c;background:#111518}
.simc-admin-status-line>[data-simc-admin-message]{min-width:0;color:#c6cdd3}
.simc-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.simc-admin-actions form{margin:0}
.simc-admin-note{margin:0}
.simc-comparison-error{margin:0}
.badge-neutral{background:#30353b;color:#c8cdd2}
@media(max-width:780px){.simc-version-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.simc-version-grid{grid-template-columns:1fr}.simc-admin-actions{display:grid;grid-template-columns:1fr}.simc-admin-actions .button{width:100%}.simc-admin-actions form{display:grid}}

/* One-guild-per-password: the guild is identity context, not a switcher. */
.guild-current{color:#c7d1d9;cursor:default;max-width:240px;overflow:hidden;text-overflow:ellipsis}

/* Completed simulation rerun action: keep the visible button and overflow menu together. */
.simulations-actions-col{width:auto;min-width:112px}.simulations-row-actions{width:auto;text-align:right;white-space:nowrap}.simulations-row-actions form{margin:0}

/* Conditional bag off-hand chooser for one-hand special-weapon comparisons. */
.sim-offhand-card .builder-note{margin-top:10px}
.sim-offhand-list{display:grid;gap:8px;margin-top:12px}
.sim-offhand-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(300px,1.3fr);align-items:end;gap:12px;padding:10px 12px;border:1px solid #333a40;background:#13171a}
.sim-offhand-row[hidden]{display:none!important}
.sim-offhand-character{min-width:0;display:flex;flex-direction:column;gap:2px}
.sim-offhand-character strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sim-offhand-character small{color:var(--muted);font-size:11px}
.sim-offhand-choice{min-width:0}.sim-offhand-choice>span{display:block;margin-bottom:5px}.sim-offhand-choice select{width:100%}
@media(max-width:700px){.sim-offhand-row{grid-template-columns:1fr;align-items:stretch}}
