@font-face{font-family:"Source Serif 4";src:url("/assets/source-serif-4-a86e57ca.woff2") format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:Manrope;src:url("/assets/manrope-757d91ba.woff2") format("woff2");font-weight:200 800;font-display:swap}
:root{--paper:#faf9f5;--ink:#141413;--muted:#56564f;--rule:#d4d2c6;--accent:#087c71;--serif:"Source Serif 4",Georgia,serif;--sans:Manrope,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3{line-height:1.12;font-weight:500}h1{font:500 clamp(2.6rem,7vw,4.6rem)/1.05 var(--serif);letter-spacing:-.045em;margin:.4em 0}h2{font:500 clamp(1.8rem,4vw,2.7rem)/1.16 var(--serif)}h3{font-size:1.25rem}p{max-width:66ch}button,input{font:inherit}button,input[type=submit],.button{min-height:48px;padding:.75rem 1.3rem;border:1px solid var(--ink);border-radius:99px;display:inline-flex;justify-content:center;align-items:center;gap:.6rem;background:transparent;color:var(--ink);cursor:pointer;text-decoration:none;font-weight:650}button:hover,input[type=submit]:hover,.button:hover{background:#e9e7de;color:var(--ink)}input[type=submit],.button-primary{background:var(--ink);color:var(--paper)}input[type=submit]:hover,.button-primary:hover{background:#34342f;color:white}button:disabled,input:disabled{opacity:.55;cursor:default}input:not([type=submit]):not([type=checkbox]):not([type=hidden]){display:block;width:100%;min-height:50px;background:white;border:1px solid #8a897e;border-radius:8px;padding:.75rem;margin:.45rem 0 1.15rem;color:var(--ink)}label{display:block;font-weight:650}input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--accent)}form{margin:1rem 0}.button_to{display:inline-block;margin:.5rem .4rem .5rem 0}.site-header,.site-footer,main,.notice{width:min(100% - 2.5rem,1120px);margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--rule)}.wordmark{font-size:2rem;font-weight:800;letter-spacing:-.08em;text-decoration:none}.wordmark span{color:var(--accent)}nav{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}nav a{font-size:.9rem;min-height:44px;display:inline-flex;align-items:center}.site-footer{border-top:1px solid var(--rule);margin-top:5rem;padding:2rem 0 2.5rem;display:flex;flex-wrap:wrap;gap:1rem 3rem;justify-content:space-between}.site-footer p{color:var(--muted)}main{padding:3rem 0}.auth-page{max-width:480px;padding:3rem 0 1rem}.auth-page h1{font-size:clamp(2.5rem,7vw,3.5rem)}.auth-page .button,.auth-page input[type=submit]{width:100%}.primary-action{margin-top:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:var(--accent)}.fine-print{font-size:.86rem;color:var(--muted)}.divider{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:var(--muted);margin:1.8rem 0}.divider:before,.divider:after{content:"";height:1px;background:var(--rule);flex:1}.code-input{text-align:center;letter-spacing:.45em;font-size:1.7rem;font-variant-numeric:tabular-nums}.notice{padding:1rem;border-left:3px solid var(--accent);background:#eeede5;margin-top:1rem}.skip-link{position:absolute;left:1rem;top:-100px;z-index:10;background:var(--ink);color:white;padding:1rem}.skip-link:focus{top:1rem}.hero{padding:1rem 0 3rem}.hero h1{max-width:14ch}.game-list,.account-list{list-style:none;padding:0;margin:2rem 0}.game-list li,.account-list li{padding:1.5rem 0;border-top:1px solid var(--rule)}.game-list li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem 2rem}.game-list h3{margin:0}.game-list p{color:var(--muted);margin:.5rem 0}.section{padding:2rem 0;border-top:1px solid var(--rule)}.danger-action{color:#8e2924;border-color:#8e2924}.legal{max-width:720px}.legal h1{font-size:clamp(2.5rem,6vw,3.7rem)}.legal h2{font-size:1.7rem;margin-top:2rem}.legal ul{padding-left:1.3rem}details{border-top:1px solid var(--rule);padding:1rem 0}summary{cursor:pointer;min-height:44px;font-weight:650}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--rule);padding:.8rem}.table-scroll{overflow:auto}
@media(max-width:560px){.site-header{align-items:flex-start}.site-header nav{gap:0;flex-direction:column;align-items:flex-end}.site-header nav a{font-size:.8rem}main{padding-top:2rem}.game-list li{grid-template-columns:1fr}.game-list .button{justify-self:start}.site-footer{margin-top:3rem}.auth-page{width:calc(100% - 2.5rem)}}
@media(prefers-reduced-motion:no-preference){a,button,input[type=submit]{transition:background-color .15s,color .15s}}
/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

.rankings-periods { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1.5rem; }
.rankings-periods a, .rankings-back { display: inline-flex; align-items: center; min-height: 44px; }
.rankings-periods a { border: 1px solid var(--rule); border-radius: 99px; padding-inline: 1rem; text-decoration: none; }
.rankings-periods a[aria-current="page"] { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.rankings-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 1rem; margin-block: 0 2rem; }
.rankings-filters div { flex: 1 1 11rem; min-width: 0; }
.rankings-filters label { display: block; margin-bottom: .25rem; }
.rankings-filters select, .rankings-filters input:not([type="hidden"], [type="submit"]) {
  font: inherit; width: 100%; min-width: 0; min-height: 44px; padding: .55rem .75rem;
  border: 1px solid var(--rule); border-radius: 14px; background: var(--paper); color: var(--ink);
}
.rankings-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.rankings-table caption { text-align: left; font: 400 1.5rem/1.35 var(--serif); margin-bottom: .75rem; }
.rankings-table th, .rankings-table td { border-bottom: 1px solid var(--rule); padding: .65rem .35rem; text-align: left; }
.rankings-table th:last-child, .rankings-table td:last-child { text-align: right; }
.rankings-table td:nth-child(2) { overflow-wrap: anywhere; }
