.yamori-button{font-family:inherit;font-size:1rem;line-height:1.6;font-weight:600;text-decoration:none;align-items:center;box-sizing:border-box;border:none;column-gap:var(--yamori-spacing-small);display:inline-flex;justify-content:center;padding:var(--yamori-spacing-medium) var(--yamori-spacing-large)}.yamori-button[hidden]{display:none}.yamori-button:enabled{cursor:pointer}.yamori-button,.yamori-button:focus-visible{border-radius:var(--yamori-border-radius-medium)}.yamori-button--primary,.yamori-button--icon{background-color:var(--yamori-surface-action);color:var(--yamori-text-on-action)}.yamori-button--primary:enabled:hover,.yamori-button--icon:enabled:hover{background-color:var(--yamori-surface-action-hover)}.yamori-button--primary:enabled:active,.yamori-button--icon:enabled:active{background-color:var(--yamori-surface-action-active)}.yamori-button--primary:disabled,.yamori-button--icon:disabled{background-color:var(--yamori-surface-action-disabled)}.yamori-button--secondary{background-color:var(--yamori-surface-secondary-action);color:var(--yamori-text-on-secondary-action)}.yamori-button--secondary:enabled:hover{color:var(--yamori-text-on-secondary-action-hover)}.yamori-button--secondary:enabled:active{color:var(--yamori-text-on-secondary-action-active)}.yamori-button--secondary:disabled{color:var(--yamori-text-on-secondary-action-disabled)}.yamori-button--text{padding:0;background-color:transparent;color:var(--yamori-text-action)}.yamori-button--text:enabled:hover{color:var(--yamori-text-action-hover)}.yamori-button--text:enabled:active{color:var(--yamori-text-action-active)}.yamori-button--text:disabled{color:var(--yamori-text-action-disabled)}.yamori-button--icon{padding:var(--yamori-spacing-medium)}.yamori-details{border:var(--yamori-border-width-small) solid var(--yamori-border-primary);border-radius:var(--yamori-border-radius-small);position:relative}.yamori-details__content{padding:var(--yamori-spacing-large)}.yamori-details__summary{align-items:center;background-color:var(--yamori-surface-primary);color:var(--yamori-text-action);cursor:pointer;display:flex;gap:var(--yamori-spacing-medium);padding:var(--yamori-spacing-medium) var(--yamori-spacing-large);position:sticky;top:calc(-1 * var(--yamori-border-width-small))}.yamori-details__summary::marker,.yamori-details__summary::-webkit-details-marker{display:none}.yamori-details__summary:hover{color:var(--yamori-text-action-hover)}.yamori-details__summary:active{color:var(--yamori-text-action-active)}.yamori-details__summary:focus-visible{outline-offset:0}.yamori-details:not([open]) .yamori-details__arrow{transform:rotate(-90deg)}.yamori-details[open] .yamori-details__summary{border-bottom:var(--yamori-border-width-small) solid var(--yamori-border-primary)}.yamori-dialog{background-color:var(--yamori-surface-primary);border-color:var(--yamori-border-primary);border-radius:var(--yamori-border-radius-large);border-style:solid;border-width:var(--yamori-border-width-small);box-shadow:var(--yamori-shadow-drop-small);color:inherit;padding:unset}.yamori-dialog__body{display:flex;flex-direction:column;height:fit-content}.yamori-dialog__content{flex-grow:1;min-height:0;padding:var(--yamori-spacing-large)}.yamori-dialog .yamori-dialog-header{font-family:inherit;font-size:1rem;line-height:1.6;font-weight:600;text-decoration:none;align-items:center;border-bottom:var(--yamori-border-width-small) solid var(--yamori-border-primary);box-sizing:border-box;column-gap:var(--yamori-spacing-large);display:flex;grid-area:header;padding:var(--yamori-spacing-small) var(--yamori-spacing-medium);position:relative;width:100%}.yamori-dialog .yamori-dialog-header__content{flex-grow:1;text-align:center}.yamori-dialog .yamori-dialog-footer{align-items:center;column-gap:var(--yamori-spacing-small);display:flex;justify-content:flex-end;padding:var(--yamori-spacing-small)}.yamori-select{font-family:inherit;font-size:1rem;line-height:1.6;font-weight:400;text-decoration:none;align-items:center;background-color:var(--yamori-surface-primary);box-sizing:border-box;border:var(--yamori-border-width-small) solid var(--yamori-border-primary);border-radius:var(--yamori-border-radius-medium);color:var(--yamori-text-primary);column-gap:var(--yamori-spacing-small);display:inline-flex;padding:var(--yamori-spacing-medium)}.yamori-select[hidden]{display:none}.yamori-select svg:last-child{margin-left:auto}.yamori-select:enabled{cursor:pointer}.yamori-select:enabled:hover{border-color:var(--yamori-border-hover)}.yamori-select:disabled{background-color:var(--yamori-surface-primary-disabled);color:var(--yamori-text-disabled)}.yamori-select__placeholder{color:var(--yamori-text-disabled)}.yamori-select:focus-visible{outline-offset:0;border-color:transparent;border-radius:var(--yamori-border-radius-medium)}.yamori-select__dropdown{background-color:var(--yamori-surface-primary);box-sizing:border-box;box-shadow:var(--yamori-shadow-drop-small);border:var(--yamori-border-width-small) solid var(--yamori-border-primary);border-radius:var(--yamori-border-radius-medium);list-style:none;margin:0;padding:var(--yamori-spacing-x-small) 0}.yamori-select__dropdown .yamori-select-option{font-family:inherit;font-size:1rem;line-height:1.6;font-weight:400;text-decoration:none;align-items:center;background-color:var(--yamori-surface-primary);border:none;border-bottom:var(--yamori-border-width-small) solid var(--yamori-border-primary);box-sizing:border-box;color:var(--yamori-text-primary);column-gap:var(--yamori-spacing-small);display:flex;padding:var(--yamori-spacing-medium);width:100%}.yamori-select__dropdown .yamori-select-option:enabled{cursor:pointer}.yamori-select__dropdown .yamori-select-option:enabled:hover{background-color:var(--yamori-surface-action-hover-2);color:var(--yamori-text-on-action)}.yamori-select__dropdown .yamori-select-option:disabled{background-color:var(--yamori-surface-primary-disabled);color:var(--yamori-text-disabled)}.yamori-select__dropdown .yamori-select-option:focus-visible{border-bottom-color:transparent;outline-offset:0}.yamori-select__dropdown .yamori-select-option--selected{background-color:var(--yamori-surface-action);color:var(--yamori-text-on-action)}.yamori-select__dropdown .yamori-select-option--selected:enabled:hover{background-color:var(--yamori-surface-action-hover)}.yamori-select__dropdown .yamori-select-option--selected:disabled{background-color:var(--yamori-surface-action-disabled)}.yamori-select__dropdown li:last-child .yamori-select-option{border-bottom:unset}.yamori-link{font-family:inherit;font-size:inherit;line-height:1.6;font-weight:400;text-decoration:none;align-items:center;color:var(--yamori-text-action);column-gap:var(--yamori-spacing-small);cursor:pointer;display:inline-flex}.yamori-link[hidden]{display:none}.yamori-link:not(:hover){font-family:inherit;font-size:inherit;line-height:1.6;font-weight:400;text-decoration:underline}.yamori-link:hover{color:var(--yamori-text-action-hover)}.yamori-link:visited,.yamori-link:active{color:var(--yamori-text-action-active)}.yamori-list{margin:var(--yamori-spacing-large) 0;padding:0}.yamori-list .yamori-list{margin:var(--yamori-spacing-medium) 0;padding-left:var(--yamori-spacing-large)}.yamori-list .yamori-list-item{display:block}.yamori-list .yamori-list-item[hidden]{display:none}.yamori-list .yamori-list-item__label{display:flex;column-gap:var(--yamori-spacing-medium)}.yamori-navigation-bar{align-items:center;background-color:var(--yamori-surface-page);border-bottom:var(--yamori-border-width-small) solid var(--yamori-border-primary);column-gap:var(--yamori-spacing-medium);display:flex;position:relative;padding:var(--yamori-spacing-medium) var(--yamori-spacing-large)}.yamori-navigation-bar__links-container{flex:1;min-width:0}.yamori-navigation-bar__links{box-sizing:border-box;align-items:center;gap:var(--yamori-spacing-medium);display:flex;list-style:none;margin:0;padding:0;width:100%}.yamori-navigation-bar__links>a{flex-shrink:0}.yamori-navigation-bar__controls{box-sizing:border-box;align-items:center;display:flex;gap:var(--yamori-spacing-medium);justify-content:flex-end}.yamori-navigation-bar:has(.yamori-navigation-bar__dialog[open]){border:none}.yamori-navigation-bar__dialog[open]{background-color:var(--yamori-surface-page);border:none;border-bottom:var(--yamori-border-width-small) solid var(--yamori-border-primary);color:inherit;display:flex;flex-direction:column;margin:0;max-height:calc(100dvh - 100%);padding:0;top:100%;width:100%;z-index:1}.yamori-navigation-bar__dialog .yamori-navigation-bar__links{align-items:flex-end;flex-direction:column;overflow-y:auto;padding:var(--yamori-spacing-medium) var(--yamori-spacing-large)}.yamori-navigation-bar__dialog .yamori-navigation-bar__controls{flex-wrap:wrap;width:100%;padding:0 var(--yamori-spacing-large);padding-bottom:var(--yamori-spacing-medium)}.yamori-navigation-bar-layout{height:100dvh;inset:0;overflow:hidden;position:absolute;width:100dvw}.yamori-navigation-bar-layout__content{left:0;overflow-y:auto;padding:var(--yamori-spacing-large);position:absolute;right:0}.yamori-navigation-bar-layout__footer{position:absolute;bottom:0;display:flex;width:100%;padding:var(--yamori-spacing-small) var(--yamori-spacing-large);box-sizing:border-box;border-top:var(--yamori-border-width-small) solid var(--yamori-border-primary)}.yamori-navigation-bar-layout__footer address{flex:1;min-width:0}.yamori-navigation-bar-layout__footer a img.github{width:1.5rem}@media (prefers-color-scheme: dark){:root:not([data-yamori-theme]) .yamori-navigation-bar-layout__footer a img.github{filter:invert(1)}}:root[data-yamori-theme=dark] .yamori-navigation-bar-layout__footer a img.github{filter:invert(1)}.chessboard{display:grid;grid-template:auto 1fr/auto 1fr;gap:var(--yamori-spacing-small);box-sizing:border-box}.chessboard__switch{all:unset;aspect-ratio:1/1;border:2px solid var(--yamori-theme-primary);border-radius:100rem;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;place-self:center;overflow:hidden;width:1.25rem}.chessboard__switch div{background-color:#fff;height:50%}.chessboard__switch div:first-child{background-color:#000}.chessboard__switch[aria-checked=true]{flex-direction:column-reverse}.chessboard__files{display:flex;justify-content:space-around}.chessboard__ranks{display:flex;flex-direction:column-reverse;justify-content:space-around;text-align:center}.chessboard__ranks--flipped{flex-direction:column}.chessboard__squares{display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}.chess-square{all:unset;box-sizing:border-box;aspect-ratio:1/1;padding:.1em;font-size:var(--chess-piece-font-size)}.chess-square--selected{font-weight:700}.chess-square:not([aria-disabled=true]){cursor:pointer}.chess-square:not([aria-disabled=true]):hover{text-decoration:underline}.chess-square__content{box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:.5em;height:100%}.chess-square__content--active{border-style:solid}.chess-square:nth-child(16n+1),.chess-square:nth-child(16n+3),.chess-square:nth-child(16n+5),.chess-square:nth-child(16n+7),.chess-square:nth-child(16n+10),.chess-square:nth-child(16n+12),.chess-square:nth-child(16n+14),.chess-square:nth-child(16n+16){background-color:#d3d3d3}.chess-square:nth-child(16n+2),.chess-square:nth-child(16n+4),.chess-square:nth-child(16n+6),.chess-square:nth-child(16n+8),.chess-square:nth-child(16n+9),.chess-square:nth-child(16n+11),.chess-square:nth-child(16n+13),.chess-square:nth-child(16n+15){background-color:gray}.chess-promotion-dialog__content .chess-square{width:var(--chess-square-size)}.chess-history{column-gap:var(--yamori-spacing-medium);display:grid;grid-template-columns:repeat(3,max-content);list-style:none;max-height:100%;overflow-y:auto;row-gap:var(--yamori-spacing-x-small)}.chess-history h6{background-color:var(--yamori-surface-page);grid-column:span 3;position:sticky;top:0}.chess-moves__content ul{margin:0}.chess-moves[open]{height:100%;overflow-y:auto}.app{box-sizing:border-box;height:100%;width:100%;display:flex;gap:var(--yamori-spacing-large)}.app__controls{align-items:start;display:grid;flex:1;gap:var(--yamori-spacing-large);min-height:0;min-width:0;grid-template-rows:1fr auto;grid-template-columns:1fr 1fr}@media (min-aspect-ratio: 1/1){.app{flex-direction:row}}@media (max-aspect-ratio: 1/1){.app{flex-direction:column}}@media (prefers-color-scheme: light){:root:not([data-yamori-theme]){--yamori-theme-primary: #06c81b;--yamori-theme-primary-dark: #039d13;--yamori-theme-primary-darker: #02740b;--yamori-theme-primary-light: #09f524;--yamori-theme-primary-lighter: #c6ffc7;--yamori-theme-neutral: #838883;--yamori-theme-neutral-dark: #606460;--yamori-theme-neutral-darker: #3f423f;--yamori-theme-neutral-darkest: #000000;--yamori-theme-neutral-light: #a8aea8;--yamori-theme-neutral-lighter: #ced6ce;--yamori-theme-neutral-lightest: #ffffff}}:root[data-yamori-theme=light]{--yamori-theme-primary: #06c81b;--yamori-theme-primary-dark: #039d13;--yamori-theme-primary-darker: #02740b;--yamori-theme-primary-light: #09f524;--yamori-theme-primary-lighter: #c6ffc7;--yamori-theme-neutral: #838883;--yamori-theme-neutral-dark: #606460;--yamori-theme-neutral-darker: #3f423f;--yamori-theme-neutral-darkest: #000000;--yamori-theme-neutral-light: #a8aea8;--yamori-theme-neutral-lighter: #ced6ce;--yamori-theme-neutral-lightest: #ffffff}@media (prefers-color-scheme: dark){:root:not([data-yamori-theme]){--yamori-theme-primary: #06c81b;--yamori-theme-primary-dark: #09f524;--yamori-theme-primary-darker: #c6ffc7;--yamori-theme-primary-light: #039d13;--yamori-theme-primary-lighter: #02740b;--yamori-theme-neutral: #838883;--yamori-theme-neutral-dark: #a8aea8;--yamori-theme-neutral-darker: #ced6ce;--yamori-theme-neutral-darkest: #ffffff;--yamori-theme-neutral-light: #606460;--yamori-theme-neutral-lighter: #3f423f;--yamori-theme-neutral-lightest: #000000}}:root[data-yamori-theme=dark]{--yamori-theme-primary: #06c81b;--yamori-theme-primary-dark: #09f524;--yamori-theme-primary-darker: #c6ffc7;--yamori-theme-primary-light: #039d13;--yamori-theme-primary-lighter: #02740b;--yamori-theme-neutral: #838883;--yamori-theme-neutral-dark: #a8aea8;--yamori-theme-neutral-darker: #ced6ce;--yamori-theme-neutral-darkest: #ffffff;--yamori-theme-neutral-light: #606460;--yamori-theme-neutral-lighter: #3f423f;--yamori-theme-neutral-lightest: #000000}:root{--yamori-border-radius-small: 2px;--yamori-border-radius-medium: 4px;--yamori-border-radius-large: 8px;--yamori-border-width-small: 1px;--yamori-border-width-medium: 2px;--yamori-border-width-large: 4px;--yamori-shadow-drop-small: 1px 2px 4px 0 color-mix(in srgb, var(--yamori-theme-neutral-darkest) 25%, transparent);--yamori-shadow-inner-small: inset 1px 2px 4px 0 color-mix(in srgb, var(--yamori-theme-neutral-darkest) 25%, transparent);--yamori-spacing-x-small: 2px;--yamori-spacing-small: 4px;--yamori-spacing-medium: 8px;--yamori-spacing-large: 16px;--yamori-spacing-x-large: 40px;--yamori-text-heading: var(--yamori-theme-neutral-darkest);--yamori-text-body: var(--yamori-theme-neutral-dark);--yamori-text-disabled: var(--yamori-theme-neutral);--yamori-text-action: var(--yamori-theme-primary);--yamori-text-action-disabled: var(--yamori-theme-primary-lighter);--yamori-text-action-hover: var(--yamori-theme-primary-dark);--yamori-text-action-active: var(--yamori-theme-primary-darker);--yamori-text-on-action: var(--yamori-theme-neutral-lightest);--yamori-text-on-secondary-action: var(--yamori-theme-primary);--yamori-text-on-secondary-action-disabled: var(--yamori-theme-primary-light);--yamori-text-on-secondary-action-hover: var(--yamori-theme-primary-dark);--yamori-text-on-secondary-action-active: var(--yamori-theme-primary-darker);--yamori-surface-page: var(--yamori-theme-neutral-lightest);--yamori-surface-primary: var(--yamori-theme-neutral-lightest);--yamori-surface-primary-2: var(--yamori-theme-neutral);--yamori-surface-primary-disabled: var(--yamori-theme-neutral-lighter);--yamori-surface-secondary: var(--yamori-theme-primary-lighter);--yamori-surface-action: var(--yamori-theme-primary);--yamori-surface-action-disabled: var(--yamori-theme-primary-lighter);--yamori-surface-action-hover: var(--yamori-theme-primary-dark);--yamori-surface-action-hover-2: var(--yamori-theme-primary-light);--yamori-surface-action-active: var(--yamori-theme-primary-darker);--yamori-surface-secondary-action: var(--yamori-theme-primary-lighter);--yamori-border-focus: var(--yamori-theme-primary-darker);--yamori-border-primary: var(--yamori-theme-neutral);--yamori-border-disabled: var(--yamori-theme-neutral-light);--yamori-border-hover: var(--yamori-theme-primary);--yamori-border-active: var(--yamori-theme-primary-dark);--yamori-border-action: var(--yamori-theme-primary);--yamori-border-action-disabled: var(--yamori-theme-primary-lighter);--yamori-border-action-hover: var(--yamori-theme-primary-dark);--yamori-border-action-active: var(--yamori-theme-primary-darker);color-scheme:light dark;font-family:Inter,sans-serif}:root :focus-visible{outline:var(--yamori-border-focus) solid 2px;outline-offset:2px;border-radius:var(--yamori-border-radius-small)}:root ::selection{background-color:var(--yamori-theme-primary-darker);color:var(--yamori-theme-neutral-lightest)}:root body{font-family:inherit;font-size:1rem;line-height:1.6;font-weight:400;text-decoration:none;background-color:var(--yamori-surface-page);color:var(--yamori-text-body)}:root body h1{font-size:3.75rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h1:first-child{margin-top:unset}:root body h2{font-size:3rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h2:first-child{margin-top:unset}:root body h3{font-size:2.5rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h3:first-child{margin-top:unset}:root body h4{font-size:2rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h4:first-child{margin-top:unset}:root body h5{font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h5:first-child{margin-top:unset}:root body h6{font-size:1.25rem;font-weight:700;line-height:1.2;color:var(--yamori-text-heading);margin:unset;margin-bottom:.5rem;margin-top:1.5rem}:root body h6:first-child{margin-top:unset}:root body small{font-size:.75rem}:root body b{font-weight:600}:root body p{margin-block:0}:root body p+p{margin-block-start:1rem}:root body svg{flex-shrink:0}
