/* Content pages use the same phosphor palette and typography as the CRT menu. */
:root{--bg:#060b10;--paper:#111c25;--ink:#dfebe8;--muted:#93a7ae;--plum:#abcfc9;--lime:#cee6dd;--line:#b6dcd018;--soft:#172732;--gold:#cde5df;--gold-soft:#86aaa6;--navy:#101c26;--parchment:#111d27;--display:'VT323','Courier New',monospace;--radius:3px;--shadow:0 18px 60px #0006;color-scheme:dark}
body:not(.is-home){background:#060b10;color:#dfebe8;font-family:'IBM Plex Mono',monospace;font-size:14px;line-height:1.75}
body:not(.is-home) .realm-backdrop{background:#080f15 var(--crt-room-image) center/cover no-repeat;animation:none;transform:none;filter:blur(2px) saturate(.65);opacity:.4}
body:not(.is-home) .realm-vignette{background:linear-gradient(#050b12db,#07101bd4 40%,#050a10e8)}
body:not(.is-home):after{display:none;content:none}
body:not(.is-home) p{color:#a1b2b9}body:not(.is-home) h1,body:not(.is-home) h2,body:not(.is-home) h3{font-family:var(--display);font-weight:400;letter-spacing:.015em;color:#dfebe8;text-shadow:0 0 16px #a1e9d512}
body:not(.is-home) .site-header{background:#071017f5;backdrop-filter:blur(20px);border-bottom:1px solid #c2e4d913}
.nav-links a{clip-path:none;border-radius:2px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;letter-spacing:.02em;color:#acbec3;min-height:42px;padding:10px 17px}.nav-links a.active{background:#cfe3dd;color:#102328;box-shadow:0 0 14px #c5e8e315;text-shadow:none}.nav-links a:hover{color:#e7f4ef;background:#a8d7cd12}.nav-links a.active:hover{color:#0c242a;background:#e3eeea}.mobile-menu{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#cfe3dd}
body:not(.is-home) .compact-head>h1,body:not(.is-home) .board-title{font-size:58px;text-shadow:0 0 22px #c1ebe719;text-transform:uppercase;letter-spacing:.04em}
body:not(.is-home) .page-head>h1{color:#dfebe8;text-shadow:0 0 16px #c0e8db14}body:not(.is-home) .eyebrow,body:not(.is-home) .page-head>.eyebrow{color:#7fa6a7;letter-spacing:.09em;font-family:'IBM Plex Mono',monospace;font-size:10px}
body:not(.is-home) .panel,body:not(.is-home) .article-layout,body:not(.is-home) .board-shell,body:not(.is-home) .top-card,body:not(.is-home) .guide-card,body:not(.is-home) .admin-stat{background:#0e1a23ed;color:#d4e3e3;border-radius:3px;clip-path:none;box-shadow:inset 0 1px 0 #c7f2e613,0 14px 40px #0002;border:0}
body:not(.is-home) .panel h2,body:not(.is-home) .panel h3{color:#dbece6;font-size:34px}.panel p,.panel .subcopy,.panel ul,.panel li{color:#a6b9bf;font-size:12px}.panel .eyebrow{color:#8dacab}.panel a:not(.btn){color:#c3dfd9}
.board-shell{padding:0;overflow:hidden}.board-scroll{background:#0e1a23;color:#c3d7d8}.board-table th,.admin-table th{background:#152630;color:#87a4ab;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:500;letter-spacing:.025em;border-color:#a7d1c719}.board-table td,.admin-table td{background:transparent;border-color:#c6e4dc0c;color:#c2d5d8}.board-table tbody tr:hover,.admin-table tbody tr:hover{background:#b6dfd107}.board-table .gym-cell a,.admin-table .gym-cell a{color:#d7e7e5;font-size:12px;font-weight:500}.gym-cell a:hover{color:#b0d8c7}.gym-sub,.gym-sub svg{color:#68848e}.rank-cell,.rank-cell.top,.average-cell,.numeric,.admin-table .average-cell{color:#cbe3d9}.rank-cell{font-family:var(--display);font-size:29px}.rank-cell small{color:#6b8991}.average-cell{font-family:var(--display);font-size:34px}.average-cell small{color:#78929a}.numeric .bar{background:#d2eee50b}.numeric .bar span{background:#85ada5}.row-arrow a{background:#19323c;color:#b4d4cb;border-radius:2px;box-shadow:none}.row-arrow a:hover{background:#c5e0d7;color:#0e2830}.count-badge{background:#183039;color:#bddcd3;border:0;box-shadow:none;border-radius:2px}
.pill,.pill.neutral,.pill.green,.pill.amber,.verdict-cell .pill,.verdict-cell .pill.neutral,.detail-meta .pill,.top-card .pill{font-family:'IBM Plex Mono',monospace;background:#203b43;color:#b9dcd0;border-radius:2px;font-size:9px;font-weight:500;box-shadow:none;letter-spacing:0;padding:6px 9px}.pill.neutral,.verdict-cell .pill.neutral{background:#162b35;color:#9bb8c1}.pill.amber{background:#3f342a;color:#e4c2a0}
.chip{background:#12232e;color:#91b0b5;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:500;box-shadow:none;clip-path:none;border-radius:2px;letter-spacing:.01em;min-height:35px}.chip:hover{background:#25434a;color:#d5e7e0}.chip.active,.chip.active:hover{background:#cfe3dd;color:#10272e}.active-equipment{color:#92b7b1}
.btn,.btn.white,.btn.lime,.btn.small{font-family:'IBM Plex Mono',monospace;background:#cfe3dd;color:#10272e;border:0;box-shadow:none;clip-path:none;border-radius:2px;font-weight:500;font-size:11px;letter-spacing:0;min-height:44px;padding:12px 20px;text-shadow:none;gap:14px}.btn:hover,.btn.white:hover,.btn.lime:hover{background:#e2f0e8;color:#10272e;box-shadow:0 0 20px #9ee7cf1c;transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn.soft{background:#1a303b;color:#bcd8d2;box-shadow:none}.btn.soft:hover{background:#294752;color:#e0eee7}.btn.danger{background:#6b373a;color:#f4d6d5}.text-link,.back-link{color:#9ec5bf;font-size:11px}.text-link:hover,.back-link:hover{color:#e1efe8}.text-link svg{color:inherit}.skip{background:#d0e5dc;color:#112b30}
.search-box,.filter-select,.equipment-filter,.view-switch{background:#101e28;color:#c0d6d9;box-shadow:inset 0 1px 0 #c1e9df14;border:0;border-radius:3px}.search-box svg,.equipment-filter svg{color:#6d9b9f}.search-box input{color:#d3e5e5;font-family:'IBM Plex Mono',monospace;font-size:12px}.search-box input::placeholder{color:#6d8992}.filter-select{font-family:'IBM Plex Mono',monospace;font-size:10px;color:#aec7cc}.equipment-filter summary{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:0;color:#aac6cb}.equipment-options{background:#12212c;box-shadow:0 20px 35px #0007,inset 0 1px 0 #bbe5d52b;color:#b0c8cb;border-radius:3px}.equipment-options>.eyebrow,.equipment-options p{color:#7da3a5}.equipment-option{font-size:12px;color:#c7dcdd}.equipment-option input{accent-color:#c9dfd7}.equipment-options button{color:#a4d1c3}.view-switch button{color:#75969e;background:transparent;border-radius:2px}.view-switch button.active{background:#bdd9d2;color:#163039}.view-switch button:hover{background:#26454c;color:#e0eee8}
.detail-head h1{color:#dbeae4;font-size:67px;text-shadow:0 0 20px #9fe7d512}.detail-head .eyebrow{color:#769b9e}.detail-meta{color:#8eacb0}.score-orb{clip-path:none;border-radius:3px;background:#10242b;box-shadow:inset 0 1px 0 #bdedd41c;color:#cce9db;width:133px;height:133px}.score-orb strong{font-family:var(--display);color:#c9e9da;font-size:62px;text-shadow:0 0 15px #c4e9d61a}.score-orb span,.score-orb small{color:#7ba29f}.category-item{border-color:#c4e5d713}.category-name{color:#b8d3d2;font-size:12px}.category-name .icon-wrap{clip-path:none;border-radius:2px;background:#1a333d;color:#81ada9}.category-score{color:#c5e3d7;font-family:var(--display);font-size:36px}.category-score small{color:#6d999b}.category-track{background:#c0e5d50b;height:3px}.category-track span{background:#8dbeb0}.notes-list li{color:#aec6c9;font-size:12px;line-height:1.9}.notes-list li:before{background:#7ea99f;transform:none;border-radius:50%;width:4px;height:4px}.review-date{color:#73949d!important}
.notice,.notice.plum,.draft-banner,.editor-sidebar .notice{background:#17303a;color:#a9c8ca;border:0;border-left:2px solid #719d97;border-radius:2px;font-size:11px;line-height:1.8}.notice svg{color:#9fc9bc}.notice strong{color:#d4e6e0}.panel .notice{color:#aac8ca}.draft-banner{padding:13px 18px}
.guide-card h3,.top-card h3{font-family:var(--display);font-size:34px;font-weight:400;color:#d5e7e0}.guide-card p,.top-card p{color:#8da9b1}.guide-card:hover,.top-card:hover{background:#172a35;box-shadow:inset 0 1px 0 #bce8d83b,0 18px 35px #0003;transform:translateY(-3px)}.top-card .region{color:#7298a0}.rank-medal{color:#a0cbc0}.top-score,.mini-score{color:#c7e6d9;font-family:var(--display)}.top-score small{color:#789e9e}.grid-categories{color:#76959e}.grid-categories strong{color:#b3d4c9}.guide-scoring>h2{font-family:var(--display);font-size:44px;color:#d7e9df}.method-grid .panel h3,.guide-scoring>.panel>h3{font-family:var(--display);font-size:34px;color:#c5dfd4}.method-grid .panel ul{color:#8fabb0;line-height:2}.score-formula{color:#789c9b}.score-formula span{background:#1b343b;color:#bcd9ce;border-radius:2px;font-size:12px}.info-list details{border-color:#b5e1cf16}.info-list summary{color:#bfd8d3;font-size:12px;font-family:'IBM Plex Mono',monospace}.info-list summary:after{color:#87b1a4}.info-list details p{color:#8fadb3;font-size:12px}.article-layout h2{font-family:var(--display);color:#c7e1d5;font-size:38px}.article-layout p,.article-layout ul{color:#9eb9bc;font-size:13px}.article-layout .lead{color:#c5dad3;font-size:17px;line-height:1.8}
.map-shell{background:#0c1821;box-shadow:none;border:0;border-radius:3px;overflow:hidden}.map-sidebar{background:#101f2a}.map-sidebar-head{border-color:#a6d4c416}.map-count{color:#6f979e;font-size:10px}.map-gym{border-color:#b3d5ca0e}.map-gym:hover,.map-gym:focus-visible{background:#c8e7d309}.map-gym strong{color:#bed8d4;font-size:12px}.map-gym small{color:#7398a0}.map-gym-score{color:#c2e3d1;font-family:var(--display);font-size:29px}.map-gym>svg{color:#719e98}.map-fit{background:#122a36ed;color:#bad9d2;border-radius:2px;font-family:'IBM Plex Mono',monospace;font-size:10px}.map-fit:hover{background:#24444f}.map-key{background:#0b2029ed;color:#9ebfbb}.map-key span{background:#c4e0d3}.map-status{background:#142d38f2;color:#b7d2cd}.pin-score,.gym-pin.elite .pin-score{background:#d0e5dc;box-shadow:0 3px 12px #0008;color:#16313a;font-family:'IBM Plex Mono',monospace;font-size:14px;font-weight:600;border-radius:2px}.pin-score:after{border-top-color:#d0e5dc}.pin-name{background:#10252ff5;color:#c9e4d7;font-family:'IBM Plex Mono',monospace;font-size:10px}.maplibregl-ctrl-group{background:#cde3d9}.map-empty h3{color:#c3e1d1}.map-empty a{color:#a6d4bf}
.field label,.request-form-panel .field label{color:#9ab9bc;font-family:'IBM Plex Mono',monospace;font-size:11px}.field input,.field select,.field textarea,.request-form-panel .field input,.request-form-panel .field select,.request-form-panel .field textarea{background:#08141de0;color:#c5dbdc;font-family:'IBM Plex Mono',monospace;border:0;border-radius:2px;box-shadow:inset 0 -1px 0 #b5e2d324;font-size:12px}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:inset 0 -1px 0 #acd8c5,0 0 15px #b2e2cd0b}.field input::placeholder,.field textarea::placeholder{color:#4f727f}.field small{color:#698f98}.request-form-panel .request-preview-note,.request-preview-note{color:#6e9699;font-size:10px}.request-form-panel .form-error,.form-error,.panel .form-error{color:#eeaaa0}.success-emblem{background:#264c4a;color:#cae7d6}.request-entry .eyebrow{color:#729b9b}.request-reason{border-color:#b8e3d417}.request-entry h2{color:#cee6dc}.request-success p{color:#a4c5c6}
.admin-header{background:#07141de8;border-color:#b3ddcf18;color:#6e929a;font-size:10px}.admin-heading h1{font-family:var(--display);font-size:47px;color:#d0e8dc}.admin-heading p{color:#86a4ac;font-size:12px}.admin-heading .eyebrow,.admin-sidebar .eyebrow{color:#719b9d}.admin-sidebar a{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#85a6ae}.admin-sidebar a.active{background:#1d3a42;color:#c1e0d3;box-shadow:inset 2px 0 0 #a0ccba;border-radius:2px}.admin-sidebar a:hover{color:#d3e8dc;background:#16303a}.admin-sidebar .sidebar-bottom{border-color:#a4d2bd17}.admin-stat small{color:#7299a1}.admin-stat strong{color:#c5e6d4;font-family:var(--display);font-size:48px}.admin-table .updated-label{color:#71969e}.admin-table .row-actions a,.admin-backup .text-link{color:#93bcb1}.admin-backup p{color:#71939c;font-size:11px}.score-preview{background:#132d35;clip-path:none;box-shadow:inset 0 1px 0 #c4e6d51c;border-radius:3px;color:#c5e6d6}.score-preview .eyebrow{color:#719d9e}.score-preview strong{font-family:var(--display);font-size:72px;font-weight:400;color:#c6e9d7}.score-preview p,.editor-sidebar .save-note,.save-note{color:#6d999a}.editor-sidebar .btn{font-size:11px}.editor-sidebar .notice{color:#779ca3}
dialog{background:#12232e;color:#bbd5d2;border-radius:4px;border:0;box-shadow:inset 0 1px 0 #b7e0cd2b,0 30px 90px #0009;font-family:'IBM Plex Mono',monospace}dialog h2{font-family:var(--display);color:#d1e7d9;font-size:42px}dialog p{color:#8cabb1}dialog .eyebrow{color:#7ba8a3}dialog::backdrop{background:#02090fd9;backdrop-filter:blur(5px)}#toast{background:#19343f;color:#c0ded5;font-family:'IBM Plex Mono',monospace;font-size:11px;box-shadow:0 10px 35px #0007;border-radius:3px}.error-page h1{font-family:var(--display);color:#c8e4d6}.error-page p{color:#86a5ac}
body:not(.is-home) a:focus-visible,body:not(.is-home) button:focus-visible,body:not(.is-home) input:focus-visible,body:not(.is-home) select:focus-visible,body:not(.is-home) textarea:focus-visible,body:not(.is-home) summary:focus-visible{outline:2px solid #aedbcc;outline-offset:3px}
@media(min-width:641px) and (max-width:850px){.nav-links a{font-size:10px;padding:10px 12px}}
@media(max-width:640px){.nav-links{background:#11232ef7;box-shadow:0 15px 35px #0008,inset 0 1px 0 #b2ddcc26;border-radius:3px}.nav-links a{font-size:12px;padding:13px 15px}.mobile-menu{font-size:12px}.compact-page .leaderboard-section{padding-top:28px}body:not(.is-home) .compact-head>h1,body:not(.is-home) .board-title{font-size:44px}.board-table .gym-cell a{font-size:11px}.average-cell{font-size:29px}.rank-cell{font-size:25px}.gym-sub{font-size:8px}.board-table th{font-size:9px}.chip{font-size:9px}.search-box input{font-size:11px}.detail-head h1{font-size:44px}.score-orb{width:89px;height:105px}.score-orb strong{font-size:47px}.score-orb span{font-size:8px}.score-orb small{font-size:7px}.category-name{font-size:12px}.category-score{font-size:32px}.panel p,.panel .subcopy,.notes-list li{font-size:12px}.guide-card h3{font-size:32px}.guide-card p{font-size:12px}.method-grid .panel h3,.guide-scoring>.panel>h3{font-size:32px}.guide-scoring>h2{font-size:37px}.score-formula{gap:4px}.score-formula span{font-size:9px;padding:9px 6px}.field input,.field select,.field textarea,.request-form-panel .field input,.request-form-panel .field select,.request-form-panel .field textarea{font-size:14px}.admin-heading h1{font-size:36px}.admin-stat strong{font-size:37px}.admin-stat small{font-size:9px}.admin-sidebar a{font-size:10px}.admin-table .gym-cell a{font-size:10px}.article-layout h2{font-size:32px}.article-layout p{font-size:12px}.btn,.btn.small,.btn.soft{font-size:10px}.pin-score,.gym-pin.elite .pin-score{font-size:13px}.map-gym strong{font-size:12px}.map-gym small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.guide-card:hover,.top-card:hover,.btn:hover{transform:none}}
.equipment-filter summary svg,.equipment-filter .select-chevron{color:#81aaa6}
@media(max-width:640px){.request-form-panel .field-grid{grid-template-columns:1fr}}
.score-sort{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;white-space:nowrap;box-shadow:none;border:0;border-radius:0}.score-sort:hover,.score-sort.is-sorted{color:#dbf0e5}.score-sort:active{color:#93bfb0}.sort-arrow{font-size:15px;line-height:1;color:#6e999a}.score-sort.is-sorted .sort-arrow{color:#cae7d9}.board-table th:has(.score-sort){padding-top:10px;padding-bottom:10px}.leaderboard-section .toolbar .search-box{flex:1;min-width:0}.leaderboard-section #sort-filter{min-width:185px}.board-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#41646a #0e1a23}
@media(max-width:850px){.board-table{min-width:810px}.board-table .numeric-col,.board-table .numeric{display:table-cell}.board-table .gym-cell{min-width:145px}.leaderboard-section .toolbar .search-box{flex-basis:100%}.leaderboard-section #sort-filter{flex:1;min-width:0}.score-sort{gap:6px}.board-table th:has(.score-sort){padding-top:8px;padding-bottom:8px}}
@media(max-width:850px){.board-table th:nth-child(2),.board-table .gym-cell{position:sticky;left:0;z-index:2;box-shadow:4px 0 9px #0002}.board-table th:nth-child(2){background:#152630}.board-table .gym-cell{background:#0e1a23}}
.map-score-filter{padding-top:22px}.map-score-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;line-height:1.5;color:#aac7c9}.map-score-label label{cursor:pointer}.map-score-label output{font-size:13px;font-weight:500;color:#cde6da;min-width:42px;text-align:right;font-variant-numeric:tabular-nums}.map-score-filter input[type="range"]{appearance:none;-webkit-appearance:none;display:block;width:100%;height:28px;margin:8px 0 0;background:transparent;padding:0;cursor:pointer;touch-action:pan-y;accent-color:#c7e3d5}.map-score-filter input[type="range"]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,#a8cfc0 0 var(--score-progress),#29424c var(--score-progress) 100%)}.map-score-filter input[type="range"]::-moz-range-track{height:4px;background:#29424c;border-radius:2px}.map-score-filter input[type="range"]::-moz-range-progress{height:4px;background:#a8cfc0;border-radius:2px}.map-score-filter input[type="range"]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;border-radius:50%;border:0;margin-top:-6px;background:#cde6d9;box-shadow:0 0 12px #a7ddc530;transition:box-shadow .15s}.map-score-filter input[type="range"]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:0;background:#cde6d9;box-shadow:0 0 12px #a7ddc530}.map-score-filter input[type="range"]:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px #b9decd15,0 0 16px #a7ddc540}.map-score-scale{display:flex;justify-content:space-between;color:#62848e;font-size:9px;line-height:1.4}.map-credits{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:9px;margin:11px 2px 0;color:#8ba5ad!important;font-family:'IBM Plex Mono',monospace;font-size:10px;line-height:1.7}.map-credits a{color:#96b2b9}.map-credits a:hover{color:#d2e6df;text-decoration:underline}.map-sidebar-head{flex-shrink:0}.map-list{scrollbar-color:#456a70 #101f2a}
@media(max-width:640px){.map-sidebar{height:365px}.map-score-filter{padding-top:17px}.map-score-label{font-size:11px}.map-score-filter input[type="range"]{height:32px}.map-credits{font-size:9px;margin-top:12px}.map-score-scale{font-size:9px}}
@media(max-width:640px){.map-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 430px 235px}.map-sidebar{display:contents}.map-sidebar-head{grid-row:1;background:#101f2a}.map-stage{grid-row:2}.map-list{grid-row:3;max-height:235px;background:#101f2a}}
.criteria-page .method-grid{margin-top:0;margin-bottom:24px}.criteria-page .numbers-panel{width:100%;max-width:none;margin:0}.criteria-page .numbers-panel>h2{font-size:38px}.criteria-tiers{width:100%;border-collapse:collapse;margin:22px 0 24px}.criteria-tiers th,.criteria-tiers td{background:transparent;color:#b3cecf;border:0;border-bottom:1px solid #c3e5d710;padding:15px 0;font-family:'IBM Plex Mono',monospace;font-size:12px;line-height:1.6;font-weight:400;letter-spacing:0;text-align:left}.criteria-tiers thead th{color:#70939d;text-transform:uppercase;font-size:10px;padding-top:0;padding-bottom:11px}.criteria-tiers th:last-child,.criteria-tiers td:last-child{text-align:right;font-variant-numeric:tabular-nums;color:#c7e4d7}.criteria-tiers tbody tr:first-child th{color:#cce8db}.criteria-tiers tbody th{padding-right:20px}.criteria-page .info-list{margin-top:8px}.criteria-page .info-list details{border-bottom:0}.criteria-page .info-list summary{padding-bottom:0}
@media(max-width:640px){body:not(.is-home) .criteria-page .compact-head>h1{font-size:38px;letter-spacing:.01em}.criteria-page .method-grid{margin-bottom:18px}.criteria-tiers th,.criteria-tiers td{font-size:11px;padding:14px 0}.criteria-tiers tbody th{padding-right:10px}.criteria-tiers thead th{font-size:9px}.criteria-page .numbers-panel>h2{font-size:34px}}
body:not(.is-home) .empty-state{background:#101e28;color:#dfebe8;border:0;border-radius:3px;clip-path:none;box-shadow:inset 0 1px 0 #c7f2e613,0 14px 40px #0002;padding:55px 25px}
body:not(.is-home) .empty-state h2,body:not(.is-home) .empty-state h3{color:#dfebe8;text-shadow:none}
body:not(.is-home) .empty-state p{color:#a6bec5;font-size:13px;line-height:1.8;max-width:520px;margin:0 auto 24px}
.empty-state .btn.soft{background:#cfe3dd;color:#10272e;box-shadow:none}.empty-state .btn.soft:hover{background:#e2f0e8;color:#10272e}
@media(max-width:640px){body:not(.is-home) .empty-state{padding:38px 22px}body:not(.is-home) .empty-state h3{font-size:30px}body:not(.is-home) .empty-state p{font-size:12px}}
/* Keep pages and table columns steady when visible content changes. */
html{scrollbar-gutter:stable}
.board-table{table-layout:fixed;width:100%;min-width:1020px}
.board-table th,.board-table td{padding-left:16px;padding-right:16px}
.board-table th:nth-child(1){width:7%}.board-table th:nth-child(2){width:26%}.board-table th.numeric-col{width:12%}.board-table th.verdict-col{width:17%}.board-table th:last-child{width:14%}
.board-table th:first-child,.board-table td:first-child{padding-left:20px}.board-table th:last-child,.board-table td:last-child{padding-left:16px;padding-right:16px}
@media(max-width:850px){.board-table{min-width:810px}.board-table th,.board-table td{padding-left:8px;padding-right:8px}.board-table th{font-size:9px}.board-table th:first-child,.board-table td:first-child{padding-left:12px}.board-table .score-sort{gap:4px}.board-table .sort-arrow{font-size:13px}}

.gym-brand{display:block;margin-top:5px;color:#9fb8bd;font-size:11px;line-height:1.5;font-weight:400}.map-gym .map-gym-brand{color:#9fb8bd;margin-top:4px}.gym-brand+.gym-sub{margin-top:3px}
@media(max-width:640px){.gym-brand{font-size:10px}}

/* Approved polish: restrained hierarchy, responsive rankings and interaction. */
:root{--elite:#f2c96b;--approved:#a9d7c3;--mid:#e1eceb;--denied:#dea49d}
body:not(.is-home) .gym-grid .top-card,body:not(.is-home) .gym-grid .top-card:first-child{background:#0e1a23ed;border-radius:3px;clip-path:none;box-shadow:inset 0 1px 0 #c7f2e613,0 14px 40px #0002;color:#d4e3e3}
body:not(.is-home) .gym-grid .top-card:hover,body:not(.is-home) .gym-grid .top-card:focus-visible{background:#172b35;box-shadow:inset 2px 0 0 #a9d7c38c,0 10px 28px #0003;transform:translateY(-1px)}
.top-card{transition:background .38s cubic-bezier(.22,.61,.36,1),box-shadow .38s cubic-bezier(.22,.61,.36,1),transform .38s cubic-bezier(.22,.61,.36,1)}.top-card .region{font-size:12px;color:#a0b9c0}.grid-categories{font-size:12px;color:#9ab5bd}.rank-medal{font-size:12px}
.nav-links a{font-size:12px;padding-inline:16px}.panel p,.panel .subcopy,.panel ul,.panel li,.notes-list li{font-size:14px;color:#b6c9ce}.gym-brand{color:#aac2c6;font-size:12px}.gym-sub,.gym-sub svg{color:#8da9b2}.gym-sub{font-size:10px}.board-table .gym-cell a,.admin-table .gym-cell a{font-size:13px}.board-table th,.admin-table th{color:#a5bfc4;font-size:11px}.board-table td.numeric{font-size:13px}.board-table .rank-cell small{font-size:9px;color:#8ba5ad}
.leaderboard-section #sort-filter{flex:0 0 264px;width:264px;min-width:264px;font-size:12px;padding-left:15px;padding-right:36px;overflow:visible;text-overflow:clip}.view-switch{flex-shrink:0}.view-switch button{min-width:40px;min-height:42px}.chip{font-size:11px;min-height:40px}.filter-chips{gap:8px}.search-box input{font-size:13px}.search-box input::placeholder{color:#89a7af}
body:not(.is-home) .search-box:focus-within{outline:2px solid #aedbcc;outline-offset:3px;box-shadow:none}body:not(.is-home) .search-box input:focus{outline:none;box-shadow:none}.field input:focus,.field select:focus,.field textarea:focus,.request-form-panel .field input:focus,.request-form-panel .field select:focus,.request-form-panel .field textarea:focus{outline:2px solid #aedbcc;outline-offset:3px;box-shadow:none}.field label,.request-form-panel .field label{font-size:12px;color:#b2ccce}.field input,.field select,.field textarea,.request-form-panel .field input,.request-form-panel .field select,.request-form-panel .field textarea{font-size:14px}.field input::placeholder,.field textarea::placeholder{color:#7f9ba5}.field small{font-size:11px;color:#8ba7af}.btn,.btn.small,.btn.soft,.btn.white,.btn.lime{font-size:12px}
[data-verdict="elite"],[data-feature="elite"]{--tier:var(--elite);--tier-bg:#e7b44d24}[data-verdict="approved"],[data-feature="approved"]{--tier:var(--approved);--tier-bg:#a9d7c318}[data-verdict="mid"],[data-feature="mid"]{--tier:var(--mid);--tier-bg:#dce8e913}[data-verdict="denied"],[data-feature="denied"]{--tier:var(--denied);--tier-bg:#dea49d17}
.pill.verdict-badge,.detail-meta .pill.verdict-badge,.top-card .pill.verdict-badge,.verdict-cell .pill.verdict-badge{color:var(--tier,#b9dcd0);background:var(--tier-bg,#203b43);font-size:10px;padding:6px 9px;line-height:1.5}.pill.verdict-badge:before{display:none;content:none}.pill[data-verdict="elite"]:before{display:none}.chip[data-feature]:not([data-feature="all"]){color:var(--tier);background:var(--tier-bg)}.chip.active[data-feature]:not([data-feature="all"]),.chip.active[data-feature]:not([data-feature="all"]):hover{background:var(--tier);color:#13242a}.chip:hover{filter:brightness(1.12)}
.board-table tbody tr[data-gym-href]{cursor:pointer;transition:background-color .38s cubic-bezier(.22,.61,.36,1),box-shadow .38s cubic-bezier(.22,.61,.36,1)}.board-table .gym-cell{transition:background-color .38s cubic-bezier(.22,.61,.36,1);background:#0e1a23}.board-table tbody tr[data-gym-href]:hover,.board-table tbody tr[data-gym-href]:focus-within{background:#142934;box-shadow:inset 2px 0 0 #a9d7c38c}.board-table tbody tr:hover .gym-cell,.board-table tbody tr:focus-within .gym-cell{background:#142934}.row-arrow a{min-height:34px;min-width:34px}.board-table .score-sort{gap:6px}.mobile-board{display:none}
.board-shell,.gym-grid{animation:results-in .18s ease-out}.page-enter{animation:page-enter .22s ease-out both}.reveal{transition:opacity .3s ease,transform .3s ease;transform:translateY(8px)}@keyframes results-in{from{opacity:.65}to{opacity:1}}
.detail-head{justify-content:flex-start;gap:32px;align-items:center;padding:0}.detail-title{min-width:0}.detail-head h1{font-size:60px;margin:8px 0 13px}.detail-head .score-orb{width:108px;height:108px;order:1;margin-left:0}.score-orb strong{font-size:56px}.score-orb span{font-size:11px;color:#a8c9c4}.detail-meta{font-size:12px;gap:10px}.page-head:has(.detail-head){padding-top:30px;padding-bottom:25px}.page-head:has(.detail-head) .back-link{margin-bottom:20px;font-size:12px}.detail-summary{margin:18px 0 0!important;text-align:left!important;max-width:720px!important;color:#afc5cb!important;font-size:14px!important}.detail-layout.simplified-detail{max-width:none;padding-top:0}.category-item{padding:20px 0}.category-name{font-size:14px}.category-score{font-size:35px}.notes-list{margin-top:18px}.notes-list li{line-height:1.85;padding-left:19px;margin-bottom:16px}.notes-list strong{font-weight:600;color:#e0eae6}.review-date{font-size:12px!important}.gym-socials{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px;padding-top:19px;box-shadow:inset 0 1px 0 #c7e4dc12}.panel .gym-socials a{display:inline-flex;gap:9px;align-items:center;min-height:44px;padding:8px 13px;color:#b4cdcb;font-size:12px;background:#182e37;border-radius:3px;transition:background .18s,color .18s,box-shadow .18s}.panel .gym-socials a:hover{background:#24434a;color:#e3f1e8;box-shadow:0 0 16px #b3e4ce10}.gym-socials svg{width:17px;height:17px}
.review-media{max-width:1180px;margin:0 auto 24px;border-radius:3px;overflow:hidden;background:#0d1d27}.review-media>a{display:block;position:relative}.review-media img{width:100%;height:clamp(200px,28vw,350px);object-fit:cover}.media-play{display:inline-flex;gap:9px;align-items:center;position:absolute;left:18px;bottom:18px;background:#0a1c27ed;color:#e1eee8;padding:10px 14px;font-size:12px;border-radius:3px}.media-play svg{width:16px;height:16px}.review-media a:hover .media-play{background:#cfe3dd;color:#10272e}.criteria-tiers th,.criteria-tiers td{font-size:13px}.criteria-tiers thead th{font-size:11px}.criteria-tiers tbody th{padding-right:8px}.criteria-page .method-grid .panel{padding:27px}.criteria-page .method-grid ul{font-size:14px;color:#adc3c8;line-height:2}.score-formula{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:13px}.score-formula span{font-size:13px;padding:12px 17px;color:#c7ded8}
.editor-fold{padding:0!important}.editor-fold>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 27px;color:#dbece6;font-family:var(--display);font-size:31px;line-height:1.2}.editor-fold>summary::-webkit-details-marker{display:none}.editor-fold>summary:after{content:'+';font-family:'IBM Plex Mono',monospace;font-size:19px;color:#a7cfc0}.editor-fold[open]>summary:after{content:'−'}.editor-fold-body{padding:0 27px 10px}.editor-media{margin-top:24px;box-shadow:inset 0 1px 0 #c7f2e616}.editor-media>summary{font-size:26px;padding:21px 0}.editor-media .editor-fold-body{padding-inline:0}.editor-image-preview{width:100%;max-height:210px;object-fit:cover;border-radius:3px;margin:15px 0}.image-status{font-size:12px!important;margin-top:10px}.image-remove{background:transparent;padding:0;min-height:40px;cursor:pointer}.mobile-editor-save{display:none}.admin-sidebar a{font-size:12px}.admin-heading p{font-size:13px}.admin-stat small{font-size:12px}.admin-table .updated-label{font-size:11px}.admin-table .row-actions a{font-size:12px}.editor-sidebar .btn{font-size:12px}
.request-success.just-saved .success-emblem{animation:success-pop .4s cubic-bezier(.2,.8,.3,1) both}.request-success.just-saved .success-emblem path{stroke-dasharray:30;animation:check-draw .5s ease-out both}.request-success.just-saved h2{animation:results-in .25s ease-out both}@keyframes success-pop{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes check-draw{from{stroke-dashoffset:30}to{stroke-dashoffset:0}}
/* Avoid a transformed page becoming the containing block for the fixed save bar. */
.page-enter{animation:page-enter .22s ease-out}@keyframes page-enter{from{opacity:0}to{opacity:1}}
.pill.verdict-badge svg{width:13px;height:13px}.panel .editor-media .image-status{font-size:12px}.editor-media input[name="imageSrc"]{font-size:12px}
[data-verdict="elite"],[data-feature="elite"]{--tier-fill:linear-gradient(120deg,#f1ce78,#dca746);--tier-ink:#2e2517;--tier-glow:#e7b74b18}
[data-verdict="approved"],[data-feature="approved"]{--tier-fill:linear-gradient(120deg,#bce7d3,#79bda0);--tier-ink:#142e25;--tier-glow:#79bda018}
[data-verdict="mid"],[data-feature="mid"]{--tier-fill:linear-gradient(120deg,#e5efed,#b9cdca);--tier-ink:#1e3032;--tier-glow:#c9dfda14}
[data-verdict="denied"],[data-feature="denied"]{--tier-fill:linear-gradient(120deg,#efbcb3,#cc8e86);--tier-ink:#312220;--tier-glow:#d6999018}
.pill.verdict-badge,.detail-meta .pill.verdict-badge,.top-card .pill.verdict-badge,.verdict-cell .pill.verdict-badge{background:var(--tier-fill,var(--tier-bg));color:var(--tier-ink,var(--tier));font-weight:600;box-shadow:0 0 16px var(--tier-glow,transparent)}
.filter-chips .chip[data-feature]:not([data-feature="all"]){position:relative;background:var(--tier-fill);color:var(--tier-ink);font-weight:600;opacity:.86;box-shadow:0 0 14px var(--tier-glow);transition:opacity .25s,filter .25s,box-shadow .25s}
.filter-chips .chip[data-feature]:not([data-feature="all"]):after{content:'';position:absolute;left:12px;right:12px;bottom:5px;height:2px;border-radius:1px;background:currentColor;opacity:0;transition:opacity .25s}
.filter-chips .chip.active[data-feature]:not([data-feature="all"]),.filter-chips .chip.active[data-feature]:not([data-feature="all"]):hover{background:var(--tier-fill);color:var(--tier-ink);opacity:1;box-shadow:0 0 18px var(--tier-glow)}
.filter-chips .chip.active[data-feature]:not([data-feature="all"]):after{opacity:.8}
.filter-chips .chip[data-feature]:not([data-feature="all"]):hover{opacity:1;filter:brightness(1.05)}
.chip[data-feature="elite"]{font-weight:600}.chip.active[data-feature="elite"]{box-shadow:0 0 18px #e7b74b1a}
@media(min-width:641px) and (max-width:1100px){.nav-links a{font-size:11px;padding-inline:12px}.leaderboard-section #sort-filter{flex-basis:246px;width:246px;min-width:246px}.board-table th{font-size:10px}}
@media(max-width:850px){.leaderboard-section #sort-filter{flex:1 1 auto;width:auto;min-width:0}.board-table th{font-size:10px}.score-formula span{font-size:12px;padding:10px 12px}}
@media(max-width:640px){
 .nav-links a{font-size:13px;min-height:46px}.mobile-menu{font-size:13px}.chip{font-size:11px;min-height:42px}.leaderboard-section #sort-filter{font-size:12px}.toolbar{gap:10px}.search-box input{font-size:12px}.board-shell>.board-scroll{display:none}.mobile-board{display:grid;gap:12px;padding:0;background:#060e16}.board-shell:has(.mobile-board){background:transparent;box-shadow:none;overflow:visible}.mobile-gym{background:#10212b;border-radius:3px;box-shadow:inset 0 1px 0 #d3eee512;min-width:0}.mobile-gym-link{display:grid;grid-template-columns:29px minmax(0,1fr) auto;gap:9px;align-items:center;padding:18px 15px 12px;transition:background .16s}.mobile-gym-link:hover,.mobile-gym-link:focus-visible{background:#1c3440}.mobile-rank{font-family:var(--display);font-size:25px;color:#9cbbb8}.mobile-gym-name{min-width:0}.mobile-gym-name strong{display:block;color:#dfede8;font-size:14px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}.mobile-gym-name>span{display:block;color:#9fb9bf;font-size:11px;line-height:1.6;margin-top:4px}.mobile-average{display:flex;align-items:baseline;gap:3px;color:#d7eee1;font-family:var(--display);font-size:37px;line-height:1;white-space:nowrap}.mobile-average small{font:10px 'IBM Plex Mono',monospace;color:#8eabae}.mobile-gym-bottom{padding:0 15px 12px 53px}.mobile-gym-bottom>.pill{font-size:10px}.mobile-scores{margin-top:6px}.mobile-scores summary{display:flex;align-items:center;justify-content:space-between;list-style:none;min-height:40px;font-size:11px;color:#a0c1c2;cursor:pointer;gap:10px}.mobile-scores summary::-webkit-details-marker{display:none}.mobile-scores summary:after{content:'+';font-size:16px;color:#bed9cd}.mobile-scores[open] summary:after{content:'−'}.mobile-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px 0 10px}.mobile-category-grid>span{color:#95b1b8;font-size:9px;line-height:1.6}.mobile-category-grid strong{display:block;font-family:var(--display);font-size:27px;font-weight:400;color:#d2e8dc}.mobile-category-grid small{font:9px 'IBM Plex Mono',monospace;color:#8ba5ab}.gym-grid{grid-template-columns:minmax(0,1fr)}.panel p,.panel .subcopy,.notes-list li{font-size:13px}.panel .gym-socials a{font-size:12px}.detail-head{gap:15px;align-items:flex-start}.detail-title{flex:1}.detail-head h1{font-size:42px;line-height:1.05;overflow-wrap:anywhere}.detail-head .eyebrow{font-size:10px;line-height:1.6}.detail-head .score-orb{width:79px;height:92px;flex-shrink:0;margin-top:17px}.score-orb strong{font-size:44px}.score-orb span{font-size:9px}.detail-meta{font-size:10px;gap:8px}.detail-meta .pill.verdict-badge{font-size:9px;padding:5px 7px}.detail-summary{font-size:13px!important;line-height:1.8!important;margin-top:16px!important}.page-head:has(.detail-head){padding-top:22px;padding-bottom:22px}.page-head:has(.detail-head) .back-link{margin-bottom:17px;font-size:12px}.category-name{font-size:13px}.category-item{padding:17px 0}.notes-list li{margin-bottom:13px}.criteria-page .method-grid{gap:12px}.criteria-page .method-grid .panel{padding:21px 23px}.criteria-page .method-grid .panel h2{font-size:31px;margin-bottom:11px}.criteria-page .method-grid ul{font-size:13px;line-height:1.85}.criteria-page .numbers-panel{padding:23px}.score-formula{gap:6px;font-size:11px}.score-formula span{padding:10px 7px;font-size:10px}.criteria-tiers .verdict-badge{font-size:10px;padding:5px 7px}.criteria-tiers th,.criteria-tiers td{font-size:12px}.criteria-tiers thead th{font-size:10px}.field input,.field select,.field textarea,.request-form-panel .field input,.request-form-panel .field select,.request-form-panel .field textarea{font-size:16px}.field label,.request-form-panel .field label{font-size:12px}.btn,.btn.small,.btn.soft{font-size:12px}.editor-fold>summary{padding:21px 23px;font-size:29px}.editor-fold-body{padding:0 23px 5px}.editor-media>summary{padding:20px 0;font-size:26px}.editor-media .editor-fold-body{padding-inline:0}.mobile-editor-save{display:flex;position:fixed;bottom:12px;left:16px;right:31px;z-index:35;gap:12px;align-items:center;justify-content:space-between;padding:12px;background:#16303bed;backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #c8e9d92e,0 7px 30px #0008;border-radius:4px}.mobile-editor-save>span{color:#a2c2c3;font-size:10px;line-height:1.4}.mobile-editor-save strong{display:inline-block;font-family:var(--display);font-size:28px;font-weight:400;color:#d1ebdc;margin-left:5px}.mobile-editor-save small{font-size:9px}.mobile-editor-save .btn{min-height:44px;padding-inline:15px;font-size:12px;gap:8px}#gym-editor{padding-bottom:95px}.editor-sidebar .save-note{font-size:11px}.admin-stat small{font-size:10px}.admin-sidebar a{font-size:11px}.review-media{margin-bottom:18px}.review-media img{height:200px}.gym-socials{gap:9px}
}
@media(max-width:360px){.mobile-gym-link{padding-inline:12px;grid-template-columns:25px minmax(0,1fr) auto;gap:7px}.mobile-gym-name strong{font-size:13px}.mobile-average{font-size:33px}.mobile-gym-bottom{padding-left:44px}.mobile-category-grid>span{font-size:8px}.mobile-editor-save{left:12px;right:27px}.mobile-editor-save .btn{font-size:11px;padding-inline:12px}.score-formula{gap:4px}.score-formula span{font-size:9px;padding-inline:5px}}
@media(max-width:640px){.filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.filter-chips .chip{justify-content:center;padding-inline:8px}.filter-chips .chip[data-feature="all"]{grid-column:1/-1;min-height:36px}.mobile-gym-bottom{padding-bottom:8px}.mobile-scores summary{min-height:36px}}
@media(max-width:640px){.editor-panel>.field-grid,.editor-fold-body>.field-grid{grid-template-columns:minmax(0,1fr)}}
.formula-sum{display:flex;align-items:center;gap:9px;white-space:nowrap}.score-formula .formula-divisor{background:transparent;padding:0;color:#a5c4c1;white-space:nowrap}
.criteria-tiers tbody tr:hover{background:transparent}
@media(max-width:640px){.score-formula{flex-direction:column;align-items:flex-start;gap:9px}.formula-sum{gap:5px;font-size:10px}.formula-sum span{padding:10px 5px;font-size:10px}.score-formula .formula-divisor{align-self:center;font-size:12px}}
@media(max-width:360px){.formula-sum{gap:3px;font-size:9px}.formula-sum span{font-size:9px;padding-inline:4px}}
.gym-pin{opacity:1;visibility:visible;transition:opacity .3s cubic-bezier(.22,.61,.36,1),visibility 0s linear 0s!important}
.gym-pin.is-filtered-out{opacity:0!important;visibility:hidden;pointer-events:none;transition:opacity .3s cubic-bezier(.22,.61,.36,1),visibility 0s linear .3s!important}
@media(prefers-reduced-motion:reduce){.gym-pin,.gym-pin.is-filtered-out,.gym-pin .pin-score,.gym-pin .pin-name{transition:none!important}}
@media(prefers-reduced-motion:reduce){.page-enter,.board-shell,.gym-grid,.reveal,.request-success.just-saved .success-emblem,.request-success.just-saved .success-emblem path,.request-success.just-saved h2{animation:none!important;transition:none!important;transform:none!important}.top-card:hover,.top-card:focus-visible{transform:none!important}.gym-pin.is-linked .pin-score{scale:1}.board-table tbody tr,.board-table .gym-cell,.mobile-gym-link,.gym-socials a{transition:none}}

/* Audit 2: compact rankings keep averages in view on tablets as well as phones. */
@media(min-width:641px) and (max-width:900px){
 .board-shell>.board-scroll{display:none}.board-shell:has(.mobile-board){background:transparent;box-shadow:none;overflow:visible}.mobile-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:transparent}.mobile-gym{background:#10212b;border-radius:3px;box-shadow:inset 0 1px 0 #d3eee512;min-width:0}.mobile-gym-link{display:grid;grid-template-columns:29px minmax(0,1fr) auto;gap:9px;align-items:center;padding:18px 15px 12px;transition:background .38s}.mobile-gym-link:hover,.mobile-gym-link:focus-visible{background:#1c3440}.mobile-rank{font-family:var(--display);font-size:25px;color:#9cbbb8}.mobile-gym-name{min-width:0}.mobile-gym-name strong{display:block;color:#dfede8;font-size:14px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}.mobile-gym-name>span{display:block;color:#9fb9bf;font-size:11px;line-height:1.6;margin-top:4px}.mobile-average{display:flex;align-items:baseline;gap:3px;color:#d7eee1;font-family:var(--display);font-size:37px;line-height:1;white-space:nowrap}.mobile-average small{font:10px 'IBM Plex Mono',monospace;color:#8eabae}.mobile-gym-bottom{padding:0 15px 10px 53px}.mobile-gym-bottom>.pill{font-size:10px}.mobile-scores{margin-top:6px}.mobile-scores summary{display:flex;align-items:center;justify-content:space-between;list-style:none;min-height:40px;font-size:11px;color:#a0c1c2;cursor:pointer;gap:10px}.mobile-scores summary::-webkit-details-marker{display:none}.mobile-scores summary:after{content:'+';font-size:16px;color:#bed9cd}.mobile-scores[open] summary:after{content:'−'}.mobile-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px 0 10px}.mobile-category-grid>span{color:#95b1b8;font-size:9px;line-height:1.6}.mobile-category-grid strong{display:block;font-family:var(--display);font-size:27px;font-weight:400;color:#d2e8dc}.mobile-category-grid small{font:9px 'IBM Plex Mono',monospace;color:#8ba5ab}
}

/* Audit 5: reserve the tick's space so selection never changes chip widths. */
.filter-chips .chip[data-feature]{position:relative;padding-left:30px;padding-right:14px}
.filter-chips .chip[data-feature]:before{content:'';display:block;position:absolute;left:10px;top:50%;translate:0 -50%;width:13px;height:13px;box-sizing:border-box;border:1px solid currentColor;border-radius:2px;text-align:center;line-height:11px;font-size:11px;font-weight:600;opacity:.7;transition:opacity .25s}
.filter-chips .chip.active[data-feature]:before{content:'✓';opacity:1}
.filter-chips .chip[data-feature]:not([data-feature="all"]):after{display:none}
@media(prefers-reduced-motion:reduce){.filter-chips .chip[data-feature]:before{transition:none}}

/* Audit 8: useful arrival information, kept compact under the review heading. */
.gym-location-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:16px;color:#a9c1c7;font-size:12px;line-height:1.7}.gym-location-row .btn{min-height:40px;padding:9px 14px;font-size:12px}.gym-location-row>span{max-width:650px}

/* Audit 11: keep every pin; link list focus to its exact location. */
.map-list-entry{display:flex;align-items:stretch;border-bottom:1px solid #b3d5ca0e}.map-list-entry .map-gym{flex:1;min-width:0;border-bottom:0;padding-right:8px}.map-focus{flex:0 0 44px;width:44px;min-height:44px;background:transparent;color:#a0c9c3;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s,color .25s}.map-focus svg{width:18px;height:18px}.map-focus:hover,.map-focus:focus-visible{background:#24434a;color:#e3f1e8}.map-list-entry.is-linked{background:#1b3540}.gym-pin.is-linked{z-index:30}.gym-pin.is-linked .pin-score{scale:1.1;filter:brightness(1.1);box-shadow:0 0 0 2px #b6e6d5,0 4px 18px #0008}.gym-pin.is-linked .pin-name{opacity:1}.pin-name{max-width:220px;white-space:normal;text-align:center;min-width:120px;line-height:1.5}
/* Audit 12: fit the main map to the screen, retaining the list below on phones. */
.map-page{padding-bottom:14px}.map-page .compact-head{padding:20px 0 16px}.map-shell{height:clamp(330px,calc(100dvh - 220px),850px);min-height:330px}.map-credits{margin-top:10px;margin-bottom:0}
@media(max-width:640px){.map-page .compact-head{padding:16px 0 14px}.map-shell{height:auto;min-height:0;grid-template-rows:auto clamp(230px,calc(100dvh - 410px),420px) 170px}.map-stage{height:100%}.map-sidebar-head{padding:12px}.map-score-filter{padding-top:12px}.map-count{padding-top:8px}.map-list{max-height:170px}.map-focus{flex-basis:44px}.map-list-entry .map-gym{padding-top:12px;padding-bottom:12px}.map-credits{font-size:9px}}
@media(prefers-reduced-motion:reduce){.map-focus{transition:none}.gym-pin.is-linked .pin-score{scale:1}}

/* Audit 13: existing gyms can be selected without restricting new submissions. */
.gym-visit-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.gym-visit-actions .revisit-link{font-size:12px;min-height:40px}.request-matches{margin:-2px 0 20px;display:grid;gap:6px}.request-matches[hidden]{display:none}.request-match{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;text-align:left;padding:11px 14px;background:#1b3440;color:#dcece5;border-radius:3px;cursor:pointer;font-size:13px;transition:background .25s}.request-match small{display:block;margin-top:4px;color:#99b8bf;font-size:11px}.request-match>span:last-child{font-size:10px;color:#abd4c4}.request-match:hover,.request-match:focus-visible{background:#294b54}.panel .request-match-status{color:#b8d9cd;font-size:12px;margin:0 0 20px}.request-match-status[hidden]{display:none}

/* Audit 15: automatic verdicts stay visible beside the live score preview. */
.live-verdict{margin-top:14px;font-size:12px;color:#a8c5c7}.verdict-calculation{font-size:12px!important;color:#a9c6c7!important;line-height:1.8}.verdict-calculation strong{color:#d9e9df}.verdict-warning{font-size:12px!important;color:#f1ce78!important;padding:12px 14px;background:#e7b44d14;border-radius:3px;line-height:1.8}.verdict-warning[hidden],#verdict-override-field[hidden]{display:none}#mobile-live-verdict{display:block;font-size:10px;color:#b9d9cf;margin-top:3px;line-height:1.4}.mobile-editor-save>span{min-width:0}.mobile-editor-save .btn{flex-shrink:0}

@media(max-width:640px){.leaderboard-section #sort-filter{flex:1 1 0;width:0;min-width:0;padding-left:10px;padding-right:28px;font-size:11px}}
@media(max-width:360px){.filter-chips .chip[data-feature]{font-size:10px;padding-left:24px;padding-right:7px;gap:5px;min-height:42px}.filter-chips .chip[data-feature]:before{left:8px;font-size:12px}.filter-chips .chip[data-feature="all"]{min-height:36px}}

@media(max-width:640px){.leaderboard-section #sort-filter{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23b4ceca' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}}
@media(max-width:360px){.leaderboard-section #sort-filter{font-size:10px;padding-left:9px;padding-right:24px}}

/* Score leads every leaderboard view; numbered positions are no longer displayed. */
.board-table th.score-col{width:14%}.board-table th:nth-child(2){width:31%}.board-table th.numeric-col{width:12%}.board-table th.verdict-col,.board-table th:last-child{width:19%}.board-table .score-cell{text-align:left;white-space:nowrap}.board-table .score-cell small{font:10px 'IBM Plex Mono',monospace;margin-left:3px}.board-table .score-col .score-sort{justify-content:flex-start}.board-table .verdict-cell{text-align:left}
.card-score{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--display);font-size:37px;line-height:1;color:#d7eee1}.card-score small{font:10px 'IBM Plex Mono',monospace;color:#8eabae}.top-card .top-card-head{align-items:center;gap:12px}.top-card .region{max-width:100%}
@media(max-width:900px){.mobile-gym-link{grid-template-columns:68px minmax(0,1fr);gap:14px}.mobile-gym-bottom{padding-left:15px}.mobile-average{justify-content:flex-start}.mobile-gym-name strong{line-height:1.5}.mobile-category-grid>span{font-size:10px}}
@media(max-width:360px){.mobile-gym-link{grid-template-columns:62px minmax(0,1fr);gap:10px}.mobile-gym-bottom{padding-left:12px}.filter-chips .chip[data-feature]:before{font-size:11px}}

/* Full category names and score bars make the card view self-explanatory. */
.gym-grid .top-card{display:flex;flex-direction:column;min-height:365px}.gym-grid .top-card h3{max-width:100%;line-height:1.15}.gym-grid .top-card .region{line-height:1.6}.gym-grid .grid-categories{display:grid;grid-template-columns:minmax(0,1fr);gap:15px;margin-top:auto;padding-top:24px}.grid-category{min-width:0}.grid-category-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px;line-height:1.5;color:#a9c5ca}.grid-category-heading strong{font-size:14px;font-weight:500;color:#d0e7dc;white-space:nowrap}.grid-category-heading strong small{font-size:10px;font-weight:400;color:#8aa9ae;margin-left:4px}.grid-category-track{height:4px;margin-top:8px;background:#c2e6dc12;border-radius:2px;overflow:hidden}.grid-category-track>span{display:block;height:100%;background:#85ada5;border-radius:2px}.grid-category-heading .grid-category-unknown{font-size:11px;color:#8aa9ae}
@media(max-width:640px){.gym-grid .top-card{min-height:350px}.grid-category-heading{font-size:13px}.gym-grid .grid-categories{gap:15px}}

/* Season honours sit with the gym name, separate from its current score verdict. */
.gym-name-row,.gym-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px 9px;min-width:0}.gym-title-name{min-width:0}.season-badge{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:500;line-height:1.5;letter-spacing:0;padding:3px 7px;border-radius:3px;vertical-align:middle;text-transform:none}.season-finalist,.gym-pin[data-season="finalist"]{--honour-ink:#eedfff;--honour-fill:#392b57;--honour-line:#c293ed85;--honour-glow:#a16cda12}.season-winner,.gym-pin[data-season="winner"]{--honour-ink:#ffe7a9;--honour-fill:#4b4022;--honour-line:#efc56a85;--honour-glow:#e7b44d12}.season-finalist,.season-winner{color:var(--honour-ink);background:var(--honour-fill);box-shadow:inset 0 0 0 1px var(--honour-line),0 0 12px var(--honour-glow)}.detail-head .season-badge{font-size:10px;padding:4px 8px}.gym-grid .top-card .season-badge{font-size:9px}.mobile-gym-name>.gym-name-row{margin-top:0;line-height:1.5}.mobile-gym-name .season-badge{font-size:9px}.map-name-row{gap:5px 7px}.map-name-row .season-badge{font-size:8px;padding:3px 5px}.map-name-row>strong{min-width:0}.detail-head h1.gym-title-line{gap:10px 14px}

/* Map score tags share the exact Season 1 badge colours. */


/* Smooth control surfaces: no screen-wide scanlines or map detail showing through. */
.filter-chips .chip[data-feature]:not([data-feature="all"]){opacity:1}

/* One outlined shape includes both the score card and its pointer. */
.gym-pin{--pin-fill:var(--honour-fill,#234239);--pin-ink:var(--honour-ink,#d0efdf);--pin-line:var(--honour-line,#a3d4ba85)}
.gym-pin .pin-score,.gym-pin.elite .pin-score,.gym-pin[data-season] .pin-score,.gym-pin.is-linked .pin-score{position:relative;height:42px;padding-bottom:8px;box-sizing:border-box;background:transparent;box-shadow:none;border-radius:0;color:var(--pin-ink);isolation:isolate}
.gym-pin .pin-score:after{display:none;content:none}.pin-shape{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 3px 7px #0008)}.pin-shape path{fill:var(--pin-fill);stroke:var(--pin-line);stroke-width:1.25;stroke-linejoin:round}.pin-value{position:relative;z-index:1}
.gym-pin.is-linked .pin-shape path,.gym-pin:hover .pin-shape path,.gym-pin:focus-visible .pin-shape path{stroke:var(--pin-ink);stroke-width:1.6}
@media(max-width:640px){.gym-pin .pin-score,.gym-pin.elite .pin-score,.gym-pin[data-season] .pin-score,.gym-pin.is-linked .pin-score{height:40px}}

/* Direct review videos are distinct from the profile links at the end of notes. */
.gym-review-cta{margin-top:26px;padding-top:22px;box-shadow:inset 0 1px 0 #c7e4dc12}.gym-review-cta h3{font-family:var(--display);font-size:28px;font-weight:400;line-height:1.2;margin:0 0 14px;color:#dfede8}.gym-review-cta .gym-socials{margin-top:0;padding-top:0;box-shadow:none}.panel .gym-review-cta .gym-socials a{color:#cce2dc;transition:background .25s,color .25s}.panel .gym-review-cta .gym-socials a:hover,.panel .gym-review-cta .gym-socials a:focus-visible{background:#294952;color:#edf5ed}
@media(prefers-reduced-motion:reduce){.panel .gym-review-cta .gym-socials a{transition:none}}

.editor-score-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.editor-score-fields input{font-size:20px;min-height:52px}.structured-notes .field-grid{align-items:start}.structured-notes textarea{min-height:110px}.editor-extra-notes{margin:8px 0 24px}.editor-extra-notes>summary{cursor:pointer;min-height:44px;padding:10px 0;color:#bed6d1;font-size:13px}.editor-extra-notes[open]>.field-grid{margin-top:16px}.editor-panel>h2{margin-bottom:20px}@media(max-width:640px){.editor-score-fields{grid-template-columns:minmax(0,1fr);gap:0}}

.address-combobox{position:relative}.address-search-row{display:flex;gap:9px;align-items:stretch}.address-search-row input{min-width:0;flex:1}.address-search-row .btn{flex-shrink:0;margin:0}.address-results{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:25;max-height:310px;overflow:auto;background:#122832;border-radius:4px;box-shadow:0 12px 35px #0009,inset 0 0 0 1px #c5e3d524}.address-results button{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:0;padding:13px 15px;color:#d5e8e1;cursor:pointer;transition:background .2s}.address-results button+button{box-shadow:inset 0 1px 0 #c5e3d512}.address-results button:hover,.address-results button[aria-selected=true]{background:#294953}.address-results strong{display:block;font-size:13px;font-weight:500;margin-bottom:5px}.address-results span{display:block;font-size:11px;line-height:1.6;color:#9fbdc1}.address-status{margin:10px 0 14px!important;min-height:20px;font-size:11px!important;line-height:1.6!important}.editor-location-preview{position:relative;overflow:hidden;border-radius:4px;background:#08131b;isolation:isolate}#editor-location-map{height:265px;width:100%;background:#08131b}.editor-map-error{position:absolute;inset:auto 10px 10px;margin:0!important;background:#142a35ed;padding:12px;border-radius:3px;color:#d1e2dc!important;font-size:11px!important;pointer-events:none}.editor-pin-tools{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-top:10px}.editor-pin-tools p{margin:0!important;font-size:11px!important;line-height:1.6!important}.editor-pin-tools button{font-size:11px;flex-shrink:0;background:transparent;min-height:32px;padding:2px 0}.panel .editor-map-credits{font-size:9px;line-height:1.8;margin:10px 0 8px;color:#779ba4}.panel .editor-map-credits a{color:#97b5b9;font-size:inherit}.editor-coordinate-details{margin-top:14px}.editor-coordinate-details>summary{cursor:pointer;padding:8px 0;min-height:40px;color:#a9c5c6;font-size:12px}.editor-coordinate-details .field-grid{margin-top:12px}#editor-location-map .maplibregl-marker:focus-visible{outline:2px solid #d7ecdf;outline-offset:4px;border-radius:4px}@media(max-width:640px){.address-search-row .btn{padding:10px 12px;min-height:48px}.address-search-row input{font-size:12px!important}#editor-location-map{height:240px}.address-results{max-height:270px}}@media(prefers-reduced-motion:reduce){.address-results button{transition:none}}

.review-notes-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.review-notes-heading h2{margin:0}.panel .notes-edit-link{font-size:11px;min-height:42px;padding:10px 12px}.request-reason{white-space:pre-wrap;overflow-wrap:anywhere}.request-gym-link{min-height:40px;font-size:12px}@media(max-width:640px){.review-notes-heading{align-items:flex-start;gap:12px}.panel .notes-edit-link{min-height:44px;font-size:11px}}

/* Quiet room depth on content pages; the landing scene has its own lighting. */
body:not(.is-home){isolation:isolate;background:#060b10}
body:not(.is-home) .realm-backdrop{z-index:0;background:#080f15 var(--crt-room-image) center/cover no-repeat;filter:blur(3px) saturate(.68) brightness(.85);opacity:.74;animation:none;transform:none}
body:not(.is-home) .realm-vignette{z-index:0;background:radial-gradient(ellipse at 9% 38%,#2c6c9c26,transparent 52%),radial-gradient(ellipse at 90% 14%,#87cdb71a,transparent 48%),linear-gradient(180deg,#030a1129,transparent 48%,#03091099),linear-gradient(90deg,#030a114d,#050d16c7 28%,#050d16d9 52%,#050d16b8 74%,#030a115c);transition:none}
body:not(.is-home) .panel,body:not(.is-home) .article-layout,body:not(.is-home) .board-shell,body:not(.is-home) .top-card,body:not(.is-home) .guide-card,body:not(.is-home) .admin-stat{background:linear-gradient(145deg,#14252e,#0d1b24 58%,#0b1720);box-shadow:inset 0 1px 0 #c7f2e612,0 18px 48px #0005,0 4px 12px #0002}
body:not(.is-home) .top-card:hover,body:not(.is-home) .top-card:focus-visible,body:not(.is-home) .guide-card:hover,body:not(.is-home) .guide-card:focus-visible{box-shadow:inset 0 1px 0 #c7f2e622,0 22px 50px #0006,0 4px 14px #0003}
body:not(.is-home) .map-shell{box-shadow:0 18px 48px #0005,0 4px 12px #0002}
@media(max-width:900px){body:not(.is-home) .mobile-gym{background:linear-gradient(145deg,#14252e,#0c1a23);box-shadow:inset 0 1px 0 #c7f2e612,0 10px 26px #0003}}
@media(max-width:640px){body:not(.is-home) .realm-backdrop{background-position:18% center;opacity:.6;filter:blur(3px) saturate(.6) brightness(.8)}body:not(.is-home) .realm-vignette{background:radial-gradient(ellipse at 5% 24%,#306b9624,transparent 58%),radial-gradient(ellipse at 95% 4%,#83c6b416,transparent 50%),linear-gradient(180deg,#04101b8c,#050d16cc 65%,#030910d9)}body:not(.is-home) .panel,body:not(.is-home) .top-card{box-shadow:inset 0 1px 0 #c7f2e612,0 12px 30px #0004}}

body:not(.is-home) .gym-grid .top-card,body:not(.is-home) .gym-grid .top-card:first-child{background:linear-gradient(145deg,#14252e,#0d1b24 58%,#0b1720);box-shadow:inset 0 1px 0 #c7f2e612,0 18px 48px #0005,0 4px 12px #0002}body:not(.is-home) .gym-grid .top-card:hover,body:not(.is-home) .gym-grid .top-card:focus-visible{box-shadow:inset 2px 0 0 #a9d7c36b,0 22px 50px #0006,0 4px 14px #0003}
