.tournament-result-actions { margin: 24px 0 28px; gap: 14px; }
.tournament-result-buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; width: min(100%, 38rem); }
.tournament-result-button { display: flex; align-items: center; justify-content: center; gap: 10px; min-width: 0; min-height: 56px; padding: 14px 16px; border: 1px solid transparent; border-radius: 14px; font-size: 16px; font-weight: 800; line-height: 1.35; text-align: center; text-decoration: none; transition: background .15s, border-color .15s, box-shadow .15s; }
.tournament-result-button svg { width: 22px; height: 22px; flex: 0 0 auto; }
.tournament-decks-button { background: #85d8ff; color: #071b2e; border-color: #b5e8ff; box-shadow: 0 6px 22px #3abfff24; }
.tournament-decks-button:hover { background: #b5e8ff; box-shadow: 0 6px 26px #3abfff40; }
.tournament-resolutions-button { background: #182e48; color: #d8f1ff; border-color: #6489a6; }
.tournament-resolutions-button:hover { background: #22415f; border-color: #9adfff; }
.tournament-result-button:focus-visible, .ranking-resolutions a:focus-visible, .ranking-resolutions summary:focus-visible, .resolution-table-scroll:focus-visible { outline: 3px solid #9adfff; outline-offset: 4px; }
.tournament-result-button:only-child { grid-column: 1 / -1; }
.ranking-resolutions { max-width: 1100px; margin: 0 auto 48px; color: #e7eef8; overflow-wrap: anywhere; }
.resolution-header { padding: 10px 0 28px; }
.resolution-header .crumb { display: inline-block; margin-bottom: 30px; }
.resolution-header .eyebrow { display: block; color: #8cd8fc; }
.resolution-header h1 { max-width: 900px; margin: 14px 0 16px; font-size: clamp(30px, 4.4vw, 52px); line-height: 1.12; letter-spacing: -.025em; }
.resolution-tournament-name { margin: 0 0 6px; font-size: 23px; font-weight: 700; }
.resolution-subtitle { margin: 0; color: #a8b9ce; font-size: 15px; }
.resolution-intro { padding: 26px; border: 1px solid #3d607a; border-radius: 20px; background: linear-gradient(130deg, #17314a, #101f33); }
.resolution-intro p { max-width: 90ch; margin: 16px 0; line-height: 1.65; color: #c9d7e7; }
.resolution-intro strong { color: #f2f8ff; }
.resolution-badge { display: inline-block; padding: 7px 12px; border-radius: 8px; background: #7acbf51a; color: #9de0ff; font-size: 13px; font-weight: 800; letter-spacing: .025em; }
.resolution-counts { display: flex; flex-wrap: wrap; gap: 12px 28px; padding-top: 16px; margin-top: 20px; border-top: 1px solid #48647d80; color: #b7c9df; font-size: 14px; }
.resolution-counts span { display: inline-flex; align-items: baseline; gap: 8px; }
.resolution-counts strong { font-size: 24px; color: #a5e1ff; }
.resolution-fixed { margin-top: 20px; border: 1px solid #344961; border-radius: 14px; padding: 0 20px; background: #111e30; }
.ranking-resolutions summary { cursor: pointer; list-style: none; }
.ranking-resolutions summary::-webkit-details-marker { display: none; }
.resolution-fixed summary { min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 12px; font-weight: 700; }
.resolution-fixed p { color: #b5c6d9; line-height: 1.6; }
.resolution-fixed-list { display: flex; flex-wrap: wrap; gap: 10px 28px; list-style: none; padding: 0 0 8px; }
.resolution-fixed-list li { display: flex; gap: 10px; }
.resolution-fixed-list strong { color: #9bdafa; }
.resolution-section-heading { margin: 36px 0 18px; }
.resolution-section-heading h2 { margin: 0 0 8px; font-size: 26px; }
.resolution-section-heading p { color: #aabdd2; margin: 0; line-height: 1.6; }
.resolution-group { margin: 14px 0; border: 1px solid #3a4e68; border-radius: 18px; background: #101d30; overflow: hidden; }
.resolution-group > summary { display: flex; align-items: center; gap: 18px; min-height: 88px; padding: 20px 24px; }
.resolution-group > summary:hover { background: #1b3048; }
.resolution-group-heading { display: flex; flex-direction: column; gap: 5px; min-width: 0; flex: 1; }
.resolution-group-heading strong { color: #f4f8ff; font-size: 21px; }
.resolution-group-heading > span { color: #a6bcd3; font-size: 14px; }
.resolution-group-count { color: #a8daf5; font-size: 13px; text-align: right; }
.resolution-chevron { flex: 0 0 auto; font-size: 22px; color: #8dd6fc; transition: transform .15s; }
details[open] > summary .resolution-chevron { transform: rotate(180deg); }
.resolution-group[open] > summary { border-bottom: 1px solid #344961; }
.resolution-group-body { min-width: 0; padding: 22px 24px 26px; }
.resolution-group-body > p { color: #b9cadd; line-height: 1.6; margin: 0 0 14px; }
.resolution-table-scroll { width: 100%; max-width: 100%; overflow-x: auto; margin: 20px 0 12px; border: 1px solid #354a64; border-radius: 12px; scrollbar-color: #6488a7 #14243a; }
.resolution-table { border-collapse: collapse; width: 100%; font-size: 14px; font-variant-numeric: tabular-nums; }
.resolution-table caption { padding: 12px 14px; text-align: left; color: #a9c3db; background: #182b43; font-size: 13px; }
.resolution-table th, .resolution-table td { padding: 12px 14px; border-bottom: 1px solid #2a3e57; text-align: right; white-space: nowrap; }
.resolution-table thead th { color: #99d4f4; font-size: 12px; font-weight: 700; background: #14263d; }
.resolution-table th:nth-child(2), .resolution-table tbody th { text-align: left; white-space: normal; min-width: 135px; max-width: 260px; }
.resolution-table tbody th { color: #ecf4ff; font-weight: 600; }
.resolution-table tbody tr:last-child > * { border-bottom: none; }
.ranking-resolutions a { color: #a3dcfc; text-underline-offset: 3px; }
.ranking-resolutions a:hover { color: #d9f2ff; }
.resolution-table-note { font-size: 13px; color: #9ab1c9 !important; }
.resolution-case { margin-top: 24px; padding-top: 24px; border-top: 1px solid #344961; }
.resolution-case h3 { margin: 0 0 6px; color: #a7dfff; font-size: 19px; }
.resolution-case-names { color: #dae7f5; margin: 0 0 20px; line-height: 1.6; }
.resolution-steps { padding: 0 0 0 24px; margin: 0; }
.resolution-steps > li { padding: 0 0 20px 8px; color: #b7cbe1; }
.resolution-steps > li::marker { color: #87d4ff; font-weight: 800; }
.resolution-steps > li:last-child { padding-bottom: 0; }
.resolution-steps > li > strong { color: #f0f6ff; font-size: 16px; }
.resolution-steps p { margin: 8px 0 0; color: #bccde0; line-height: 1.65; }
.resolution-encounters { margin-top: 12px; padding: 12px 14px; background: #1b304680; border-left: 2px solid #629abb; border-radius: 0 8px 8px 0; font-size: 13px; }
.resolution-encounters > span { color: #9dcbe6; font-weight: 700; }
.resolution-encounters ul { padding-left: 18px; margin: 10px 0 0; }
.resolution-encounters li { padding: 5px 0; line-height: 1.6; }
.resolution-encounters li span { color: #9fb5ca; }
.resolution-outcome { color: #9fdcc1 !important; margin: 20px 0 0 !important; }
.resolution-empty { padding: 24px; border: 1px solid #3a4e68; border-radius: 16px; background: #142338; color: #bed0e3; line-height: 1.65; }
.resolution-back { display: inline-block; padding: 16px 0; margin-top: 16px; font-weight: 700; }
@media (max-width: 600px) {
  .tournament-result-buttons { width: 100%; gap: 10px; }
  .tournament-result-button { padding: 13px 10px; gap: 7px; font-size: 14px; }
  .tournament-result-button svg { width: 19px; height: 19px; }
  .resolution-header .crumb { margin-bottom: 24px; }
  .resolution-tournament-name { font-size: 20px; }
  .resolution-intro { padding: 20px 18px; }
  .resolution-intro p, .resolution-group-body > p, .resolution-steps p { font-size: 14px; }
  .resolution-counts { gap: 10px 20px; }
  .resolution-counts span { font-size: 12px; }
  .resolution-counts strong { font-size: 22px; }
  .resolution-group > summary { padding: 18px 16px; gap: 12px; }
  .resolution-group-heading strong { font-size: 18px; }
  .resolution-group-heading > span { font-size: 12px; }
  .resolution-group-count { max-width: 65px; font-size: 12px; }
  .resolution-group-body { padding: 18px 16px 22px; }
  .resolution-table th, .resolution-table td { padding: 11px 12px; }
  .resolution-case h3 { font-size: 18px; }
  .resolution-case-names { font-size: 14px; }
  .resolution-steps { padding-left: 20px; }
  .resolution-steps > li { padding-left: 4px; }
  .resolution-encounters { padding: 10px; }
}
@media (max-width: 360px) {
  .tournament-result-button { font-size: 13px; padding: 12px 7px; gap: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .tournament-result-button, .resolution-chevron { transition: none; }
}
