.game-container{width:100%;height:100%;overflow:hidden;transition:all .5s ease-in;background-repeat:no-repeat;background-size:cover;background-position:50%;box-shadow:inset 0 0 50px rgba(0,0,0,.3)}.game-container *{color:var(--color-on-table)}#game{height:calc(100% - 106px);position:relative;touch-action:pan-y}@media(max-width:1000px) and (max-height:500px){#game{height:calc(100% - 30px)}}.blackout{position:absolute;overflow:auto;width:100%;height:100%;top:0;bottom:0;visibility:hidden;background-color:var(--color-shade-light);z-index:204;transition:opacity .15s linear}.game-info-bar,.game-button-bar{display:flex;flex-wrap:wrap;width:100%;background:var(--color-overlay)}.game-button-bar{display:flex;overflow-x:auto;flex-wrap:nowrap;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none;overflow-y:clip}.game-button-bar div.shrink-left,.game-button-bar div.shrink-right,.game-button-bar div.shrink-top,.game-button-bar div.shrink-bottom{transform:scale(.9)}.game-button-bar.mask-left{mask-image:linear-gradient(to left,#000 0%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to left,#000 0%,#000 80%,transparent)}.game-button-bar.mask-right{mask-image:linear-gradient(to right,#000 0%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 80%,transparent)}.game-button-bar.mask-left.mask-right{mask-image:linear-gradient(to right,rgba(0,0,0,.1),#000 20%,#000 80%,rgba(0,0,0,.1));-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,.1),#000 20%,#000 80%,rgba(0,0,0,.1))}.game-button-bar.mask-top{mask-image:linear-gradient(to top,#000 0%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to top,#000 0%,#000 80%,transparent)}.game-button-bar.mask-bottom{mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent)}.game-button-bar.mask-top.mask-bottom{mask-image:linear-gradient(to bottom,rgba(0,0,0,.1),#000 20%,#000 80%,rgba(0,0,0,.1));-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.1),#000 20%,#000 80%,rgba(0,0,0,.1))}.game-button-bar::-webkit-scrollbar{display:none}.game-button-bar *{font-size:var(--text-base);font-weight:var(--weight-bold)}.game-button-bar>div:first-child{line-height:30px;margin:0 5px;padding:5px 0;display:none}#game-bar-new-game>img{display:flex}#game-bar-new-game>span{display:none}@media(min-width:1100px){.game-button-bar>div:first-child{display:initial}#game-bar-new-game>img{display:none}#game-bar-new-game>span{display:initial}}.game-button-bar>div:not(:first-child){margin:5px;padding:5px 10px;color:var(--color-on-dark);border:var(--border-width)solid transparent;background-color:var(--color-game-bar-button);cursor:pointer;border-radius:var(--radius-md)}html[dir=ltr] .game-button-bar>div:not(:first-child){box-shadow:var(--shadow-raised)}html[dir=rtl] .game-button-bar>div:not(:first-child){box-shadow:var(--shadow-raised-rtl)}.game-button-bar>div:not(:first-child):hover{background-color:var(--color-game-bar-button-hover)}#game-bar-undo,#game-bar-hint{background-color:var(--color-accent)}#game-bar-undo:hover,#game-bar-hint:hover{background-color:var(--color-accent-hover)}.game-button-bar>div{max-width:160px}.game-button-bar>div.dropdown{cursor:pointer;max-width:100%;align-content:center}.game-button-bar>div span{max-width:100%;display:inline-block;vertical-align:middle}.game-button-bar>div>img{align-self:anchor-center;display:flex}.game-button-bar>div.dropdown .dropdown-content{visibility:hidden;position:absolute;vertical-align:middle;background-color:var(--color-surface);border:var(--border-width)solid var(--color-border);box-shadow:var(--shadow-3);z-index:207;margin-top:var(--space-1);border-radius:var(--radius-md);min-width:100px;width:max-content;max-height:203px;overflow-y:auto}@media(max-width:1000px) and (max-height:500px){.game-button-bar>div.dropdown .dropdown-content{top:0}html[dir=ltr] .game-button-bar>div.dropdown .dropdown-content{right:65px}html[dir=rtl] .game-button-bar>div.dropdown .dropdown-content{left:65px}}.game-button-bar>div.dropdown .dropdown-content span,.game-button-bar>div.dropdown .dropdown-content a{display:block;text-decoration:none;text-align:center;line-height:30px;padding:var(--space-1)var(--space-5);width:auto;color:var(--color-heading);font-weight:initial}.game-button-bar>div.dropdown *{color:inherit}.game-button-bar>div.dropdown .dropdown-content span:hover,.game-button-bar>div.dropdown .dropdown-content a:hover{background-color:var(--color-primary-soft)}.game-button-bar>div.dropdown:hover .dropdown-content{visibility:visible}.game-button-bar:has(.dropdown:hover){mask-image:none;-webkit-mask-image:none}@media(max-width:1000px) and (max-height:500px){.game-button-bar{position:absolute;z-index:201;width:65px;flex-direction:column;max-height:calc(100% - 74px);overflow-y:auto}.game-button-bar:has(.dropdown:hover){overflow-y:clip;overflow-x:visible}.game-button-bar>div.dropdown span{white-space:initial}html[dir=ltr] .game-button-bar{right:0}html[dir=rtl] .game-button-bar{left:0}}@media(prefers-color-scheme:dark){#dark-mode-button>img:first-child{display:none}#dark-mode-button>img:not(:first-child){display:flex}}#dark-mode-button{display:flex!important}[data-theme=light] #dark-mode-button>img:first-child{display:flex}[data-theme=light] #dark-mode-button>img:not(:first-child){display:none}[data-theme=dark] #dark-mode-button>img:first-child{display:none}[data-theme=dark] #dark-mode-button>img:not(:first-child){display:flex}.game-info-bar{position:absolute;flex-direction:column;bottom:0;padding:var(--space-3)0;z-index:200}.game-info-bar *{text-transform:uppercase;font-size:var(--text-sm)}.game-info-bar>div{display:flex;margin:2px 0;flex-wrap:wrap}.game-info-bar>div>div,.game-info-bar>div:not(:first-child)>span{margin:2px var(--space-3)}.game-info-bar>div:not(:first-child)>div:hover{text-decoration:underline;cursor:pointer}.game-info-bar>div:not(:first-child)>input[type=range]{-webkit-appearance:none;appearance:none;height:1px;background-color:var(--color-on-table);align-self:center;cursor:pointer}.game-info-bar>div:not(:first-child)>input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background-color:var(--color-accent)}.game-info-bar>div:not(:first-child)>input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background-color:var(--color-accent)}@media(max-width:600px) or ((max-width:1000px) and (max-height:500px)){#zoom-button,#game-zoom-slider{display:none}}#game-victory{display:none;visibility:hidden;position:absolute;background:var(--color-shade-heavy);padding:var(--space-3);width:100%;height:100%;z-index:205;left:0;top:0;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}#game-victory::-webkit-scrollbar{display:none}#game-victory .title{margin:auto;width:fit-content;text-align:center;font-size:var(--text-4xl);padding:var(--space-3);margin-bottom:var(--space-4)}#game-victory .victory-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);max-width:640px;margin:0 auto var(--space-4)}#game-victory .victory-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-full);background:linear-gradient(180deg,var(--gold-200),var(--gold-400));color:var(--color-on-highlight);font-weight:var(--weight-bold);box-shadow:0 2px 12px color-mix(in srgb,var(--gold-400) 45%,transparent);animation:badgePop .5s cubic-bezier(.2,1.6,.4,1)both}#game-victory .victory-badge[hidden]{display:none}@keyframes badgePop{from{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}#game-victory .victory-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);max-width:560px;margin:0 auto var(--space-3)}#game-victory .victory-stat{position:relative;padding:var(--space-3)var(--space-4);border-radius:var(--radius-xl);background:var(--color-on-dark-tile);border:var(--border-width)solid var(--color-on-dark-border);text-align:center;transition:border-color .4s ease,box-shadow .4s ease}#game-victory .victory-stat.beaten{border-color:var(--color-victory);box-shadow:0 0 22px color-mix(in srgb,var(--gold-300) 35%,transparent),inset 0 0 18px color-mix(in srgb,var(--gold-300) 12%,transparent)}#game-victory .victory-stat.beaten::after{content:'';position:absolute;top:8px;inset-inline-end:10px;width:22px;height:22px;background:url(/static/images/victory_star.svg)50%/contain no-repeat}#game-victory .victory-stat-label{color:var(--color-victory);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}#game-victory .victory-stat-value{color:var(--color-on-dark);font-size:var(--text-4xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:2px 0 var(--space-2);font-variant-numeric:tabular-nums}#game-victory .victory-compare{display:flex;justify-content:space-between;gap:var(--space-2);padding:var(--space-1)0;border-top:var(--border-width)solid var(--color-on-dark-divider);font-size:var(--text-sm)}#game-victory .victory-compare span{color:var(--color-on-dark-muted);text-align:start}#game-victory .victory-compare b{color:var(--color-on-dark);font-variant-numeric:tabular-nums}#game-victory .victory-wins{text-align:center;color:var(--color-on-dark-muted);margin-bottom:var(--space-2)}#game-victory .victory-wins b{color:var(--color-victory)}#game-victory .victory-wins[hidden]{display:none}#game-victory.hide-scores .victory-compare,#game-victory.hide-scores .victory-badges{display:none}@media(max-width:500px){#game-victory .victory-stats{grid-template-columns:1fr;max-width:360px;gap:var(--space-2)}#game-victory .victory-stat{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"label label" "value best" "value record";column-gap:var(--space-4);align-items:center;padding:var(--space-2)var(--space-3);text-align:start}#game-victory .victory-stat-label{grid-area:label}#game-victory .victory-stat-value{grid-area:value;margin:0;font-size:var(--text-3xl)}#game-victory .victory-stat .victory-compare:nth-child(3){grid-area:best;border-top:0}#game-victory .victory-stat .victory-compare:nth-child(4){grid-area:record}#game-victory .victory-stat.beaten::after{top:var(--space-2)}}@media(max-width:400px),((max-width:1000px) and (max-height:500px)){#game-victory .victory-stat-value{font-size:var(--text-3xl)}#game-victory .victory-compare{font-size:var(--text-xs)}#game-victory .victory-badge{font-size:var(--text-sm);padding:var(--space-1)var(--space-3)}#game-victory .victory-badge img{width:18px;height:18px}}#game-victory .new-game-buttons-and-share{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);margin-top:var(--space-4)}#game-victory .share{margin:0 auto var(--space-3)}#game-victory .share>div:first-child{margin:0 auto var(--space-3);text-align:center;font-weight:var(--weight-bold);color:var(--color-victory)}#game-victory .share-icons{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin:auto}#game-victory .share-icons a{display:inline-flex;width:fit-content}@media(pointer:coarse){#game-victory .share-icons{gap:var(--space-4)}#game-victory .share-icons a img{max-width:52px}}#game-victory .share-icons a img{max-width:48px;height:auto}#share-wechat img{width:36px;margin:auto var(--space-1)}#game-victory-random-game{display:none}@media(min-width:700px){#game-victory{width:80%;height:88%;left:10%;top:6%;border-radius:var(--radius-xl)}#game-victory .title{font-size:var(--text-5xl)}}@media(max-width:400px){#game-victory .title{font-size:var(--text-3xl);padding:0;margin-bottom:var(--space-3)}}@media(max-width:1000px) and (max-height:500px){#game-victory{width:100%;height:100%;left:0;top:0;border-radius:0}}.new-game-buttons{display:flex;flex-wrap:wrap;width:fit-content;margin:auto}.new-game-buttons>div{padding:var(--space-1)var(--space-3);margin:var(--space-1);cursor:pointer;border-radius:var(--radius-md)}.new-game-buttons>div span{color:inherit;font-size:inherit;font-weight:var(--weight-bold)}.new-game-buttons>div:first-child{background-color:var(--color-game-bar-button);color:var(--color-on-dark);font-size:var(--text-xl)}.new-game-buttons>div:not(:first-child){border:var(--border-width)solid var(--color-on-dark);color:var(--color-on-dark);align-self:center}.new-game-buttons>div:hover{background-color:var(--color-on-dark);color:var(--green-500)}#congratulations{position:relative;font-weight:var(--weight-bold);font-family:permanent marker,cursive,noto sans,monospace!important;-webkit-transform:skew(-5deg,-5deg);transform:skew(-5deg,-5deg);background-image:-webkit-linear-gradient(var(--color-victory) 0%,white 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0;-webkit-filter:drop-shadow(2px 2px 20px var(--color-victory));filter:drop-shadow(2px 2px 20px var(--color-victory))}@keyframes zoomInAndOut{0%{transform:skew(-5deg,-5deg)scale(1)}25%{transform:skew(-5deg,-5deg)scale(1.1)}50%{transform:skew(-5deg,-5deg)scale(1)}75%{transform:skew(-5deg,-5deg)scale(.9)}100%{transform:skew(-5deg,-5deg)scale(1)}}@keyframes rotateAnimation{from{transform:rotate3d(1,1,1,360deg)}to{transform:rotate3d(0,0,0,0)}}#confetti{z-index:204;position:absolute;width:100%;height:100%;visibility:hidden}@keyframes hint{0%{box-shadow:none}25%{box-shadow:0 0 5px 10px var(--color-hint-glow)}50%{box-shadow:none}75%{box-shadow:0 0 5px 10px var(--color-hint-glow)}100%{box-shadow:none}}#game-message{position:absolute;top:50%;left:50%;z-index:207;display:none;flex-direction:column;align-items:center;gap:var(--space-1);min-width:min(16rem,80vw);padding:var(--space-4)var(--space-7)var(--space-5);border:var(--border-width)solid var(--color-on-dark-border);border-top:3px solid var(--gold-400);border-radius:var(--radius-xl);background:hsl(0 0% 0%/.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-5);text-align:center;pointer-events:none;transform:translate(-50%,-50%);animation:gameMessage 3.4s var(--ease-out)both}#game-message .game-message-label{color:var(--gold-300);font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase}#game-message .game-message-value{color:var(--color-on-dark);font-family:var(--font-display);font-size:clamp(var(--text-4xl),9vw,4.5rem);line-height:var(--leading-tight);text-shadow:0 0 24px color-mix(in srgb,var(--gold-400) 45%,transparent)}@keyframes gameMessage{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.04)}25%,80%{opacity:1;transform:translate(-50%,-50%)scale(1)}100%{opacity:0;transform:translate(-50%,-50%)scale(.97)}}@media(prefers-reduced-motion:reduce){#game-message{animation:none}}.new-game-buttons>div{box-shadow:var(--shadow-raised)}[dir=rtl] .new-game-buttons>div{box-shadow:var(--shadow-raised-rtl)}.new-game-buttons>div:first-child{border:var(--border-width)solid var(--color-shade-heavy)}.modal{display:none;position:fixed;z-index:208;top:0;left:0;width:100%;height:100%;background-color:var(--color-overlay)}.modal *{color:var(--color-text);line-height:1.5rem}.modal-content{position:absolute;background-color:var(--color-modal-header);left:50%;top:-100%;transform:translate(-50%,-50%);max-width:calc(100% - 20px);min-width:300px;max-height:calc(100% - 20px);height:auto;overflow:hidden;border-radius:var(--radius-xl);box-shadow:var(--shadow-5);transition:.2s ease-in-out}#modal-contact-failure .modal-content,#modal-bug-failure .modal-content{background-color:var(--color-danger-hover)}@media(min-width:1101px){#modal-settings .modal-content,#modal-calendar .modal-content,#modal-statistics .modal-content{min-width:800px}}@media(max-width:1100px){.modal-content{width:calc(75%)}#modal-contact-failure .modal-content,#modal-bug-failure .modal-content,#modal-contact-success .modal-content,#modal-bug-success .modal-content,#modal-login .modal-content{max-width:450px}}@media(max-width:900px){.modal-content{width:calc(80%)}}@media(max-width:700px){.modal-content{width:calc(100% - 20px)}}.modal-header{padding:var(--space-3);display:flex;align-items:center}.modal-header .modal-title{margin:var(--space-4)auto;font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-on-modal-header);text-align:center;line-height:var(--leading-tight)}.modal-header img{margin:0 var(--space-5);cursor:pointer;transition:.2s ease-in-out}.modal-header img:hover{transform:scale(1.1)}.modal-body{padding:var(--space-5);height:auto;overflow-y:auto;background-clip:padding-box;max-height:60dvh;background:var(--color-bg)}.modal-body .content>div{height:auto;overflow-y:auto;background-clip:padding-box}.modal-bar{display:flex;padding:0 var(--space-3)}.modal-bar div{cursor:pointer;color:var(--color-on-modal-header);font-weight:var(--weight-bold);padding:var(--space-3);border-radius:var(--radius-lg)var(--radius-lg)0 0}.modal-bar div:not(.active):hover{background-color:var(--color-on-dark-divider)}.modal-bar div.active{background-color:var(--color-bg);color:var(--color-heading);margin-bottom:-1px}.modal-content label{margin-left:var(--space-3);margin-right:var(--space-3);font-weight:var(--weight-bold)}.modal-content .disclaimer{padding:0 var(--space-3)}.modal-content .disclaimer *{color:var(--color-text-muted);font-style:italic;font-size:var(--text-sm);margin-bottom:var(--space-1)}.modal-content .disclaimer ul{margin-left:var(--space-1);margin-right:var(--space-1)}.modal-content .disclaimer li{list-style-type:disc;margin-left:var(--space-3);margin-right:var(--space-3)}.modal-content input[type=email],.modal-content input[type=text],.modal-content textarea{display:block;width:100%;min-height:var(--control-md);padding:var(--space-2)var(--space-3);margin:0 0 var(--space-4);border:var(--border-width)solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;box-sizing:border-box;resize:vertical;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.modal-content input[type=email]:focus,.modal-content input[type=text]:focus,.modal-content textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-focus) 35%,transparent)}.modal-content input::placeholder,.modal-content textarea::placeholder{color:var(--color-text-faint)}.modal-content textarea{min-height:180px}.modal-content form[name=modalBug] label,.modal-content form[name=modalContact] label{display:block;margin:0 0 var(--space-1);color:var(--color-text);font-size:var(--text-sm)}.modal-content input[type=submit]{min-width:12rem;background:var(--color-game-bar-button);color:var(--color-on-dark);border:var(--border-raised);box-shadow:var(--shadow-raised)}.modal-content input[type=submit]:hover{background:var(--color-game-bar-button-hover);color:var(--color-on-dark)}.modal-content input[type=submit],#reset-color{font-weight:var(--weight-bold);cursor:pointer;display:block;height:auto;width:fit-content;margin:var(--space-5)auto var(--space-3);padding:var(--space-3)var(--space-5);background:var(--color-bg);color:var(--color-link);border:var(--border-width)solid var(--color-link);border-radius:var(--radius-md);box-shadow:var(--shadow-1);transition:.2s ease-in-out}#reset-color{margin-left:var(--space-3);margin-top:auto;vertical-align:middle;margin-bottom:auto;cursor:pointer}#reset-color:hover{background:var(--color-link);color:var(--color-bg)}.modal-content a{text-decoration:underline;color:var(--color-link)}.modal-content .content form{display:flex;flex-wrap:wrap;padding:var(--space-3)0}.modal-content .content form:not(:last-child){border-bottom:var(--border-width)solid var(--color-text-muted)}.modal-content .content form *,.modal-content .content div{margin:var(--space-1)}.modal-content .content form>span,.modal-content .content p span:first-child,.modal-content .content div{font-weight:var(--weight-bold)}.modal-content .content p{unicode-bidi:bidi-override}.modal-content .color-picker{display:flex}.modal-content input[type=color]{width:80px;height:80px;margin-left:var(--space-3);padding:2px;background:var(--color-surface-sunken);border:var(--border-width)solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer}.modal-content .content form[name=card-back-image] *,.modal-content .content form[name=background-image] *{margin:0}.modal-content .content form[name=card-back-image]>div,.modal-content .content form[name=background-image]>div{display:flex;flex-wrap:wrap;width:100%}.modal-content .content form[name=card-back-image] label,.modal-content .content form[name=background-image] label{display:flex;flex-direction:column;justify-content:center;cursor:pointer;position:relative}.modal-content .content form[name=card-back-image] label{width:calc(25%)}.modal-content .content form[name=background-image] label{width:calc(100%/3)}.modal-content .content form[name=card-back-image] picture img,.modal-content .content form[name=background-image] label>img{display:block;width:90%;height:auto;margin:var(--space-1)auto;border:4px solid transparent;transition:.2s ease-in-out;box-sizing:border-box}.modal-content .content form[name=background-image] label>img{border-radius:var(--radius-xl)}@media(max-width:900px){.modal-content .content form[name=background-image] label>img{border-radius:var(--radius-md)}}.modal-content .content form[name=card-back-image] input,.modal-content .content form[name=background-image] input{display:none}.modal-content .content form[name=card-back-image] input:checked+picture img,.modal-content .content form[name=background-image] input:checked+img{border-color:var(--color-accent);transform:scale(1.05);box-shadow:0 0 0 2px var(--color-accent),var(--shadow-2);border-radius:var(--radius-md)}.modal-content .content form .check-overlay{display:none;position:absolute;border-radius:50%;align-items:center;justify-content:center;box-shadow:var(--shadow-2)}.modal-content .content form[name=card-back-image] .check-overlay{bottom:5%;right:8%}.modal-content .content form[name=background-image] .check-overlay{bottom:8%;right:5%}.modal-content .content form .check-overlay img{width:48px;height:48px;border:0;margin:0;padding:0;border-radius:50%}@media(max-width:900px){.modal-content .content form .check-overlay img{width:32px;height:32px}}@media(max-width:600px){.modal-content .content form .check-overlay img{width:24px;height:24px}}.modal-content .content form[name=card-back-image] input:checked~.check-overlay,.modal-content .content form[name=background-image] input:checked~.check-overlay{display:flex}.modal-content .content form[name=card-back-image] picture source{display:none}#google-login-button{margin:var(--space-3)auto;width:fit-content}#google-login-button *{font-weight:var(--weight-bold);color:var(--color-on-modal-header)}#settings-general form>div{max-width:calc(100% - 80px)}#settings-general form span{font-size:var(--text-lg);margin:0}#settings-general form p{color:var(--color-text-muted);font-weight:var(--weight-normal);font-size:var(--text-sm);margin:0}.modal-content .content form .switch{position:relative;display:inline-block;width:56px;height:30px;margin:auto var(--space-1)}html[dir=ltr] .modal-content .content form .switch{margin-left:auto}html[dir=rtl] .modal-content .content form .switch{margin-right:auto}.modal-content .content form .switch input{opacity:0;width:0;height:0}.modal-content .content form .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-border-strong);transition:.4s;border-radius:var(--radius-full);margin:0}.modal-content .content form .slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:var(--color-on-modal-header);transition:.4s;border-radius:50%}.modal-content .content form input:checked+.slider{background-color:var(--color-modal-header)}.modal-content .content form input:focus+.slider{box-shadow:0 0 0 3px var(--color-focus)}.modal-content .content form input:checked+.slider:before{transform:translateX(26px)}#keyboard-shortcuts-button{display:flex}@media(hover:none) and (pointer:coarse){#keyboard-shortcuts-button{display:none!important}}#modal-shortcuts{--kb-draw:#2e9d4a;--kb-undo:#4169e1;--kb-hint:#d99a00;--kb-new_game:#0f9a9a;--kb-restart:#e0662a;--kb-fullscreen:#8a4fd8;--kb-help:#d6417f;--kb-panel:#e6ebe6;--kb-key:#fbfcfb;--kb-key-edge:#c3cbc3;--kb-key-font:#9aa39a}[data-theme=dark] #modal-shortcuts{--kb-panel:#1d1f1d;--kb-key:#3a3d3a;--kb-key-edge:#232523;--kb-key-font:#80867f}#modal-shortcuts .modal-content{width:min(880px,calc(100% - 20px))}#modal-shortcuts .modal-body{max-height:calc(100dvh - 140px);padding:var(--space-5)}#modal-shortcuts .keyboard{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--kb-panel);box-shadow:inset 0 2px 6px var(--color-shade-light)}#modal-shortcuts .kb-row{display:flex;gap:var(--space-2)}#modal-shortcuts .key{position:relative;flex:var(--w,1)1 0;min-width:0;height:clamp(30px,4.4vw,44px);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--kb-key);border-bottom:4px solid var(--kb-key-edge);color:var(--kb-key-font);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1;user-select:none;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}#modal-shortcuts .key small{position:absolute;top:3px;left:6px;font-size:var(--text-xs);opacity:.8;color:inherit}#modal-shortcuts .key.wide{font-size:var(--text-xs);font-weight:var(--weight-normal)}#modal-shortcuts .key[data-action]{background:var(--c);border-bottom-color:color-mix(in srgb,var(--c) 60%,#000);color:var(--color-on-primary);font-size:var(--text-base);cursor:default;box-shadow:0 2px 8px color-mix(in srgb,var(--c) 45%,transparent)}#modal-shortcuts .key.modifier[data-action]{background:color-mix(in srgb,var(--c) 55%,var(--kb-key));font-size:var(--text-xs)}#modal-shortcuts [data-action=draw]{--c:var(--kb-draw)}#modal-shortcuts [data-action=undo]{--c:var(--kb-undo)}#modal-shortcuts [data-action=hint]{--c:var(--kb-hint)}#modal-shortcuts [data-action=new_game]{--c:var(--kb-new_game)}#modal-shortcuts [data-action=restart]{--c:var(--kb-restart)}#modal-shortcuts [data-action=fullscreen]{--c:var(--kb-fullscreen)}#modal-shortcuts [data-action=help]{--c:var(--kb-help)}#modal-shortcuts.focusing .key[data-action]:not(.focus),#modal-shortcuts.focusing .shortcut-legend li:not(.focus){opacity:.35}#modal-shortcuts .key.focus{transform:translateY(-3px)scale(1.06);z-index:1}#modal-shortcuts .shortcut-legend{list-style:none;margin:var(--space-5)0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-2)var(--space-4)}#modal-shortcuts .shortcut-legend li{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-lg);border-inline-start:5px solid var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);font-weight:var(--weight-bold);transition:opacity .15s ease}#modal-shortcuts .shortcut-legend .keys{display:flex;align-items:center;gap:var(--space-1);flex:none}#modal-shortcuts .shortcut-legend b{font-weight:var(--weight-normal)}#modal-shortcuts kbd{display:inline-block;min-width:1.8em;padding:2px 7px;border-radius:var(--radius-sm);background:var(--c);border-bottom:3px solid color-mix(in srgb,var(--c) 60%,#000);color:var(--color-on-primary);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);text-align:center;line-height:1.3rem}.settings-group+.settings-group{margin-top:var(--space-5)}.settings-group-title{margin:0 var(--space-3)var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.settings-preview{display:flex;justify-content:center;align-items:flex-end;gap:var(--space-2);margin:0 0 var(--space-4);padding:var(--space-4)var(--space-3)var(--space-3);border-radius:var(--radius-lg);background-color:var(--color-table);background-size:cover;background-position:50%;box-shadow:inset 0 0 30px hsl(0 0% 0%/.35)}.settings-preview[hidden]{display:none}.settings-preview img{width:clamp(48px,12vw,72px);height:auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-2)}.settings-preview img:nth-child(1){transform:rotate(-6deg)translateY(4px)}.settings-preview img:nth-child(2){transform:rotate(-2deg)}.settings-preview img:nth-child(3){transform:rotate(2deg)}.settings-preview img:nth-child(4){transform:rotate(6deg)translateY(4px)}.modal-title-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;margin-inline-end:var(--space-3);border-radius:var(--radius-full);background:var(--color-on-dark-divider);vertical-align:middle}.modal-title-icon .icon{width:1.5rem;height:1.5rem}.modal-title-icon,.modal-title-icon *{color:var(--color-on-modal-header)}.modal-result{display:flex;justify-content:center;margin-bottom:var(--space-3)}.modal-result .icon{width:4rem;height:4rem}.modal-result--ok,.modal-result--ok *{color:var(--color-primary)}.modal-result--error,.modal-result--error *{color:var(--color-danger)}[dir=rtl] .modal-content input[type=submit]{box-shadow:var(--shadow-raised-rtl)}#lang-banner{display:none;position:fixed;bottom:20px;left:50%;background:color-mix(in srgb,var(--color-surface) 92%,transparent);border:var(--border-raised);padding:var(--space-3)var(--space-5);border-radius:var(--radius-md);transform:translate(-50%,0);z-index:202;box-shadow:var(--shadow-raised);max-width:calc(100% - 20px);width:max-content;transition:all .2s ease-in-out}#lang-banner>div{display:flex}@media(max-width:600px){#lang-banner{flex-direction:column}#lang-banner>div{margin:var(--space-3)auto 0}}#lang-text{color:var(--color-text)}#lang-text,#lang-switch,#lang-close{font-weight:var(--weight-bold);margin:0 var(--space-3);text-align:center;align-self:center}#lang-switch,#lang-close{padding:var(--space-3)var(--space-5);border:var(--border-raised);border-radius:var(--radius-md);cursor:pointer;color:var(--color-on-dark);height:fit-content;box-shadow:var(--shadow-raised);transition:background-color var(--duration-fast),transform var(--duration-fast)}#lang-switch{background-color:var(--color-game-bar-button)}#lang-close{background-color:var(--color-danger)}#lang-switch:hover{background-color:var(--color-game-bar-button-hover);transform:scale(1.02)}#lang-close:hover{background-color:var(--color-danger-hover);transform:scale(1.02)}[dir=rtl] #lang-banner,[dir=rtl] #lang-switch,[dir=rtl] #lang-close{box-shadow:var(--shadow-raised-rtl)}#notifications{position:fixed;bottom:var(--space-3);inset-inline-end:var(--space-3);z-index:206;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);max-width:calc(100vw - 2 * var(--space-3));pointer-events:none}body:has(#lang-banner[style*=flex]) #notifications{bottom:var(--space-9)}@media(max-width:600px){body:has(#lang-banner[style*=flex]) #notifications{bottom:9rem}}#notifications>.notification{--c:var(--color-primary);--c-soft:var(--green-100);position:relative;display:flex;align-items:center;gap:var(--space-3);width:min(340px,calc(100vw - 2 * var(--space-3)));padding:var(--space-3)var(--space-4)var(--space-4);overflow:hidden;border:var(--border-raised);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-raised);pointer-events:auto;animation:notification-in var(--duration)var(--ease-out)both}#notifications>.notification.info{--c:var(--color-accent);--c-soft:var(--blue-100)}#notifications>.notification.warning{--c:var(--gold-600);--c-soft:var(--gold-100)}#notifications>.notification.error{--c:var(--color-danger);--c-soft:var(--red-100)}#notifications>.notification.gold{--c:var(--color-medal-gold);--c-soft:var(--gold-100)}#notifications>.notification.silver{--c:var(--color-medal-silver);--c-soft:var(--grey-100)}#notifications>.notification.bronze{--c:var(--color-medal-bronze);--c-soft:var(--gold-100)}#notifications .notification-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);background:var(--c-soft)}#notifications .notification-icon svg{width:1.4rem;height:1.4rem}#notifications .notification-icon svg,#notifications .notification-icon svg *{fill:var(--c)}#notifications .notification-text{display:flex;flex-direction:column;gap:2px;min-width:0}#notifications .notification-game{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}#notifications .notification-message{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--leading-snug)}#notifications>.notification::after{content:"";position:absolute;inset-inline-start:0;bottom:0;width:100%;height:3px;background:var(--c);animation:notification-time 5s linear forwards}#notifications>.notification:hover::after{animation-play-state:paused}#notifications>.notification.fade-out{animation:notification-out var(--duration)var(--ease-out)forwards}@keyframes notification-in{from{opacity:0;transform:translateY(var(--space-4))scale(.97)}to{opacity:1;transform:none}}@keyframes notification-out{to{opacity:0;transform:translateY(var(--space-2))scale(.97)}}@keyframes notification-time{to{width:0}}@media(prefers-reduced-motion:reduce){#notifications>.notification,#notifications>.notification.fade-out{animation:none}}[dir=rtl] #notifications>.notification{box-shadow:var(--shadow-raised-rtl)}#calendar{text-align:center;border-radius:var(--radius-xl);padding:var(--space-3)}.calendar-header{display:flex;justify-content:space-between;align-items:center;font-weight:var(--weight-bold);margin-bottom:var(--space-3)}.calendar-header button{background-color:var(--color-accent);border:none;padding:var(--space-1);cursor:pointer;border-radius:var(--radius-sm)}.calendar-header button:hover{background-color:var(--color-accent-hover)}.calendar-header button img{display:flex}.calendar-header button:disabled{background-color:var(--color-border-strong);cursor:not-allowed}.calendar-header span{font-size:var(--text-xl)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-1)}.calendar-grid .day-name{font-weight:var(--weight-bold)}.calendar-day,.calendar-grid .empty{padding:var(--space-1);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;position:relative}.calendar-day svg{position:absolute;opacity:.1;width:32px;height:auto;fill:var(--color-text)}.calendar-day.active{color:var(--color-bg)}.calendar-day.active svg{opacity:1;fill:var(--color-medal-gold)}.calendar-day.inactive{opacity:.5}#calendar-progress-container{width:100%;margin:67px auto var(--space-6);max-width:calc(100% - 60px);position:relative}#calendar-progress-bar{width:100%;height:10px;background-color:var(--color-border-strong);border-radius:var(--radius-sm);position:relative;overflow:hidden}#calendar-progress-fill{height:100%;width:0%;background-color:var(--color-accent);transition:width 1s ease-in-out;border-radius:var(--radius-sm)}#calendar-progress-container svg{height:auto;position:absolute;transform:translateX(-50%)}#calendar-progress-container svg:first-child{width:32px;top:-42px;fill:var(--color-medal-bronze)}#calendar-progress-container svg:first-child.highlight{filter:drop-shadow(0 0 10px var(--color-medal-bronze))}#calendar-progress-container svg:nth-child(2){width:36px;top:-46px;fill:var(--color-medal-silver)}#calendar-progress-container svg:nth-child(2).highlight{filter:drop-shadow(0 0 10px var(--color-medal-silver))}#calendar-progress-container svg:nth-child(3){width:40px;top:-50px;fill:var(--color-medal-gold)}#calendar-progress-container svg:nth-child(3).highlight{filter:drop-shadow(0 0 10px var(--color-medal-gold))}#calendar-daily-challenge{font-weight:var(--weight-bold);cursor:pointer;display:block;height:auto;width:fit-content;margin:var(--space-5)auto var(--space-3);padding:var(--space-3)var(--space-5);background-color:var(--color-accent);color:var(--color-on-modal-header);border-radius:var(--radius-md);font-size:var(--text-2xl);border:var(--border-raised);box-shadow:var(--shadow-raised);transition:.2s ease-in-out}#calendar-daily-challenge:hover{background-color:var(--color-accent-hover);transform:scale(1.05)}#calendar-daily-played{margin-bottom:var(--space-1);text-align:center;font-style:italic;font-size:var(--text-lg);display:none}#countdown-timer{text-align:center;margin:var(--space-5)auto;font-size:var(--text-lg)}#countdown-timer span{margin:0 var(--space-3);font-weight:var(--weight-bold)}#statistics-content .statistics-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}@media(max-width:400px){#statistics-content .statistics-cards{grid-template-columns:1fr 1fr}}#trophies-list{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-5)auto var(--space-3)}#trophies-list .trophy-section{flex:1 1 14rem;padding:var(--space-4);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1)}#trophies-list .trophy-section h3{margin:0 0 var(--space-3);color:var(--color-heading);font-size:var(--text-lg);text-align:center}#trophies-list .trophy-row{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}#trophies-list .trophy{display:flex;flex-direction:column;align-items:center;margin-top:auto;opacity:0;transition:opacity 1s ease}#trophies-list .trophy.visible{opacity:1}#trophies-list .trophy.bronze .trophy-icon{fill:var(--color-medal-bronze);width:68px;height:68px}#trophies-list .trophy.silver .trophy-icon{fill:var(--color-medal-silver);width:78px;height:78px}#trophies-list .trophy.gold .trophy-icon{fill:var(--color-medal-gold);width:88px;height:88px}#trophies-list .trophy p{margin:var(--space-1)0 0;font-size:var(--text-sm);color:var(--color-text-muted);font-weight:var(--weight-bold)}#modal-game-over .modal-content{max-width:800px}#modal-game-over .modal-body{display:flex;flex-direction:column;gap:var(--space-4)}.game-over-message{margin:auto;text-align:center}.game-over-buttons{display:flex;width:fit-content;margin:var(--space-4)auto;gap:var(--space-4);flex-wrap:wrap}@media(max-width:599px){.game-over-buttons{flex-direction:column}}.game-over-buttons>div{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-md);padding:0 var(--space-4);border:var(--border-width)solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);align-self:center;font-weight:var(--weight-bold);cursor:pointer;transition:background-color var(--duration-fast)}.game-over-buttons>div:hover{background-color:var(--color-surface-sunken)}.game-over-buttons>div{border:var(--border-raised);box-shadow:var(--shadow-raised)}[dir=rtl] .game-over-buttons>div{box-shadow:var(--shadow-raised-rtl)}.game-over-buttons>#game-over-new-game{background:var(--color-game-bar-button);color:var(--color-on-dark)}.game-over-buttons>#game-over-new-game:hover{background:var(--color-game-bar-button-hover)}.other-variations-title{font-size:var(--text-base);font-weight:var(--weight-bold);text-align:center;margin:auto}.scroll-container{position:relative}.other-variations{display:flex;gap:var(--space-4);overflow-x:auto;scroll-behavior:smooth;padding:var(--space-3);scrollbar-width:none;-ms-overflow-style:none;mask-image:none;-webkit-mask-image:none}.other-variations::-webkit-scrollbar{display:none}.other-variations.mask-left-right{mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%)}.other-variations.mask-left{mask-image:linear-gradient(to right,transparent 0%,#000 5%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%)}.other-variations.mask-right{mask-image:linear-gradient(to left,transparent 0%,#000 5%);-webkit-mask-image:linear-gradient(to left,transparent 0%,#000 5%)}.scroll-btn{position:absolute;top:50%;transform:translateY(-50%);cursor:pointer;z-index:2;transition:background .2s,opacity .2s;background-color:var(--color-accent);border:none;padding:var(--space-1);border-radius:var(--radius-sm)}.scroll-btn:hover{background-color:var(--color-accent-hover)}.scroll-btn.left{left:-10px}.scroll-btn.right{right:-10px}.scroll-btn.hidden{opacity:0;pointer-events:none}.scroll-btn img{display:flex}.other-variations .game-item{min-width:200px;width:200px}