@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(./inter-latin-800-normal-BYj_oED-.woff2)format("woff2"),url(./inter-latin-800-normal-D1mf63XC.woff)format("woff")}:root{--page:var(--lightningcss-light,#f6f5f1)var(--lightningcss-dark,#101010);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#171717);--ink:var(--lightningcss-light,#111)var(--lightningcss-dark,#f4f4f1);--muted:var(--lightningcss-light,#4f4f4c)var(--lightningcss-dark,#b9b9b6);--faint:var(--lightningcss-light,#6e6e6a)var(--lightningcss-dark,#858585);--dim:var(--lightningcss-light,#a8a8a4)var(--lightningcss-dark,#777);--line:var(--lightningcss-light,#dcdcd6)var(--lightningcss-dark,#2c2c2c);--line-strong:var(--lightningcss-light,#a8a8a4)var(--lightningcss-dark,#4a4a48);--accent:#ffe000;--accent-ink:#111;--accent-text:var(--lightningcss-light,#7a6200)var(--lightningcss-dark,#ffe000);--accent-line:var(--lightningcss-light,#e6bd00)var(--lightningcss-dark,#ffe000);--error:var(--lightningcss-light,#b3261e)var(--lightningcss-dark,#f2b8b5);--error-ink:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--error-bg:var(--lightningcss-light,#fbe9e7)var(--lightningcss-dark,#3a1714);--highlight:var(--lightningcss-light,#ffe0002e)var(--lightningcss-dark,#ffe0001a);--button-hover:var(--lightningcss-light,#111)var(--lightningcss-dark,#fff);--button-hover-ink:var(--lightningcss-light,#fff)var(--lightningcss-dark,#111);--lede:var(--lightningcss-light,#3a3a38)var(--lightningcss-dark,#cececc);--hero-filter:grayscale(1) contrast(1.09) brightness(.78);--font-display:Inter, Arial, Helvetica, sans-serif;--font-body:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--column:50rem;--gutter:clamp(1rem, 5vw, 2rem);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--hero-filter:grayscale(1)}}*{box-sizing:border-box}html{scroll-padding-top:7rem}body{background:var(--page);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}a{color:inherit;text-underline-offset:.2em}:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.05em;margin:0;font-weight:800;line-height:1.05}h1{font-size:clamp(2.5rem,7vw,3.5rem)}h2{font-size:clamp(2rem,5vw,3rem)}h3{letter-spacing:-.03em;font-size:1.25rem}fieldset{border:0;min-width:0;margin:0;padding:0}legend{padding:0;font-weight:600}.muted{color:var(--muted)}.period,.slash,.brand-year{color:var(--accent-text)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{max-width:calc(var(--column) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.eyebrow,.hero-nav,.hero-account,.badge,.button,.login-control.compact select,.tournament-status,.admin-bar,.round-meta,.games-head,.games li.bye,.standings thead th,.my-game-label,.organizer-details summary{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}.my-game,.games li.mine,.standings tr.me,.participants li.me,.admin-participants li.me{background:var(--highlight);box-shadow:inset 3px 0 0 var(--accent-line)}.topbar{z-index:10;background:color-mix(in srgb, var(--page) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar-inner{padding-block:.5rem;display:flow-root}.brand,.topbar-end,.hero-nav{align-items:center;min-height:3rem;display:flex}.brand{float:left;font-family:var(--font-mono);white-space:nowrap;margin-right:clamp(1rem,4vw,2.5rem);font-weight:700;text-decoration:none}.slash{margin-inline:.4rem}.brand-year{font-weight:400}.topbar-end{float:right;gap:.5rem;margin-left:.5rem}.hero-nav{gap:1.25rem;width:max-content}.hero-nav a{white-space:nowrap;align-items:center;min-height:2.75rem;text-decoration:none;display:inline-flex}.hero-nav a:hover{color:var(--accent-text)}.hero-account{align-items:center;gap:.5rem;display:inline-flex}.login-control.compact label.inline{margin:0}.login-control.compact select{max-width:10rem}.login-control.compact .alert{top:100%;right:var(--gutter);position:absolute}.hero{display:flex}.hero-photo{z-index:-1;inset:0 var(--gutter);pointer-events:none;position:absolute;overflow:hidden}.hero-photo img{object-fit:cover;object-position:30% 50%;width:100%;height:110%;filter:var(--hero-filter);transform:translate3d(0, var(--shift,0px), 0);will-change:transform}.hero-photo:after{content:"";background:linear-gradient(0deg, var(--page), transparent 35%), linear-gradient(180deg, var(--page), transparent 15%);position:absolute;inset:0}@media (width>=37.5rem){.hero-photo{top:5rem}}@media (width<=37.5rem){.hero-photo{opacity:.45;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 55%,#000);mask-image:linear-gradient(90deg,#0000 55%,#000)}.hero-photo img{object-position:62% 50%}}.hero-main{isolation:isolate;flex:1;min-width:0;padding-block:clamp(1.5rem,4vw,2.5rem) 3rem;position:relative}.hero-copy{padding-inline:0 clamp(2rem,10vw,6rem)}.eyebrow{color:var(--accent-text);letter-spacing:.18em;margin:0 0 1.5rem;font-weight:600}.hero h1{letter-spacing:-.06em;max-width:11ch;font-size:clamp(2.75rem,10vw,5.5rem);line-height:.98}.lede{color:var(--lede);font-family:var(--font-mono);max-width:30rem;margin:2rem 0 1rem;font-size:clamp(.85rem,2vw,1rem);line-height:1.8}.countdown{color:var(--accent-text);font-family:var(--font-mono);margin:0 0 2rem;font-weight:600}.page{counter-reset:section}.section{border-top:1px solid var(--line);padding-block:3rem}:is(.tournament-header,.admin-bar)+.section{border-top:0;padding-top:2rem}.section h2{flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;margin-bottom:2rem;display:flex}.kicker,.step-move{color:var(--accent-text);font-family:var(--font-mono);letter-spacing:0;white-space:nowrap;font-weight:700}.kicker:before{counter-increment:section;content:counter(section, decimal-leading-zero) " /"}.count{color:var(--accent-text);font-family:var(--font-mono);letter-spacing:0;font-size:1rem;font-weight:600}.tournament-header{padding-top:clamp(2rem,6vw,3.5rem)}.tournament-status{color:var(--accent-text);flex-wrap:wrap;gap:.25rem 1.5rem;margin:1rem 0 0;font-weight:600;display:flex}.steps{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.step-move{margin-right:.5em}.steps h3{margin-bottom:.5rem;font-size:1.4rem}.steps p{color:var(--muted);margin:0}.key-dates{flex-wrap:wrap;gap:1rem 3rem;margin:2.5rem 0 0;display:flex}.key-dates div{border-top:1px solid var(--line);padding-top:.75rem}.key-dates dt{color:var(--muted);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}.key-dates dd{margin:.25rem 0 0;font-weight:600}.nowrap{white-space:nowrap}.rules{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:2rem 3rem;display:grid}.rules h3{margin-bottom:.75rem}.rules ul{color:var(--muted);margin:0;padding-left:1.1rem}.rules li+li{margin-top:.5rem}.rules li::marker{color:var(--accent-text)}.reveal{opacity:0;transition:opacity .85s,transform .85s cubic-bezier(.2,.7,.2,1);transform:translateY(1.5rem)}.reveal.visible{opacity:1;transform:none}.button{border:1px solid var(--accent);background:var(--accent);min-height:2.75rem;color:var(--accent-ink);cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:1.25rem;margin-top:1rem;padding:.5rem 1.5rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.button:hover{background:var(--button-hover);border-color:var(--button-hover);color:var(--button-hover-ink)}.button.large{gap:2rem;margin-top:0;padding:1rem 1.75rem}.button.large:hover{transform:translateY(-2px)}.button.secondary{border-color:var(--line-strong);color:var(--ink);background:0 0}.button.secondary:hover{border-color:var(--accent-text);color:var(--accent-text)}.button.secondary[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button.danger{background:var(--error);border-color:var(--error);color:var(--error-ink)}.button.small{min-height:2.25rem;margin:0;padding:.25rem .75rem;font-size:.75rem}button:disabled{opacity:.6;cursor:progress}button.link,button.result-edit{font:inherit;letter-spacing:inherit;text-transform:inherit;min-width:2.75rem;min-height:2.75rem;color:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0 .5rem}button.link{text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint)}button.link:hover{color:var(--accent-text);-webkit-text-decoration-color:var(--accent-text);text-decoration-color:var(--accent-text)}button.result-edit{border-bottom:1px dotted var(--faint)}button.result-edit:hover,button.result-edit[aria-expanded=true]{background:var(--surface);border-bottom-color:var(--accent-line)}label{font-weight:600;display:block}label.inline{align-items:center;gap:.5rem;margin-right:.5rem;font-weight:400;display:inline-flex}input,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:0}input:hover,select:hover{border-color:var(--faint)}input{width:100%;max-width:12rem;padding:.5rem .75rem}select{min-height:2.75rem;padding:.25rem .5rem}input[type=radio]{width:1.25rem;height:1.25rem;accent-color:var(--accent-text);flex:none;margin:0}input[aria-invalid=true]{border-color:var(--error);border-width:2px}.alert{border-left:3px solid var(--error);background:var(--error-bg);color:var(--ink);font-family:var(--font-body);letter-spacing:0;text-transform:none;margin:.75rem 0 0;padding:.5rem .75rem;font-size:1rem}.badge{color:var(--muted);border:1px solid;padding:0 .5rem;font-size:.7rem;font-weight:600;display:inline-block}.badge-accent{color:var(--accent-text)}.hint{color:var(--muted);margin:.25rem 0 .75rem;font-size:.9rem}.confirm,.report-actions{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;display:flex}.login-prompt p:first-child{margin-top:0}.registered{align-items:flex-start;gap:.75rem;margin:.5rem 0 0;display:flex}.registered-mark{background:var(--accent);width:1.75rem;height:1.75rem;color:var(--accent-ink);flex:none;place-items:center;font-weight:800;display:grid}.rating-types{grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;margin:.5rem 0 1rem;display:grid}.rating-type{flex-direction:column;align-items:center;display:flex}.rating-type label{text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:.25rem;min-height:2.75rem;padding:.25rem 0;font-size:.85rem;font-weight:400;line-height:1.2;display:flex}.rating-value-label{margin-top:.25rem}.infotip{vertical-align:middle;display:inline-block;position:relative}.infotip-button{border:1px solid var(--faint);width:1.25rem;height:1.25rem;color:var(--muted);cursor:help;background:0 0;border-radius:50%;margin:0;padding:0;font-family:Georgia,serif;font-size:.75rem;font-style:italic;line-height:1}.infotip-text{z-index:10;background:var(--ink);width:max-content;max-width:14rem;color:var(--page);text-align:left;padding:.5rem .75rem;font-size:.85rem;font-weight:400;line-height:1.35;display:none;position:absolute;top:calc(100% + .375rem);right:-.5rem}.infotip:hover .infotip-text,.infotip:focus-within .infotip-text,.infotip.open .infotip-text{display:block}.admin-bar{border:1px solid var(--line-strong);border-left:3px solid var(--accent-line);background:var(--surface);flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:2rem;padding:1rem 1.25rem;display:flex}.admin-bar .alert{flex-basis:100%;margin:0}.admin-bar-label{color:var(--accent-text);font-weight:700}.admin-bar-status{color:var(--muted)}.participants{margin:0;padding:0;list-style:none}.participants li{border-top:1px solid var(--line);padding:.5rem}.email-all{margin:0 0 1rem}.admin-participants{margin:0;padding:0;list-style:none}.admin-participants li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;padding:.5rem;display:grid}.admin-participants .confirm{grid-column:1/-1;justify-content:flex-end}.admin-participant-main{flex-direction:column;min-width:0;display:flex}.admin-participant-main .name{font-weight:600}.admin-participant-main .details{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.8rem}.organizer-details{border-top:1px solid var(--line);padding-top:1.5rem}.organizer-details summary{min-height:2.75rem;color:var(--muted);cursor:pointer;align-items:center;display:flex}.organizer-details summary:hover{color:var(--accent-text)}.organizer-details>.section{border-top:0;padding-top:1.5rem}.round-picker{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.round-meta{color:var(--muted);margin:0 0 1.5rem}.games{margin:0;padding:0;list-style:none}.games li,.games-head{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) clamp(3.25rem,12vw,4.5rem) minmax(0,1fr);align-items:center;gap:clamp(.5rem,2vw,1rem);padding:.75rem 0;display:grid}.games-head{color:var(--faint);border-top:0;padding-top:0;font-size:.75rem}.games-head span:first-child{text-align:right}.games li.bye{color:var(--muted);display:block}.game-white,.game-black{align-items:center;gap:.5rem;display:flex}.game-white{text-align:right;justify-content:flex-end}.piece-colour{border:1px solid var(--ink);flex:none;width:.7rem;height:.7rem}.piece-colour.white{background:var(--ink)}.game-result{color:var(--accent-text);font-family:var(--font-mono);text-align:center;font-weight:700}.game-result.pending{color:var(--faint);font-weight:400}.game-contact{color:var(--muted);text-align:center;overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:.9rem}.game-contact strong{color:var(--ink);font-weight:600}.my-game{margin:0 0 2rem;padding:1.25rem 1.5rem}.my-game-label{color:var(--accent-text);margin:0 0 .5rem;font-size:.75rem;font-weight:600}.my-game-main{margin:0;font-size:1.15rem}.my-game-meta{color:var(--muted);overflow-wrap:anywhere;margin:.25rem 0 1rem}.report{grid-column:1/-1;justify-content:center;display:flex}.my-game .report{justify-content:flex-start}.report-panel{background:var(--surface);border:1px solid var(--line-strong);width:100%;margin-top:.25rem;padding:1rem}.report-options{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.25rem 1rem;margin:.75rem 0 1rem;display:grid}.report-option{cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:.5rem;min-height:2.75rem;display:flex}.report-summary{margin:0;font-size:1.1rem;font-weight:600}.report-summary:focus{outline:none}.report-actions{margin-top:.75rem}.standings{border-collapse:collapse;width:100%;margin-bottom:1rem}.standings th,.standings td{border-top:1px solid var(--line);text-align:left;padding:.5rem clamp(.4rem,1.5vw,.75rem);font-weight:400}.standings thead th{color:var(--faint);border-top:0;padding-top:0;font-size:.75rem}.standings .num{white-space:nowrap;text-align:right;width:1%;font-family:var(--font-mono)}.standings .rank{color:var(--faint)}.standings .points{color:var(--accent-text);font-weight:700}.standings tr.me th{font-weight:600}.standings tr.me .rank{color:var(--muted)}.narrow-only{text-decoration:none;display:none}@media (width<=37.5rem){.wide-only{display:none}.narrow-only{display:inline}}.skeleton{gap:.5rem;display:grid}.skeleton-line{background:var(--line);height:1rem;display:block}.skeleton-line:nth-child(odd){width:80%}@keyframes pulse{to{opacity:.45}}.load-error{padding-block:6rem}.load-error p{color:var(--muted);margin:1rem 0 1.5rem}.footer{border-top:1px solid var(--line);color:var(--faint);font-family:var(--font-mono);padding-block:2.5rem;font-size:.8rem}.footer p{margin:0}.footer a{color:var(--ink)}.footer a:hover{color:var(--accent-text)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.skeleton-line{animation:1.2s ease-in-out infinite alternate pulse}}@media (prefers-reduced-motion:reduce){.hero-photo img{will-change:auto;transform:none}.reveal{opacity:1;transition:none;transform:none}.button{transition:none}}.registration-logout{margin:1.5rem 0 0 -.5rem}.waiting-notice{margin-top:1.5rem}.waiting-notice>:last-child{margin-bottom:0}
