.demo-note { color:#a88bbb; font-size:10px; line-height:1.6; margin:8px 0 0; text-align:center; }
.summon-result { margin-bottom:13px; }
.summon-result .monster-strength { color:var(--specimen-glow); font:10px var(--mono); letter-spacing:.12em; margin-top:8px; }
.chamber[data-tier=weak] .monster-strength { color:#dbaa8c; }
.chamber[data-tier=unknown] .monster-strength { color:#bca7cd; }
.chamber[data-tier=beast] .summon-result { box-shadow:0 0 24px #c6ff7917; border-color:#a3c86c70; }
.chamber[data-tier=weak] .heartbeat { opacity:.4; }
.chamber:not(.has-model) .creature-wrap img { transform-origin:50% 100%; transform:scale(var(--monster-scale,.68)) rotate(calc(var(--monster-slump,0) * -30deg)); transition:transform 1.5s,filter 1.5s; }
.trait-milestone { font-size:10px; }
#data-origin a { color:#eac594; text-decoration:underline; text-underline-offset:3px; }
#notes-dialog a { color:#eac594; text-decoration:underline; }
.rankings { border:1px solid #653880; border-radius:10px; background:linear-gradient(125deg,#25182f,#171020); margin-top:22px; padding:24px 26px 17px; }
.rankings-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.rankings h2 { font:500 28px var(--heading); margin:8px 0 18px; color:#eedbf5; }
.rankings-heading>span { font:11px var(--mono); color:#b799c8; }
#rankings-empty { font-size:13px; color:#b8a0c8; margin:0 0 20px; }
.ranking-scroll { max-width:100%; overflow-x:auto; }
#ranking-table { width:100%; border-collapse:collapse; text-align:left; min-width:610px; }
#ranking-table[hidden],#rankings-empty[hidden] { display:none; }
#ranking-table th { font:10px var(--mono); color:#a98bbb; padding:12px 10px; border-bottom:1px solid #68487b; }
#ranking-table td { padding:16px 10px; border-bottom:1px solid #58366855; font-size:12px; color:#dbc8e7; }
#ranking-table tr:last-child td { border-bottom:0; }
#ranking-table td:first-child { color:#f3b15c; font:14px var(--mono); }
#ranking-table strong { display:block; font-size:13px; max-width:170px; overflow-wrap:anywhere; }
#ranking-table small { display:block; font:10px var(--mono); margin-top:5px; color:#a38ab2; }
#ranking-table .rank-score { font:600 20px var(--heading); color:#dec5ef; white-space:nowrap; }
#ranking-table .rank-score.beast { color:#c0fa73; }
#ranking-table .rank-score.weak { color:#f3a17a; }
.ranking-note { font-size:10px; color:#a38ab2; margin:12px 0 0; line-height:1.6; }
#specimen-name { overflow-wrap:anywhere; }
#specimen-class,#tank-id { overflow-wrap:anywhere; }
@media(max-width:760px) { .rankings { padding:20px 17px 15px; } .rankings h2 { font-size:25px; } .rankings .eyebrow { font-size:9px; } }
