:where(html.light) .cmn-toggle input:disabled+label:before,.cmn-toggle :where(html.light) input:disabled+label:before,:where(html.light) .cmn-toggle input:disabled+label:after,.cmn-toggle :where(html.light) input:disabled+label:after{box-shadow:inset 0 3px 3px -2px #fff6, inset 0 -4px 8px -3px hsl(from var(--c-body-gradient) h s calc(l + 5)/.8)}.cmn-toggle input:disabled+label:before,.cmn-toggle input:disabled+label:after{background-image:linear-gradient(to bottom, var(--c-metal-top), var(--c-metal-bottom))}.cmn-toggle label:after{box-shadow:inset 0 1px 3px -2px #737373, inset 0 -4px 8px -3px hsl(from var(--c-body-gradient) h s calc(l + 3)/.8), 0 1px 3px 0 #0003}:where(html.light) .cmn-toggle label:after,.cmn-toggle :where(html.light) label:after{box-shadow:inset 0 3px 3px -2px #fff6, inset 0 -4px 8px -3px hsl(from var(--c-body-gradient) h s calc(l + 5)/.8), 0 1px 3px 0 #0000002e}.cmn-toggle label:after{background:linear-gradient(to bottom, var(--c-metal-top), var(--c-metal-bottom));text-shadow:.5px .5px 0 rgb(from var(--c-dimmer) r g b/calc(alpha * .8))!important}.cmn-toggle label:hover:not(.disabled,:disabled,[disabled]):after{box-shadow:inset 0 1px 3px -2px var(--c-border-light), inset 0 -5px 16px -3px hsl(from var(--c-body-gradient) h s calc(l + 5)/.8), 0 2px 4px 0 #0000003d}:where(html.light) .cmn-toggle label:hover:not(.disabled,:disabled,[disabled]):after,.cmn-toggle :where(html.light) label:hover:not(.disabled,:disabled,[disabled]):after{box-shadow:inset 0 4px 3px -2px #fff6, inset 0 -5px 8 16px -3px hsl(from var(--c-body-gradient) h s calc(l + 7)/.8), 0 2px 4px 0 #00000036}.cmn-toggle label:hover:not(.disabled,:disabled,[disabled]):after{background:linear-gradient(to bottom, var(--c-metal-top-hover), var(--c-metal-bottom-hover))}:where(html.transp) .cmn-toggle label:hover:not(.disabled,:disabled,[disabled]):after,.cmn-toggle :where(html.transp) label:hover:not(.disabled,:disabled,[disabled]):after{box-shadow:inset 0 1px 3px -2px var(--c-border-light), inset 0 -5px 16px -3px hsl(from var(--c-body-gradient) h s calc(l + 5)/.8), 0 2px 4px 0 #00000026}:where(html.light) :where(html.transp) .cmn-toggle label:hover:not(.disabled,:disabled,[disabled]):after,.cmn-toggle :where(html.light) :where(html.transp) label:hover:not(.disabled,:disabled,[disabled]):after{box-shadow:inset 0 4px 3px -2px #fff6, inset 0 -5px 8 16px -3px hsl(from var(--c-body-gradient) h s calc(l + 7)/.8), 0 2px 4px 0 #0000001f}.form-check__input input:not(:disabled):focus-visible+.form-check__label{box-shadow:0 0 12px var(--c-font-dimmer)}.toggle-box--toggle legend:after,.flash:before,.cmn-toggle label:before{vertical-align:middle;text-transform:none;speak:none;content:attr(data-icon);opacity:.9;unicode-bidi:isolate;font-family:lichess;font-size:1.2em;font-style:normal;font-weight:400}.cmn-toggle input{touch-action:manipulation}.form-check__input input,.cmn-toggle input{position:absolute;inset-inline-start:-99999px}.form3 .captcha{flex-flow:wrap;display:flex}.auth .auth-tabs,.flash,.form-check__container{flex-flow:row;align-items:center;display:flex}.oauth__connection__between icon,.oauth__connection__between,.oauth__connection{flex-flow:wrap;justify-content:center;align-items:center;display:flex}.form-actions,.form-split{flex-flow:wrap;justify-content:space-between;align-items:center;display:flex}.auth__brand{flex-flow:column;display:flex}.auth-login__blanked,.auth .password-generator button,.form3 .captcha.is-invalid:not(.success),.form-help pre,.toggle-box legend,.toggle-box,.flash,.form-check__label,.cmn-toggle label:before,.cmn-toggle label,.flash-box,.flash-quiet{border-radius:var(---ui-roundness,7px)}.flash,.flash-box,.flash-quiet{box-shadow:0 2px 2px #00000014,0 3px 1px -2px #0000002e,0 1px 5px #0000001a}:where(html.transp) .flash-box,:where(html.transp) .flash-quiet{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.cmn-toggle-wrap{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.8ch;display:inline-flex}.cmn-toggle label{-webkit-user-select:none;user-select:none;cursor:pointer;border:1px solid var(--c-border);background-clip:padding-box;background-color:var(--c-font-dimmer);outline:none;width:40px;height:24px;padding:1px;transition:background .15s,box-shadow .15s;display:block;position:relative}.cmn-toggle label:before,.cmn-toggle label:after{content:"";width:23px;height:23px;display:block;position:absolute;bottom:0}html:not([dir=rtl]) .cmn-toggle label:before,html:not([dir=rtl]) .cmn-toggle label:after{left:0}html[dir=rtl] .cmn-toggle label:before,html[dir=rtl] .cmn-toggle label:after{right:0}.cmn-toggle label:before{z-index:1;text-align:center;content:"";color:var(--c-font-dimmer);font-size:1em;line-height:23px;transition:margin .15s,color .15s}.cmn-toggle label:after{border-radius:calc(var(---ui-roundness,7px) - 1px);transition:margin .15s,box-shadow .15s}:where(html.transp) .cmn-toggle label:after{background:linear-gradient(to bottom, hsl(var(---site-hue), 7%, 22%), hsl(var(---site-hue), 5%, 19%) 100%)}:where(html.transp.light) .cmn-toggle label:after{background:linear-gradient(to bottom, hsl(var(---site-hue), 7%, 88%), hsl(var(---site-hue), 5%, 91%) 100%)}:where(html.transp) .cmn-toggle label:hover:after{background:linear-gradient(to bottom, hsl(var(---site-hue), 7%, 26%), hsl(var(---site-hue), 5%, 23%) 100%)}:where(html.transp.light) .cmn-toggle label:hover:after{background:linear-gradient(to bottom, hsl(var(---site-hue), 7%, 90%), hsl(var(---site-hue), 5%, 93%) 100%)}.cmn-toggle input:checked+label{background-color:var(--c-good)}.cmn-toggle input:checked+label:before,.cmn-toggle input:checked+label:after{margin-inline-start:16px}.cmn-toggle input:checked+label:before{content:"";color:var(--c-good)}.cmn-toggle input:disabled+label{opacity:.6;cursor:not-allowed!important}.cmn-toggle input:disabled+label:before,.cmn-toggle input:disabled+label:after{box-shadow:none}.cmn-toggle input:focus-visible:not(:disabled)+label{box-shadow:0 0 12px var(--c-font-dimmer);border-color:var(--c-primary)}.flash{background:var(--c-good);margin:1em 0 2em;padding:1em 2em}.flash:before{content:"";margin-inline:0 .5rem;font-size:1.5em}.flash__content a{color:var(--c-over);unicode-bidi:plaintext}.flash-success{color:var(--c-over)}.flash-warning{background:var(--c-warn);color:var(--c-over)}.flash-warning:before{content:""}.flash-failure{background:var(--c-bad);color:var(--c-over)}.flash-failure:before{content:""}.flash-quiet,.flash-box{background:var(--c-bg-zebra)}.flash-box a{color:var(--c-primary)}.toggle-box{border:1px solid var(--c-border);background:var(--c-bg-zebra);padding:2rem var(---box-padding) 0;margin:1rem 0 3rem}.toggle-box legend{-webkit-user-select:none;user-select:none;background:var(--c-bg-zebra);text-align:right;border:1px solid #0000;border-top-color:var(--c-border);padding:.5em 1.5em;font-size:1.2em;line-height:26px}.toggle-box legend:focus-visible{outline:2px solid var(--c-primary)}:where(html.transp) .toggle-box--toggle legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toggle-box--toggle legend{cursor:pointer;padding:.5em 2.5em .5em 1.5em;position:relative}.toggle-box--toggle legend:after{content:"";opacity:.66;margin-left:.5em;font-size:14px;transition:transform .2s ease-in-out;position:absolute;transform:rotate(-90deg)}.toggle-box--toggle legend:hover{color:var(--c-primary)}.toggle-box--toggle-off{border-color:#0000;border-top-color:var(--c-border);background:0 0;border-radius:0;padding-top:0}.toggle-box--toggle-off legend{border:1px solid var(--c-border);background:0 0}.toggle-box--toggle-off legend:hover{background:var(--c-bg-zebra)}.toggle-box--toggle-off legend:after{transform:rotate(90deg)}.toggle-box--toggle-off>:not(legend){display:none}.form-group{margin-bottom:3rem}.form-split{align-items:inherit}.form-half{flex:48%;min-width:200px}.form-full{flex:100%}.form-third{flex:31%}@media (min-width:499.3px){.form-half,.form-third{flex-grow:0}}.form-label{cursor:text;margin-bottom:.5rem;font-weight:700;display:inline-block}.form-control{background-clip:padding-box;width:100%;height:calc(2.7em + 2px);display:block}.clipboard{float:right}textarea.form-control{height:auto}.form-control:invalid,.form-group.is-invalid .form-control{border-color:var(--c-error)}.form3 .error,.form-help,.password-complexity-label{unicode-bidi:plaintext;margin-top:.25rem;font-size:90%}.form3 .error{color:var(--c-error)}.form-help,.password-complexity-label{color:var(--c-font-dim)}.form-help pre{background:var(--c-bg-page);margin:.2em 0;padding:.2em 1em}.form-actions{border-top:1px solid var(--c-border);margin-top:1.5rem;padding-top:1.5rem}.form-actions.single{justify-content:flex-end}.form3 hr{border:0;border-top:1px solid var(--c-border);margin-top:1rem;margin-bottom:1rem}.form-check__container{-webkit-user-select:none;user-select:none}.form-check__container .form-label{cursor:pointer;margin-bottom:0}.form-check__container:has(.form-label:hover) .form-check__label{border-color:var(--c-good)}.form-check__input{cursor:pointer;position:relative}.form-check__input+.form-label{margin-inline-start:.75rem}.form-check__label{background-color:var(--c-bg-input);border:1px solid var(--c-border);cursor:pointer;width:24px;height:24px;transition:background-color .1s ease-in-out ease, border-color .1s ease-in-out ease;margin-bottom:0;display:block;position:relative}.form-check__label:hover{border-color:var(--c-good)}.form-check__label:after{content:"";opacity:0;border-top:none;border-bottom:2.5px solid #fff;border-left:2.5px solid #fff;border-right:none;width:12px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)rotate(-45deg)}.form-check__input input{position:absolute}.form-check__input input:disabled+.form-check__label{opacity:.6;cursor:not-allowed!important}.form-check__input input:not(:disabled):focus-visible+.form-check__label{border-color:var(--c-font)}.form-check__input input:checked+.form-check__label{background-color:var(--c-good);border-color:var(--c-good)}.form-check__input input:checked:hover+.form-check__label{background-color:rgb(from var(--c-good) r g b/calc(alpha * .8))}.form-check__input input:checked+.form-check__label:after{opacity:1}.form3 .captcha{margin:0 0 0 -1em;padding:1em 0}@media (min-width:499.3px){.form3 .captcha{flex-wrap:nowrap}}.form3 .captcha.is-invalid:not(.success){border:1px solid color-mix(in oklab, var(--c-error) 65%, var(--c-bg));background:color-mix(in oklab, var(--c-bad) 12%, var(--c-bg))}.form3 .captcha .challenge{flex:0 0 250px;margin:0 0 0 1em}.form3 .captcha .captcha-explanation{flex:auto;margin:0 0 0 1em;overflow:hidden}.form3 .captcha.is-invalid .captcha-explanation{padding:1em}.form3 .captcha .captcha-explanation .result{margin-top:1rem;font-weight:700;display:none}.form3 .captcha .success{color:var(--c-good)}.form3 .captcha .failure{color:var(--c-error)}.form3 .captcha.success .success,.form3 .captcha.failure .failure{display:block}input[type=password]::-ms-reveal{display:none}.password-complexity{margin-top:-2rem;margin-bottom:3rem}.password-complexity-meter{gap:.25rem;height:.4rem;margin-top:.5rem;display:flex}.password-complexity-meter>*{background-color:gray;width:25%}.password-reveal{float:right;margin-top:-2.2em;margin-right:1em}.password-reveal:focus-visible{outline:2px solid var(--c-primary)}.password-reveal.revealed{color:var(--c-bad)}#main-wrap{min-height:calc(95vh - calc(var(---site-header-height) + var(---site-header-margin) + var(---sticky-gap)) - 4em)}.site-buttons .signin-or-signup,#clinput{display:none}@media (max-width:979.29px){.site-title,.site-title-nav__donate{display:none}}.checklist{font-size:1.5em;font-weight:700}.checklist li{list-style:inside}.auth{border-radius:var(---ui-roundness,7px);border:1px solid var(--c-border);width:100%;height:min-content;margin:0 auto}.auth__brand{align-items:center;gap:.5rem;margin:-.5em 0 2em}@media (min-width:1120px){.auth__brand{display:none}}.auth__brand__logo{background:url(../logo/lichess-white.svg) 50%/contain no-repeat;width:64px;height:64px;display:block}:where(html.light) .auth__brand__logo{background-image:url(../logo/lichess.svg)}.auth__brand__name{font-size:1.5rem}.auth .auth-tabs{border-bottom:1px solid var(--c-border);margin-bottom:2rem}.auth .auth-tabs a{text-align:center;color:var(--c-font);border-bottom:2px solid #0000;flex:auto;padding:.5em .2em;font-size:1.5em;transition:color .25s,border-color .25s}.auth .auth-tabs a:hover{border-bottom-color:rgb(from var(--c-accent) r g b/calc(alpha * .3))}.auth .auth-tabs a:focus-visible{outline-offset:-2px}.auth .auth-tabs a.active{color:var(--c-accent);border-bottom-color:var(--c-accent);font-weight:700}@media (min-width:650px){.auth{width:40em}}.auth .form-group{position:relative}.auth .form-group:has(+.password-complexity){margin-bottom:1rem}.auth .password-complexity{margin-top:1em}.auth .password-generator{text-align:right;margin-top:.5em}.auth .password-generator button{color:var(--c-accent);padding:.5em 1em;font-size:.9em}.auth .password-generator button:hover{background:rgb(from var(--c-accent) r g b/calc(alpha * .3))}.auth .form-group input{border:1px solid var(--c-border);border-radius:var(---ui-roundness,7px);background:var(--c-bg-input);height:50px;font-size:16px}.auth .form-group input:focus-visible{outline:2px solid var(--c-primary);outline-offset:-2px}.auth .form-group.is-invalid input{outline:2px solid var(--c-error);outline-offset:-2px}.auth .password-wrapper,.auth .text-wrapper{position:relative}.auth .password-reveal,.auth .text-clear{inset-inline-end:1em;border-radius:var(---ui-roundness,7px);font-size:1.3em;position:absolute;top:50%;transform:translateY(-50%)}.auth .password-reveal:focus-visible,.auth .text-clear:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.auth .password-reveal{float:none;margin:0}.auth .text-clear{opacity:.7;display:none}.auth .text-clear:hover{opacity:1}.auth .text-clear.show{display:block}.auth .auth-global-error{color:var(--c-error);margin-top:1em}.auth .auth-global-error .text{align-items:center;gap:.2em;display:flex}.auth .auth-global-error .text:before{font-size:1.3em}.auth a:focus-visible{outline:2px solid var(--c-primary)}.auth .button{border-radius:var(---ui-roundness,7px);width:100%;padding:1.3rem}.auth .submit.button,.auth .magic-link{text-transform:none;font-size:1.125rem;font-weight:700}.auth .or-separator{align-items:center;margin:2.5rem 0 1.5rem;display:flex}.auth .or-separator:before,.auth .or-separator:after{content:"";border-bottom:1px solid var(--c-border);flex:1}.auth .or-separator span{color:var(--c-font-dim);padding:0 1em;font-size:.85em}.auth-login .form-group:has(+.password-reset){margin-bottom:.5em}.auth-login .password-reset{text-align:end;font-size:1rem}.auth-login .login-remember{margin:1em 0}.auth-login .login-remember .form-check__label{width:1.4em;height:1.4em}.auth-login .login-remember .form-check__label:after{border-width:2px;border-color:var(--c-bg-box);width:.7em;height:.35em}.auth-login .login-remember .form-label{font-weight:400}.auth-login__blanked{background:var(--c-bg-zebra);border:2px solid var(--c-bad);margin-bottom:2em;padding:1em 2em}.auth-signup--simple .agreement{display:none}.auth .agreement .form-group{margin-bottom:1rem}.auth .agreement label{font-weight:400}.auth .cf-turnstile{margin:1em 0}.auth .button.submit .button__loader .spinner{width:1.3em;height:1.3em}.auth .button.submit .button__ready{display:block}.auth .button.submit .button__verifying{justify-content:center;gap:1ch;display:none}.auth .button.submit:disabled .button__ready{display:none}.auth .button.submit:disabled .button__verifying{display:flex}@media (max-height:399.29px){#top{display:none}.form-group{margin-bottom:1rem}.password-complexity{margin-top:1rem}}.oauth__connection{gap:.5ch;margin-bottom:3em}.oauth__connection__service,.oauth__connection .lichess-logo-svg{aspect-ratio:1;height:70px}.oauth__connection__service{background:#d8daff;border-radius:50%;padding:5px}.oauth__connection__between{width:100px;position:relative}.oauth__connection__between:before{content:"";border-bottom:2px dashed var(--c-good);width:100%;position:absolute;top:50%;left:0}.oauth__connection__between icon{height:2.5em;color:var(--c-over);background:var(--c-good);border-radius:50px;flex:0 0 2.5em}.oauth__connection__to-lichess{text-align:center;margin-bottom:2em;font-size:1.2em}.oauth__connection .lichess-logo-svg{fill:var(--c-font);stroke:var(--c-font)}