@import"https://fonts.googleapis.com/css2?family=Mali:ital,wght@0,400;0,700;1,400;1,700&display=swap";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}video,img,svg{max-width:100%;height:auto}a{text-decoration:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.vertical-rhythm-1{margin-bottom:24px}.vertical-rhythm-2{margin-bottom:48px}.vertical-rhythm-3{margin-bottom:72px}.title-group{display:grid;grid-gap:.75rem .5rem;gap:.75rem .5rem;align-items:center;grid-template-columns:auto 1fr}.title-group__big{grid-column:1/3}.title-group__small{text-transform:uppercase;letter-spacing:.01em;margin-bottom:.01em}.title-group__icon{grid-row:2;fill:currentColor}.title-group__icon--easy{color:#8cd33b}.title-group__icon--medium{color:#e9cd32}.title-group__icon--hard{color:#f09c3c}.title-group__icon--expert{color:#e04834}.page-title{color:#454545;font-size:1.5em;font-weight:700;line-height:1.1em;text-transform:uppercase;letter-spacing:.01em}.section-title{color:#333;font-size:1.125em;font-weight:700;line-height:1.3em}.body-copy{display:grid;grid-gap:24px;gap:24px;font-size:1em;line-height:1.5em;max-width:72ch}.small{font-size:.9em;line-height:1.5em;max-width:72ch}.button{cursor:pointer;background:transparent;border:none;padding:0;font-family:inherit;font-size:1em;line-height:1em}.button__layout{display:grid;grid-gap:.5rem;gap:.5rem;align-items:center;justify-items:start}.button__layout--icon-left{grid-template-columns:auto 1fr}.button__layout--icon-right{grid-template-columns:1fr auto}.button_style-solid{padding:.7rem .9rem .9rem;text-transform:uppercase;letter-spacing:1px}.button_style-solid--primary{color:#fff;background:#0066ff}.button_style-solid--default{color:#333;background:#cccccc}.button_style-outline{padding:.8rem .8rem .9rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#06f;border:3px solid #0066ff}.button--disabled{background:#ebebeb;color:#9e9e9e}.button__icon{fill:currentColor}.button__text{margin-bottom:.02em}.link{font-family:inherit;font-size:1em;line-height:1.3em}.link_style-text{color:#06f}.link_style-solid{padding:.5rem .7rem .6rem;text-transform:uppercase;letter-spacing:1px;color:#fff;background:#0066ff}.link_style-outline{padding:.8rem .8rem .9rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#06f;border:3px solid #0066ff}.list{list-style:none}.list>li{position:relative;padding-left:12px}.list>li:before{content:"-";position:absolute;left:0;top:0}.list>li:not(:first-child){margin-top:6px}.text_family-sans{font-family:inherit}.text_family-cursive{font-family:Mali,cursive}.text_style-normal{font-style:normal}.text_style-italic{font-style:italic}.text_weight-regular{font-weight:400}.text_weight-bold{font-weight:700}.text_uppercase{text-transform:uppercase;letter-spacing:.01em}.transition{display:grid;grid-template-rows:1fr;grid-template-columns:1fr;align-items:center;justify-content:center;width:100%;overflow:hidden;position:relative}.transition__wrapper{display:flex;align-items:center;justify-content:center;padding:2rem}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity .3s ease-in-out}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity .3s ease-in-out}.swipe-enter{opacity:0}.swipe-enter-active{opacity:1;transition:all .25s ease-in-out .15s;animation:move .4s ease-out reverse}.swipe-exit{opacity:1}.swipe-exit-active{opacity:0;transition:opacity .25s ease-in-out .15s;animation:move .4s ease-in}@keyframes move{0%{margin-left:0}15%{margin-left:-5%}20%{margin-left:-5%}to{margin-left:100%}}.form_layout-grid{padding:1rem;width:100%;display:grid;grid-gap:1rem;gap:1rem}.form_color-default{background:#eaeaea}.form__field{display:grid;grid-gap:.25rem;gap:.25rem}.field{width:100%;padding:.1em .35em .25em;font-family:inherit;font-size:1em;border:1px solid}.field:focus{outline:2px solid}.field_color-default{border-color:#aaa}.field_color-default:focus{outline-color:#aaa}.field_color-error{color:#724848;background:#ffe7e7;border-color:#dfc6c6}.field_color-error:focus{outline-color:#dfc6c6}.field__error{color:#441717;font-size:.9em;line-height:1.3em;font-style:italic;text-align:right}.select{width:100%;padding:.1em .125em .25em;font-family:inherit;font-size:1em;border:1px solid}.select:focus{outline:2px solid}.select_color-default{background:#ffffff;border-color:#aaa}.select_color-default:focus{outline-color:#aaa}.select_color-error{color:#724848;background:#ffe7e7;border-color:#dfc6c6}.select_color-error:focus{outline-color:#dfc6c6}.label{color:#1d1d1d;font-weight:700;font-size:1em;line-height:1.3em}.alert{padding:1rem;font-size:1em;line-height:1.5em;border-width:1px;border-style:solid}.alert_layout-icon{display:grid;grid-template-columns:auto 1fr;grid-gap:.5rem;gap:.5rem;text-align:center}.alert_color-error{background:#ffe7e7;border-color:#dfc6c6;color:#724848}.alert_color-success{background:#8ecc85;border-color:#77b66d;color:#1e4118}.alert__icon{fill:currentColor}.app{display:flex;flex-direction:column;min-height:100vh}.header{display:flex;justify-content:space-between;align-items:center;padding:24px}.header_theme-homepage{background:#1d1d1d;color:#ccc}.header_theme-default{background:#eaeaea;color:#333}@media screen and (min-width: 500px){.header__container{display:flex;align-items:center;gap:2rem}}.header__nav{display:flex;align-items:center;gap:2rem;margin-top:24px}@media screen and (min-width: 500px){.header__nav{margin-top:0}}.header__logo{flex-shrink:0}.header__logo-icon{margin-left:-.5rem}.footer{padding:48px 48px 72px;text-align:center;display:flex;justify-content:center;background:#eaeaea;color:#333}.main{padding:24px 24px 48px;flex-grow:1;display:flex;align-items:center;justify-content:center}.main--public{background:#666666 0% center repeat;animation:drift 180s linear infinite}@keyframes drift{to{background-position:0% 0%}0%{background-position:-100% 100%}}.main_theme-homepage{background:#1d1d1d;color:#ccc}.section{display:grid;grid-gap:1rem;gap:1rem}.page{position:relative;width:100%;align-self:flex-start;display:grid;grid-gap:48px;gap:48px}.slidein{position:fixed;top:6rem;right:2rem;box-shadow:0 2px 8px #79797980;opacity:0;transform:translate(100%);transition:all .3s ease-in-out}.slidein-show{opacity:1;transform:translate(0);transition:all .4s ease-in-out}.slidein__dismiss{position:absolute;top:-.75rem;right:-.75rem;cursor:pointer;border:none;padding:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#454545;border-radius:1rem}.slidein__icon{width:1rem;height:1rem;color:#eaeaea;fill:currentColor}.prompt{width:100%;max-width:360px;display:grid;justify-items:center;grid-gap:1.5rem;gap:1.5rem;background:#ffffff;padding:2rem;border-radius:1rem;box-shadow:0 0 2rem #000000bf}.prompt__brand{display:flex;align-items:center;justify-content:center}.prompt__form{width:100%;display:grid;grid-gap:1.5rem;gap:1.5rem;justify-items:center}.prompt__fields{width:100%;display:grid;grid-gap:.75rem;gap:.75rem}.floating-field{position:relative;padding:.5rem;border:1px solid;width:100%;height:4rem}.floating-field_color-default{border-color:#ccc;background:#eaeaea}.floating-field_color-default .floating-field__togglePassword{color:#464646}.floating-field_color-default .floating-field__input{outline-color:#ccc}.floating-field_color-error{border-color:#dfc6c6;background:#ffe7e7}.floating-field_color-error .floating-field__togglePassword{color:#724848}.floating-field_color-error .floating-field__input{outline-color:#dfc6c6}.floating-field:focus-within{padding-left:.5rem}.floating-field:focus-within .floating-field__label{top:.5rem;text-transform:uppercase;letter-spacing:.01em;font-size:.9em;transform:translateY(0)}.floating-field_color-default .floating-field:focus-within .floating-field__label{color:#666}.floating-field_color-error .floating-field:focus-within .floating-field__label{color:#5e4747}.floating-field:focus-within .floating-field__togglePassword{display:flex}.floating-field--inactive{padding-left:1rem}.floating-field--inactive .floating-field__label{top:50%;transform:translateY(-60%);font-size:1.125em;text-transform:unset}.floating-field_color-default .floating-field--inactive .floating-field__label{color:#333}.floating-field_color-error .floating-field--inactive .floating-field__label{color:#3d2d2d}.floating-field--inactive .floating-field__togglePassword{display:none}.floating-field__label{position:absolute;line-height:1em;transition:all .25s ease-in-out;top:.5rem;text-transform:uppercase;letter-spacing:.01em;font-size:.9em;transform:translateY(0)}.floating-field_color-default .floating-field__label{color:#666}.floating-field_color-error .floating-field__label{color:#5e4747}.floating-field__input{position:absolute;left:0;width:100%;top:0;height:100%;padding:2rem .5rem 1rem;background:transparent;border:none;font-family:inherit;font-size:1.125em;line-height:1em}.floating-field__input:focus{outline-width:4px;outline-style:solid}.floating-field__error{position:absolute;top:.45rem;right:.75rem;color:#3d2d2d;font-size:.9em;font-style:italic;text-align:right}.floating-field__togglePassword{position:absolute;right:.75rem;bottom:.5rem;width:1.5rem;height:1.5rem;background:none;padding:0;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.floating-field__togglePassword-icon{fill:currentColor}.loading{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem;margin-bottom:1rem}.loading__square{width:1.5rem;height:1.5rem;background:rgba(0,102,255,.1);animation:color 1.8s ease-in-out reverse infinite}.loading__square--1{animation-delay:0s}.loading__square--2{animation-delay:.2s}.loading__square--3{animation-delay:.4s}.loading__square--4{animation-delay:.6s}.loading__square--5{animation-delay:.8s}.loading__square--6{animation-delay:1s}.loading__square--7{animation-delay:1.2s}.loading__square--8{animation-delay:1.4s}.loading__square--9{animation-delay:1.6s}@keyframes color{0%{background:rgba(0,102,255,.1)}to{background:rgb(0,102,255)}}.start{display:grid;align-items:center;justify-items:center}.start__prompt{font-size:1.25em;font-weight:700;line-height:1.4em;margin-bottom:1rem}.board{width:27rem;height:calc(27rem + 8px)}.board__row{display:flex}.board__row:first-child{border-top:1px solid #cccccc}.board__row:nth-child(4),.board__row:nth-child(7){border-top:2px solid #adadad}.board__cell{position:relative;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:none;font-size:1.5em;line-height:1em;border-left:1px solid #cccccc;border-bottom:1px solid #cccccc}.board__cell--readonly{color:#454545;font-weight:700}.board__cell--readonly:focus{outline:2px dashed #0066ff;outline-offset:-2px}.board__cell--missing{color:#1e2e3e;border-color:#b4cadf;background:#daedff}.board__cell--duplicates{color:#684900;border-color:#e0dc81;background:#fffba1}.board__cell--complete{color:#111f10;border-color:#a9d8a6;background:#d1fcce}.board__cell--default{color:#333;background:#ffffff}.board__cell:nth-child(3),.board__cell:nth-child(6){border-right:2px solid #adadad;border-right-width:1px}.board__cell:nth-child(4),.board__cell:nth-child(7){border-left:2px solid #adadad;border-left-width:1px}.board__cell:nth-child(9){border-right:1px solid #cccccc}.board__cell:focus-within{position:relative;z-index:1}.board__cell:hover .board__reset{opacity:1}.board__input{background:transparent;border:none;width:100%;height:100%;text-align:center;font-size:inherit;line-height:inherit}.board__input--default{color:inherit}.board__input--guess{color:#1160c2}.board__input:focus{outline:3px solid #0066ff}.board__reset{opacity:0;transition:opacity .2s ease-in-out;position:absolute;z-index:2;cursor:pointer;padding:0;border:none;top:-.25rem;left:-.25rem;height:1.5rem;width:1.5rem;display:flex;justify-content:center;align-items:center;border-radius:1rem;background:#0066ff;color:#fff;box-shadow:0 0 3px #00163680}.board__reset-icon{fill:currentColor}.puzzle-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:2rem;gap:2rem}@media (min-width: 1100px){.puzzle-list{grid-template-columns:repeat(4,1fr)}}.puzzle-list__item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;align-items:start;grid-gap:.5rem .75rem;gap:.5rem .75rem}.puzzle-list__icon{grid-row:1/3;fill:currentColor}.puzzle-list__icon--easy{color:#8cd33b}.puzzle-list__icon--medium{color:#e9cd32}.puzzle-list__icon--hard{color:#f09c3c}.puzzle-list__icon--expert{color:#e04834}.puzzle-list__icon--inprogress{color:#7cb0cc}.puzzle-list__icon--completed{color:#8ecc85}.puzzle-list__icon--default{color:#5b78a5}.puzzle-list__date{color:#454545;font-size:.9em;line-height:1em;text-transform:uppercase;letter-spacing:.01em}.create-puzzle{display:grid;grid-gap:2rem;gap:2rem;justify-items:start;align-items:start}@media (min-width: 500px) and (max-width: 949px){.create-puzzle{grid-template-columns:16rem 1fr;grid-template-rows:auto auto 1fr}.create-puzzle__fields{grid-row:1/3}.create-puzzle__board{grid-row:3}.create-puzzle__errors{grid-row:2;grid-column:2}}@media (min-width: 950px){.create-puzzle{grid-template-columns:16rem auto 1fr;grid-template-rows:auto 1fr}.create-puzzle__fields,.create-puzzle__board{grid-row:1/-1}.create-puzzle__errors{grid-row:2;grid-column:3}}.view-puzzle{display:grid;grid-template-columns:320px 1fr 260px .25fr;grid-gap:2rem;gap:2rem;align-items:start}.view-puzzle__subgrids{height:580px;display:grid;align-items:start;justify-items:start;grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.view-puzzle__main{display:grid;grid-template-columns:repeat(9,3rem) 1fr;grid-template-rows:repeat(2,3rem) calc(3rem + 2px) repeat(2,3rem) calc(3rem + 2px) repeat(2,3rem) 1fr;align-items:center;justify-items:center}.view-puzzle__board{grid-column:1/10;grid-row:1/10;align-self:start;justify-self:start}.view-puzzle__actions{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto 1fr;grid-gap:1rem;gap:1rem;justify-items:start}.view-puzzle__mark-mode{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:.5rem;gap:.5rem;align-items:center}.view-puzzle__mark-button{border:none;padding:.25rem 1rem .5rem;text-align:center;transition:all .2s ease-in-out;font-size:1.5em;line-height:1em;color:#fff}.view-puzzle__mark-button--default{background:#333333}.view-puzzle__mark-button--guess{background:#1160c2}.view-puzzle__mark-button--press{cursor:pointer}.view-puzzle__toggle-tips,.validation{display:grid}.validation_style-row{justify-self:start;align-items:center;grid-auto-flow:column}.validation_style-row .validation__button{display:flex}.validation_style-row .validation__square{border-top:1px solid #cccccc;border-bottom:1px solid #cccccc;border-left:1px solid #cccccc}.validation_style-row .validation__square:last-child{border-right-width:1px;border-right-style:solid}.validation_style-row .validation__tip{margin-left:.25rem}.validation_style-col{align-self:start;justify-items:center}.validation_style-col .validation__square{border-top:1px solid #cccccc;border-right:1px solid #cccccc;border-left:1px solid #cccccc}.validation_style-col .validation__square:last-child{border-bottom-width:1px;border-bottom-style:solid}.validation_style-col .validation__tip{margin-top:.25rem}.validation_style-sub{align-items:start;grid-auto-flow:column}.validation_style-sub .validation__button{padding:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.validation_style-sub .validation__square{border-top:1px solid #cccccc;border-left:1px solid #cccccc}.validation_style-sub .validation__square:nth-child(3n){border-right-width:1px;border-right-style:solid}.validation_style-sub .validation__square:nth-last-child(-n+3){border-bottom-width:1px;border-bottom-style:solid}.validation_style-sub .validation__tip{margin-left:.75rem}.validation_color-default .validation__square{border-color:#7a7a7a}.validation_color-default .validation__square--current{background:#ccc}.validation_color-visible .validation__square{border-color:#7f95aa;background:#daedff}.validation_color-visible .validation__square--current{background:#a7bed3}.validation_color-visible .validation__tip{color:#1a2733;border-color:#a0b9d1;background:#daedff;box-shadow:0 2px 8px #6385a380}.validation_color-error .validation__square{border-color:#b6a15e;background:#fffba1}.validation_color-error .validation__square--current{background:#dfcb8b}.validation_color-error .validation__tip{color:#301d00;border-color:#dac37b;background:#fffba1;box-shadow:0 2px 8px #ddc474b3}.validation_color-complete .validation__square{border-color:#89b183;background:#d1fcce}.validation_color-complete .validation__square--current{background:#abd2a7}.validation__button{cursor:pointer;background:none;border:none;padding:.5rem}.validation__square{width:1rem;height:1rem}.validation__tip{display:grid;font-size:.9em;font-weight:700;grid-gap:.2rem;gap:.2rem;border:1px solid transparent;padding:.4rem .5rem .5rem}.validation__tip--horizontal{grid-auto-flow:column}.section-title-icon{display:flex;align-items:center}.section-title-icon__icon{color:#454545;fill:currentColor;margin-right:.5rem}.indicator{position:relative;width:4rem;height:2rem;background:#cccccc;background:radial-gradient(ellipse,#ffffff 50%,#b6b6b6 100%);box-shadow:0 0 5px 1px #ddd inset;border-radius:1rem;overflow:hidden}.indicator--start .indicator__button{left:0;top:0}.indicator--end .indicator__button{left:calc(100% - 2rem);top:calc(100% - 2rem)}.indicator__button{transition:all .2s ease-in-out;cursor:pointer;position:absolute;background:#0066ff;background:radial-gradient(circle at 70% 25%,#3787ff 0%,#0066ff 30%,#004ab9 100%);box-shadow:-1px 1px 5px #00245acc;border:none;padding:0;width:2rem;height:2rem;border-radius:2rem}.color-picker{position:relative;display:flex;align-items:flex-start}.color-picker__button{cursor:pointer;padding:.25rem;margin-right:1rem}.color-picker__sample{width:2rem;height:2rem}.color-picker__modal{z-index:1;position:absolute;top:0;left:4rem}.color-picker__modal-style{width:300px;height:calc(50px + 2rem);padding:1rem;background:#ffffff;box-shadow:0 0 10px #33333380;border-radius:.25rem}.settings__form{display:grid;grid-gap:1rem;gap:1rem;align-items:start;border:1px solid #cccccc;border-radius:.25rem}@media (min-width: 600px){.settings__form{justify-items:start;grid-template-columns:auto 1fr;grid-template-rows:repeat(3,auto) 1fr}}@media (min-width: 970px){.settings__form{grid-template-columns:auto repeat(3,1fr);grid-template-rows:auto 1fr}}.settings__form-title{padding:.75rem 1rem;align-self:stretch;text-transform:uppercase;color:#666;border-bottom:1px solid #dbdbdb;background:#eaeaea}@media (min-width: 600px){.settings__form-title{border-right:1px solid #dbdbdb;grid-row:1/-1;border-bottom:none}}.settings__form-subtitle{font-size:1em;line-height:1em;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.01em}.settings__form-section{margin:0 1rem;display:grid;grid-template-rows:repeat(5,auto) 1fr;grid-gap:1rem;gap:1rem}@media (min-width: 600px){.settings__form-section{margin:1rem 0 0}}.settings__form-subsection{display:grid;width:100%;max-width:14rem;grid-template-columns:repeat(2,1fr);grid-gap:.5rem;gap:.5rem}.settings__form-subsection .settings__form-label{grid-column:span 2}.settings__form-toggle{font-family:inherit;font-size:100%;line-height:1.3em;padding:.2rem .5rem .3rem;color:#333;background:white;border:3px solid #999999;cursor:pointer}.settings__form-toggle--selected{color:#fff;border-color:#06f;background:#0066ff}.settings__form-button{justify-self:start;margin:0 1rem 1rem}@media (min-width: 600px){.settings__form-button{margin:0 0 1rem}}.settings__preview{font-size:1.5em}
