@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(barlow-latin-400.19d3c1ad.woff)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body{user-select:none;touch-action:none;background:#e0dfdc;margin:0;padding:0;font-family:Barlow,sans-serif}svg{display:block}.footer{box-sizing:border-box;color:#aaa;flex-direction:row;justify-content:space-between;align-items:flex-end;width:100%;padding:10px;font-size:12px;display:flex;position:absolute;bottom:0;left:0}.footer p{color:#aaa;margin:0;padding:0}.footer p.copyright{color:#777}@media screen and (aspect-ratio>=5/3){.footer p br{display:none}}.footer a{color:#777;border-bottom:1px solid;text-decoration:none}.footer a:active,.footer a:hover{color:#000}.screen{background:#e0dfdc;width:100%;height:100%;animation-name:animate-appear;animation-duration:.5s;animation-delay:.1s;animation-fill-mode:backwards;position:fixed;top:0;left:0;overflow:hidden;box-shadow:inset 0 0 40px #0003}.screen.disappear{animation-name:animate-disappear;animation-duration:.5s;animation-delay:.1s;animation-fill-mode:forwards}@keyframes animate-appear{0%{opacity:0}to{opacity:100}}@keyframes animate-disappear{0%{opacity:100}to{opacity:0}}.game-button{cursor:pointer;fill:#00000059;background:#00000014;border-radius:100%;width:min(8vw,7.5vh,max(2.5vw,3.5vh,20px));height:min(8vw,7.5vh,max(2.5vw,3.5vh,20px));padding:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2);transition-property:transform;transition-duration:.1s;transform:scale(1)}.game-button.game-button-pressed{background:#00000026}.game-button svg{aspect-ratio:1;width:100%}@media (hover){.game-button:hover{background:#00000026}}.game-toggle{cursor:pointer;align-items:center;display:flex}.game-toggle .icon{fill:#00000059;width:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.17647);height:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.17647);margin-left:.7vw}.game-toggle .icon svg{aspect-ratio:1;width:100%}.game-toggle .toggle-box{background:#00000014;border-radius:min(8vw,7.5vh,max(2.5vw,3.5vh,20px));flex-direction:row;flex-grow:1;padding:max(.3vw,4px);display:flex}.game-toggle .toggle-ball{background:#00000040;border-radius:100%;width:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.17647);height:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.17647)}.game-toggle.enabled .toggle-box{background:#e1f1c0;justify-content:flex-end}.game-toggle.enabled .toggle-ball{background:#63861d}.grid-display,.grid-display .grid,.grid-display .grid svg{width:100%;height:100%}.grid-display-animated,.grid-display-animated .svg-grid{transition-property:all;transition-duration:.4s}.svg-placeholder{transition-property:opacity;transition-duration:.1s}.svg-placeholder.hide{opacity:0}.svg-placeholder.highlight-hint-ok{display:initial;opacity:1}.svg-placeholder.highlight-hint-notok{display:initial;opacity:0}.screen.hide-placeholders .svg-placeholder{opacity:0;display:none}.screen.hide-placeholders .svg-placeholder.highlight-hint-ok{display:initial;opacity:1}.screen.hide-placeholders .svg-placeholder.highlight-hint-notok{display:initial;opacity:0}.screen.main-menu{flex-direction:row;justify-content:center;align-items:center;display:flex}.screen.main-menu .container{box-sizing:border-box;flex-grow:1;flex-shrink:1;grid-template:"spacer"1fr"example-grid"max-content"logo"1fr/1fr;place-content:center;place-items:center;width:100%;max-width:100vw;height:100%;max-height:100vh;padding-bottom:30px;display:grid}.screen.main-menu .logo{grid-area:logo;justify-content:center;align-self:start;align-items:start;width:100%;min-height:min(20vw,20vh);max-height:min(20vw,20vh);padding-top:5vh;display:flex}@media screen and (aspect-ratio>=4/5) and (aspect-ratio<=3/2){.screen.main-menu .logo{align-self:center;align-items:center;padding-top:0}}.screen.main-menu .logo svg{fill:#00000059;height:min(15vw,10vh)}.screen.main-menu .button-setup-menu{position:absolute;top:3vw;right:3vw}.screen.main-menu .button-paint-menu{position:absolute;top:3vw;right:calc(3vw + 2.5*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))}.screen.main-menu .game-list{box-sizing:border-box;grid-area:example-grid;grid-template-columns:1fr 1fr 1fr 1fr;justify-self:stretch;gap:min(4vw,4vh) min(4vh,4vw);max-height:min(60vh,100vw);padding:0% 10% 0;display:grid}.screen.main-menu .game-list .example-tile{cursor:pointer;aspect-ratio:1;min-width:0;max-width:min(60vh,40vw);min-height:0;max-height:60vh;transition-property:transform;transition-duration:.1s;position:relative;transform:scale(1)}.screen.main-menu .game-list .example-tile.game-button-pressed,.screen.main-menu .game-list .example-tile:hover{transform:scale(1.1)}@media screen and (aspect-ratio<=5/3){.screen.main-menu .game-list{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;justify-self:auto;max-width:min(70vh,100vw);height:min(65vh,85vw);max-height:70vh;padding:0}}.screen.game-display{grid-template:"main-grid fill"2fr"main-grid tile-stack"min-content"main-grid counters"2fr/1fr calc(2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)) + 6vw);display:grid}.screen.game-display .main-grid{grid-area:main-grid}.screen.game-display .controls{text-align:center;z-index:1000;background:#bbb;flex-direction:column;grid-area:controls;justify-content:center;align-items:center;display:flex}.screen.game-display .controls .buttons{flex-direction:row;order:1;margin:0 10px;display:flex}.screen.game-display .controls .toggles{flex-direction:row;order:2;justify-content:center;margin:10px;display:flex}.screen.game-display .fill{background:#b6b4af;grid-area:fill}.screen.game-display .tile-stack{background:#b6b4af;flex-direction:column;grid-area:tile-stack;justify-content:center;display:flex}.screen.game-display .tile-counter-and-score{text-align:center;background:#b6b4af;flex-direction:column;grid-area:counters;justify-content:space-between;display:flex}.dropout-menu{z-index:10000;border-radius:min(8vw,7.5vh,max(2.5vw,3.5vh,20px));flex-direction:column;align-items:flex-end;margin:-1vw;display:flex;position:absolute;top:3vw;right:3vw}.dropout-menu.expanded{background:#f3f3f2}.dropout-menu.expanded .game-button.dropout svg{rotate:90deg}.dropout-menu .game-button.dropout{margin:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5) calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5) 0 0}.dropout-menu .game-button.dropout svg{transition:rotate .1s}.dropout-menu .items{grid-template-columns:auto auto auto auto auto auto;margin:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5) calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/5) calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.66667);display:none}.dropout-menu .items .game-button{grid-area:1/span 2;margin:0 calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/5) calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5) calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5);transition:scale .1s}.dropout-menu .items .game-button.game-button-pressed,.dropout-menu .items .game-button:hover{scale:1.05}.dropout-menu .items .game-button+.game-button{margin-left:.5vw}.dropout-menu .items .game-toggle{grid-column:span 3;margin:0 0 calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/3.33333);padding:0 calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/3.33333)}.dropout-menu .items,.dropout-menu .game-button+.game-toggle,.dropout-menu .game-button+.game-toggle+.game-toggle{border-top:1px solid #b6b4af;padding-top:calc(min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/2.5)}.dropout-menu .game-button.backtomenu{fill:#f2f7fc;background:#1d4b86}.dropout-menu.expanded .items{display:grid}.game-finished .dropout-menu .game-toggle,.game-finished .dropout-menu .game-button.dropout{display:none}.game-finished .dropout-menu .items{border-top:none;flex-direction:column;margin:1vw;padding:0;display:flex}.game-finished .dropout-menu .game-button{margin:0 0 1.5vw}.game-finished .dropout-menu .game-button.setup{display:none}.game-finished .dropout-menu .game-button+.game-button{margin-left:0}.tile-stack .grid-display{z-index:1000}.tile-stack .tile-outline{stroke:#e0dfdc}.tile-on-stack{z-index:0;aspect-ratio:1;cursor:grab;max-width:100%;max-height:18vh;transition-property:scale;transition-duration:.1s;position:relative}.tile-on-stack svg{aspect-ratio:1;width:100%}.tile-on-stack.tile-dragging{cursor:grabbing}.tile-on-stack.tile-dragging,.tile-on-stack.tile-drag-return{z-index:100}.tile-on-stack.appear{animation-name:tile-on-stack-appear-anim;animation-duration:.2s;animation-timing-function:linear}@keyframes tile-on-stack-appear-anim{0%{opacity:0}5%{opacity:0}to{opacity:1}}.rotatable{width:100%;height:100%;position:relative}.rotatable.animated{transition:rotate .3s}.rotatable-dragging.animated{transition:rotate .2s}.rotatable-drag-return.animated{z-index:100;transition-property:translate,scale,rotate;transition-duration:.15s}.rotatable-drag-success.animated{transition-property:none}.tile-counter{cursor:pointer;flex-grow:2;font-size:1.5vw}@media screen and (aspect-ratio<=3/2){.tile-counter span{box-sizing:border-box;color:#777;aspect-ratio:1;border:1px solid #999;border-radius:.5vw;width:4em;margin:1em auto;padding:1.2em 0;display:block}.tile-counter span.wiggle{animation-name:tile-counter-wiggle-anim;animation-duration:.4s;animation-timing-function:linear;animation-iteration-count:2}}@keyframes tile-counter-wiggle-anim{0%{rotate:none}25%{rotate:-10deg}75%{rotate:10deg}to{rotate:none}}.score-display .score{box-sizing:border-box;color:#63861d;opacity:.5;text-align:center;background:#e1f1c0;border:3px solid #63861d;border-radius:2vw;flex-grow:1;margin:10% 10% 3vw;padding:4% 0 7%;font-size:min(4vw,5vh)}.score-display .score.animate{animation-name:score-display-anim;animation-duration:1s}.score-display .score p{margin:0;padding:0}@keyframes score-display-anim{0%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}to{opacity:.5;transform:scale(1)}}@media screen and (orientation:portrait){.screen.game-display{grid-template:"main-grid main-grid main-grid"1fr"fill tile-stack counters"max(20vw,40px)/5vw 60vw 1fr;display:grid}.screen.game-display .tile-stack{flex-direction:row;justify-content:center}.screen.game-display .tile-counter-and-score{flex-direction:row;align-items:center}.screen.game-display .tile-counter{font-size:2.5vw}.screen.game-display .score-display{padding-right:15%}.screen.game-display .score-display .score{border-radius:2vw;width:15vw;margin:0;font-size:7vw}.tile-on-stack{max-width:25vw;height:100%;max-height:100%}}.screen.paint-menu-display{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.screen.paint-menu-display .game-button{position:absolute;top:3vw;right:3vw}.screen.paint-menu-display .paint-options{grid-template-rows:min-content min-content min-content;grid-template-columns:min-content min-content min-content;width:min-content;height:min-content;margin:max(10vh,10vw);display:grid}.paint-menu-atlas-option{aspect-ratio:1;cursor:pointer;justify-content:center;align-items:center;width:min(20vh,20vw);height:min(20vh,20vw);margin:min(3vh,3vw);transition:scale .1s;display:flex}.paint-menu-atlas-option:hover{scale:1.1}.paint-menu-atlas-option .wrap-grid{width:100%;height:100%}.screen.paint-display{grid-template:"paint-grid color-stack"1fr/1fr calc(2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)) + 6vw);display:grid}.screen.paint-display .paint-grid{grid-area:paint-grid}.screen.paint-display .color-stack{background:#b6b4af;grid-area:color-stack}.paint-menu{position:absolute;top:3vw;right:3vw}.color-stack{box-sizing:border-box;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:100%;padding-bottom:3vw;display:flex}.color-swatch-wrap{justify-content:center;align-items:center;width:100%;display:flex}.color-swatch{box-sizing:border-box;cursor:grab;border-radius:100%;width:min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)));height:min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)));margin:calc(min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/10);box-shadow:0 0 15px #0000001a}.color-swatch-selected{border:calc(min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/10) solid #e0dfdc}.color-swatch-remove{background:#00000014;border:calc(min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/10) solid #0000}.color-swatch-remove svg{fill:#00000059;width:calc(min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/2);height:calc(min(8vh,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/2);margin:15% 0 0 15%}.color-swatch-remove.color-swatch-selected{background:#e0dfdc}.color-swatch-remove.color-swatch-selected svg{fill:#000000b3}@media screen and (orientation:portrait){.screen.paint-display{grid-template:"paint-grid"1fr"color-stack"max(20vw,40px)/auto;display:grid}.color-stack{flex-direction:row;justify-content:center;padding-bottom:0}.color-swatch-wrap{justify-content:center;align-items:center;width:auto;height:100%;display:flex}.color-swatch{width:min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)));height:min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)));margin:calc(min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/10)}.color-swatch-selected{border:calc(min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/10) solid #e0dfdc}.color-swatch-remove svg{width:calc(min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/2);height:calc(min(10vw,2*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))/2)}}.svg-score-overlay-mask.disabled{display:none}.svg-score-overlay-mask.enabled{opacity:0;animation-name:score-overlay-opacity;animation-duration:1s}@keyframes score-overlay-opacity{0%{opacity:0}30%{opacity:.3}70%{opacity:.3}to{opacity:0}}.svg-score-overlay{opacity:0;transition-property:opacity;transition-duration:.3s;transition-delay:.2s}.svg-score-overlay circle.points{stroke-dasharray:600 600}.svg-score-overlay.disabled{display:none}.svg-score-overlay.enabled{opacity:1}.svg-score-overlay.hiding{opacity:0;transition-duration:.5s;transition-delay:.5s}.svg-score-overlay.enabled .points{opacity:0;animation-name:score-overlay-points-opacity-anim;animation-duration:.8s;animation-fill-mode:forwards}.svg-score-overlay.enabled circle.points{animation-delay:.5s}.svg-score-overlay.enabled text.points{animation-delay:.6s}.svg-score-overlay.hiding .points{animation-name:score-overlay-points-opacity-anim-reverse;animation-duration:.4s;animation-fill-mode:both}.svg-score-overlay.hiding circle.points{animation-delay:.1s}.svg-score-overlay.hiding text.points{animation-delay:0s}.svg-score-overlay.enabled .score-outline-outline-fg{stroke-dasharray:6000 6000;stroke-dashoffset:-6000px;animation-name:score-overlay-outline-fg-anim;animation-duration:2s;animation-timing-function:ease-in;animation-delay:.4s;animation-fill-mode:forwards}.svg-score-overlay.enabled .score-outline-shadow-mask,.svg-score-overlay.enabled .score-outline-outline-bg{animation-name:score-overlay-stroke-width;animation-duration:.3s;animation-fill-mode:forwards}.svg-score-overlay.hiding .score-outline-outline-fg{stroke-dasharray:6000 6000;stroke-dashoffset:-12000px;animation-name:score-overlay-outline-fg-anim-reverse;animation-duration:1s;animation-timing-function:ease-in;animation-fill-mode:forwards}.svg-score-overlay.hiding .score-outline-shadow-mask,.svg-score-overlay.hiding .score-outline-outline-bg{stroke-width:10px;animation-name:scoreOverlay-stroke-width-reverse;animation-duration:.3s;animation-delay:.5s;animation-fill-mode:forwards}@keyframes score-overlay-outline-fg-anim{0%{stroke-dashoffset:-6000px}to{stroke-dashoffset:-12000px}}@keyframes score-overlay-outline-fg-anim-reverse{0%{stroke-dashoffset:-12000px}to{stroke-dashoffset:-6000px}}@keyframes score-overlay-points-opacity-anim{0%{opacity:0;stroke-dashoffset:-600px}25%{stroke-dashoffset:-600px}75%{opacity:100}to{opacity:100;stroke-dashoffset:-1200px}}@keyframes score-overlay-points-opacity-anim-reverse{0%{opacity:100;stroke-dashoffset:-400px}25%{opacity:100}75%{stroke-dashoffset:-600px}to{opacity:0;stroke-dashoffset:-600px}}@keyframes score-overlay-stroke-width{0%{stroke-width:1px}to{stroke-width:10px}}@keyframes score-overlay-stroke-width-reverse{0%{stroke-width:10px}to{stroke-width:1px}}.screen.game-setup{background:#b6b4af;grid-template:"example settings"1fr/1fr 1fr;width:100%;height:100%;display:grid;position:absolute;top:0;left:0;overflow:hidden;box-shadow:inset 0 0 40px #0003}.screen.game-setup .example-grid{background:#e0dfdc;grid-area:example;position:relative}.invalid-grid-warning{position:absolute;top:calc(50% - min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.33333);left:calc(50% - min(8vw,7.5vh,max(2.5vw,3.5vh,20px))/1.33333)}.invalid-grid-warning svg{fill:#e06300;vector-effect:non-scaling-stroke;width:calc(1.5*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)));height:calc(1.5*min(8vw,7.5vh,max(2.5vw,3.5vh,20px)))}.invalid-grid-warning{opacity:0;transition:opacity .1s}.invalid-grid-warning-active{opacity:1;transition:opacity .5s}.screen.game-setup .game-button.exit{position:absolute;top:3vw;right:3vw}.screen.game-setup .game-button.regenerate{position:absolute;bottom:3vw;left:3vw}.screen.game-setup .button-row{text-align:center;grid-area:buttons;justify-content:flex-start;align-items:center;width:100%;display:flex;position:relative}.screen.game-setup .game-button.play{text-align:center;background:#63861d;border-radius:100%;width:min(8vw,13vh);height:min(8vw,13vh);margin:0 min(3vw,3vh) 0 0;padding:10px;transition:transform .1s;box-shadow:0 0 15px #0000004d}.screen.game-setup .game-button.play.disabled{background:#0000001a}.screen.game-setup .game-button.play.disabled svg{fill:#ffffff4d}.screen.game-setup .game-button.play svg{fill:#f5faea;width:65%;height:65%;margin:16% 0 0 9%;display:inline-block}@media (hover){.screen.game-setup .game-button.play:hover{transform:scale(1.1)}.screen.game-setup .game-button.play.disabled:hover{transform:none}.screen.game-setup .game-button.play.disabled:hover svg,.screen.game-setup .game-button.play.disabled svg:hover{fill:#ccc}}.screen.game-setup .settings{grid-template:"atlas atlas colors colors"min-content"segments segments segments segments"min-content"rules scorer scorer buttons"min-content/min-content min-content min-content 1fr;grid-area:settings;place-content:center;display:grid}.screen.game-setup .setting-row{grid-template-rows:min-content min-content min-content min-content;grid-template-columns:min-content min-content min-content;padding:min(8vw,2vh);display:grid}.screen.game-setup .setting-row.atlas{grid-area:atlas}.screen.game-setup .setting-row.colors{grid-area:colors;grid-template-columns:min-content min-content}.screen.game-setup .setting-row.segments{grid-area:segments;grid-template-columns:repeat(5,min-content min-content min-content)}.screen.game-setup .setting-row.rules{grid-area:rules;grid-template-columns:min-content}.screen.game-setup .setting-row.scorer{grid-area:scorer;grid-template-columns:min-content min-content min-content}.screen.game-setup .setting-row:last-child{border-bottom:none}.screen.game-setup .setting-row-option{box-sizing:border-box;aspect-ratio:1;cursor:pointer;background:#cfcdc9;border:3px solid #0000;border-radius:.7vw;width:min(6.83333vw,10vh);height:min(6.83333vw,10vh);margin:.5vw;transition:transform .1s;box-shadow:0 0 5px #0000001a}.screen.game-setup .wrap-grid{width:76%;height:76%;margin:12%}.screen.game-setup .setting-row-option.selected{transform:scale(1.07)}.screen.game-setup .setting-row-option.selected,.screen.game-setup .setting-row-option.selected:hover{background:#eeeeec;border:3px solid #66f}@media (hover){.screen.game-setup .setting-row-option:hover{background:#e0dfdc}}.screen.game-setup .settings .palette{padding:11%}@media screen and (aspect-ratio>=4/5) and (aspect-ratio<=7/4){.screen.game-setup .button-row{width:min-content;display:block;position:absolute;bottom:3vw;right:3vw}.screen.game-setup .game-button.play{margin:0}}@media screen and (aspect-ratio<=4/5){.screen.game-setup{grid-template:"example"1fr"settings"min-content/1fr;justify-content:center}.screen.game-setup .settings{grid-template:"atlas atlas colors colors"min-content"segments segments segments segments"min-content"rules scorer scorer buttons"min-content/min-content min-content min-content 1fr;margin:1vw}.screen.game-setup .settings .button-row{justify-content:center;align-items:center;margin:0;padding:0}.screen.game-setup .setting-row{padding:3vw}.screen.game-setup .setting-row-option{width:min(14vw,9vh);height:min(14vw,9vh)}.screen.game-setup .game-button.play{width:min(13vw,13vh);height:min(13vw,13vh);margin:0 6vw 0 0}}