.zzz-tier-ranking { max-width: 960px; margin: 0 auto; }

.zzz-tier-tabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 16px; border-bottom: 2px solid #ddd; padding-bottom: 4px; }
.zzz-tier-tab { background: #1a1a2e; color: #aaa; border: 1px solid #333; border-bottom: none; padding: 8px 14px; cursor: pointer; font-size: 14px; border-radius: 6px 6px 0 0; transition: all 0.2s; }
.zzz-tier-tab.is-active { background: #16213e; color: #fff; border-color: #0f3460; font-weight: bold; }
.zzz-tier-tab:hover { color: #fff; background: #16213e; }

.zzz-tier-subtabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 12px; }
.zzz-tier-subtab { display: inline-flex; align-items: center; gap: 4px; background: #111; color: #999; border: 1px solid #333; padding: 5px 10px; cursor: pointer; font-size: 13px; border-radius: 4px; transition: all 0.2s; }
.zzz-tier-subtab.is-active { background: #1a1a3e; color: #fff; border-color: #555; }
.zzz-tier-subtab:hover { color: #fff; }

.zzz-tier-grade-row { display: flex; flex-direction: column; margin-bottom: 12px; border-radius: 10px; overflow: hidden; }
.zzz-tier-grade-header { display: flex; align-items: center; justify-content: center; padding: 4px 16px; }
.zzz-tier-grade-label { font-family: 'Exo 2', sans-serif; font-weight: 900; font-size: 18px; letter-spacing: 0.05em; color: #fff; text-shadow: 0 1px 2px rgba(0,0,0,0.3); }
.zzz-tier-grade-agents { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 6px; padding: 8px 12px 12px; }
.zzz-tier-grade-agents .zzz-agent-icon { justify-self: center; }
.zzz-tier-grade-agents .zzz-agent-icon { --icon-size: 96px; }

.zzz-tier-grade-row[data-grade="EX"]  { background: rgba(200,180,255,0.06); border: 1px solid rgba(136,0,255,0.15); }
.zzz-tier-grade-row[data-grade="S+"]  { background: rgba(249,115,22,0.05); border: 1px solid rgba(249,115,22,0.15); }
.zzz-tier-grade-row[data-grade="S"]   { background: rgba(251,146,60,0.05); border: 1px solid rgba(251,146,60,0.15); }
.zzz-tier-grade-row[data-grade="A"]   { background: rgba(167,139,250,0.05); border: 1px solid rgba(167,139,250,0.15); }
.zzz-tier-grade-row[data-grade="B"]   { background: rgba(45,212,191,0.05); border: 1px solid rgba(45,212,191,0.15); }
.zzz-tier-grade-row[data-grade="C"]   { background: rgba(107,114,128,0.05); border: 1px solid rgba(107,114,128,0.15); }

.zzz-tier-grade-row[data-grade="EX"]  .zzz-tier-grade-header { background: linear-gradient(135deg, #c026d3, #7c3aed, #2563eb); }
.zzz-tier-grade-row[data-grade="S+"]  .zzz-tier-grade-header { background: linear-gradient(135deg, #ea580c, #dc2626); }
.zzz-tier-grade-row[data-grade="S"]   .zzz-tier-grade-header { background: linear-gradient(135deg, #f97316, #ea580c); }
.zzz-tier-grade-row[data-grade="A"]   .zzz-tier-grade-header { background: linear-gradient(135deg, #a78bfa, #7c3aed); }
.zzz-tier-grade-row[data-grade="B"]   .zzz-tier-grade-header { background: linear-gradient(135deg, #2dd4bf, #14b8a6); }
.zzz-tier-grade-row[data-grade="C"]   .zzz-tier-grade-header { background: linear-gradient(135deg, #9ca3af, #6b7280); }


@media (max-width: 600px) {
	.zzz-tier-tabs { gap: 2px; }
	.zzz-tier-tab { padding: 6px 8px; font-size: 12px; }
	.zzz-tier-grade-header { padding: 3px 12px; }
	.zzz-tier-grade-label { font-size: 14px; }
	.zzz-tier-grade-row { }
	.zzz-tier-grade-agents .zzz-agent-icon { --icon-size: 60px; }
	.zzz-tier-grade-agents { grid-template-columns: repeat(auto-fill, minmax(60px, 1fr)); gap: 4px; padding: 6px 8px 10px; }
}
.zzz-tier-legend { margin-top: 16px; }
.zzz-tier-legend summary { cursor: pointer; color: #aaa; font-size: 14px; padding: 8px 0; }
.zzz-tier-legend summary:hover { color: #ddd; }
.zzz-tier-legend__list { list-style: none; padding: 0; margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 12px; }
.zzz-tier-legend__list li { display: inline-flex; align-items: center; gap: 8px; }
.zzz-tier-legend__desc { color: #bbb; font-size: 13px; }

