.cg-wrap{box-sizing:content-box;display:block;position:relative}cg-container{width:100%;height:100%;display:block;position:absolute;top:0}cg-board{-webkit-user-select:none;user-select:none;background-size:cover;width:100%;height:100%;line-height:0;position:absolute;top:0;left:0}.cg-wrap.manipulable cg-board{cursor:pointer}cg-board square{pointer-events:none;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board square.move-dest{pointer-events:auto}cg-board square.last-move{will-change:transform}.cg-wrap piece{z-index:2;will-change:transform;pointer-events:none;background-size:cover;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board piece.dragging{cursor:move;z-index:11!important}piece.anim{z-index:8}piece.fading{z-index:1;opacity:.5}.cg-wrap piece.ghost{opacity:.3}.cg-wrap piece svg{pointer-events:none;z-index:2;opacity:.6;width:100%;height:100%;position:relative;top:0;left:0;overflow:hidden}.cg-wrap cg-auto-pieces,.cg-wrap .cg-shapes,.cg-wrap .cg-custom-svgs,.cg-wrap .cg-shapes-below,.cg-wrap .cg-custom-below{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.cg-wrap cg-auto-pieces{z-index:2}.cg-wrap cg-auto-pieces piece{opacity:.3}.cg-wrap .cg-shapes{opacity:.6;z-index:2;overflow:hidden}.cg-wrap .cg-shapes-below{z-index:1;overflow:hidden}.cg-wrap .cg-custom-below{z-index:1}.cg-wrap .cg-custom-svgs{z-index:9}.cg-wrap .cg-custom-svgs svg,.cg-wrap .cg-custom-below svg{overflow:visible}.cg-wrap coords{pointer-events:none;opacity:.8;font-family:sans-serif;font-size:9px;display:flex;position:absolute}.cg-wrap coords.ranks{flex-flow:column-reverse;width:12px;height:100%;top:-20px;left:4px}.cg-wrap coords.ranks.left{align-items:flex-end;left:-15px}.cg-wrap coords.files{text-transform:uppercase;text-align:center;flex-flow:row;width:100%;height:16px;bottom:-4px;left:24px}.cg-wrap coords coord{flex:auto}.cg-wrap coords.squares{text-transform:uppercase;text-align:right;flex-flow:column-reverse;width:12.5%;height:100%;bottom:0;left:0}.cg-wrap coords.squares.black{flex-flow:column}.cg-wrap coords.squares.left{text-align:left}.cg-wrap coords.squares coord{padding:6% 4%}.cg-wrap coords.squares.rank2{transform:translate(100%)}.cg-wrap coords.squares.rank3{transform:translate(200%)}.cg-wrap coords.squares.rank4{transform:translate(300%)}.cg-wrap coords.squares.rank5{transform:translate(400%)}.cg-wrap coords.squares.rank6{transform:translate(500%)}.cg-wrap coords.squares.rank7{transform:translate(600%)}.cg-wrap coords.squares.rank8{transform:translate(700%)}piece.pawn.white{background-image:var(---white-pawn)}piece.knight.white{background-image:var(---white-knight)}piece.bishop.white{background-image:var(---white-bishop)}piece.rook.white{background-image:var(---white-rook)}piece.queen.white{background-image:var(---white-queen)}piece.king.white{background-image:var(---white-king)}piece.pawn.black{background-image:var(---black-pawn)}piece.knight.black{background-image:var(---black-knight)}piece.bishop.black{background-image:var(---black-bishop)}piece.rook.black{background-image:var(---black-rook)}piece.queen.black{background-image:var(---black-queen)}piece.king.black{background-image:var(---black-king)}@font-face{font-family:Noto Chess;font-display:block;src:url(/fonts/lichess-chess.woff2)format("woff2")}@font-face{font-family:lichess;font-display:block;src:url(/fonts/lichess.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--c-bg:#fff;--c-page-bg:var(--c-bg);--c-body-gradient:#ebebeb;--c-bg-popup:var(--c-bg);--c-bg-page:#f5f5f5;--c-bg-low:#f0f0f0;--c-bg-zebra:#fbfbfb;--c-font:#4d4d4d;--c-font-dim:#6b6b6b;--c-font-dimmer:#b3b3b3;--c-font-clear:#1f1f1f;--c-brand:#262626;--c-brand-dim:#6b6b6b;--c-primary:#1f1f1f;--c-primary-hover:#474747;--c-secondary:#1f1f1f;--c-primary-blue:#1b78d0;--c-link:var(--c-primary);--c-link-hover:var(--c-primary-hover);--c-progress-started:#be7f37;--c-progress-solved:#549c6f;--c-level-easy:#2f6a4d;--c-level-medium:#8f5019;--c-level-hard:#a72525;--c-bad:#c33;--c-border:#e0e0e0;--c-popup-border:var(--c-border);--c-bg-input:#fafafa;--c-metal-top:#fafafa;--c-metal-bottom:#f5f5f5;--c-metal-top-hover:#fff;--c-metal-bottom-hover:#fafafa;--c-over:#fff;--radius:0;--box-shadow:0 2px 2px 0 #00000014, 0 3px 1px -2px #0000002e, 0 1px 5px 0 #0000001a;--ink:var(--c-font-clear);--muted:var(--c-font-dim);--c-font-page:#5e5e5e;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Times New Roman", serif;--symbols:"Apple Symbols", "Segoe UI Symbol", "Noto Sans Symbols 2", "DejaVu Sans", sans-serif;--font-size-sm:.875rem;--font-size-field-label:.75rem;--font-size-md:.9375rem;--font-size-base:1rem;--font-size-card-credit:.8125rem;--font-size-card-tags:.75rem;--font-size-compact-base:clamp(12px, calc(11.333px + .2222vw), 14px);--font-size-compact-display:30px;--font-size-brand:25px;--font-size-brand-large:30px;--board-light:#fff;--board-dark:#c9c9c9;--coord-on-light:#6a6a6a;--coord-on-dark:#3f3f3f;--sq:62px;--coord-band:0px;--board:calc(var(--sq) * 8);--board-zoom:75;--board-scale:1;--page:1120px;--page-pad:24px;--catalogue-track-min:clamp(150px, 25vw, 200px);--catalogue-track-gap:clamp(16px, 2vw, 20px);--tools-w:300px;--work-gap:10px;--gutter:16px;--header-h:40px}@media (height>=599.3px){:root{--header-h:60px}}@media (width>=799.3px) and (height>=499.3px){:root{--board-scale:calc(var(--board-zoom) * .0075 + .25)}}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--c-page-bg:#0f0f0f;--c-bg:#1c1c1c;--c-body-gradient:#1a1a1a;--c-bg-popup:var(--c-bg-low);--c-bg-page:#2b2b2b;--c-bg-low:#303030;--c-bg-zebra:#212121;--c-font:#bababa;--c-font-dim:#a8a8a8;--c-font-dimmer:#6b6b6b;--c-font-clear:#ebebeb;--c-brand:#f5f5f5;--c-brand-dim:#b3b3b3;--c-primary:#ebebeb;--c-primary-hover:#c2c2c2;--c-secondary:#ebebeb;--c-primary-blue:#3692e7;--c-progress-started:#a87547;--c-progress-solved:#578064;--c-level-easy:#387154;--c-level-medium:#915622;--c-level-hard:#9b2727;--c-bad:#ce3b3b;--c-border:#303030;--c-popup-border:color-mix(in srgb, var(--c-border) 85%, var(--c-font) 15%);--c-bg-input:#141414;--c-metal-top:#2b2b2b;--c-metal-bottom:#242424;--c-metal-top-hover:#333;--c-metal-bottom-hover:#2b2b2b;--c-font-page:#949494}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--c-page-bg);height:100%;min-height:100%;font-size:100%;overflow:hidden}body{background:var(--c-page-bg) linear-gradient(to bottom, var(--c-body-gradient), var(--c-page-bg) 116px) no-repeat;background-position:0 calc(-1 * var(--scroll-y,0px));scrollbar-gutter:stable;height:100%;min-height:100dvh;color:var(--c-font);font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;line-height:1.5;display:flex;overflow:clip auto}a{color:var(--c-link);text-decoration:none}a:hover{color:var(--c-link-hover)}figure{margin:0}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}@media (width<=799.29px) and (orientation:portrait){html{overflow-x:clip}}h1,h2,h3,p{margin-top:0}.topbar{flex:0 0 var(--header-h);z-index:30;height:var(--header-h);font-size:var(--font-size-compact-base);background:0 0;border-bottom:1px solid #0000;transition:border-color .16s;position:relative}.topbar.is-scrolled{background-origin:border-box;background-image:linear-gradient(to bottom, var(--c-body-gradient), color-mix(in oklab, var(--c-body-gradient) 50%, var(--c-page-bg)) 60px)}@media (scripting:none){.topbar{background:var(--c-page-bg) linear-gradient(to bottom, var(--c-body-gradient), var(--c-page-bg) 116px) no-repeat}}.topbar__in{max-width:var(--page);height:100%;padding:0 var(--page-pad);align-items:center;margin:0 auto;display:flex}.topbar__brand{font-size:var(--font-size-brand);align-items:center;display:flex}.topbar__name{color:var(--c-brand);align-items:center;margin:0 16px 0 0;font-weight:400;line-height:normal;text-decoration:none;display:inline-flex;transform:translateY(-3px)}@media (height>=599.3px){.topbar__brand{font-size:var(--font-size-brand-large)}}.topbar__word{display:inline}.topbar__suffix{color:var(--c-brand-dim)}.topbar__name:hover{color:var(--c-brand)}.topbar__nav{height:calc(var(--header-h) - 5px);white-space:nowrap;align-self:flex-start;align-items:stretch;display:flex}.topbar__nav a{line-height:var(--header-h);color:var(--c-font-page);text-transform:uppercase;padding:0 .7em;text-decoration:none;transition:background-color .12s,color .12s;display:block}.topbar__nav a:hover{background:var(--c-bg-page);color:var(--c-font)}.topbar__burger,.topbar__scrim{display:none}@media (width<=799.29px) and (orientation:portrait){.topbar__in{justify-content:flex-start;padding:0 12px}.topbar__brand{align-items:baseline;gap:2px;position:relative;top:-2px}.topbar__name{margin-right:4px;transform:none}.topbar__burger{z-index:32;width:var(--header-h);cursor:pointer;flex:none;height:1ex;margin-left:-12px;display:block;position:relative}.topbar__burger:before{content:"";height:var(--header-h);position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.topbar__burger-in,.topbar__burger-in:before,.topbar__burger-in:after{content:"";background:var(--c-brand);width:22px;height:2px;transition:transform .16s,top .16s,bottom .16s,background-color .12s;position:absolute;left:0}.topbar__burger-in{top:50%;left:50%;transform:translate(-50%,-50%)}.topbar__burger-in:before{top:-6px}.topbar__burger-in:after{bottom:-6px}.nav-toggle:checked~.topbar__brand .topbar__burger .topbar__burger-in{background-color:#0000}.nav-toggle:checked~.topbar__brand .topbar__burger .topbar__burger-in:before{top:0;transform:rotate(45deg)}.nav-toggle:checked~.topbar__brand .topbar__burger .topbar__burger-in:after{bottom:0;transform:rotate(-45deg)}}@media (prefers-reduced-motion:reduce){.topbar__burger-in,.topbar__burger-in:before,.topbar__burger-in:after{transition-duration:.01ms}}@media (width<=799.29px) and (orientation:portrait){.topbar__nav{z-index:31;width:80%;max-width:320px;padding:calc(var(--header-h) + 8px) 10px var(--font-size-compact-base);white-space:normal;background:var(--c-bg);overscroll-behavior:contain;flex-direction:column;align-self:auto;align-items:stretch;gap:2px;height:auto;margin:0;font-size:1.2em;transition:transform .2s;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(calc(-100% - 10px));box-shadow:2px 5px 14px #00000038}.nav-toggle:checked~.topbar__nav{transform:translate(0)}.topbar__nav a{border-radius:var(--radius);text-transform:none;color:var(--c-font);padding:12px 14px;font-weight:700;line-height:normal}.topbar__nav a:hover{background:var(--c-bg-page);color:var(--c-font-clear)}.nav-toggle:checked~.topbar__scrim{z-index:30;background:#0006;display:block;position:fixed;inset:0}body:has(#nav-toggle:checked){overflow:hidden}}.topbar,.topbar__nav a{touch-action:manipulation}.topbar__end{align-self:stretch;align-items:center;margin-inline-start:auto;display:flex;position:relative}.dasher{align-self:stretch;align-items:center;display:flex}.dasher__toggle{appearance:none;color:var(--c-font-page);cursor:pointer;background:0 0;border:0;place-items:center;height:100%;padding:0 9px;line-height:normal;transition:background-color .12s,color .12s;display:grid}.dasher__profile-icon{fill:none;stroke:currentColor;stroke-width:14px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;display:block;transform:translateY(.12px)}html[data-account-signed-in=true] .dasher__profile-icon{fill:currentColor;stroke:none}@media (height>=599.3px){.dasher__profile-icon{transform:translateY(.45px)}}@media (width<=799.29px) and (orientation:portrait){.dasher__profile-icon{transform:translateY(1.21px)}}@media (width<=799.29px) and (orientation:portrait) and (height>=599.3px){.dasher__profile-icon{transform:translateY(1.64px)}}.dasher__toggle:hover,.dasher.shown .dasher__toggle{background:var(--c-bg-page)}.dasher__app{z-index:33;width:min(300px,100vw - 16px);max-height:calc(100vh - var(--header-h));background:var(--c-bg-popup);--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;display:none;position:absolute;top:100%;right:0;overflow-y:auto;box-shadow:0 8px 20px #0000002e}.dasher.shown .dasher__app{display:block}#dasher-app .group{padding:11px 12px 13px}#dasher-app .group__title{font-family:var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--c-font-dim);margin:0 0 8px;font-size:10px;font-weight:600}#dasher-app .account-menu__signin{appearance:none;width:100%;color:var(--c-font-clear);font:15px/1.4 var(--serif);text-align:start;cursor:pointer;background:0 0;border:0;padding:5px 0}#dasher-app .account-menu__signin:hover{text-decoration:underline}#dasher-app .account-menu__external-icon{vertical-align:-2px;width:13px;height:13px;margin-left:5px;display:inline-block}#dasher-app .account-menu__identity{align-items:center;gap:8px;display:flex}#dasher-app .account-menu__name{min-width:0;color:var(--c-font-clear);font:15px/1.4 var(--serif);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}#dasher-app .account-menu__action{appearance:none;width:32px;height:32px;color:var(--c-font);cursor:pointer;background:0 0;border:0;flex:0 0 32px;place-items:center;padding:0;text-decoration:none;display:grid}#dasher-app .account-menu__action:hover{color:var(--c-font-clear);background:var(--c-bg-page)}#dasher-app .account-menu__logout:disabled{cursor:wait;opacity:.6}#dasher-app .account-menu__action svg{width:19px;height:19px}#dasher-app .account-menu__signin:focus-visible,#dasher-app .account-menu__action:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}#dasher-app .account-menu__status,#dasher-app .account-menu__message{font:14px/1.4 var(--serif);margin:4px 0}#dasher-app .account-menu__status{color:var(--c-font)}#dasher-app .account-menu__message{color:var(--c-bad)}#dasher-app .seg{border:1px solid var(--c-border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid}#dasher-app .seg__btn{appearance:none;border:0;border-inline-start:1px solid var(--c-border);background:var(--c-bg);color:var(--c-font);font:inherit;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 7px;font-size:11.5px;line-height:1.15;transition:background-color .12s,color .12s;display:flex}#dasher-app .seg span{font-size:13px}#dasher-app .seg__btn:first-child{border-inline-start:0}#dasher-app .seg__btn:hover{background:var(--c-bg-page);color:var(--c-font-clear)}#dasher-app .seg__btn.active{background:color-mix(in srgb, var(--c-primary) 10%, transparent);color:var(--c-primary)}#dasher-app .seg__btn svg{width:20px;height:20px}#dasher-app .list{border:1px solid var(--c-border);grid-template-columns:repeat(3,1fr);display:grid}#dasher-app .piece-option{appearance:none;border:0;border-inline-start:1px solid var(--c-border);background:var(--c-bg);color:var(--c-font);font:inherit;flex-direction:column;align-items:center;gap:5px;padding:7px 4px 6px;font-size:11px;transition:background-color .12s,color .12s;display:flex}#dasher-app .piece-option:first-child{border-inline-start:0}#dasher-app .piece-option:hover{background:var(--c-bg-page);color:var(--c-font-clear)}#dasher-app .piece-option.active{background:color-mix(in srgb, var(--c-primary) 10%, transparent);color:var(--c-primary)}#dasher-app .piece-option__img{background-color:var(--board-light);outline:1px solid var(--c-border);background-position:50%;background-repeat:no-repeat;background-size:100% 100%;width:46px;height:46px}#dasher-app .slider{grid-template-columns:74px 1fr;align-items:center;gap:8px;padding:3px 0;display:grid}#dasher-app .slider__label{white-space:nowrap}#dasher-app .slider input[type=range]{width:100%;accent-color:var(--c-primary);margin:0}#dasher-app .slider input[type=checkbox]{width:16px;height:16px;accent-color:var(--c-primary);margin:0}#dasher-app .volume{grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}#dasher-app .volume__mute{appearance:none;color:var(--c-font);background:0 0;border:0;place-items:center;width:26px;height:26px;padding:2px;display:grid}#dasher-app .volume__mute:hover{color:var(--c-font-clear)}#dasher-app .volume__icon{width:20px;height:20px}#dasher-app .volume__icon--off,#dasher-app .volume.is-muted .volume__icon--on{display:none}#dasher-app .volume.is-muted .volume__icon--off{display:block}#dasher-app .volume__range{width:100%;accent-color:var(--c-primary);margin:0}#dasher-app .volume.is-muted .volume__range{opacity:.4}.page{width:100%;max-width:var(--page);padding:var(--gutter) var(--page-pad) 48px;flex:none;margin:0 auto}.page--home{padding-bottom:16px}.home-about{width:fit-content;min-height:44px;color:var(--c-font-clear);touch-action:manipulation;align-items:center;margin-top:12px;font-size:14px;font-weight:400;display:flex}.home-about:hover{color:var(--c-font-clear);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.rule{border:0;border-top:1px solid var(--c-border);margin:20px 0}.hero__task{font-size:var(--font-size-compact-display);letter-spacing:-.01em;color:var(--c-font-clear);margin:0;font-weight:600;line-height:1.2}.hero__credit{font-size:var(--font-size-sm);color:var(--c-font-dim);margin:6px 0 0}.hero__credit b{color:var(--c-font);font-weight:600}.work,.hero{grid-template-columns:max-content var(--tools-w);gap:var(--work-gap);font-size:var(--font-size-compact-base);--solve-pad:0px;justify-content:center;align-items:start;margin-top:8px;display:grid}.hero{column-gap:calc(var(--work-gap) + var(--coord-band));margin-top:calc(-1 * var(--gutter));margin-inline:calc(var(--solve-pad) - var(--page-pad)) 0;grid-template-columns:max-content minmax(0,1fr);align-items:stretch}.boardcol,.movecol{flex-direction:column;gap:12px;min-width:0;display:flex}@media (width>=799.3px),(orientation:landscape){:root{--work-gap:15px}.work,.hero{--solve-pad:1vw}.work{--sq:min(calc(( min(100vw, var(--page)) - 2 * var(--solve-pad) - var(--work-gap) - var(--tools-w) ) / 8), calc((100vh - var(--header-h) - 16px) / 8))}.hero{grid-template-columns:max-content var(--tools-w);--sq:calc(min(calc(( min(100vw, var(--page)) - 2 * var(--solve-pad) - var(--work-gap) - var(--tools-w) ) / 8), calc((100vh - var(--header-h) - 16px) / 8)) * .85);justify-content:center;margin-inline:0}.work{margin-top:calc(-1 * var(--gutter));margin-inline:calc(var(--solve-pad) - var(--page-pad));--solve-board:calc(var(--sq) * 8 * var(--board-scale));grid-template-columns:max-content minmax(var(--tools-w), var(--table-max,400px))}.work .board-frame>.cg-wrap:not(.promo){width:var(--solve-board);height:var(--solve-board)}.work .tools{height:var(---cg-height,var(--solve-board))}}@media (width<=799.29px) and (orientation:landscape){:root{--tools-w:240px;--work-gap:10px;--table-max:240px}.work,.hero{--solve-pad:0px}.work{margin-inline:calc(-1 * var(--page-pad))}}@media (width<=799.29px) and (orientation:portrait){:root{--page-pad:14px;--sq:calc((100vw - 2 * var(--page-pad)) / 8)}.page{padding-top:var(--gutter)}.work{margin-top:calc(-1 * var(--gutter));margin-inline:calc(-1 * var(--page-pad));flex-direction:column;align-items:stretch;gap:3px;display:flex}.boardcol,.movecol{display:contents}.work .diagram{order:1;width:100%}.work .board-frame>.cg-wrap:not(.promo){--board-radius:0;aspect-ratio:1;width:100%;height:auto}.work .nav{box-shadow:none;background:0 0;border-radius:0;order:3;gap:3px;margin-inline:0;padding:0}.work .tools{height:auto;box-shadow:none;order:4}.hero{margin-inline:calc(-1 * var(--page-pad));grid-template-columns:minmax(0,1fr);gap:24px}}.diagram{width:max-content}.board-frame{position:relative}.board-frame--link{cursor:pointer;display:block}.board-frame--link:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cg-wrap{width:calc(var(--sq) * 8);height:calc(var(--sq) * 8)}.board-frame>.cg-wrap:not(.promo){--board-radius:var(--radius);border-radius:var(--board-radius)}.board-resize{display:none}@media (width>=799.3px){.board-resize{cursor:nwse-resize;touch-action:none;z-index:14;width:22px;height:22px;display:block;position:absolute;bottom:-9px;right:-9px}.board-resize:before,.board-resize:after{content:"";background:#000;width:12px;height:1px;position:absolute;left:0}.board-resize:before{width:5px;transform:translate(7px,8px)rotate(-45deg)}.board-resize:after{transform:translate(1px,6px)rotate(-45deg)}.board-resize:hover{background:#00000040;border-radius:50%}body.resizing .board-resize{background:#00000073;border-radius:50%}}body.resizing{-webkit-user-select:none;user-select:none}.cg-wrap coords{pointer-events:none;opacity:1;color:var(--muted);font-family:var(--serif);text-transform:lowercase;font-size:8px;font-weight:700;display:flex;position:absolute}@media (width>=300px){.cg-wrap coords{font-size:calc(.444444vw + 6.66667px)}}@media (width>=1200px){.cg-wrap coords{font-size:12px}}.cg-wrap coords.ranks{flex-flow:column-reverse;width:.8em;height:100%;top:1px;left:auto;right:0}.cg-wrap coords.ranks.black{flex-flow:column}.cg-wrap coords.files{text-align:left;text-transform:none;flex-flow:row;width:100%;height:1.4em;bottom:0;left:0}.cg-wrap coords.files.black{flex-flow:row-reverse}.cg-wrap coords.files coord{padding-left:4px}.cg-wrap coords.ranks coord{transform:none}.cg-wrap .ranks .coord-light,.cg-wrap .files .coord-light,.cg-wrap .squares .coord-light{color:var(--coord-on-light)}.cg-wrap .ranks .coord-dark,.cg-wrap .files .coord-dark,.cg-wrap .squares .coord-dark{color:var(--coord-on-dark)}@media (width>=799.3px),(orientation:landscape){.coords-out coords{text-shadow:none}:root{--coord-band:15px}.coords-out coords.ranks{right:calc(-1 * var(--coord-band));width:12px;top:0}.coords-out coords.ranks coord{transform:translateY(42%)}.coords-out coords.files{text-align:center;bottom:-15px;left:0}.coords-out .cg-wrap coords.ranks coord,.coords-out .cg-wrap coords.files coord{color:var(--muted)}.coords-out .board-frame{margin-bottom:12px}}.cg-wrap .cg-custom-svgs text{font-family:var(--symbols);font-weight:700}.cg-wrap .cg-custom-svgs{filter:grayscale()}cg-container{right:0}cg-board{border-radius:var(--board-radius,0);background-color:var(--board-light);box-shadow:var(--box-shadow);-webkit-tap-highlight-color:transparent;touch-action:manipulation}cg-board:before{content:"";border-radius:inherit;background-image:conic-gradient(var(--board-dark) 0 25%, var(--board-light) 0 50%, var(--board-dark) 0 75%, var(--board-light) 0);filter:brightness(calc(var(--board-brightness,73) / 100)) contrast(calc(var(--board-contrast,100) / 100));background-size:25% 25%;position:absolute;inset:0}.board-grain cg-board:before,.board-grain .board:before{filter:contrast(1.1032) brightness(1.4765) brightness(calc(var(--board-brightness,73) / 100)) contrast(calc(var(--board-contrast,100) / 100));background-image:url(/images/board/grey.jpg);background-repeat:no-repeat;background-size:cover}cg-board square.move-dest{background:radial-gradient(#14551e80 19%,#0000 20%)}cg-board square.premove-dest{background:radial-gradient(#141e5580 19%,#0000 20%)}cg-board square.oc.move-dest{background:radial-gradient(#0000 0% 79%,#1455004d 80%)}cg-board square.oc.premove-dest{background:radial-gradient(#0000 0% 79%,#141e5533 80%)}cg-board square.last-move{background-color:#9bc70069}cg-board square.check{background:radial-gradient(red 0%,#e70000 25%,#a9000000 89%,#9e000000 100%)}cg-board square.selected{background-color:#14551e80}cg-board square.current-premove{background-color:#141e5580}@media (hover:hover){cg-board square.move-dest:hover,cg-board square.move-dest.hover{background:#14551e4d}cg-board square.premove-dest:hover,cg-board square.premove-dest.hover{background:#141e5533}}.promo-backdrop{z-index:12;appearance:none;cursor:default;background:#ffffffb3;border:0;margin:0;padding:0;position:absolute;inset:0}.promo.cg-wrap{z-index:13;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.promo__piece{cursor:pointer;pointer-events:all;background-color:#b0b0b0;border:0;border-radius:50%;width:12.5%;height:12.5%;margin:0;padding:0;transition:border-radius .1s,box-shadow .1s;position:absolute;box-shadow:inset 0 0 25px 3px gray}.promo__piece:hover{box-shadow:inset 0 0 48px 8px var(--c-font-clear);border-radius:0}.promo.cg-wrap piece{opacity:1;pointer-events:none;background-size:100% 100%;width:100%;height:100%;transition:transform .1s;display:block;position:static;transform:scale(.8)}.promo__piece:hover piece{transform:none}.board{grid-template-columns:repeat(8, var(--sq));grid-template-rows:repeat(8, var(--sq));background-color:var(--board-light);border-radius:var(--radius);box-shadow:var(--box-shadow);-webkit-user-select:none;user-select:none;display:grid;position:relative;overflow:hidden}.board:before{content:"";background-image:conic-gradient(var(--board-dark) 0 25%, var(--board-light) 0 50%, var(--board-dark) 0 75%, var(--board-light) 0);filter:brightness(calc(var(--board-brightness,73) / 100)) contrast(calc(var(--board-contrast,100) / 100));background-size:25% 25%;position:absolute;inset:0}.sq{place-items:center;display:grid;position:relative}.board piece{background-position:50%;background-repeat:no-repeat;background-size:100% 100%;width:100%;height:100%;display:block}.diagram--thumb{--sq:26px}.tools{min-height:0;height:var(---cg-height,var(--board));background:var(--c-bg);border-radius:var(--radius);box-shadow:var(--box-shadow);flex-direction:column;display:flex;overflow:hidden}.panel{flex-direction:column;flex:auto;min-height:0;display:flex}.tab{appearance:none;border:0;border-right:1px solid var(--c-border);font:inherit;letter-spacing:.03em;text-transform:uppercase;color:var(--c-font-dim);cursor:pointer;background:0 0;flex:1 1 0;margin:0;padding:11px 10px 10px;font-weight:600;transition:color .15s,background-color .15s}@media (width<=499.29px){.tab{font-size:.9em}}.tab:last-child{border-right:0}.tab:not(.tab--on):hover{color:var(--c-font);background:var(--c-bg-zebra)}.tab--on{color:var(--c-primary);background:color-mix(in srgb, var(--c-primary) 10%, transparent)}.tabbar{border-bottom:1px solid var(--c-border);flex:0 0 44px;align-items:stretch;display:flex;position:relative}.tabbar .tab,.tabbar .key{flex:0 0 50%;min-width:0}.tab--sol,.tabbar--solved .key{display:none}.tabbar--solved .tab--sol{justify-content:center;align-items:center;display:flex}.ml{overflow-wrap:break-word;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;line-height:1.7;overflow-y:auto}@media (hover:none){.tview2 move,.analyse__fork move{-webkit-user-select:none;user-select:none}}.tview2{--tv-shy:var(--c-font-dim);--tv-hair:var(--c-border);--tv-tint:var(--c-bg-zebra);--c-base:var(--c-font);white-space:normal}.tview2 .active{--c-base:var(--c-primary-blue)}.ml>.tview2:empty{padding:0}.tview2 move{color:var(--c-base);white-space:nowrap;cursor:pointer;padding:.25em .17em;font-size:1.092em;display:inline-block}@media (hover:hover){.tview2 move:hover{background:var(--c-bg-page)}}.tview2 move.active{background:color-mix(in oklab, var(--c-base) 85%, transparent);color:var(--c-over)}.tview2 move.active index{color:inherit}.tview2 move.empty{pointer-events:none;color:var(--tv-shy)}.tview2 move index{color:var(--tv-shy);font-size:90%}.tview2 glyph{vertical-align:bottom;font-family:var(--serif);margin-inline-start:.08em}.tview2 comment{color:var(--c-font)}.tview2 comment a{color:var(--c-link);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.tview2 comment a:hover{color:var(--c-link-hover)}.tview2>interrupt{font-size:95%}.tview2>interrupt move{margin-inline:2px 0}.tview2>interrupt inline lines{margin-inline-start:0}.tview2 line{padding-inline-start:7px;display:block;position:relative}.tview2 line comment{font-size:90%}.tview2 line>branch{border-inline-start:2px solid var(--tv-hair);width:8px;height:100%;margin-inline-start:-9px;position:absolute}.tview2 line>branch:after{content:" ";border-top:2px solid var(--tv-hair);width:7px;height:2px;margin-top:calc(1.15em - 2px);position:absolute}.tview2 line:last-child>branch{height:1.15em}.tview2 lines{margin-block:2px;padding-inline-start:2px;display:block;overflow-x:clip}.tview2 lines lines move{font-size:.875rem}.tview2 inline{font-size:.9em;font-style:italic;display:inline}.tview2 inline:after{content:")";vertical-align:baseline;opacity:.7;margin-inline:-1px 1px;font-size:1.1em}.tview2 move open{opacity:.7;margin-inline-end:.08em;font-size:1.1em}.tview2 inline move{color:color-mix(in oklab, var(--c-base) 80%, transparent);margin-inline-start:0}.tview2 inline move.active{color:var(--c-over)}.tview2 inline comment{font-style:normal}.tview2-column{flex-wrap:wrap;align-content:flex-start;display:flex}.tview2-column move{padding:2px;font-size:1.092em}.tview2-column line comment{overflow-wrap:break-word;padding:0 5px 0 3px;display:inline}.tview2-column>move{flex:0 0 43.5%;padding:0 .3em 0 .5em;font-size:1.185em;line-height:1.75em;display:flex}.tview2-column>move index{padding-inline-start:5px}.tview2-column>move index:first-child{padding-inline-start:0}.tview2-column>move glyph{text-align:center;flex:0 auto;font-size:.82em;overflow:hidden}.tview2-column>move.active{font-weight:600}.tview2-column>index{border-inline-end:1px solid var(--c-border);background:var(--tv-tint);color:var(--c-font-dim);flex:0 0 13%;justify-content:center;align-items:center;line-height:2.07em;display:flex}.tview2-column>index+move{border-inline-end:var(--c-annotation-border,rgb(from var(--c-font) r g b / .2))}.tview2-column>interrupt{background:var(--tv-tint);border-top:1px solid var(--tv-hair);border-bottom:1px solid var(--tv-hair);flex:0 0 100%;max-width:100%;padding:2px 6px}.tview2-column>interrupt>comment{border-inline-start:2px solid var(--tv-hair);padding:3px 5px;display:block}.tview2-inline{--tv-move-size:14px;padding:7px 3px 7px 7px}.tview2-inline move{font-size:var(--tv-move-size);margin-inline-end:2px}.tview2-inline .mainline{background:var(--c-bg-zebra);font-weight:600}.tview2-inline move index{padding-inline-end:.2em;line-height:111.11%}.tview2-inline comment,.tview2-inline line comment{font-size:calc(var(--tv-move-size) * .9);margin:0 .35em 0 .1em}.tview2-inline inline{overflow-wrap:break-word}#analyse-cm{z-index:40;cursor:default;background:var(--c-bg-popup);border-radius:var(--radius);box-shadow:var(--box-shadow);-webkit-user-select:none;user-select:none;position:fixed;overflow:hidden}#analyse-cm.transparent{opacity:.7;transition:opacity .2s}#analyse-cm .title{text-align:center;border-bottom:1px solid var(--c-border);background:linear-gradient(var(--c-metal-top), var(--c-metal-bottom));margin:0;padding:.4em;font-size:1.2em}.context-menu__item{appearance:none;width:100%;font:inherit;text-align:start;color:var(--c-font);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:.4em;padding:.5em .6em .5em .3em;font-size:.95em;display:flex}.context-menu__item:before{text-align:center;width:2em}@media (hover:hover){.context-menu__item:hover{background:var(--c-bg-page)}}.tview2 move.context-menu{border:0;background:var(--c-primary)!important;color:var(--c-over)!important}.tview2 move.context-menu index{color:var(--c-over)}.tview2 move.pending-deletion{border-radius:0;background:color-mix(in oklab, var(--c-bad) 30%, transparent)!important}dialog.alert{background:var(--c-bg-popup);border-radius:var(--radius);max-width:100%;box-shadow:var(--box-shadow);color:var(--c-font);border:0;padding:0;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%)}dialog.alert::backdrop{background:#0000008a}dialog.alert .dialog-content{text-align:center;padding:2em;font-size:16px}dialog.alert .dialog-content.alert{border:3px solid var(--c-primary);border-radius:6px;flex-direction:column;gap:2em;width:480px;max-width:100%;display:flex}dialog.alert .dialog-content p{margin:0}dialog.alert .dialog-content span{justify-content:flex-end;gap:2em;display:flex}dialog.alert .fbt{border:1px solid var(--c-border);padding:.6em 1em}.analyse__fork{flex-wrap:wrap;flex:none;display:flex}.analyse__fork move{background:color-mix(in oklab, var(--c-primary-blue) 25%, var(--c-bg));border-bottom:1px solid var(--c-border);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:0 0 50%;align-items:center;min-width:0;padding:.35em 1em;display:flex}.analyse__fork move:nth-child(odd){border-right:1px solid var(--c-border)}.analyse__fork move.selected{background:var(--c-primary-blue);color:var(--c-over)}.analyse__fork move.selected index{color:inherit}@media (hover:hover){.analyse__fork move:hover{background:var(--c-primary-blue);color:var(--c-over)}.analyse__fork:hover move.selected:not(:hover){background:color-mix(in oklab, var(--c-primary-blue) 25%, var(--c-bg));color:var(--c-font-clear)}.analyse__fork move:hover index{color:inherit}}.analyse__fork move index{color:var(--c-font-dim);margin-right:.3em}.analyse__fork move glyph{font-family:var(--serif);margin-inline-start:2px}.fig{font-family:"Noto Chess", var(--symbols)}.nav{align-items:stretch;gap:4px;display:flex;position:relative}.nav__spacer{flex:auto}.fbt{appearance:none;color:var(--c-font);font:inherit;border-radius:var(--radius);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0;padding:9px 10px;line-height:1}.fbt:hover:not(:disabled){background:var(--c-bg);color:var(--c-font-clear)}.fbt:disabled{opacity:.5;cursor:default}.fbt.active{background:var(--c-bg);color:var(--c-font-clear)}.jumps{gap:4px;display:flex}.jumps .fbt.move{min-width:38px}[data-icon]:before{content:attr(data-icon);vertical-align:middle;speak:none;opacity:.9;font-family:lichess;font-size:1.2em;font-style:normal;font-weight:400;line-height:1}.menu-backdrop{z-index:20;appearance:none;cursor:default;background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0}.menu{z-index:21;background:var(--c-bg-popup);border-radius:var(--radius);min-width:196px;padding:6px;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 20px #0000002e}.menu__row{border-radius:var(--radius);cursor:pointer;grid-template-columns:1.2em minmax(0,1fr);align-items:center;column-gap:10px;padding:8px 10px;font-size:14px;display:grid}.menu__row>input[type=checkbox]{accent-color:currentColor;grid-column:1;justify-self:center;margin:0}.menu__row>span{grid-column:2}.menu__action{box-sizing:border-box;width:100%;color:inherit;text-align:left;background:0 0;border:0;font-family:inherit}.menu__link{text-decoration:none}.menu__link svg{grid-column:1;justify-self:center;width:1.2em;height:1.2em;display:block}.menu__action[data-icon]:before{text-align:center;grid-column:1;justify-self:center;width:1.2em}.menu__separator{border-top:1px solid var(--c-popup-border);margin:4px 8px}.menu__message{color:var(--c-font-dim);margin:4px 10px 6px;font-size:12px}.menu__reset-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;grid-column:1;justify-self:center;width:1.2em;height:1.2em;display:block}.menu__row:hover:not(:disabled){background:var(--c-bg-page)}.menu__action:disabled{cursor:default;opacity:.5}.key{align-items:stretch;gap:10px;padding:0 10px;display:flex;position:relative}.key__field{flex:auto;align-items:center;min-width:0;display:flex;position:relative}.key__field:after{content:"";background:var(--c-border);height:1px;transition:background-color .2s;position:absolute;bottom:6px;left:0;right:0}.key__input{width:100%;min-width:0;font:inherit;color:var(--c-font);background:0 0;border:0;border-radius:0;padding:0 1px;font-size:16px;line-height:1}.key__input:focus,.key__input:focus-visible{outline:none}.key__input::placeholder{color:var(--c-font-dim)}.key__input[readonly]{cursor:default}.key:focus-within .key__field:after{background:var(--c-primary)}.key:focus-within .key__input,.key:focus-within .key__input::placeholder,.key:focus-within .key__go,.key--checking .key__go,.key--verify .key__go{color:var(--c-primary)}.key__go{width:30px;height:30px;color:var(--c-font-dim);cursor:pointer;transform-origin:50%;will-change:transform;background:0 0;border:0;border-radius:50%;flex:none;align-self:center;place-items:center;padding:0;transition:color .2s;display:grid;position:relative}.key__go:disabled{cursor:default}.km{width:10px;height:20px;display:block;overflow:visible}.key--checking .key__go{animation:.5s ease-out both key-turn}@keyframes key-turn{0%{transform:rotate(0)}to{transform:rotate(90deg)}}.key.key--wrong .key__go{color:var(--c-font-dim);animation:.5s linear key-jam}@keyframes key-jam{0%{transform:rotate(90deg)}22%{transform:rotate(4deg)}40%{transform:rotate(-13deg)}56%{transform:rotate(-1deg)}72%{transform:rotate(5deg)}86%{transform:rotate(2deg)}to{transform:rotate(0)}}.key--verify .key__go{transform:rotate(90deg)}.puzzle{border-top:1px solid var(--c-border);flex:none;padding:14px 16px}.puzzle__goal-row{align-items:flex-start;gap:4px;display:flex}.puzzle__goal{min-width:0;color:var(--c-font-clear);flex:auto;margin:0;font-size:17px;font-weight:600;line-height:1.3}.puzzle__bookmark{appearance:none;width:32px;height:32px;color:var(--c-font-dim);cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:50%;flex:0 0 32px;margin:-7px -8px -7px 0;padding:6px;transition:color .12s,opacity .12s}.puzzle__bookmark svg{width:100%;height:100%;display:block}.puzzle__bookmark path{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.puzzle__bookmark:hover,.puzzle__bookmark--on{color:var(--c-font-clear)}.puzzle__bookmark--on path{fill:currentColor}.puzzle__bookmark:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.puzzle__bookmark:disabled{cursor:wait}@media (hover:hover) and (pointer:fine){.puzzle__bookmark{opacity:0;pointer-events:none}.puzzle:hover .puzzle__bookmark,.puzzle:focus-within .puzzle__bookmark{opacity:1;pointer-events:auto}}.puzzle__bookmark-status{color:var(--c-bad);margin:6px 0 0;font-size:12px}.puzzle__credit{color:var(--c-font-dim);margin:4px 0 0;font-size:13px}.puzzle__credit b{color:var(--c-font);font-weight:600}.rate{flex:none;grid-template-columns:minmax(3.5em,.8fr) repeat(3,1fr);display:grid}.rate__flag{white-space:nowrap;min-width:0;font:inherit;color:var(--c-font-clear);background:var(--c-bg-page);border:0;border-right:1px solid var(--c-border);border-bottom:1px solid var(--c-border);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;justify-content:center;align-items:center;gap:.4em;padding:.35em .6em;display:flex}.rate__flag svg{fill:currentColor;width:1.1em;height:1.1em}.rate__flag--on{--rate-flag:color-mix(in oklab, var(--c-font-clear) 14%, var(--c-bg));background:var(--rate-flag)}.rate__level{min-width:0;font:inherit;color:var(--c-font-clear);background:var(--c-bg-page);border:0;border-bottom:1px solid var(--c-border);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;justify-content:center;align-items:center;padding:.35em 1em;display:flex;position:relative}.rate__level--curated{box-shadow:inset 0 0 0 2px color-mix(in oklab, currentColor 65%, transparent)}.rate__level+.rate__level{border-left:1px solid var(--c-border)}.rate__level--easy{--rate-on:var(--c-level-easy)}.rate__level--medium{--rate-on:var(--c-level-medium)}.rate__level--hard{--rate-on:var(--c-level-hard)}.rate__level--on{background:var(--rate-on);color:var(--c-over)}.rate__level:disabled,.rate__flag:disabled{cursor:wait}@media (hover:hover){.rate__level:hover:not(:disabled),.rate__flag:hover:not(:disabled){background:var(--c-bg-low)}.rate__flag--on:hover:not(:disabled){background:var(--rate-flag)}.rate__level--on:hover:not(:disabled),.rate:hover .rate__level--on:not(:hover){background:var(--rate-on);color:var(--c-over)}}.rate__level:focus-visible,.rate__flag:focus-visible{outline:2px solid var(--c-primary-blue);outline-offset:-2px}.rate__status{color:var(--c-bad);grid-column:1/-1;margin:0;padding:6px 1em;font-size:12px}@media (width<=799.29px) and (orientation:portrait){.jumps{display:contents}.nav .fbt{border:1px solid var(--c-border);background:color-mix(in oklab, var(--c-bg) 50%, var(--c-bg-page));border-radius:0;height:44px;padding:0}.nav .fbt.move[data-act=prev],.nav .fbt.move[data-act=next]{flex:3 1 0}.nav .fbt.move[data-act=first],.nav .fbt.move[data-act=last],.nav .nav__burger{flex:2 1 0}.nav .fbt.move[data-act=prev]:before,.nav .fbt.move[data-act=next]:before{font-size:1.35em}.nav .fbt.move[data-act=first]:before,.nav .fbt.move[data-act=last]:before{font-size:.9em}.nav .fbt:hover:not(:disabled){color:var(--c-font-clear);background:var(--c-bg)}.nav .nav__spacer{display:none}.nav .menu{top:calc(100% + 6px);bottom:auto}.tabbar{border-bottom:0;flex:none;gap:3px}.tabbar .tab,.tabbar .key{border:1px solid var(--c-border);background:color-mix(in oklab, var(--c-bg) 50%, var(--c-bg-page));border-bottom:0;border-radius:0;flex:0 0 calc(50% - 1.5px);height:44px}.tabbar .tab:last-child{border-right:1px solid var(--c-border)}.tab:not(.tab--on):hover{background:var(--c-bg);color:var(--c-font)}.tabbar .tab--on{background:color-mix(in srgb, var(--c-primary) 10%, var(--c-bg));color:var(--c-primary)}.ml{flex:0 auto;order:2;max-height:40vh}.analyse__fork{order:1}.puzzle{order:3}.analyse__fork move{border:1px solid var(--c-bg);flex:1 1 0;justify-content:center;padding-block:.5em;font-size:1.5em;line-height:normal}.analyse__fork move:nth-child(odd){border:1px solid var(--c-bg)}.analyse__fork move index,.analyse__fork move glyph{display:none}}.nav,.movecol,.tools,.ml,#analyse-cm,dialog.alert{touch-action:manipulation}@media (width<=799.29px) and (orientation:portrait){.work .nav{touch-action:pan-y}}#catalogue{margin-top:calc(-1 * var(--gutter))}.filters{background:var(--c-bg);border-radius:var(--radius);box-shadow:var(--box-shadow);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:14px 16px;margin-top:0;padding:16px;display:grid}.field{gap:5px;min-width:0;display:grid}.field__label{font-size:var(--font-size-field-label);letter-spacing:.04em;text-transform:uppercase;color:var(--c-font-dim);font-weight:600}.field select{appearance:none;font:inherit;font-size:var(--font-size-sm);border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg-input);color:var(--c-font);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23787878' d='M0 0h10L5 6z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;min-width:0;padding:8px 30px 8px 10px}.field select:focus{outline:2px solid var(--c-primary);outline-offset:0;border-color:#0000}.seg{border:1px solid var(--c-border);border-radius:var(--radius);display:flex;overflow:hidden}.seg label{border-right:1px solid var(--c-border);flex:1 1 0;display:block;position:relative}.seg label:last-child{border-right:0}.seg input{opacity:0;width:1px;height:1px;position:absolute}.seg span{text-align:center;font-size:var(--font-size-sm);cursor:pointer;padding:8px;display:block}.seg input:checked+span{background:var(--c-primary);color:var(--c-bg)}.seg input:focus-visible+span{outline:2px solid var(--c-primary);outline-offset:-2px}.resultline{font-size:var(--font-size-sm);color:var(--c-font-dim);justify-content:flex-start;align-items:baseline;gap:20px;margin-top:16px;display:flex}.resultline b{color:var(--c-font);font-weight:600}.cards{grid-template-columns:repeat(auto-fill, minmax(min(100%, var(--catalogue-track-min)), 1fr));gap:var(--catalogue-track-gap);margin-top:20px;display:grid}.card{background:var(--c-bg);border-radius:var(--radius);min-width:0;box-shadow:var(--box-shadow);color:inherit;align-content:start;gap:10px;padding:12px;text-decoration:none;transition:box-shadow .12s;display:grid}.card:hover{box-shadow:0 4px 10px #0000001f,0 2px 4px #0000001f}.card--in-progress{--card-progress:var(--c-progress-started)}.card--solved{--card-progress:var(--c-progress-solved)}.card--in-progress,.card--solved{box-shadow:inset 0 0 0 1px var(--card-progress), var(--box-shadow)}.card.card--in-progress:hover,.card.card--solved:hover{box-shadow:inset 0 0 0 1px var(--card-progress), 0 4px 10px 0 #0000001f, 0 2px 4px 0 #0000001f}.card .diagram{place-items:center;width:100%;display:grid}.card .board{width:min(100%, calc(var(--sq) * 8));aspect-ratio:1;box-shadow:none;grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr))}.card__meta{gap:2px;display:grid}.card__task{font-size:var(--font-size-md);color:var(--c-font-clear);margin:0;font-weight:600}.card__credit{font-size:var(--font-size-card-credit);color:var(--c-font-dim);margin:0}.card__credit b{color:var(--c-font);font-weight:600}.card__tags{font-size:var(--font-size-card-tags);color:var(--c-font-dim);margin:2px 0 0}.pager:empty{display:none}.pager{font-size:var(--font-size-sm);flex-wrap:wrap;align-items:center;gap:4px;margin-top:28px;display:flex}.pager a,.pager span{border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg);padding:6px 11px;text-decoration:none}.pager a:hover{border-color:var(--c-primary);color:var(--c-primary)}.pager [aria-current=page]{background:var(--c-primary);color:var(--c-bg);border-color:var(--c-primary)}.pager .pager__gap{color:var(--c-font-dim);background:0 0;border:0}.pager .pager__spacer{background:0 0;border:0;flex:auto}@media (pointer:coarse){.seg span{padding:11px 8px}.pager a,.pager span{padding:9px 13px}}.collections{margin-top:calc(-1 * var(--gutter))}.collection-browser{grid-template-columns:repeat(auto-fill, minmax(min(100%, var(--catalogue-track-min)), 1fr));gap:var(--catalogue-track-gap);align-items:start;display:grid}.collection-sidebar{grid-column:1}.collection-panels{grid-column:2/-1}.collection-options{background:var(--c-bg);box-shadow:var(--box-shadow);padding:0 0 4px;display:grid}.collection-list-separator{background:0 0;height:8px}.collection-heading{height:1.5em;color:var(--c-font);align-items:center;margin:0 0 12px;line-height:1.5;display:flex}.collection-panel__header{font-size:var(--font-size-field-label);align-items:center;gap:10px;height:1.5em;margin:0 0 12px;display:flex}.collection-panel__header .collection-heading{margin:0}.collection-count{font-size:var(--font-size-field-label);color:var(--c-font-dim);font-variant-numeric:tabular-nums}.hide-solved{font-size:var(--font-size-field-label);color:var(--c-font-dim);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.hide-solved input{accent-color:var(--c-primary)}.collection-option{border-bottom:1px solid var(--c-border);cursor:pointer;font-size:var(--font-size-md);color:var(--c-font);border-left:2px solid #0000;padding:10px 8px;transition:background-color .12s;display:block}.collection-option:last-child{border-bottom:0}.collection-option:hover{background:var(--c-bg-low)}#collection-0:checked~.collection-sidebar label[for=collection-0],#collection-1:checked~.collection-sidebar label[for=collection-1],#collection-2:checked~.collection-sidebar label[for=collection-2],#collection-3:checked~.collection-sidebar label[for=collection-3],#collection-bookmarks:checked~.collection-sidebar label[for=collection-bookmarks],#collection-solved:checked~.collection-sidebar label[for=collection-solved],#collection-in-progress:checked~.collection-sidebar label[for=collection-in-progress]{background:var(--c-primary);color:var(--c-bg)}.collection-panels{min-width:0}.collection-panel{display:none}.collection-selector:first-of-type:checked~.collection-panels .collection-panel:first-child,.collection-selector:nth-of-type(2):checked~.collection-panels .collection-panel:nth-child(2),.collection-selector:nth-of-type(3):checked~.collection-panels .collection-panel:nth-child(3),.collection-selector:nth-of-type(4):checked~.collection-panels .collection-panel:nth-child(4),.collection-selector:nth-of-type(5):checked~.collection-panels .collection-panel:nth-child(5),.collection-selector:nth-of-type(6):checked~.collection-panels .collection-panel:nth-child(6),.collection-selector:nth-of-type(7):checked~.collection-panels .collection-panel:nth-child(7){display:block}#collection-0:focus-visible~.collection-sidebar label[for=collection-0],#collection-1:focus-visible~.collection-sidebar label[for=collection-1],#collection-2:focus-visible~.collection-sidebar label[for=collection-2],#collection-3:focus-visible~.collection-sidebar label[for=collection-3],#collection-bookmarks:focus-visible~.collection-sidebar label[for=collection-bookmarks],#collection-solved:focus-visible~.collection-sidebar label[for=collection-solved],#collection-in-progress:focus-visible~.collection-sidebar label[for=collection-in-progress]{outline:2px solid var(--c-primary);outline-offset:-2px}.collection-panel .cards{margin-top:0}@media (width<=760px){.collection-browser{grid-template-columns:144px minmax(0,1fr);gap:16px}.collection-sidebar,.collection-panels{grid-column:auto}.collection-option{padding:12px 8px}}@media (width<=640px){.collection-panel .card{gap:8px;padding:8px}}@media (width<=400px){.collection-browser{grid-template-columns:128px minmax(0,1fr);gap:10px}.collection-option{padding:10px 6px}}@media (width<=799.29px) and (orientation:portrait){.collection-browser{grid-template-columns:minmax(0,1fr);gap:24px}.collection-sidebar,.collection-panels{grid-column:auto}}.about{text-align:center;flex-direction:column;align-items:center;max-width:440px;margin:clamp(48px,12vh,112px) auto 0;display:flex}.about__icon{width:80px;height:80px;margin-bottom:22px;display:block}html.dark .about__icon{filter:invert()}.about__name{font-size:var(--font-size-brand-large);margin:0;font-weight:600;line-height:1.15}.about__motto{font-size:var(--font-size-base);margin:10px 0 22px}.about__repository{font-size:var(--font-size-base)}.about__thanks{font-size:var(--font-size-sm);letter-spacing:.015em;color:var(--c-font-dim);margin:18px 0 0}.about__thanks:before{border-top:1px solid var(--c-font-dim);content:"";width:48px;margin:0 auto 14px;display:block}.about__thanks a{color:inherit;text-decoration:none}.about__thanks a:hover{text-underline-offset:3px;text-decoration:underline}.about__external-icon{vertical-align:-2px;width:13px;height:13px;margin-left:5px;display:inline-block}.about__name,.about__motto,.about__repository,.about__repository:hover{color:var(--c-font-clear)}.about__repository:hover{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.hero__eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--c-font-dim);margin:0 0 6px;font-size:13px;font-weight:600}.caption{font-size:var(--font-size-sm);color:var(--c-font-dim);margin:8px 0 0}.crumbs{color:var(--c-font-dim);margin:20px 0 0;font-size:13px}.crumbs a{color:var(--c-link)}.crumbs a:hover{color:var(--c-link-hover)}.crumbs span{color:var(--c-font-dimmer);margin:0 6px}.btn{appearance:none;font:inherit;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;text-align:center;border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:0;padding:9px 15px 10px;font-size:11px;text-decoration:none;display:inline-block}.btn:hover,.btn--solid{background:var(--ink);color:var(--c-bg)}.btn--solid:hover{color:var(--ink);background:0 0}.hero__body{flex-direction:column;min-width:0;display:flex}.hero__credit{margin-top:8px}.intro{border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);color:var(--c-font-clear);margin:26px 0 0;padding:18px 0;font-size:21px;font-style:italic;line-height:1.45}.hero__actions{flex-direction:column;align-items:flex-start;gap:16px;margin-top:58px;display:flex}.hero__actions .btn{white-space:normal;text-wrap:balance;max-width:100%}@media (width<=799.29px) and (orientation:portrait){.hero .diagram{width:100%}.hero .board-frame>.cg-wrap:not(.promo){--board-radius:0;aspect-ratio:1;width:100%;height:auto}.hero__body{padding-inline:var(--page-pad)}.hero__actions{flex-flow:wrap;align-items:center;margin-top:30px}}@media (width<=640px){.intro{margin-top:20px;font-size:17px}}@media (pointer:coarse){.btn{padding:12px 18px 13px}}.journal{max-width:680px;margin:calc(-1 * var(--gutter)) auto 0}.journal__heading{color:var(--c-font);margin:0 0 12px}.journal-entry{text-decoration:none}.journal-entry:focus-visible{outline:2px solid var(--c-primary);outline-offset:-2px}.journal-post__back:focus-visible{outline:2px solid var(--c-font-clear);outline-offset:3px}.journal-entry__title{font-size:1.125rem;line-height:1.4;display:block}.journal-entry__meta,.journal-post__meta{color:var(--c-font-dim);font-size:var(--font-size-sm);flex-wrap:wrap;gap:0 8px;display:flex}.journal-entry__meta{font-size:var(--font-size-base);margin-top:4px}.journal-entry__meta time,.journal-post__meta time{font-variant-numeric:tabular-nums}.journal-post{max-width:680px;margin:calc(-1 * var(--gutter)) auto 0}.journal-post__back{width:fit-content;color:var(--c-font-dim);align-items:baseline;gap:.35em;margin-bottom:30px;display:flex}.journal-post__back-arrow{white-space:nowrap;transform:translateY(-.1em)}.journal-post__back:hover{color:var(--c-font-clear)}.journal-post__title{border-bottom:1px solid var(--c-border);color:var(--c-font-clear);margin:0;padding-bottom:10px}.journal-post__meta{font-size:var(--font-size-base);margin:7px 0 0}.journal-post__body{max-width:680px;font-size:var(--font-size-base);color:var(--c-font-clear);text-align:justify;hyphens:auto;margin-top:26px;line-height:1.7}.journal-post__body p{margin:0 0 16px}@media (width<=799.29px) and (orientation:portrait){.journal-post__back-arrow{font-size:.8em}}@media (prefers-reduced-motion:reduce){.journal-entry{transition:none}}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
