.game-screen[data-ui-ready=false] :is(.game-header,.timer,.game-footer,.victory-panel){visibility:hidden;opacity:0;pointer-events:none}.game-screen[data-ui-ready=true] :is(.game-header,.timer:not(.timer-completed),.game-tools,.game-help){animation:.72s cubic-bezier(.22,.61,.36,1) both game-ui-enter;animation-delay:var(--ui-delay,0s)}.game-screen :is(.game-header,.timer){--ui-offset:56px}.game-screen :is(.game-tools,.game-help){--ui-offset:-56px;--ui-delay:.8s}@keyframes game-ui-enter{0%{opacity:0;visibility:hidden;translate:0 var(--ui-offset)}to{opacity:1;visibility:visible;translate:0}}.game-screen[data-reduced-motion=true][data-ui-ready=true] :is(.game-header,.timer:not(.timer-completed),.game-tools,.game-help){animation:none}@media (prefers-reduced-motion:reduce){.game-screen[data-ui-ready=true] :is(.game-header,.timer:not(.timer-completed),.game-tools,.game-help){animation:none}}.mosaic-dropdown{width:194px;min-width:0;max-width:100%;color:var(--ink);font:16px Nunito,sans-serif;display:inline-block;position:relative}.mosaic-dropdown[data-dropdown-open=true]{z-index:12}.dropdown-trigger{border:1px solid var(--line);width:100%;min-height:44px;box-shadow:var(--shadow);text-align:left;background:#fffefa;border-radius:22px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.dropdown-value{overflow-wrap:anywhere;min-width:0;animation:.22s ease-out dropdown-value-in;display:block}.dropdown-trigger svg{fill:none;stroke:currentColor;stroke-width:2px;width:17px;height:17px;transition:transform .24s}[data-dropdown-open=true]>.dropdown-trigger svg{transform:rotate(180deg)}.dropdown-panel{overscroll-behavior:contain;border:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;transform-origin:top;background:#fffdf8;border-radius:18px;width:100%;padding:5px;transition:opacity .16s,transform .22s cubic-bezier(.2,.8,.2,1.15),visibility 0s .22s;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;transform:translateY(-8px)scaleY(.8);box-shadow:0 8px 24px #48271e20}[data-side=top]>.dropdown-panel{transform-origin:bottom;top:auto;bottom:calc(100% + 6px)}[data-top-layer=true]>.dropdown-panel{z-index:120;margin:0;position:fixed;inset:auto}.dropdown-panel::backdrop{pointer-events:none;background:0 0}[data-dropdown-open=true]>.dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:none}.dropdown-option{cursor:pointer;opacity:0;border-radius:12px;justify-content:space-between;align-items:center;gap:6px;min-height:44px;padding:9px 8px;transition:opacity .15s,transform .23s cubic-bezier(.2,.8,.2,1.15),background .12s;display:flex;transform:translateY(-5px)}[data-dropdown-open=true] .dropdown-option{opacity:1;transform:none}.dropdown-option[data-active=true]{background:#edf3ee}.dropdown-option[aria-selected=true]{color:var(--teal);font-weight:700}.dropdown-option[aria-disabled=true]{opacity:.45;cursor:default}.dropdown-check{min-width:13px;color:var(--teal);flex:none;font-size:13px}@keyframes dropdown-value-in{0%{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}.liquid-toggle{--toggle-color:var(--teal);background:0 0;border-radius:24px;flex:none;justify-content:center;align-items:center;width:56px;height:44px;margin-left:auto;padding:0;display:inline-flex}.liquid-toggle-track{background:#d8cbbc;border-radius:20px;width:50px;height:28px;transition:background .22s;display:block;position:relative;box-shadow:inset 0 1px 2px #48271e0d}.liquid-toggle[aria-checked=true] .liquid-toggle-track{background:var(--toggle-color)}.liquid-toggle-knob{background:#fffefa;border-radius:50%;width:22px;height:22px;position:absolute;top:3px;left:3px;transform:translate(0);box-shadow:0 2px 5px #48271e24}.liquid-toggle[aria-checked=true] .liquid-toggle-knob{transform:translate(22px)}.setting-haptics .liquid-toggle{--toggle-color:var(--coral)}.wake-slider{--wake-color:var(--teal);align-items:center;gap:9px;width:100%;min-width:0;min-height:44px;display:flex}.wake-track{border-radius:8px;flex:1;min-width:0;height:44px;display:block;position:relative}.wake-bars{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0 3px}.wake-bar{transform-origin:50%;background:#ded2c3;border-radius:2px;flex:none;width:2px;height:16px;transition:background .1s;display:block}.wake-bar[data-filled=true]{background:var(--wake-color)}.wake-value{color:#876f62;text-align:right;font-variant-numeric:tabular-nums;flex:none;min-width:33px;font:700 11px Nunito,sans-serif}.wake-slider .wake-track input[type=range]{opacity:0;cursor:ew-resize;touch-action:pan-y;width:100%;min-width:0;height:44px;margin:0;position:absolute;inset:0}.wake-track:focus-within{outline:2px solid var(--teal);outline-offset:3px}.wake-slider[data-disabled=true]{opacity:.4}.wake-slider[data-disabled=true] input{cursor:default}.settings-modal .range-row .wake-slider{flex:1;width:auto;margin-left:auto}.range-row.effects .wake-slider{--wake-color:#238ec5}.range-row.music .wake-slider{--wake-color:var(--coral)}.range-row .wake-value{font-size:10px}.debug-menu-panel .wake-slider{--wake-color:#ffcc75}.debug-menu-panel .wake-value{color:#ffcc75}.debug-menu-panel .wake-bar:not([data-filled=true]){background:#5a7779}@media (prefers-reduced-motion:reduce){.mosaic-dropdown *,.liquid-toggle *,.wake-slider *{transition:none!important;animation:none!important}}[data-reduced-motion=true].mosaic-dropdown *,[data-reduced-motion=true].liquid-toggle *,[data-reduced-motion=true].wake-slider *{transition:none!important;animation:none!important}.account-summary{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding:18px;display:flex}.account-summary>div{flex:1;min-width:140px}.account-summary h2{font:700 22px var(--serif)}.account-summary p{color:#8a7264;margin-top:5px;font-size:12px;line-height:1.5}.account-summary .button{min-height:44px;padding-inline:14px;font-size:13px}.account-modal{width:100%;max-width:410px;overflow-x:hidden}.account-modal>p{margin:12px 0;line-height:1.5}.account-modal .account-state{color:var(--teal);font-weight:700}.account-email{overflow-wrap:anywhere}.account-modal form{gap:14px;margin:20px 0;display:grid}.account-modal label{gap:8px;font-size:13px;font-weight:700;display:grid}.account-modal input{border:1px solid var(--line);width:100%;min-width:0;min-height:48px;color:var(--ink);background:#fffdf8;border-radius:14px;padding:10px 12px;font:16px Nunito,sans-serif}.account-modal>.button{width:100%;margin-block:8px}.account-modal .text-button{width:100%;min-height:44px}.account-save{border:1px solid var(--line);background:var(--cream);width:100%;min-height:48px;color:var(--ink);text-align:left;border-radius:14px;margin-block:8px;padding:12px;display:block}.account-confirm{border:1px solid var(--line);border-radius:14px;padding:14px}.account-confirm p{margin-bottom:12px;line-height:1.5}.account-confirm .button{width:100%}.account-login{border-block:1px solid var(--line);gap:12px;min-width:0;margin-block:18px;padding-block:18px;display:grid}.account-login h3{font:700 22px var(--serif)}.account-login p{font-size:13px;line-height:1.5}.account-provider{text-align:center;gap:5px;display:grid}.account-provider small{color:#8a7264;font-size:11px}.account-provider-button{border:1px solid var(--line);cursor:pointer;border-radius:14px;width:100%;min-height:48px;padding:12px;font:600 16px Nunito,sans-serif}.account-provider-apple{color:#fff;background:#181818;border-color:#181818}.account-provider-google{color:#292929;background:#fff}.account-provider-button:disabled{cursor:default;opacity:.5}.account-provider-button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.account-modal.settings-modal{max-width:360px;padding:22px 20px 18px}.account-content{border-top:1px solid var(--line);gap:16px;min-width:0;padding-top:22px;display:grid}.account-content .account-intro{text-align:center;color:var(--ink);margin:4px 0 8px;font-size:14px;line-height:1.65}.account-content .account-login{border:0;gap:12px;margin:0;padding:0}.account-content .account-provider-button{border-radius:28px;justify-content:center;align-items:center;gap:12px;min-height:52px;font-size:15px;display:flex;box-shadow:0 4px 12px #49281e0a}.account-google-mark{color:#4285f4;font:700 23px Arial,sans-serif}.account-content>.button{border-radius:28px;width:100%;min-height:50px;font-size:17px}.account-message{text-align:center;background:#f3ebdf;border-radius:16px;justify-items:center;gap:12px;padding:22px 16px;display:grid}.account-message p{margin:0;font-size:16px;font-weight:700;line-height:1.55}.account-message small{color:#8a7264;font-size:13px;line-height:1.55}.account-symbol{width:42px;height:42px;color:var(--teal);place-items:center;display:grid}.account-symbol svg{width:30px;height:30px}.account-email{color:#8a7264;max-width:100%;font-size:12px}.account-success-mark{background:var(--teal);width:64px;height:64px;color:var(--cream);border-radius:50%;place-items:center;margin:2px 0 8px;display:grid}.account-success-mark svg{fill:none;stroke:currentColor;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;width:40px;height:40px}.account-content .account-state{text-align:center;color:var(--teal);margin:0;font-size:12px;line-height:1.5}.account-content .text-button{min-height:44px;font-size:13px}.account-content .account-delete{color:#967064;text-underline-offset:4px;text-decoration:underline}.account-legal{border-top:1px solid var(--line);text-align:center;color:#8a7264;margin:0;padding-top:12px;font-size:11px}.account-legal a{color:inherit;text-underline-offset:3px;padding:8px 3px;display:inline-block}.account-content form{margin:0}@media (height<=650px){.account-content{gap:10px;padding-top:14px}.account-message{padding:14px}}.screen.collection-screen{height:var(--screen-viewport-height,100dvh);min-height:0;padding-top:calc(var(--screen-header-top) + env(safe-area-inset-top));background:var(--cream);flex-direction:column;gap:24px;display:flex;overflow:hidden}.collection-header h1{white-space:nowrap;outline:none;font-family:NunitoHeading,Nunito,sans-serif;font-size:22px;font-weight:800}.collection-content{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;padding:4px 2px 16px;overflow:auto}.collection-intro{text-align:center;color:#876f62;margin:0 8px 24px;font-size:14px;line-height:1.5}.collection-content>.notice{margin-bottom:16px}.collection-book{box-shadow:var(--shadow);background:#fffdf9;border:1px solid #fff;border-radius:26px;padding:22px 16px}.collection-book+.collection-book{margin-top:24px}.collection-book-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.collection-book-heading h2{font-family:NunitoHeading,Nunito,sans-serif;font-size:20px;font-weight:800}.collection-count{color:#907c6e;white-space:nowrap;align-items:baseline;gap:5px;font-size:13px;display:flex}.collection-count strong{color:var(--teal);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.collection-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:10px;margin:0;padding:0;list-style:none;display:grid}.collection-item{min-width:0;position:relative}.collection-tile{background:0 0;border-radius:14px;flex-direction:column;align-items:center;width:100%;min-width:0;padding:0;line-height:1.35;display:flex}.collection-tile:disabled{opacity:1;cursor:default}.collection-art{aspect-ratio:1;background:#f3ece2;border:1px solid #e7dacb;border-radius:14px;place-items:center;width:100%;transition:transform .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden}.collection-placeholder{color:#bcac99;background:linear-gradient(135deg,#f7f1e8,#ede4d7);place-items:center;width:100%;height:100%;display:grid}.collection-placeholder svg{stroke-width:1.5px;width:23px;height:23px}.collection-art>img{object-fit:cover;width:100%;height:100%}.collection-number{font-variant-numeric:tabular-nums;color:#8b7664;background:#fffaf2ed;border-radius:5px;place-items:center;min-width:17px;height:17px;padding:0 3px;font-size:8px;font-weight:800;display:grid;position:absolute;top:3px;left:3px}.collection-check{background:var(--teal);color:#fff;border:1.5px solid #fffdf9;border-radius:50%;place-items:center;width:17px;height:17px;font-size:10px;font-weight:800;display:grid;position:absolute;bottom:3px;right:3px}[data-collected=true] .collection-art{border-color:#e1d4c2;box-shadow:0 3px 8px #90581915}[data-collected=true] .collection-tile:hover:not(:disabled) .collection-art{transform:translateY(-2px);box-shadow:0 5px 13px #90581928}[data-current=true][data-collected=true] .collection-art{outline:2px solid var(--teal);outline-offset:3px}.collection-image-retry{width:100%;height:100%;color:var(--teal);background:#fffaf2d9;border-radius:14px;place-items:center;padding:0;display:grid;position:absolute;inset:0}.collection-image-retry svg{width:22px;height:22px}@media (width<=350px){.screen.collection-screen{gap:18px}.collection-header h1{font-size:20px}.collection-intro{margin-bottom:18px;font-size:12px}.collection-book{padding:20px 12px}.collection-grid{gap:8px}.collection-book-heading h2{font-size:18px}}@media (width<=310px){.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (orientation:landscape) and (height<=540px){.screen.collection-screen{gap:14px;max-width:760px;padding-top:20px}.collection-content{padding-bottom:0}.collection-intro{margin-bottom:14px}.collection-book{padding:18px}.collection-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.collection-book-heading{margin-bottom:18px}}.level-intro{padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));color:var(--ink);background:var(--cream);place-items:center;display:grid;position:fixed;inset:0}.level-intro-title{text-align:center;width:min(100%,540px)}.level-intro h1{font-family:var(--serif);overflow-wrap:anywhere;outline:none;font-size:clamp(30px,7vw,46px);font-style:italic;font-weight:400;line-height:1.2;animation:.35s ease-out 80ms both level-title-fade}.level-intro-divider{justify-content:center;align-items:center;gap:7px;margin:10px auto 8px;display:flex}.level-intro-divider span{background:currentColor;width:48px;height:2px;animation:.36s ease-out .22s both level-line-enter}.level-intro-divider span:first-child{transform-origin:100%}.level-intro-divider span:last-child{transform-origin:0}.level-intro-divider i{background:currentColor;border-radius:50%;width:5px;height:5px;animation:.24s .18s both level-name-enter}.level-intro p{font-size:clamp(21px,5vw,28px);font-weight:700;line-height:1.3;animation:.38s ease-out .36s both level-name-enter}@keyframes level-name-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes level-title-fade{0%{opacity:0}to{opacity:1}}@keyframes level-line-enter{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.level-intro[data-reduced-motion=true] *{animation:none}.level-intro[data-suspended=true] *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.level-intro *{animation:none!important}}@media (height<=450px){.level-intro h1{font-size:clamp(24px,6vh,30px)}.level-intro p{font-size:19px}}.home-profile-links{justify-content:center;align-items:center;gap:22px;display:flex}.home-actions .home-profile{min-height:44px;color:var(--teal);background:0 0;align-items:center;gap:6px;padding:8px 0;font-weight:700;display:inline-flex}.home-profile svg{width:17px;height:17px}.screen.profile-screen{--profile-accent:#8252b9;--profile-bright:#9861d9;--profile-lilac:#e8d5ff;height:var(--screen-viewport-height,100dvh);min-height:0;padding-top:calc(var(--screen-header-top) + env(safe-area-inset-top));background:var(--cream);outline:none;flex-direction:column;gap:16px;display:flex;overflow:hidden}.profile-header{flex:none}.profile-header>.header-center{font:800 20px/1.2 NunitoHeading,Nunito,sans-serif}.profile-content{overscroll-behavior:contain;touch-action:pan-y pinch-zoom;scrollbar-width:thin;flex:1;width:100%;min-width:0;min-height:0;padding:0 2px 24px;overflow:hidden auto}.profile-avatar-art{flex:none;width:100%;height:100%;display:block}.profile-hero{grid-template-columns:40% minmax(0,1fr);align-items:start;gap:16px;min-height:152px;padding:8px 4px 16px;display:grid;position:relative}.profile-identity{text-align:center;min-width:0}.profile-avatar-button{--avatar-size:clamp(94px,28vw,122px);width:var(--avatar-size);height:var(--avatar-size);background:var(--profile-lilac);border:5px solid #fff;border-radius:50%;min-height:0;margin:0 auto;padding:0;display:block;position:relative;box-shadow:0 7px 24px #805d3520}.profile-avatar-button>.profile-avatar-art{border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.profile-avatar-button .profile-avatar-art>circle:first-child{fill:var(--profile-lilac)}.profile-edit-mark{width:29px;height:29px;color:var(--profile-accent);box-shadow:var(--shadow);background:#fffdfa;border:2px solid #fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-1px;right:-2px}.profile-edit-mark svg{width:14px;height:14px}.profile-hero h1{overflow-wrap:anywhere;margin-top:8px;font:800 clamp(18px,5.3vw,23px)/1.15 NunitoHeading,Nunito,sans-serif}.profile-hero-copy{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:14px 0 0;display:flex}.profile-mental-score{max-width:100%;color:var(--profile-accent);letter-spacing:-4px;font-variant-numeric:tabular-nums;padding-right:16px;font:800 clamp(68px,21.5vw,96px)/.86 NunitoHeading,Nunito,sans-serif;display:block;position:relative}.profile-mental-score:before,.profile-mental-score:after{content:"";background:#dfc9ff;border-radius:4px;position:absolute;right:0}.profile-mental-score:before{width:5px;height:18px;top:10px;transform:rotate(36deg)}.profile-mental-score:after{width:15px;height:5px;top:33px;transform:rotate(-18deg)}.profile-hero-copy>p{color:var(--ink);font:400 clamp(18px,5vw,22px)/1.2 Nunito,sans-serif}.profile-card{background:#fffdfa;border:1px solid #fff;border-radius:24px;box-shadow:0 7px 25px #9058190b}.mental-chart-card>.profile-chart{margin-top:8px}.mental-chart-card{--chart-accent:var(--profile-bright);--chart-point-fill:var(--profile-bright);--chart-point-stroke:#fffdfa;margin-bottom:16px;padding:16px 14px 12px}.profile-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.profile-card-heading h2{font:800 19px/1.2 NunitoHeading,Nunito,sans-serif}.profile-period{flex:none;min-width:0;max-width:100%}.profile-period .mosaic-dropdown{width:168px;font-size:14px}.profile-period .dropdown-trigger{border-color:#eee5f3;gap:6px;min-height:44px;padding-inline:10px;box-shadow:0 3px 12px #8a5baf09}.chart-vertical-guide{stroke:#dcd1e6;stroke-width:.7px;stroke-dasharray:4 4}.chart-axis{stroke:#d9d2d6;stroke-width:.8px}.profile-chart-latest{transform-box:fill-box;transform-origin:bottom;animation:.3s ease-out both profile-chart-dot}.profile-chart .profile-chart-latest text{fill:#fff;font-size:11px}.profile-chart[data-variant=profile] .chart-guide{opacity:.35}.profile-chart{width:100%;max-width:100%;height:auto;margin-top:17px;display:block}.profile-chart text{fill:#907a6d;font:10px Nunito,sans-serif}.profile-chart[data-variant=profile] text:not(.profile-chart-latest text){fill:#806b60;font-size:12px}.chart-guide{stroke:#e6dfd3;stroke-width:.8px;stroke-dasharray:1.5 3}.profile-chart-reveal{transform-box:fill-box;transform-origin:0;animation:1.2s linear .18s both profile-chart-draw}.profile-chart-area{animation:1s ease-out .18s both profile-chart-fill}.profile-chart-point{transform-box:fill-box;transform-origin:50%;animation:.3s ease-out both profile-chart-dot}@keyframes profile-chart-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes profile-chart-fill{0%{opacity:0}to{opacity:1}}@keyframes profile-chart-dot{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.profile-sample-tag{color:#7445a3;letter-spacing:.6px;text-transform:uppercase;background:#f0e7fc;border-radius:8px;flex:none;align-items:center;width:fit-content;padding:3px 7px;font:700 9px/1.2 Nunito,sans-serif;display:inline-flex}.profile-sample-note{color:#927d6e;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;font-size:12px;line-height:1.5;display:flex}.profile-rank-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.profile-rank-link{text-align:left;align-items:center;gap:8px;min-width:0;padding:14px 12px;display:flex;position:relative}.profile-rank-icon{background:#faf2e8;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.profile-rank-icon .profile-symbol{width:32px;height:32px}.profile-rank-link>span:nth-child(2){flex-direction:column;align-items:flex-start;gap:3px;min-width:0;display:flex}.profile-rank-title{align-items:center;min-height:2.6em;font:400 13px/1.3 Nunito,sans-serif;display:flex}.profile-rank-link strong{color:var(--profile-accent);letter-spacing:-1px;font:800 34px/1 NunitoHeading,Nunito,sans-serif}.profile-rank-arrow{color:#b397cb;width:13px;height:13px;position:absolute;bottom:17px;right:8px}.profile-rank-link .profile-sample-tag{padding:2px 5px;font-size:10px}.profile-stats{padding:0 13px}.profile-stat{align-items:center;gap:12px;min-height:64px;padding:12px 0;display:flex}.profile-stat+.profile-stat{border-top:1px solid #f1e9e3}.profile-stat-icon{flex:none;place-items:center;width:35px;height:35px;display:grid}.profile-symbol{width:100%;height:100%;display:block}.profile-stat>div{flex:1;min-width:0}.profile-stat h2{font:400 15px/1.3 Nunito,sans-serif}.profile-stat p{color:#927b6d;margin-top:4px;font-size:10px;line-height:1.4}.profile-stat>strong{font-variant-numeric:tabular-nums;flex:none;font:800 22px/1.1 NunitoHeading,Nunito,sans-serif}.profile-screen .account-summary h2{font:700 18px Nunito,sans-serif}.profile-local-note{text-align:center;color:#947e6e;margin:18px 12px 0;font-size:11px;line-height:1.6}.profile-name-field{flex-direction:column;gap:8px;min-width:0;font-size:13px;font-weight:700;display:flex}.profile-name-field input{background:var(--cream);width:100%;min-width:0;min-height:44px;color:var(--ink);border:1px solid #dbcdbb;border-radius:12px;padding:12px;font-size:16px}.profile-edit-modal{overflow-x:hidden}.profile-edit-modal fieldset{border:0;min-width:0;margin:20px 0 13px;padding:0}.profile-edit-modal legend{margin-bottom:12px;font-size:13px;font-weight:700}.profile-avatar-picker{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:6px;display:grid}.profile-avatar-picker button{aspect-ratio:1;background:0 0;border:2px solid #0000;border-radius:50%;padding:3px}.profile-avatar-picker button[aria-pressed=true]{border-color:var(--teal);background:#d8e9e5}.profile-edit-modal .button{width:100%;margin-top:18px}.profile-edit-modal .notice{margin-top:12px}.profile-header h1{font:inherit}.rank-intro{text-align:center;padding:4px 8px 0}.rank-intro-icon{background:#fbf0e2;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto 12px;display:grid;box-shadow:0 5px 16px #a5742910}.rank-intro-icon .profile-symbol{width:43px;height:43px}.rank-intro>p:not(.profile-sample-note){color:#826f69;margin:0 0 8px;font-size:13px;line-height:1.5}.rank-podium{grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:12px;padding:22px 10px 23px;display:grid}.podium-place{flex-direction:column;align-items:center;min-width:0;display:flex}.podium-place[data-rank="1"]{padding-bottom:12px}.podium-medal{color:#fff;z-index:1;background:#bca5d7;border:2px solid #fff;border-radius:50%;flex:none;place-items:center;width:29px;height:29px;margin-bottom:-7px;font:800 12px/1 NunitoHeading,Nunito,sans-serif;display:grid;box-shadow:0 2px 8px #8252b920}.podium-avatar{background:#eee1fc;border:3px solid #fff;border-radius:50%;width:74px;height:74px;padding:3px;box-shadow:0 5px 18px #8252b915}.podium-avatar .profile-avatar-art>circle:first-child{fill:#eee1fc}.podium-place[data-rank="1"] .podium-avatar{width:94px;height:94px;box-shadow:0 0 0 3px #e8d6fa,0 7px 20px #8252b91b}.podium-place[data-rank="1"] .podium-medal{background:var(--profile-accent);width:35px;height:35px;font-size:14px}.podium-place[data-rank="2"] .podium-medal{background:#a397b1}.podium-place[data-rank="3"] .podium-medal{background:#c69a76}.podium-name{text-overflow:ellipsis;white-space:nowrap;text-align:center;width:100%;margin-top:9px;font:700 14px/1.3 Nunito,sans-serif;overflow:hidden}.podium-place>strong{color:var(--profile-accent);font-variant-numeric:tabular-nums;margin-top:2px;font:800 22px/1.2 NunitoHeading,Nunito,sans-serif}.rank-list-card{padding:0 10px 6px;overflow:hidden}.rank-list-heading{color:#8d7c92;justify-content:space-between;align-items:center;gap:12px;padding:16px 10px 12px;font-size:11px;display:flex}.rank-list-heading>span:last-child{text-align:right}.rank-list-heading small{color:#9d8ba7;margin-top:3px;font-size:9px;display:block}.rank-list{margin:0;padding:0;list-style:none}.rank-row{border-top:1px solid #f1e9ee;grid-template-columns:25px 38px minmax(0,1fr) max-content;align-items:center;gap:10px;min-height:63px;padding:10px 8px;display:grid}.rank-row[data-self=true]{box-shadow:inset 3px 0 var(--profile-accent);background:#f0e6fb;border-top-color:#0000;border-radius:13px}.rank-position{color:#9c85ad;text-align:center;font-variant-numeric:tabular-nums;font:800 14px/1 NunitoHeading,Nunito,sans-serif}.rank-row[data-self=true] .rank-position,.rank-row[data-self=true]>strong{color:var(--profile-accent)}.rank-row .profile-avatar-art{border:2px solid #fffdfa;border-radius:50%;width:38px;height:38px}.rank-row .profile-avatar-art>circle:first-child{fill:#f0e5fa}.rank-player-name{overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.3}.rank-player-name small{color:var(--profile-accent);margin-top:2px;font-size:10px;font-weight:700;display:block}.rank-row>strong{font-variant-numeric:tabular-nums;font:800 19px/1 NunitoHeading,Nunito,sans-serif}.rank-gap{text-align:center;color:#b59ac9;letter-spacing:6px;padding:5px 0;font-size:18px}.rank-self-note{align-items:center;gap:12px;margin-top:14px;padding:16px;display:flex}.rank-self-note>.profile-avatar-art{border:3px solid #fff;border-radius:50%;flex:none;width:47px;height:47px}.rank-self-note>.profile-avatar-art>circle:first-child{fill:var(--profile-lilac)}.rank-self-note>div{flex:1;min-width:0}.rank-self-note>div>span:first-child{color:#90799e;margin-bottom:3px;font-size:11px;display:block}.rank-self-name{overflow-wrap:anywhere;margin-bottom:5px;font:700 15px/1.25 Nunito,sans-serif;display:block}.rank-self-position{color:var(--profile-accent);letter-spacing:-1px;flex:none;font:800 38px/1 NunitoHeading,Nunito,sans-serif}.profile-hero,.profile-content>.profile-card,.profile-rank-links,.rank-intro,.rank-podium{animation:.42s ease-out both profile-enter}@keyframes profile-enter{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}.profile-screen[data-reduced-motion=true] *{animation:none!important}@media (prefers-reduced-motion:reduce){.profile-screen *{animation:none!important}}@media (width<=350px){.profile-hero{gap:12px;min-height:144px;padding-inline:0}.profile-hero h1{font-size:18px}.profile-mental-score{letter-spacing:-3px;padding-right:13px;font-size:70px}.profile-hero-copy>p{font-size:18px}.profile-card-heading h2{font-size:19px}.profile-rank-links{gap:9px}.profile-rank-link{gap:6px;padding:13px 9px}.profile-rank-title{font-size:12px}.profile-rank-icon{width:33px;height:33px}.profile-rank-icon .profile-symbol{width:28px;height:28px}.profile-rank-link strong{font-size:30px}.profile-stat{gap:9px}.profile-stat h2{font-size:14px}.profile-stat>strong{font-size:19px}.profile-stat-icon{width:30px;height:30px}.rank-podium{gap:8px;padding-inline:4px}.podium-avatar{width:66px;height:66px}.podium-place[data-rank="1"] .podium-avatar{width:86px;height:86px}.rank-row{grid-template-columns:22px 35px minmax(0,1fr) max-content;gap:7px;padding-inline:6px}.rank-row .profile-avatar-art{width:35px;height:35px}.rank-self-note{gap:9px;padding:13px}.rank-self-position{font-size:33px}}@media (height<=600px){.screen.profile-screen{gap:12px;padding-top:20px}}.profile-mental-score[data-empty=true]{color:#ae98c1;letter-spacing:0;font-size:64px}.profile-period .dropdown-value{white-space:nowrap}@media (width<=350px){.profile-card-heading h2{font-size:18px}.profile-period .mosaic-dropdown{width:164px}}.paper-piece{width:var(--paper-width);height:var(--paper-height);background:var(--paper-color);opacity:0;backface-visibility:visible;border-radius:1px;position:absolute;top:0;left:0}@media (prefers-reduced-motion:reduce){.paper-piece{display:none}}.daily-results-modal{width:100%;max-width:410px;padding:24px 18px 20px;overflow-x:hidden}.daily-results-modal>h2{margin-bottom:4px;font-size:clamp(30px,9vw,39px);font-style:normal;font-weight:700}.daily-results-subtitle{text-align:center;color:#8a7264;margin-bottom:18px;font-size:13px;line-height:1.5}.daily-result-rows{gap:7px;margin:0;display:grid}.daily-result-row{background:#fffdf8;border:1px solid #f4ebdf;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:7px 12px;display:flex}.daily-result-row dt{align-items:center;gap:10px;min-width:0;font-size:13px;font-weight:700;display:flex}.daily-result-row dt small{color:#98743a;font-size:9px;font-weight:400;display:block}.daily-result-icon{width:32px;height:32px;color:var(--teal);background:#eef3ed;border-radius:10px;flex:none;place-items:center;display:grid}.daily-result-icon svg{width:22px;height:22px}.daily-result-row:nth-child(odd) .daily-result-icon{color:var(--coral);background:#fff0e8}.daily-result-row dd{font:700 22px var(--serif);font-variant-numeric:tabular-nums;flex:none;margin:0}.daily-result-age{text-align:center;border-top:1px solid var(--line);margin-top:19px;padding-top:12px;position:relative;overflow:hidden}.daily-result-age>span{color:#ecb34e}.daily-result-age h3{font:700 22px var(--serif);margin:5px 0 0}.daily-age-number{font:700 76px/1.05 var(--serif);letter-spacing:-3px;display:block}.daily-results-sample{color:#96723b;text-align:center;font-size:11px;line-height:1.5}.daily-rating-note{color:#876f62;margin-top:7px;font-size:12px;line-height:1.5}.daily-rating-reference{color:#927d6e;margin-top:6px;font-size:10px;line-height:1.5}.daily-result-age .text-button{align-items:center;gap:7px;min-height:44px;font-size:13px;display:inline-flex}.daily-result-age .text-button svg{width:17px;height:17px}.daily-results-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.daily-results-actions-single{grid-template-columns:minmax(0,1fr)}.daily-results-actions .button{min-width:0;font:700 18px var(--serif);border-radius:26px;padding-inline:9px}.daily-history-period{color:#8a7264;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.daily-history-period .mosaic-dropdown{flex:none}.daily-history-period:has([data-dropdown-open=true]){z-index:15;position:relative}.daily-history-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:19px 0 22px;display:grid}.daily-history-stats>div{text-align:center;border:1px solid var(--line);background:#fffdf8;border-radius:14px;padding:14px 4px}.daily-history-stats>div>span{color:#8a7264;font-size:11px;display:block}.daily-history-stats strong{font:700 27px var(--serif);color:var(--teal);margin-top:5px;display:block}.daily-count-value{font:inherit;color:inherit;font-variant-numeric:tabular-nums;display:inline-block}.daily-age-focus{position:relative}.daily-result-presentation .daily-result-row{animation:.38s ease-out both daily-stat-arrive}.daily-result-presentation[data-view=results] .daily-result-age{animation:.38s ease-out 1.6s both daily-stat-arrive}.daily-result-presentation .daily-age-focus{animation:.38s cubic-bezier(.2,.8,.25,1) 1.8s both daily-age-arrive}.daily-result-presentation .daily-age-number{animation:.62s cubic-bezier(.2,.8,.25,1) 2.45s both daily-age-pop}.daily-result-presentation .daily-results-actions{animation:.35s ease-out 2.85s both daily-stat-arrive}.daily-result-presentation[data-view=history] .daily-results-subtitle,.daily-result-presentation[data-view=history] .daily-history-period{animation:.35s ease-out both daily-stat-arrive}.daily-result-presentation[data-view=history] .profile-chart{animation:.35s ease-out .12s both daily-stat-arrive}.daily-result-presentation[data-view=history] .daily-history-stats>div{animation:.38s ease-out both daily-stat-arrive}.daily-result-presentation[data-view=history] .daily-results-actions{animation-delay:2.25s}.daily-result-presentation[data-paused=true] *{animation-play-state:paused!important}.daily-result-presentation[data-reduced-motion=true] *{animation:none!important}.daily-age-emitter{pointer-events:none;position:absolute;inset:0}.daily-age-burst{z-index:200;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.daily-age-burst i{top:var(--age-origin-y);left:var(--age-origin-x)}@keyframes daily-stat-arrive{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes daily-age-arrive{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes daily-age-pop{0%,to{transform:scale(1)}35%{transform:scale(1.15)}65%{transform:scale(.97)}}@media (prefers-reduced-motion:reduce){.daily-result-presentation *{animation:none!important}.daily-age-burst{display:none}}@media (height<=700px){.daily-results-modal{padding-top:20px}.daily-result-row{min-height:43px;padding-block:4px}.daily-result-age{margin-top:12px}.daily-age-number{font-size:60px}}@font-face{font-family:Nunito;src:url(../assets/NunitoSans-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Nunito;src:url(../assets/NunitoSans-Bold.ttf)format("truetype");font-weight:700;font-display:swap}:root{color:#48271e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--cream:#fffaf2;--ink:#48271e;--coral:#ff5b50;--teal:#006878;--line:#efe4d5;--shadow:0 3px 13px #90581918;--serif:Georgia,"Times New Roman",serif;background:#fffaf2;font-family:Nunito,Trebuchet MS,sans-serif}*{box-sizing:border-box}body{min-width:280px;margin:0}button,input,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.53}button:focus-visible,summary:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}button svg{flex:none}p,h1,h2{margin:0}img{max-width:100%;display:block}#root{min-height:100svh}a{color:var(--teal)}.screen{width:100%;max-width:480px;min-height:100svh;padding:calc(23px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:radial-gradient(ellipse at 50% 35%,#fffefb 30%,var(--cream) 90%);margin:0 auto;position:relative}.setting-hint{color:#9a8170;max-width:80px;font-size:9px;font-weight:400;line-height:1.3;display:block}.range-row input:disabled{opacity:.35;cursor:not-allowed}.round-button{width:44px;height:44px;box-shadow:var(--shadow);background:#fffefa;border:1px solid #fff8ed;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:box-shadow .2s,background .2s;display:inline-flex}.round-button:hover{box-shadow:0 4px 15px #90581930}.round-button svg{width:23px;height:23px}.round-button.is-active{background:var(--teal);color:#fff}.button{min-height:48px;box-shadow:var(--shadow);border-radius:13px;justify-content:center;align-items:center;gap:9px;padding:11px 22px;font-weight:700;line-height:1.3;transition:filter .2s;display:inline-flex}.button:hover:not(:disabled){filter:brightness(1.05)}.button svg{width:20px;height:20px}.button-brown{color:#fff;background:linear-gradient(110deg,#63341f,#48271e)}.button-coral{color:#fff;background:linear-gradient(105deg,#ff6557,#ff4e45)}.button-teal{color:#fff;background:linear-gradient(100deg,#006372,#007b84);border-radius:28px}.button-light{background:#faf1e6;border:1px solid #eddfcc}.quiet-note{color:#876f62;font-size:12px;line-height:1.5}.notice{background:#fff0dd;border-radius:10px;padding:10px;font-size:12px;line-height:1.5}.text-button{color:var(--teal);background:0 0;padding:12px 0;font-weight:700}.home-screen{flex-direction:column;justify-content:space-between;align-items:center;gap:26px;display:flex}.home-nav{justify-content:space-between;align-items:center;width:100%;display:flex}.tiny-brand{color:#998371;align-items:center;gap:6px;font-size:11px;display:flex}.tiny-brand svg{width:18px;height:22px;color:var(--teal)}.home-identity{text-align:center;width:100%;margin-top:28px}.home-emblem{object-fit:contain;filter:drop-shadow(0 4px 5px #9d6b3020);width:158px;height:158px;margin:0 auto 15px}.home-identity h1{font-family:var(--serif);letter-spacing:-3px;font-size:clamp(45px,12vw,61px);font-weight:700;line-height:1.12}.home-actions{text-align:center;flex-direction:column;gap:10px;width:min(100%,260px);margin-top:40px;display:flex}.home-actions .button{width:100%}.home-footer{letter-spacing:1px;color:#a08872;padding:5px;font-size:10px}.game-screen{flex-direction:column;gap:0;display:flex}.game-header{grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;gap:12px;margin-bottom:23px;display:grid}.level-heading{text-align:center;min-width:0;padding-top:6px}.level-heading h1{overflow-wrap:anywhere;font-family:Nunito,Trebuchet MS,sans-serif;font-size:23px;font-weight:700;line-height:1.25}.timer{font-variant-numeric:tabular-nums;margin-top:16px;font-size:23px;font-weight:700;line-height:1}.board-wrap{width:100%;margin:auto 0 0;position:relative}.board-slot{aspect-ratio:1;touch-action:none;isolation:isolate;border-radius:7px;width:100%;position:relative;overflow:hidden}.board-slot>div,.board-slot canvas{max-width:100%}.board-slot canvas{touch-action:none;width:100%;height:100%;display:block}.game-tools{justify-content:center;align-items:center;gap:35px;width:100%;margin-top:30px;display:flex}.game-tools .round-button{width:58px;height:58px}.game-tools .round-button svg{width:26px;height:26px}.movement-readout{flex-direction:column;align-items:center;gap:2px;display:flex}.movement-readout strong{font-variant-numeric:tabular-nums;font-size:21px;line-height:1.2}.movement-readout span{color:#907c6e;font-size:10px}.gesture-hint{color:#9a8270;text-align:center;margin:15px 0 8px;font-size:11px;line-height:1.5}.puzzle-options{text-align:center;color:#8b7566;width:min(100%,300px);margin:20px auto 0;font-size:12px}.puzzle-options summary{cursor:pointer;padding:10px;list-style-position:inside}.puzzle-options[open]{padding-bottom:8px}.puzzle-options fieldset{border:0;margin:0;padding:12px 0 0}.puzzle-options legend{width:100%;padding:6px;font-size:11px}.size-options{justify-content:center;gap:10px;display:flex}.size-options button{background:#f3ebdf;border:1px solid #0000;border-radius:8px;padding:8px 13px;font-size:12px}.size-options button[aria-pressed=true]{border-color:var(--teal);color:var(--teal);background:#e8f0e9}.puzzle-options>.quiet-note{font-size:10px;display:block}.is-solved .level-heading h1{font-family:var(--serif);letter-spacing:-2px;padding-top:1px;font-size:38px}.is-solved .board-wrap{border-radius:7px;margin-top:auto;box-shadow:0 0 25px #ffcc7440}.victory-panel{text-align:center;margin-bottom:auto;padding:25px 5px 0;position:relative}.victory-panel h2{font-family:var(--serif);letter-spacing:-.8px;font-size:25px;line-height:1.2}.victory-panel>p{margin-top:6px;font-size:13px}.move-count{color:#9a8270;margin-top:5px;font-size:11px;display:block}.victory-actions{justify-content:center;align-items:center;gap:13px;margin-top:21px;display:flex}.victory-actions>.button{flex:1;max-width:290px}.share-button{color:var(--coral);width:49px;height:49px}.modal-backdrop{z-index:100;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#201a1666;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:linear-gradient(140deg,#fffdf8,#fcf7ef);border:1px solid #fff9ef;border-radius:19px;outline:0;width:100%;max-width:374px;max-height:calc(100svh - 36px);padding:22px 20px 24px;animation:.2s ease-out modal-in;position:relative;overflow-y:auto;box-shadow:0 12px 45px #21130735}.modal>h2{font-family:var(--serif);text-align:center;margin:0 28px 15px;font-size:34px;font-style:italic;font-weight:400;line-height:1.3}.modal-close{width:34px;height:34px;position:absolute;top:12px;right:12px}.modal-close svg{width:17px;height:17px}.settings-list{border-top:1px solid var(--line)}.setting-row{align-items:center;gap:11px;min-height:54px;font-size:12px;font-weight:700;display:flex}.setting-row+.setting-row{border-top:1px solid #f0e8db66}.setting-icon{background:#f1e8dc;border-radius:50%;flex:none;justify-content:center;align-items:center;width:33px;height:33px;display:flex}.setting-icon svg{width:20px;height:20px}.range-row input{width:100px;min-width:50px;accent-color:var(--coral);cursor:pointer;flex:1;height:20px;margin-left:auto}.range-row.music>span:nth-child(2),.range-row.effects>span:nth-child(2){min-width:43px}.range-row.effects input{accent-color:#238ec5}.switch{background:#cfbfb1;border-radius:20px;flex:none;width:45px;height:26px;margin-left:auto;padding:3px;transition:background .2s}.switch span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;display:block;box-shadow:0 1px 3px #0002}.switch.is-on{background:var(--teal)}.switch.is-on span{transform:translate(19px)}.setting-value{color:#9a8170;margin-left:auto;font-size:11px;font-weight:400}.language-row{margin-top:7px;padding-top:7px;border-top:1px solid var(--line)!important}.exit-modal{text-align:center;max-width:350px;padding-top:77px}.exit-modal>h2{margin-bottom:8px;font-size:33px}.exit-symbol{background:#f2e5d3;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:absolute;top:20px;left:calc(50% - 25px)}.exit-modal>p{color:#8c7565;font-size:12px;line-height:1.5}.exit-modal>.exit-question{color:var(--ink);margin-bottom:5px;font-size:15px;font-weight:700}.modal-actions{gap:10px;margin-top:22px;display:flex}.modal-actions>.button{border-radius:25px;flex:1;min-height:43px;padding-inline:10px;font-size:14px}.help-modal>.button{width:100%;margin-top:15px}.help-step{border-top:1px solid var(--line);align-items:center;gap:14px;padding:13px 0;font-size:14px;line-height:1.65;display:flex}.help-step>span,.help-step>svg{background:#f1e8dc;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:flex}.help-step>svg{padding:5px}.help-step p{flex:1}.toast{left:50%;bottom:max(25px,env(safe-area-inset-bottom));opacity:0;pointer-events:none;background:var(--ink);color:var(--cream);text-align:center;z-index:150;width:max-content;max-width:calc(100% - 30px);box-shadow:var(--shadow);border-radius:25px;padding:13px 20px;font-size:13px;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,12px)}.toast.is-visible{opacity:1;transform:translate(-50%)}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width>=600px){.screen{padding-inline:24px;box-shadow:0 0 60px #4528180c}.game-screen{padding-top:calc(32px + env(safe-area-inset-top))}.home-identity{margin-top:55px}.home-emblem{width:180px;height:180px}.home-actions{margin-top:65px}}@media (height<=700px){.screen{padding-top:calc(15px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom))}.home-identity{margin-top:12px}.home-emblem{width:130px;height:130px}.home-actions{margin-top:12px}.home-footer{display:none}.game-header{margin-bottom:18px}.timer{margin-top:10px;font-size:20px}.game-tools{gap:30px;margin-top:18px}.game-tools .round-button{width:49px;height:49px}.puzzle-options{margin-top:6px}.gesture-hint{margin-top:12px}.is-solved .game-header{margin-bottom:22px}.victory-panel{padding-top:20px}.victory-actions{margin-top:15px}}@media (width<=350px){.screen{padding-inline:12px}.home-identity h1{font-size:48px}.game-header{gap:7px}.level-heading h1{font-size:20px}.modal{padding-inline:15px}.setting-row{gap:8px;font-size:11px}.range-row input{width:80px}.victory-panel h2{font-size:23px}}@media (orientation:landscape) and (height<=540px){.game-screen{grid-template-columns:minmax(0,1fr) minmax(150px,.7fr);align-content:center;column-gap:25px;max-width:760px;min-height:100svh;display:grid}.game-header{grid-area:1/2;margin:0 0 20px}.board-wrap{grid-area:1/1/span 6;width:min(100%,100svh - 36px);margin:auto}.game-tools{grid-area:2/2;gap:15px;margin-top:0}.gesture-hint{grid-area:3/2}.puzzle-options{grid-area:4/2;margin-top:0}.victory-panel{grid-area:2/2/span 4}.home-screen{grid-template-columns:1fr 1fr;gap:10px 25px;max-width:760px;min-height:100svh;display:grid}.home-nav{grid-column:1/span 2}.home-identity{margin:0}.home-identity h1{font-size:42px}.home-emblem{width:100px;height:100px;margin-bottom:6px}.home-actions{justify-self:center;margin:0}.home-footer{display:none}.modal{max-height:calc(100svh - 24px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}[data-reduced-motion=true] *{transition:none!important;animation:none!important}body:has([data-reduced-motion=true]) .modal{transition:none!important;animation:none!important}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.loading-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.loading-screen img{width:145px}.loading-screen h1{letter-spacing:-2px;font:700 48px Georgia,serif}.loading-screen p{max-width:280px;font-size:14px}.loading-screen .button{margin-top:15px}.game-screen:not(.is-solved) .board-wrap{margin:24px 0 0}.board-loading{color:#947866;place-items:center;height:100%;font-size:13px;display:grid}.board-error{z-index:8;text-align:center;color:var(--ink);background:#fffaf2f5;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.board-error .button{font-size:13px}.is-solved .board-slot{overflow:visible}@media (orientation:landscape) and (height<=540px){.game-screen:not(.is-solved) .board-wrap{margin:auto}}.home-screen{padding-top:calc(clamp(28px,7svh,68px) + env(safe-area-inset-top));background:var(--cream);justify-content:flex-start;gap:0}.home-nav{flex:none;width:96%}.home-calendar:disabled{opacity:1;cursor:default}.home-calendar img{object-fit:contain;width:32px;height:32px}.home-settings{width:25px;height:25px}.home-currency{color:#a27628;background:#fffefa;border-radius:30px;justify-content:center;align-items:center;gap:9px;min-width:112px;height:43px;padding:6px 19px;font-size:23px;font-weight:700;display:flex;box-shadow:0 3px 18px #b8863220}.home-currency img{object-fit:contain;width:28px;height:30px}.home-identity{margin-top:clamp(36px,11svh,100px)}.home-emblem{filter:drop-shadow(0 5px 7px #9d6b3026);width:clamp(156px,43vw,216px);height:clamp(156px,43vw,216px);margin-bottom:12px}.home-identity h1{letter-spacing:-3px;font-size:clamp(50px,13vw,68px);line-height:1.06}.home-identity p{margin-top:8px;font-size:14px}.home-actions{gap:11px;width:70%;max-width:286px;margin-top:clamp(30px,9svh,80px);padding-bottom:24px}.home-actions .button{border-radius:10px;min-height:49px;padding:11px 12px;font-size:18px;box-shadow:0 5px 16px #8e53231c}.home-actions .button-coral:disabled{opacity:1;cursor:not-allowed}.home-lock{filter:brightness(0)invert();width:17px;height:19px}@media (height<=700px){.home-screen{padding-top:calc(28px + env(safe-area-inset-top))}.home-identity{margin-top:35px}.home-emblem{width:150px;height:150px}.home-actions{margin-top:38px}.home-identity h1{font-size:52px}}@media (orientation:landscape) and (height<=540px){.home-screen{align-content:center;gap:18px 25px;padding-top:20px;display:grid}.home-nav{width:100%}.home-identity{margin:0}.home-emblem{width:108px;height:108px}.home-identity h1{font-size:43px}.home-identity p{font-size:12px}.home-actions{width:100%;margin:0;padding:0}.home-actions .button{font-size:16px}}.game-tools .tool-art{object-fit:contain;pointer-events:none;width:40px;height:40px}.game-tools .preview-tool.is-active{background:var(--cream);box-shadow:0 0 0 2px var(--teal),var(--shadow)}.game-tools .tool-unavailable{opacity:1;cursor:default}.tool-unavailable .tool-art{opacity:1}.locked-tool{flex-direction:column;gap:3px}.tool-lock{background:var(--ink);opacity:.55;width:19px;height:21px;display:block;-webkit-mask:url(../assets/home-lock.svg) 50%/contain no-repeat;mask:url(../assets/home-lock.svg) 50%/contain no-repeat}.tool-soon{color:#907c6e;font-size:7px;font-weight:700;line-height:1.2}.game-secondary{justify-content:center;align-items:center;gap:20px;margin-top:15px;display:flex}.game-secondary .movement-readout{color:#907c6e;flex-direction:row;gap:5px}.game-secondary .movement-readout strong{font-size:13px;font-weight:700}.game-secondary .movement-readout span{font-size:11px}.game-help{color:var(--teal);background:0 0;min-height:36px;padding:8px 4px;font-size:12px}@media (height<=700px){.game-tools .tool-art{width:34px;height:34px}.game-secondary{margin-top:4px}}@media (orientation:landscape) and (height<=540px){.game-secondary{grid-area:3/2;margin-top:0}.game-screen .gesture-hint{grid-row:4}.game-screen .puzzle-options{grid-row:5}}.game-tools>.round-button{position:relative}.tool-count{border:2px solid var(--cream);background:var(--teal);color:#fffaf2;pointer-events:none;border-radius:50%;place-items:center;min-width:25px;height:25px;padding:0 4px;font-size:15px;font-weight:700;line-height:1;display:grid;position:absolute;top:-5px;right:-2px}.tool-unlock-level{color:var(--ink);pointer-events:none;font-size:15px;font-weight:700;line-height:18px}.settings-modal{max-width:360px;padding:22px 20px 15px}.settings-modal>h2{margin-bottom:12px}.settings-modal .setting-row+.setting-row{border-top:0}.settings-modal .setting-row{min-height:51px}.settings-modal .setting-haptics,.settings-modal .language-row,.settings-modal .setting-document{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)!important}.setting-document{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:default;background:0 0;opacity:1!important}.setting-document>span:nth-child(2){font-size:12px;font-weight:700}.setting-document .setting-value{white-space:nowrap;font-size:9px}.settings-version{color:#9a8170;text-align:center;margin-top:13px;font-size:10px}.exit-modal{max-width:340px;padding-top:88px}.exit-symbol{background:#f1e7d9;width:58px;height:58px;top:20px;left:calc(50% - 29px)}.exit-symbol svg{width:29px;height:29px;rotate:none}.exit-sparks{width:12px;height:24px;position:absolute;top:17px}.exit-sparks:before,.exit-sparks:after{content:"";background:var(--coral);border-radius:3px;width:9px;height:3px;position:absolute}.exit-sparks:before{top:4px;rotate:28deg}.exit-sparks:after{bottom:4px;rotate:-28deg}.exit-sparks-left{left:-20px}.exit-sparks-right{right:-20px;rotate:180deg}.level-heading h1{height:29px;line-height:29px}.timer-completed{visibility:hidden}.is-solved .level-heading h1{height:29px;padding-top:0;line-height:29px}.is-solved .game-header{margin-bottom:23px}.game-screen.is-solved .board-wrap{margin:24px 0 0}.is-solved .victory-panel{margin:0;padding-top:25px}@media (height<=700px){.is-solved .game-header{margin-bottom:18px}.settings-modal{padding-top:17px;padding-bottom:12px}.settings-modal .setting-row{min-height:45px}}@media (orientation:landscape) and (height<=540px){.game-screen.is-solved .board-wrap{margin:auto}.is-solved .game-header{margin-bottom:20px}.is-solved .victory-panel{margin:auto;padding-top:0}}@font-face{font-family:NunitoHeading;src:url(../assets/Nunito-ExtraBold.ttf)format("truetype");font-weight:800;font-display:swap}html,body,#root{background:#fffaf2}html.is-app-screen,html.is-app-screen body{overscroll-behavior:none;width:100%;height:100%;overflow:hidden}html.is-app-screen body{position:fixed;inset:0}html.is-app-screen #root{height:var(--screen-viewport-height,100dvh);min-height:0;overflow:hidden}.game-screen{--game-top:var(--screen-header-top);--game-bottom:20px;--game-header:128px;--game-footer:168px;--board-side:min(calc(100vw - max(16px,env(safe-area-inset-left)) - max(16px,env(safe-area-inset-right))),448px,calc(var(--screen-viewport-height,100dvh) - var(--game-top) - var(--game-bottom) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--game-header) - var(--game-footer)));box-shadow:none;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));grid-template-columns:minmax(0,1fr);grid-template-rows:44px minmax(84px,.35fr) var(--board-side) minmax(var(--game-footer),1fr);height:var(--screen-viewport-height,100dvh);min-height:0;padding-top:calc(var(--game-top) + env(safe-area-inset-top));padding-bottom:calc(var(--game-bottom) + env(safe-area-inset-bottom));background:#fffaf2;gap:0;display:grid}.game-screen .game-header{grid-area:1/1;align-self:start;height:44px;margin:0}.game-screen.is-solved .board-wrap,.game-screen:not(.is-solved) .board-wrap{width:var(--board-side);grid-area:3/1;place-self:center;margin:0}.game-footer{grid-area:4/1;align-self:stretch;padding-top:50px}.game-footer .game-tools{grid-template-columns:repeat(3,minmax(0,1fr));place-items:center;gap:0;width:100%;margin:0;display:grid}.game-footer .game-tools:has(>:only-child){grid-template-columns:1fr}.game-footer .game-tools .round-button{width:76px;height:76px;box-shadow:0 4px 18px #90581916}.game-footer .tool-art{width:44px;height:44px}.game-footer .locked-tool{position:relative}.tool-grid{color:#967d6c;grid-template-columns:repeat(2,1fr);gap:3px;width:30px;height:30px;display:grid}.tool-grid i{background:currentColor;border-radius:3px}.game-tools .tool-lock-badge{object-fit:contain;width:23px;height:23px;position:absolute;top:-5px;right:-2px}.game-footer .game-help{right:max(16px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));color:#927b6b;width:44px;height:44px;min-height:44px;box-shadow:none;background:0 0;border:0;padding:0;font:700 23px Georgia,serif;position:absolute}.game-footer .game-help>span{border:1px solid var(--line);background:#fffefa80;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.game-screen.is-solved .victory-panel{grid-area:4/1;align-self:start;margin:0;padding:24px 0 0}.help-time-note{text-align:center;color:#947d6c;margin:12px 0 0;font-size:12px;line-height:1.5}@media (height<=700px){.game-screen{--game-top:var(--screen-header-top);--game-bottom:12px;--game-header:128px;--game-footer:156px}.game-footer{padding-top:38px}.game-footer .game-tools .round-button{width:68px;height:68px}.game-footer .tool-art{width:40px;height:40px}.game-screen.is-solved .victory-panel{padding-top:18px}.game-screen.is-solved .victory-panel h2{font-size:22px}.game-screen.is-solved .victory-actions{margin-top:10px}.game-screen.is-solved .victory-panel>p{margin-top:3px}.game-screen.is-solved .move-count{margin-top:2px}}@media (orientation:landscape) and (height<=540px){.game-screen{--game-top:var(--screen-header-top);grid-template-rows:44px minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);gap:64px 24px;max-width:760px}.game-screen .game-header{grid-area:1/1/auto/-1}.game-screen.is-solved .board-wrap,.game-screen:not(.is-solved) .board-wrap{width:min(100%,calc(var(--screen-viewport-height,100dvh) - var(--game-top) - var(--game-bottom) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 108px));grid-area:2/1}.game-footer,.game-screen.is-solved .victory-panel{grid-area:2/2}.game-footer{padding-top:30px}.game-footer .game-tools .round-button{width:62px;height:62px}.game-footer .tool-art{width:38px;height:38px}}.game-screen:not(.is-solved) .level-heading h1{font-family:NunitoHeading,Nunito,sans-serif;font-weight:800}.game-screen .timer{text-align:center;width:100%;margin:0;font-size:25.3px;line-height:28px;position:absolute;bottom:calc(100% + 28px);left:0}@media (height<=700px){.game-screen .timer{font-size:22px;line-height:25px}}.screen{--screen-header-top:clamp(28px,7svh,68px);--screen-header-inset:max(16px,env(safe-area-inset-left))}.home-screen{padding-top:calc(var(--screen-header-top) + env(safe-area-inset-top))}.screen-header{flex:none;grid-template-columns:44px minmax(0,1fr) 44px;place-self:center;align-items:center;gap:0;width:96%;height:44px;display:grid}.screen-header>div{justify-content:center;align-items:center;min-width:0;height:44px;display:flex}.screen-header .level-heading{padding:0}.screen-header .level-heading h1{margin:0;padding:0}.game-screen{padding-left:var(--screen-header-inset);padding-right:var(--screen-header-inset)}@media (width>=600px){.screen{--screen-header-inset:24px}}@media (width<=350px){.screen{--screen-header-inset:12px}}@media (height<=700px){.screen{--screen-header-top:28px}}@media (orientation:landscape) and (height<=540px){.screen{--home-landscape-body:190px;--screen-header-top:calc((var(--screen-viewport-height,100svh) - 44px - 18px - var(--home-landscape-body) + 20px - 12px)/2)}.home-screen{padding-top:20px}.home-screen .home-identity{height:var(--home-landscape-body)}.screen-header{width:100%}}.home-screen{height:var(--screen-viewport-height,100dvh);min-height:0;box-shadow:none;background:#fffaf2}@media (orientation:portrait),(height>=541px){.home-screen{grid-template-rows:44px minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:0;display:grid}.home-screen .home-nav{grid-area:1/1}.home-screen .home-identity{grid-area:2/1;align-self:center;margin:0}.home-screen .home-emblem{width:clamp(120px,min(43vw,calc(var(--screen-viewport-height,100dvh) - 400px)),216px);aspect-ratio:1;object-fit:contain;height:auto}.home-screen .home-actions{grid-area:3/1;justify-self:center;margin:0;padding-bottom:16px}}.home-screen{--entry-first:80ms;--entry-step:90ms;--entry-duration:.35s;--entry-offset:14px;--ease-back:cubic-bezier(.175,.885,.32,1.275)}.home-screen .header-left,.home-screen .header-center,.home-screen .header-right,.home-emblem,.home-identity h1,.home-identity>p,.home-actions>.button{animation:home-fade var(--entry-duration) ease-out both,home-rise var(--entry-duration) var(--ease-back) both;animation-delay:calc(var(--entry-first) + var(--entry-index) * var(--entry-step))}.home-screen .header-left{--entry-index:0}.home-screen .header-center{--entry-index:1}.home-screen .header-right{--entry-index:2}.home-emblem{--entry-index:3}.home-identity h1{--entry-index:4}.home-identity>p{--entry-index:5}.home-actions>.button:first-child{--entry-index:6}.home-actions>.button:nth-child(2){--entry-index:7}.home-screen .home-identity .home-wordmark{animation-name:home-fade;animation-timing-function:ease-out}@keyframes home-fade{0%{opacity:0}to{opacity:1}}@keyframes home-rise{0%{translate:0 var(--entry-offset)}to{translate:0}}.modal-backdrop{opacity:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f1b169e;transition:opacity .2s ease-out}.modal-backdrop[data-shown=true]{opacity:1}.modal-backdrop>.modal{transition:transform .2s cubic-bezier(.175,.885,.32,1.275);animation:none;transform:scale(.9)}.modal-backdrop[data-shown=true]>.modal{transform:scale(1)}.modal-motion[data-closing=true] .modal-backdrop{opacity:0}.modal-motion[data-closing=true] .modal{pointer-events:none;transform:scale(.9)}@media (prefers-reduced-motion:reduce){.home-screen *,.modal-backdrop,.modal-backdrop>.modal{transition:none!important;animation:none!important}}.home-actions .home-resume{color:#000;min-height:64px;box-shadow:none;background:0 0;border:2px solid #000;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:16px;line-height:1.2;display:flex}.home-resume-time{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:7px;font-size:14px;display:flex}.home-resume-time svg{flex:none;width:18px;height:18px}.home-actions>.quiet-note button{color:var(--teal);font:inherit;text-underline-offset:2px;background:0 0;padding:0 2px;text-decoration:underline}.home-screen[data-resume=true] .home-actions>.button:nth-child(3){--entry-index:8}@media (orientation:portrait) and (height<=540px){.home-screen[data-resume=true] .home-emblem{width:90px;height:90px}.home-screen[data-resume=true] .home-identity h1{font-size:44px}.home-screen[data-resume=true] .home-identity p{margin-top:4px;font-size:12px}.home-screen[data-resume=true][data-daily-status=true] .home-emblem{width:60px;height:60px;margin-bottom:8px}.home-screen[data-daily-status=true] .home-actions>.quiet-note{font-size:11px;line-height:1.3}}.victory-save-error{text-align:center;color:var(--ink);margin:0 0 8px;font-size:12px}.victory-save-error button{color:var(--teal);font:inherit;background:0 0;border:0;min-height:36px;padding:4px 12px;font-weight:700;text-decoration:underline}.game-screen.is-solved .level-heading h1{font-family:var(--serif);letter-spacing:-2px;height:auto;font-size:38px;line-height:1.1}.game-screen.is-solved .victory-panel{flex-direction:column;align-items:center;width:100%;padding-top:24px;display:flex}.game-screen.is-solved .victory-summary h2{font-family:var(--serif);letter-spacing:-.6px;font-size:26px;font-weight:400;line-height:1.2}.victory-comparison{color:var(--ink);flex-direction:column;align-items:center;gap:3px;margin:8px 0 18px;font-size:15px;line-height:1.35;display:flex}.victory-comparison small{letter-spacing:.25px;color:#876f62;font-family:Nunito,sans-serif;font-size:10px;font-weight:700}.victory-streak-slot{justify-content:center;align-items:center;width:100%;height:38px;margin:5px 0 12px;display:flex}.streak-earned{color:#76529c;visibility:hidden;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.is-solved:has(.pixi-host[data-victory-phase=complete]) .streak-earned{visibility:visible;animation:.45s ease-out both streak-recognize}.streak-earned img{object-fit:contain;width:24px;height:24px}.game-screen.is-solved .victory-actions{justify-content:center;gap:18px;width:min(100%,340px);margin:0}.victory-actions>.button{max-width:none;min-height:54px;font-family:var(--serif);justify-content:space-between;padding:10px 24px;font-size:23px;font-weight:400}.victory-next-arrow{font-family:Nunito,sans-serif;font-size:27px;font-weight:700;line-height:1}.victory-share-group{flex:none;position:relative}.victory-actions .share-button{background:var(--coral);color:#fffaf2;width:54px;height:54px;box-shadow:none;border:0}.victory-gift{border:2px solid var(--cream);background:var(--cream);width:27px;height:27px;color:var(--coral);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:-12px;right:-5px}.victory-gift svg{width:23px;height:23px}.home-currency{background:0 0;border:0;min-height:44px;padding:0}.streak-screen{height:var(--screen-viewport-height,100dvh);background:var(--cream);min-height:0;padding-top:calc(var(--screen-header-top) + env(safe-area-inset-top));flex-direction:column;align-items:center;gap:20px;display:flex;overflow:hidden}.streak-header h1{white-space:nowrap;font-family:NunitoHeading,Nunito,sans-serif;font-size:22px;font-weight:800}.streak-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;width:100%;min-height:0;padding:15px 0;display:flex}.streak-emblem{aspect-ratio:1;object-fit:contain;width:clamp(80px,24svh,180px);height:auto}.streak-number{color:#76529c;font-family:NunitoHeading,Nunito,sans-serif;font-size:70px;line-height:1}.streak-body>p{font-size:20px;font-weight:700}.streak-body .streak-best{background:#eee2f6;border-radius:24px;padding:8px 20px;font-size:15px}.streak-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;width:min(100%,380px);margin:20px 0 12px;padding:0;list-style:none;display:grid}.streak-week li{flex-direction:column;align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.streak-day{color:#9b8779;background:#ede4da;border-radius:50%;place-items:center;width:38px;height:38px;font-size:23px;display:grid}.streak-week [data-completed=true] .streak-day{color:#fff;background:#76529c}.streak-week [aria-current=date] .streak-day{outline-offset:3px;outline:2px solid #76529c}.streak-body .streak-rule{color:#876f62;font-size:12px;font-weight:400;line-height:1.6}@keyframes streak-recognize{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}[data-reduced-motion=true]:has(.pixi-host[data-victory-phase=complete]) .streak-earned{animation:none}@media (height<=700px){.game-screen.is-solved .victory-panel{padding-top:18px}.game-screen.is-solved .victory-summary h2{font-size:22px}.victory-streak-slot{height:32px;margin:3px 0 8px}.victory-actions>.button{min-height:48px;font-size:21px}.victory-actions .share-button{width:48px;height:48px}.streak-body{gap:8px;padding:0}.streak-emblem{width:80px}.streak-number{font-size:48px}.streak-week{margin:12px 0}.streak-body>p{font-size:17px}}@media (width<=350px){.streak-week{gap:4px}.streak-day{width:31px;height:31px}.streak-earned{font-size:10px}.victory-actions>.button{padding-inline:20px}}@media (orientation:landscape) and (height<=540px){.game-screen.is-solved .victory-panel{align-self:center;padding-top:0}.game-screen.is-solved .victory-summary h2{font-size:21px}.victory-streak-slot{height:40px;margin:6px 0 12px}.streak-earned{font-size:11px}.streak-screen{gap:12px;padding-top:20px}.streak-body{grid-template-rows:48px 30px 34px 1fr;grid-template-columns:120px 1fr;column-gap:22px;padding:0 16px;display:grid}.streak-emblem{grid-area:1/1/-1;width:120px}.streak-number{grid-area:1/2}.streak-body>p{grid-column:2}.streak-body .streak-best{justify-self:center}.streak-week{grid-column:2;justify-self:center;gap:5px;margin:5px 0}.streak-body .streak-rule{display:none}}.streak-week .streak-day-gift{position:relative;overflow:visible;background:0 0!important}.streak-day-gift img{object-fit:contain;width:120%;max-width:none;height:120%;position:absolute}.streak-day-gift .streak-gift-check{color:#fff;background:#76529c;border:2px solid #fffaf2;border-radius:50%;place-items:center;width:17px;height:17px;font-size:12px;line-height:1;display:grid;position:absolute;bottom:-3px;right:-4px}.streak-celebration{z-index:60;width:100%;max-width:none;height:var(--screen-viewport-height,100dvh);min-height:0;padding-inline:max(16px,50vw - 240px);padding-top:calc(var(--screen-header-top) + env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));background:#fffaf2;grid-template-rows:44px minmax(0,1fr) auto;margin:0;animation:.2s ease-out both streak-screen-in;display:grid;position:fixed;inset:0;overflow:hidden}.streak-celebration-header .header-center{color:var(--ink);font-size:20px;font-weight:800}.streak-celebration-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:0;padding:16px 0;display:flex}.streak-celebration-hero{flex:none;place-items:center;width:150px;height:150px;display:grid;position:relative}.streak-celebration-hero img{object-fit:contain;z-index:1;width:128px;height:128px;animation:.85s cubic-bezier(.2,.7,.3,1) .16s both streak-emblem-jump}.streak-halo{background:#f6e5b9;border-radius:50%;animation:1s ease-out .2s both streak-halo-open;position:absolute;inset:0}.streak-spark{width:8px;height:8px;transform:rotate(calc(var(--spark)*45deg)) translateY(-85px);background:#edb740;border-radius:3px;animation:.85s ease-out .38s both streak-spark-burst;position:absolute;top:calc(50% - 4px);left:calc(50% - 4px)}.streak-spark:nth-of-type(2n){background:#76529c}.streak-celebration-count{color:#76529c;place-items:center;min-height:104px;font:800 104px/1 NunitoHeading,Nunito,sans-serif;display:grid;position:relative}.streak-count-old,.streak-count-new{font:inherit;font-variant-numeric:tabular-nums;grid-area:1/1}.streak-count-old{animation:.22s ease-in .36s both streak-count-leave}.streak-count-new{animation:.7s cubic-bezier(.18,.8,.25,1) .36s both streak-count-arrive}.streak-celebration-body h1{color:var(--ink);margin:0;font:800 27px/1.25 NunitoHeading,Nunito,sans-serif}.streak-celebration-message{color:#876f62;margin:0;font-size:15px}.streak-celebration .streak-week{width:min(100%,350px);margin:20px 0 4px}.streak-celebration .streak-week [aria-current=date] .streak-day{animation:.45s ease-out .85s both streak-today}.streak-celebration .streak-week [aria-current=date] .streak-day>span{animation:.18s ease-out .95s both streak-screen-in}.streak-celebration-best{color:#876f62;margin:0;font-size:13px}.streak-celebration-footer{justify-self:center;width:min(100%,350px);padding-top:12px}.streak-celebration-footer .button{justify-content:space-between;width:100%;min-height:54px;padding-inline:24px;display:flex}.streak-celebration[data-paused=true],.streak-celebration[data-paused=true] *{animation-play-state:paused!important}@keyframes streak-screen-in{0%{opacity:0}to{opacity:1}}@keyframes streak-emblem-jump{0%{opacity:.65;transform:translateY(18px)scale(1.15,.55)}24%{opacity:1;transform:translateY(0)scale(.94,1.08)}48%{transform:translateY(-17px)scale(1.06)rotate(-5deg)}72%{transform:translateY(0)scale(.98)rotate(2deg)}to{transform:translateY(0)scale(1)rotate(0)}}@keyframes streak-halo-open{0%{opacity:0;transform:scale(.5)}30%{opacity:.85}to{opacity:0;transform:scale(1.55)}}@keyframes streak-spark-burst{0%{opacity:0;transform:rotate(calc(var(--spark)*45deg)) translateY(-45px) scale(.4)}20%{opacity:1}to{opacity:0;transform:rotate(calc(var(--spark)*45deg)) translateY(-110px) scale(.2)}}@keyframes streak-count-leave{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.85)}}@keyframes streak-count-arrive{0%{opacity:0;transform:translateY(22px)scale(.65)}55%{opacity:1;transform:translateY(-5px)scale(1.1)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes streak-today{0%{color:#9b8779;background:#ede4da;transform:scale(.9);box-shadow:0 0 #edb74066}65%{color:#fff;background:#76529c;transform:scale(1.14);box-shadow:0 0 0 8px #edb74033}to{color:#fff;background:#76529c;transform:scale(1);box-shadow:0 0 0 12px #edb74000}}.streak-celebration{--streak-info-start:1.7s;--streak-info-step:.12s;outline:none}.streak-celebration-header,.streak-celebration-body h1,.streak-celebration-message,.streak-celebration .streak-week,.streak-celebration-best,.streak-celebration-footer{animation:.32s ease-out both streak-info-in;animation-delay:calc(var(--streak-info-start) + var(--streak-info-order)*var(--streak-info-step))}.streak-celebration-header{--streak-info-order:0}.streak-celebration-body h1{--streak-info-order:1}.streak-celebration-message{--streak-info-order:2}.streak-celebration .streak-week{--streak-info-order:3}.streak-celebration-best{--streak-info-order:4}.streak-celebration-footer{--streak-info-order:5}.streak-celebration .streak-week [aria-current=date] .streak-day{animation-delay:2.2s}.streak-celebration .streak-week [aria-current=date] .streak-day>span{animation-delay:2.3s}@keyframes streak-info-in{0%{opacity:0;visibility:hidden;translate:0 12px}to{opacity:1;visibility:visible;translate:0}}.streak-celebration[data-reduced-motion=true],.streak-celebration[data-reduced-motion=true] *{animation:none!important}.streak-celebration[data-reduced-motion=true] .streak-count-old{display:none}@media (prefers-reduced-motion:reduce){.streak-celebration,.streak-celebration *{animation:none!important}.streak-count-old{display:none}}@media (height<=700px){.streak-celebration{padding-bottom:max(16px,env(safe-area-inset-bottom))}.streak-celebration-body{gap:6px;padding:8px 0}.streak-celebration-hero{width:100px;height:100px}.streak-celebration-hero img{width:88px;height:88px}.streak-celebration-count{min-height:74px;font-size:74px}.streak-celebration-body h1{font-size:23px}.streak-celebration .streak-week{margin:12px 0 4px}.streak-celebration-message{font-size:13px}.streak-celebration-footer .button{min-height:48px}}@media (orientation:landscape) and (height<=540px){.streak-celebration{padding-top:20px;padding-bottom:16px;padding-inline:max(24px,50vw - 340px)}.streak-celebration-body{grid-template-rows:64px 30px 22px 64px 20px;grid-template-columns:140px minmax(0,1fr);align-content:center;justify-items:center;gap:3px 24px;display:grid}.streak-celebration-hero{grid-area:1/1/-1;width:130px;height:130px}.streak-celebration-hero img{width:120px;height:120px}.streak-celebration-count{grid-column:2;min-height:64px;font-size:64px}.streak-celebration-body h1,.streak-celebration-message,.streak-celebration .streak-week,.streak-celebration-best{grid-column:2}.streak-celebration .streak-week{margin:0}.streak-celebration-footer{padding-top:6px}}@media (orientation:portrait) and (height<=540px){.streak-celebration-body{gap:4px;padding:6px 0}.streak-celebration-hero{width:76px;height:76px}.streak-celebration-hero img{width:68px;height:68px}.streak-celebration-count{min-height:64px;font-size:64px}.streak-celebration-body h1{font-size:21px}.streak-celebration-message{font-size:12px}.streak-celebration .streak-week{margin:10px 0 2px}.streak-celebration-best{font-size:12px}}@media (orientation:portrait),(height>=541px){.home-screen .home-emblem{width:clamp(60px,min(43vw,calc(var(--screen-viewport-height,100dvh) - 490px)),216px);height:auto}.home-screen[data-resume=true] .home-emblem{width:clamp(60px,min(43vw,calc(var(--screen-viewport-height,100dvh) - 550px)),216px);height:auto}}@media (height<=600px){.home-screen .home-actions{gap:7px;padding-bottom:0}.home-screen .home-actions .button{min-height:44px;padding:8px 12px;font-size:16px}.home-screen .home-actions .home-resume{min-height:54px}.home-screen .home-emblem{width:80px;height:80px}.home-screen[data-resume=true] .home-emblem{width:60px;height:60px}}.home-screen .home-actions{gap:12px;width:min(78%,296px)}.home-screen .home-actions>.button{border-radius:12px;min-height:52px}.home-screen .home-actions .home-profile{font-size:15px}@media (orientation:portrait),(height>=541px){.home-screen .home-identity:has(>img.home-emblem){flex-direction:column;justify-content:center;align-self:stretch;align-items:center;min-height:0;padding-block:12px;display:flex}.home-screen .home-identity>img.home-emblem{object-fit:contain;flex:0 auto;width:min(55vw,260px);height:auto;min-height:0;max-height:calc(100% - 110px);margin-bottom:-12px}.home-screen .home-identity>h1,.home-screen .home-identity>p{flex:none}}@media (orientation:portrait) and (height<=540px){.home-screen .home-identity:has(>img.home-emblem){padding-block:8px}.home-screen .home-identity>img.home-emblem{max-height:calc(100% - 78px)}.home-screen .home-identity h1{font-size:44px}.home-screen .home-identity p{margin-top:4px;font-size:12px}.home-screen .home-actions{width:min(100%,286px)}.home-screen .home-actions>.button{min-height:44px}.home-screen .home-actions{gap:8px}.home-screen .home-identity>img.home-emblem{margin-bottom:0}.home-screen .home-actions>.notice{padding:6px;font-size:11px;line-height:1.3}}@media (orientation:landscape) and (height<=540px){.home-screen .home-actions{gap:8px;width:100%}.home-screen .home-actions>.button{min-height:44px}}
