.bosses-page { max-width:1200px; margin:0 auto; padding:28px 24px 50px; }
.bosses-page h2 { margin:0 0 8px; }
.bosses-note { color:#bbb4a9; line-height:1.5; margin:0 0 16px; }
.boss-status { color:#d7b76e; font-size:13px; min-height:18px; margin:0 0 10px; }
.boss-status:empty { display:none; }

/* Filtros e pesquisa */
.bosses-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:10px; }
.bosses-filters, .boss-vocations { display:flex; flex-wrap:wrap; gap:8px; }
.boss-filter { display:inline-flex; align-items:center; gap:7px; padding:8px 14px; border:1px solid #4d3c2b; border-radius:999px; background:#1b1712; color:#e4d8c4; font:inherit; font-size:14px; cursor:pointer; }
.boss-filter span { color:var(--muted); font-size:12px; }
.boss-filter:hover { border-color:#c9a24a; }
.boss-filter.active { background:#634a1b; border-color:#c9a24a; color:#fff6e6; }
.boss-filter.active span { color:#f0dcae; }
.bosses-search { flex:1 1 240px; max-width:360px; margin-left:auto; }
.bosses-search input { width:100%; padding:10px 12px; border:1px solid #4d3c2b; border-radius:8px; background:#16130e; color:#fff; font:inherit; font-size:15px; }
.bosses-search input:focus { border-color:#c9a24a; outline:2px solid #634a1b; }
.boss-count { color:var(--muted); font-size:13px; margin:0 0 8px; min-height:18px; }

/* Tabela */
.bosses-table-wrap { border:1px solid #302214; border-radius:12px; overflow:hidden; overflow:clip; background:var(--card); }
/* overflow:clip não cria área de rolagem, então o cabeçalho da tabela fica fixo ao rolar a página. */
.bosses-table { width:100%; border-collapse:collapse; overflow:visible; }
.bosses-table th { position:sticky; top:var(--bosses-sticky-top, 0px); z-index:5; padding:10px 12px; background:#211b13; color:var(--caca); font-size:12px; letter-spacing:.08em; text-transform:uppercase; text-align:left; border-bottom:1px solid #3a2817; }
.bosses-table td { text-align:left; padding:6px 12px; border-bottom:1px solid #2a2017; color:#e4d8c4; font-size:14px; vertical-align:middle; }
.bosses-table tbody tr:hover { background:#221c14; }
.bosses-table tbody tr:last-child td { border-bottom:0; }
.boss-sprite-cell { width:64px; }
.boss-sprite-cell img { display:block; width:48px; height:48px; object-fit:contain; image-rendering:pixelated; }
.boss-link { padding:0; border:0; background:none; color:#f3e6cf; font:inherit; font-weight:700; text-align:left; cursor:pointer; }
.boss-link:hover, .boss-link:focus-visible { color:var(--caca); text-decoration:underline; outline:none; }
.boss-empty { padding:24px !important; text-align:center; color:var(--muted) !important; }
.boss-type { display:inline-block; padding:2px 9px; border-radius:999px; font-size:12px; font-weight:700; letter-spacing:.04em; border:1px solid; white-space:nowrap; }
.boss-type-archfoe { color:#f0b36e; border-color:#7a4a1c; background:#2e1d0d; }
.boss-type-bane { color:#e88a8a; border-color:#6e2a2a; background:#2a1212; }
.boss-type-nemesis { color:#c7a2f0; border-color:#55347a; background:#1f1530; }

/* Ficha */
.boss-back { margin-bottom:16px; padding:8px 14px; border:1px solid #4d3c2b; border-radius:8px; background:#1b1712; color:#e4d8c4; font:inherit; cursor:pointer; }
.boss-back:hover, .boss-back:focus-visible { border-color:#c9a24a; color:var(--caca); }
.boss-hero { display:flex; gap:22px; align-items:center; padding:20px; border:1px solid #302214; border-radius:12px; background:var(--card); }
.boss-hero-sprite { flex:none; width:140px; height:140px; display:flex; align-items:center; justify-content:center; border:1px solid #3a2817; border-radius:14px; background:radial-gradient(circle at 50% 60%,#2a2216,#16130e); }
.boss-hero-sprite img { max-width:120px; max-height:120px; image-rendering:pixelated; }
.boss-hero-info { flex:1; min-width:0; }
.boss-hero-title { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:14px; }
.boss-hero-title h2 { margin:0; font-family:'Cinzel',Georgia,serif; font-size:28px; color:#fff6e6; overflow-wrap:anywhere; }
.boss-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0 0 12px; }
.boss-stats div { padding:10px 12px; border:1px solid #2b1e11; border-radius:10px; background:#16130e; }
.boss-stats dt { color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.boss-stats dd { margin:4px 0 0; color:#f3e6cf; font-size:17px; font-weight:700; }
.boss-wiki { color:#e8d1af; font-size:14px; }
.boss-panel { margin-top:20px; padding:16px; border:1px solid #413324; border-radius:10px; background:#231e16; }
.boss-panel h3 { margin:0 0 6px; color:#d1b494; font-size:16px; }
.boss-muted { color:var(--muted); font-size:13px; line-height:1.5; }
.boss-mods { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; margin:12px 0; }
.boss-mod { display:flex; flex-direction:column; align-items:center; gap:4px; padding:10px 6px; border-radius:8px; background:var(--element-bg); border:1px solid transparent; font-size:13px; text-align:center; }
.boss-mod strong { font-size:18px; color:#fff6e6; }
.boss-mod small { font-size:11px; color:#c9bda9; }
.boss-mod-weak { border-color:#5c9a5c; }
.boss-mod-weak strong { color:#9fe39f; }
.boss-mod-strong strong { color:#f0b08a; }
.boss-mod-immune, .boss-mod-heals { border-color:#8a3b40; }
.boss-mod-immune strong, .boss-mod-heals strong { color:#ff9d9d; }
.boss-extra { display:flex; flex-wrap:wrap; gap:8px 24px; align-items:center; color:#d6cab6; font-size:14px; }
.boss-chip { display:inline-block; margin:2px 4px 2px 0; padding:2px 9px; border:1px solid #4d3c2b; border-radius:999px; font-size:12px; }

/* Dano recebido (mesmo visual de Por Hunt) */
#bossesPage .damage-heading { margin:0 0 18px; padding:13px 16px; border:1px solid #4f4032; border-left:3px solid #c6a580; border-radius:7px; background:linear-gradient(110deg,#302b27,#2b231a); color:#e1c29f; font-size:19px; font-weight:700; line-height:1.5; }
#bossesPage .damage-heading h2 { margin:0; color:inherit; font-size:inherit; line-height:inherit; font-family:'Cinzel',Georgia,serif; }
#bossesPage .damage-vocation { display:inline; color:#c7b9a8; font-size:15px; font-weight:400; }
#bossesPage .damage-vocation strong { color:#ead7be; font-weight:600; }
#bossesPage .damage-distributions h3 { margin:0 0 14px; padding:0 0 10px; border-bottom:1px solid #4a4742; color:#d1b494; font-size:16px; line-height:1.5; }
#bossesPage .damage-distributions > div { min-width:0; padding:14px; background:#1f1a12; border:1px solid #413324; border-radius:8px; }
.boss-add-damage { margin-left:auto; padding:7px 14px; border:1px solid #c9a24a; border-radius:8px; background:#634a1b; color:#fff6e6; font:inherit; font-size:14px; font-weight:600; cursor:pointer; }
.boss-add-damage:hover, .boss-add-damage:focus-visible { background:#7a5b22; }
.boss-vocations { margin:0 0 14px; }
.boss-filter.boss-voc-empty, .boss-filter.boss-voc-empty:hover { border-style:dashed; border-color:#3a2e22; background:transparent; color:#6f6455; cursor:not-allowed; opacity:.75; }
.boss-edit { margin-left:6px; vertical-align:middle; }
.boss-stats dd .boss-edit { font-size:13px; }
.boss-source { margin:14px 0; }
.boss-logs { margin-top:12px; color:#d6cab6; font-size:14px; }
.boss-logs summary { cursor:pointer; padding:6px 0; }
.boss-logs ul { list-style:none; margin:6px 0 0; padding:0; }
.boss-logs li { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; padding:8px 0; border-top:1px solid #3a2c1e; }
.boss-logs .boss-delete { padding:4px 10px; font-size:12px; }

/* Diálogo */
#bossDamageForm label, #huntDamageForm label, #bossEditForm label { display:block; margin:12px 0 6px; }
#bossDamageForm select, #bossDamageForm textarea, #huntDamageForm select, #huntDamageForm textarea, #bossEditForm input { width:100%; padding:10px; border:1px solid #4d3c2b; border-radius:8px; background:#16130e; color:#fff; font:inherit; }
#bossDamageForm textarea, #huntDamageForm textarea { resize:vertical; }
#bossDamageError, #huntDamageError, #bossEditError { color:#ff9d9d; }

@media(max-width:900px) {
  .bosses-page { --bosses-sticky-top:63px; }
  .boss-mods { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .boss-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .bosses-page { padding:20px 16px 40px; }
  .bosses-search { max-width:none; margin-left:0; }
  .bosses-table thead { display:none; }
  .bosses-table, .bosses-table tbody, .bosses-table tr, .bosses-table td { display:block; }
  .bosses-table tr { display:grid; grid-template-columns:56px 1fr 1fr; gap:2px 10px; padding:10px 12px; border-bottom:1px solid #2a2017; }
  .bosses-table td { padding:0; border:0; font-size:13px; }
  .bosses-table .boss-sprite-cell { grid-row:span 4; width:auto; }
  .bosses-table .boss-name-cell { grid-column:2 / -1; font-size:15px; }
  .bosses-table td[data-label]::before { content:attr(data-label) ": "; color:var(--muted); }
  .boss-hero { flex-direction:column; text-align:center; }
  .boss-hero-title { justify-content:center; }
  .boss-hero-title h2 { font-size:23px; }
  .boss-mods { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .boss-add-damage { margin-left:0; }
}
/* Quests */
.boss-quests { display:flex; flex-direction:column; gap:10px; }
.boss-quests > .boss-empty { padding:24px; border:1px solid #302214; border-radius:12px; background:var(--card); }
.boss-quest { border:1px solid #302214; border-radius:12px; background:var(--card); overflow:hidden; }
.boss-quest.open { border-color:#5a4426; }
.boss-quest-toggle { display:flex; align-items:center; gap:12px; width:100%; padding:14px 16px; border:0; background:none; color:#f3e6cf; font:inherit; text-align:left; cursor:pointer; }
.boss-quest-toggle:hover, .boss-quest-toggle:focus-visible { background:#221c14; outline:none; }
.boss-quest-toggle:focus-visible { box-shadow:inset 0 0 0 2px #c9a24a; }
.boss-quest-name { flex:1; min-width:0; font-family:'Cinzel',Georgia,serif; font-size:17px; font-weight:700; }
.boss-quest-name small { font-family:'Manrope',sans-serif; font-size:13px; font-weight:400; color:var(--muted); }
.boss-quest-count { color:var(--muted); font-size:13px; white-space:nowrap; }
.boss-quest-arrow { color:var(--caca); transition:transform .2s; }
.boss-quest.open .boss-quest-arrow { transform:rotate(180deg); }
.boss-quest.open .boss-quest-toggle { border-bottom:1px solid #3a2817; }
.boss-quest-body { padding:0 0 6px; }
.boss-quest-label { margin:0; padding:10px 12px 6px; border-top:1px solid #3a2817; color:var(--caca); font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.boss-quest-table { table-layout:fixed; }
.boss-quest-table th { position:static; }
.boss-quest-table td:nth-child(1), .boss-quest-table th:nth-child(1) { width:64px; }
.boss-quest-table td:nth-child(2), .boss-quest-table th:nth-child(2) { width:30%; }
.boss-quest-table tbody tr:last-child td { border-bottom:0; }
.boss-outside .boss-link { font-weight:600; }
@media (prefers-reduced-motion:reduce) { .boss-quest-arrow { transition:none; } }
@media(max-width:700px) {
  .boss-quest-toggle { flex-wrap:wrap; padding:12px 14px; }
  .boss-quest-name { font-size:16px; }
  .boss-quest-table td:nth-child(n), .boss-quest-table th:nth-child(n) { width:auto; }
  .boss-outside td[colspan] { grid-column:2 / -1; }
}
.bosses-page .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; }

/* ----- Boss Difficulty System (painel de dificuldade, 22/10/2026) ----- */
.bdiff-box { display:flex; gap:10px; margin-top:12px; padding:10px; border:2px solid #3a2c1d; border-radius:8px; background:#1a1610; box-shadow:inset 1px 1px 0 #4a3a28, inset -1px -1px 0 #0d0b08; }
.bdiff-left, .bdiff-right { padding:10px; border:1px solid #33271a; border-radius:6px; background:#211b14; box-shadow:inset 1px 1px 0 #0f0c09, inset -1px -1px 0 #3d3020; }
.bdiff-left { flex:0 0 34%; display:flex; flex-direction:column; align-items:center; }
.bdiff-right { flex:1; min-width:0; }
.bdiff-title { width:100%; box-sizing:border-box; margin-bottom:10px; padding:4px 6px; border:1px solid #3d2f1f; border-radius:4px; background:#2a2219; color:#d1b494; font-weight:700; font-size:14px; text-align:center; text-shadow:1px 1px 0 #0b0907; }
.bdiff-image { width:100%; box-sizing:border-box; min-height:150px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; border:1px solid #0f0c09; border-radius:6px; background:radial-gradient(circle at 50% 60%,#2a2216,#120f0b); box-shadow:inset 2px 2px 6px #000; }
.bdiff-image img { max-width:120px; max-height:120px; image-rendering:pixelated; }
.bdiff-label { color:#cdbfa6; font-weight:700; font-size:13px; margin-bottom:6px; }
.bdiff-controls { display:inline-flex; align-items:center; gap:3px; padding:3px; border:1px solid #4a3a28; border-radius:6px; background:#0f0c09; }
.bdiff-btn { min-width:34px; min-height:34px; padding:0 8px; border:1px solid #5a4630; border-radius:4px; background:#3a2d1e; color:#efe6d6; font:700 13px/1 monospace; cursor:pointer; user-select:none; }
.bdiff-btn:hover { background:#634a1b; border-color:#c9a24a; }
.bdiff-btn:active { background:#1f1810; box-shadow:inset 1px 1px 3px #000; }
.bdiff-btn:focus-visible { outline:2px solid #c9a24a; outline-offset:1px; }
.bdiff-value { min-width:40px; padding:7px 4px; border:1px solid #4a3a28; border-radius:4px; background:#000; color:#f2c94c; font:700 15px/1 monospace; text-align:center; }
.bdiff-content { padding:2px 4px; }
.bdiff-list { list-style:none; margin:0; padding:0; }
.bdiff-line { display:flex; align-items:flex-start; gap:8px; line-height:1.5; font-size:14px; color:#e7dccb; }
.bdiff-line img { flex:none; margin-top:5px; image-rendering:pixelated; }
.bdiff-empty { color:var(--muted); font-size:13px; font-style:italic; }
.bdiff-separator { border:none; border-top:2px solid #4a3a28; border-bottom:2px solid #0f0c09; margin:12px 0; }
.bdiff-warning { margin:12px 0 0; padding:6px 8px; border:1px dashed #8a6a3a; border-radius:6px; color:#e0956a; font-size:12px; }
.bdiff-note { margin:10px 0 0; }
.bdiff-credit { margin:6px 0 0; font-size:12px; }
.bdiff-credit a { color:#dcb46c; }
@media (max-width:700px) {
  .bdiff-box { flex-direction:column; }
  .bdiff-left { flex:none; }
  .bdiff-image { min-height:110px; }
}

/* ----- Dano recebido: valores, remoção de fonte e confirmação de envio (22/10/2026) ----- */
.damage-amount { color:var(--muted,#a89c86); font-variant-numeric:tabular-nums; font-size:.92em; }
.boss-source-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.boss-source-remove { flex:none; min-width:28px; min-height:28px; padding:0 8px; border:1px solid #8a3b40; border-radius:6px; background:#3a1f22; color:#ffb3b3; font-size:15px; line-height:1; cursor:pointer; }
.boss-source-remove:hover { background:#4a252a; }
.boss-source-remove[data-confirm] { background:#8a2f36; color:#fff; font-size:12px; }
.boss-admin-hint { color:#e0956a; }
.boss-damage-confirm { margin:14px 0 4px; padding:14px 16px; border:1px solid #c9a24a; border-radius:10px; background:#2a2115; }
.boss-damage-confirm h3 { margin:0 0 6px; color:#f2c94c; font-size:16px; }
.boss-damage-confirm p { margin:6px 0; }
.boss-damage-confirm ul { margin:8px 0; padding-left:20px; line-height:1.55; }
.boss-damage-confirm .buttons { margin-top:12px; }

/* Dano Recebido por vocação nas hunts (hunt-damage.js) */
.hunt-damage .damage-heading { margin-bottom:14px; }
.hunt-damage-status { color:#f0dcae; font-size:14px; margin:0 0 12px; }
