.mode-toggle-stack{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;min-height:98px}.widget-header--mode .mode-toggle-stack{transform:translateY(8px)}.mode-toggle-meta{display:flex;align-items:center;justify-content:center;width:min(264px,82vw);height:48px;min-height:48px;margin-top:6px;pointer-events:none;box-sizing:border-box}.mode-toggle-meta__col{display:flex;align-items:center;justify-content:center;min-width:0;height:100%}.mode-toggle-meta__col--unlimited{gap:22px}.mode-toggle-meta--daily .mode-toggle-meta__col--unlimited,.mode-toggle-meta--unlimited .mode-toggle-meta__col--daily{display:none}.header-meta-slot--next{gap:4px;justify-content:center;min-height:48px}.header-meta-slot:not(.header-meta-slot--next){justify-content:center;min-height:48px}.daily-header-next-label{font-family:Union,sans-serif;font-size:clamp(20px,5.5vw,26px);line-height:1.1;color:var(--text-dark);text-align:center}.daily-header-countdown{font-family:Union,sans-serif;font-size:clamp(17px,4.8vw,22px);line-height:1.15;color:var(--text-dark);text-align:center}.mode-toggle{display:inline-flex;width:min(264px,82vw);padding:3px;gap:3px;border-radius:8px;border:2px solid var(--sf-blue);background:var(--sf-bg);box-sizing:border-box;pointer-events:auto;box-shadow:0 1px 2px #1940931f;position:relative;z-index:1}.mode-toggle__segment{flex:1 1 0;display:flex;align-items:center;justify-content:center;min-height:34px;padding:6px 8px;border:none;border-radius:5px;background:transparent;cursor:pointer;transition:background .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}.mode-toggle__segment--active{background:var(--sf-blue)}.mode-toggle__segment:active{filter:brightness(.96)}.mode-toggle__label{font-family:Union,sans-serif;font-size:25px;font-weight:400;letter-spacing:.01em;line-height:1;color:var(--sf-blue);pointer-events:none}.mode-toggle__segment--active .mode-toggle__label{color:#fff}.menu-profile-button{margin-top:4px;margin-bottom:max(16px,calc(var(--inset-bottom) + 12px));width:100%;display:flex;align-items:center;justify-content:center;gap:16px;background:transparent;border:0;border-radius:10px;padding:12px 18px 16px;cursor:pointer;text-transform:uppercase;font-size:1.3rem;font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:.08rem;color:#063da6;-webkit-tap-highlight-color:transparent}.menu-profile-button:focus,.menu-profile-button:focus-visible{outline:none;box-shadow:none}.menu-profile-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid #063da6}.menu-profile-details{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.menu-profile-name{font-size:1.2rem;font-weight:700;color:#063da6;text-transform:none;letter-spacing:.02rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(240px,62vw)}.menu-profile-cta{font-weight:700}.modal-body--menu{display:flex;flex-direction:column;min-height:0}.modal-body--menu .modal-menu{flex:0 0 auto}.about-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:1200;transition:background .3s ease;animation:fadeInOverlay .3s ease forwards}@keyframes fadeInOverlay{to{background:#00000073}}.about-modal{position:fixed;top:100px;left:50%;transform:translate(-50%) translateY(100vh);width:min(92vw,420px);height:calc(100vh - 100px);max-height:calc(100vh - 100px);background:var(--sf-bg);border-radius:18px;box-shadow:0 20px 48px #00000059;padding:28px 24px 32px;overflow-y:auto;z-index:1201;animation:slideUpModal .4s cubic-bezier(.32,.72,0,1) forwards;touch-action:pan-y}.about-close{position:absolute;top:12px;right:16px;background:transparent;border:none;font-size:1.6rem;color:var(--sf-blue);cursor:pointer;z-index:1}.about-content{display:flex;flex-direction:column;gap:24px;margin-top:20px}.about-contact-button{background:#063da6;color:var(--sf-bg);font-family:Bebas Neue Pro,Union,sans-serif;font-size:1.4rem;letter-spacing:.1rem;text-transform:uppercase;border:none;border-radius:4px;padding:14px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;width:100%;font-weight:700;margin-bottom:52px}.about-contact-button:hover{transform:translateY(-1px);box-shadow:0 10px 22px #063da666;background:#094cd0}.about-contact-button:active{transform:translateY(0);box-shadow:0 5px 15px #063da64d}.about-text{display:flex;flex-direction:column;gap:20px;margin-bottom:24px;font-family:Bebas Neue Pro,Union,sans-serif;letter-spacing:.02em}.about-title{font-family:inherit;font-size:1.9rem;font-weight:700;color:var(--sf-blue);margin:0;text-align:left}.about-paragraph{font-family:inherit;font-size:1.4rem;font-weight:400;color:#000;text-align:left;line-height:1.35;margin:0}.about-paragraph-last{margin-bottom:0}.about-paragraph-fun{margin-top:0;font-family:inherit;font-weight:700;color:#000}@media(max-width:320px){.about-modal{top:40px!important;height:calc(100vh - 40px)!important;padding:24px 20px 28px}.about-title{font-size:1.6rem!important}.about-paragraph{font-size:1.2rem!important}.about-contact-button{font-size:1.2rem!important;padding:12px!important}.about-close{top:10px!important;right:14px!important;font-size:1.4rem!important}}.user-detail-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1400}.user-detail-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(85vw,320px);background:var(--sf-bg);border-radius:16px;padding:32px 24px 24px;box-shadow:0 24px 48px #00000059;z-index:1401;display:flex;flex-direction:column;align-items:center;gap:16px}.user-detail-popup-close{position:absolute;top:12px;right:14px;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--sf-blue);line-height:1;padding:0;width:28px;height:28px}.user-detail-popup-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--sf-blue)}.user-detail-popup-name{font-size:1.5rem;font-weight:600;color:var(--sf-blue);text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.user-detail-popup-trophy{display:inline-flex;align-items:center;gap:4px}.user-detail-popup-trophy svg{stroke:var(--sf-green)}.user-detail-popup-trophy-rank{font-size:1.1rem;font-weight:700;color:var(--sf-green)}.user-detail-popup-opposite-month{font-size:1.2rem;color:var(--sf-green);text-align:center;font-weight:500}.user-detail-popup-played{font-size:1.1rem;color:#666;text-align:center}.user-detail-popup-status{font-size:1.1rem;font-weight:600;text-align:center}.user-detail-popup-legend{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid rgba(25,64,147,.15);width:100%}.user-detail-popup-legend-item{display:flex;align-items:center;gap:10px;font-size:.95rem;color:#333}.user-detail-popup-legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.user-detail-popup-follow-button{width:100%;padding:12px;margin-top:8px;background-color:var(--sf-blue);color:var(--sf-bg);border:none;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer}.user-detail-popup-follow-button:disabled{opacity:.6;cursor:not-allowed}.user-detail-popup-error{color:#d32f2f;font-size:1rem;text-align:center}.user-detail-popup-success{color:var(--sf-green);font-size:1rem;text-align:center;font-weight:500}.follow-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;z-index:10000}.follow-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--sf-bg);border-radius:12px;padding:24px;max-width:90%;width:400px;max-height:90vh;z-index:10001;box-shadow:0 4px 20px #00000026}.follow-popup-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:28px;line-height:1;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;z-index:1}.follow-popup-content{display:flex;flex-direction:column;gap:16px}.follow-popup-title{font-family:Bebas Neue Pro,Union,sans-serif;font-size:1.15rem;font-weight:400;color:#333;margin-top:8px;margin-bottom:16px;margin-right:40px;line-height:1.35;letter-spacing:.02em;white-space:pre-line}.follow-popup-input{width:100%;padding:12px;border:2px solid #ddd;border-radius:8px;font-size:1.1rem;box-sizing:border-box;background-color:var(--sf-bg)}.follow-popup-input:focus{outline:none;border-color:var(--sf-blue)}.follow-popup-error{color:#d32f2f;font-size:14px;margin-top:8px}.follow-popup-success{color:var(--sf-green);font-size:16px;margin-bottom:16px;font-weight:500;padding:12px;background-color:#28ab641a;border-radius:8px;text-align:center}.follow-popup-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.follow-popup-cancel,.follow-popup-submit{padding:10px 20px;border:none;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer}.follow-popup-cancel{background-color:#eee;color:#333}.follow-popup-submit{background-color:var(--sf-blue);color:#fff}.follow-popup-cancel:disabled,.follow-popup-submit:disabled{opacity:.5;cursor:not-allowed}.competition-leaderboard{display:flex;flex-direction:column;gap:12px}.competition-leaderboard--modal{flex:1 1 auto;min-height:0;margin-top:20px}.competition-leaderboard--modal .competition-leaderboard__table-wrapper{max-height:50vh}.competition-leaderboard--result{margin:16px 0 8px;padding:0;width:100%}.competition-leaderboard__title-wrapper{display:flex;align-items:center;justify-content:center;gap:12px;position:relative}.competition-leaderboard__title-buttons{display:flex;align-items:center;gap:8px}.competition-leaderboard__title{font-size:1.3rem;font-weight:600;color:var(--ink);text-align:center;padding:0 8px}.competition-leaderboard--result .competition-leaderboard__title-wrapper{padding:0 22px}.competition-leaderboard--result .competition-leaderboard__title{font-weight:400;font-size:1.4rem;padding:0}.competition-leaderboard__table-wrapper{flex:1 1 auto;min-height:0;overflow-y:auto;border-radius:12px;background:var(--sf-bg);padding:6px 4px 16px;position:relative;-webkit-overflow-scrolling:touch;touch-action:pan-y}.competition-leaderboard--result .competition-leaderboard__table-wrapper{max-height:220px;min-height:220px;padding:4px 0 12px;width:100%;box-sizing:border-box}@media(max-height:600px){.competition-leaderboard--result .competition-leaderboard__table-wrapper{max-height:150px;min-height:150px}}@media(max-width:420px){.competition-leaderboard--result{margin:16px 16px 8px}.competition-leaderboard--result .competition-leaderboard__table-wrapper{max-height:200px;min-height:200px}}.competition-leaderboard__table-wrapper--disabled{overflow-y:hidden}.competition-leaderboard__inner--blurred{filter:blur(5px);pointer-events:none}.competition-leaderboard__table{width:100%;border-collapse:separate;border-spacing:0;background:var(--sf-bg)}.competition-leaderboard__table thead,.competition-leaderboard__table tbody,.competition-leaderboard__table tr,.competition-leaderboard__table th,.competition-leaderboard__table td{border:0!important;outline:0;box-shadow:none}.competition-leaderboard__header,.competition-leaderboard__cell{border:none;background-color:var(--sf-bg)}.competition-leaderboard__header{font-size:1.2rem;font-weight:600;color:#222;padding:6px 8px;text-align:left}.competition-leaderboard--result .competition-leaderboard__header--rank{padding-left:22px;padding-right:8px}.competition-leaderboard--result .competition-leaderboard__header--score{padding-right:22px;padding-left:8px}.competition-leaderboard--result .competition-leaderboard__header--player{padding-left:8px;padding-right:8px}.competition-leaderboard__header--rank{width:44px}.competition-leaderboard__header--score{text-align:right}.competition-leaderboard--modal .competition-leaderboard__row--current,.competition-leaderboard--result .competition-leaderboard__row--current{background:var(--sf-blue)!important}.competition-leaderboard--modal .competition-leaderboard__row--current td,.competition-leaderboard--result .competition-leaderboard__row--current td{background-color:var(--sf-blue)!important}.competition-leaderboard__row--current .competition-leaderboard__cell{color:var(--sf-bg)!important}.competition-leaderboard__row--current .competition-leaderboard__cell--rank--played-today{color:var(--sf-green)!important}.competition-leaderboard__row--current .competition-leaderboard__cell--rank--played-future{color:var(--sf-yellow)!important}.competition-leaderboard--result .competition-leaderboard__row{background:var(--sf-bg)}.competition-leaderboard--result .competition-leaderboard__row td{background-color:var(--sf-bg)}.competition-leaderboard__cell{padding:8px;font-size:1.3rem;color:#111;vertical-align:middle}.competition-leaderboard--result .competition-leaderboard__cell--rank{padding-left:26px;padding-right:8px}.competition-leaderboard--result .competition-leaderboard__cell--player{padding-left:8px;padding-right:8px}.competition-leaderboard--result .competition-leaderboard__cell--score{padding-right:36px;padding-left:8px}.competition-leaderboard__cell--rank--played-today{color:var(--sf-green)}.competition-leaderboard__cell--rank--played-future{color:var(--sf-yellow)}.competition-leaderboard__cell--player{vertical-align:middle}.competition-leaderboard__player-cell{display:flex;align-items:center;gap:10px;min-width:0}.competition-leaderboard__avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:0 0 32px;background:var(--sf-bg)}.competition-leaderboard__player{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.competition-leaderboard__player--current,.competition-leaderboard__score--current{font-weight:700}.competition-leaderboard__cell--score{text-align:right}.competition-leaderboard__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;text-align:center;background:#fefbefa6;background:color-mix(in srgb,var(--sf-bg) 65%,transparent);font-size:1.1rem;z-index:5;pointer-events:auto}.competition-leaderboard__overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:90%}.competition-leaderboard__overlay-content span{line-height:1.45}.competition-leaderboard__login-btn{position:relative;z-index:6;border:none;border-radius:8px;background:var(--sf-blue);color:var(--sf-bg);padding:12px 28px;font-family:Union,sans-serif;font-size:1.1rem;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.competition-leaderboard__loading-container{position:relative;min-height:200px}.competition-leaderboard--result .competition-leaderboard__loading-container{min-height:180px}.competition-leaderboard__loading-container .competition-leaderboard__status{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;background:var(--sf-bg);border-radius:8px;padding:16px 24px}.competition-leaderboard__table--skeleton{opacity:.3;pointer-events:none}.competition-leaderboard__row--skeleton{background:transparent!important}.competition-leaderboard__skeleton-text{display:inline-block;width:60px;height:16px;background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0,#e0e0e0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px;vertical-align:middle}.competition-leaderboard__row--skeleton .competition-leaderboard__cell--player .competition-leaderboard__player-cell{display:flex;align-items:center;gap:10px}.competition-leaderboard__row--skeleton .competition-leaderboard__cell--player .competition-leaderboard__skeleton-text{width:100px}.competition-leaderboard__skeleton-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0,#e0e0e0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;flex:0 0 32px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.competition-leaderboard__status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 12px;text-align:center}.competition-leaderboard__spinner{width:32px;height:32px;border:3px solid rgba(25,64,147,.2);border-top:3px solid var(--sf-blue);border-radius:50%;animation:competition-spin .8s linear infinite}@keyframes competition-spin{to{transform:rotate(360deg)}}.competition-leaderboard__retry{border:none;background:var(--sf-blue);color:#fff;padding:8px 18px;border-radius:999px;cursor:pointer}.competition-leaderboard__filter-button,.competition-leaderboard__follow-button{background:transparent;border:1.5px solid var(--sf-blue);border-radius:6px;color:var(--sf-blue);cursor:pointer;padding:4px 6px;display:flex;align-items:center;justify-content:center}.competition-leaderboard__filter-button--active{background:var(--sf-blue);color:var(--sf-bg)}.competition-leaderboard__trophy{display:inline-flex;align-items:center;gap:4px;margin-left:8px}.competition-leaderboard__trophy svg{stroke:var(--sf-green)}.competition-leaderboard__trophy-rank{font-size:.85rem;font-weight:700;color:var(--sf-green)}.end-modal-panel--with-leaderboard{max-width:min(92vw,400px);max-height:min(90vh,720px);overflow-y:auto;padding-bottom:16px}.result-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:900;opacity:0;animation:resultOverlayFadeIn .26s ease-out forwards}.result-modal{position:fixed;top:45%;left:50%;transform:translate(-50%,-46%) scale(.94);width:min(380px,92vw);background:var(--sf-bg);border-radius:16px;box-shadow:0 20px 48px #00000059;padding:32px 0 0;text-align:center;font-family:Union,sans-serif;z-index:1000;overflow:hidden;opacity:0;animation:resultModalPopIn .26s cubic-bezier(.22,.7,.23,1.01) forwards}@keyframes resultOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes resultModalPopIn{0%{opacity:0;transform:translate(-50%,-44%) scale(.92)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.result-close-button{position:absolute;top:10px;right:14px;background:transparent;border:none;color:var(--result-accent-color, var(--sf-blue));font-size:1.8rem;cursor:pointer;line-height:1;padding:4px;-webkit-tap-highlight-color:transparent}.result-title{font-size:1.7rem;margin:0;padding:0 22px}.result-message{margin:8px 0 12px;font-size:1.3rem;color:#000;white-space:pre-line;padding:0 22px}.result-divider{height:3px;background:var(--result-accent-color, var(--sf-blue));margin:0;border-radius:999px}.result-score-summary{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:8px;row-gap:4px;padding:12px 22px;margin-bottom:4px}.result-score-main{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:4px}.result-score-main-value{font-size:clamp(2.6rem,7vw,4rem);font-weight:700;color:#000;line-height:1}.result-score-main-label{font-size:1.2rem;margin-top:-2px;color:#000}.result-score-secondary-item{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.result-score-secondary-item--col1{grid-column:1;grid-row:2}.result-score-secondary-item--col2{grid-column:2;grid-row:2}.result-score-secondary-item--col3{grid-column:3;grid-row:2}.result-score-secondary-value{font-size:1.7rem;color:#000}.result-score-secondary-label{font-size:1.2rem;color:#000;margin-top:-6px}.result-footnote{margin:16px 0 18px;font-size:1.3rem;color:#000;display:flex;flex-direction:column;gap:6px;padding:0 22px}.result-footnote span{display:block}.result-actions{display:flex;margin-top:0;overflow:hidden}.result-secondary-button,.result-share-button{flex:1 1 0;height:52px;display:flex;align-items:center;justify-content:center;font-family:Union,sans-serif;font-size:1.3rem;cursor:pointer;border:none;-webkit-tap-highlight-color:transparent}.result-secondary-button{background:var(--sf-bg);color:var(--result-accent-color, var(--sf-blue));border-bottom-left-radius:16px}.result-secondary-button:disabled{opacity:.55;cursor:not-allowed}.result-secondary-button__label{display:inline-flex;align-items:center;gap:6px}.result-secondary-button__plus{font-weight:700;line-height:1}.result-share-button{background:var(--result-accent-color, var(--sf-blue));color:var(--sf-bg);gap:8px;border-bottom-right-radius:16px}.result-share-button span{position:relative;top:-1px}.reminders-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:1200;animation:remindersFadeIn .3s ease forwards}@keyframes remindersFadeIn{to{background:#00000073}}.reminders-modal{position:fixed;top:100px;left:50%;transform:translate(-50%) translateY(100vh);width:min(92vw,420px);max-height:calc(100vh - 100px);background:var(--sf-bg);border-radius:18px;box-shadow:0 20px 48px #00000059;padding:28px 24px 32px;overflow-y:auto;z-index:1201;animation:remindersSlideUp .4s cubic-bezier(.32,.72,0,1) forwards}@keyframes remindersSlideUp{to{transform:translate(-50%) translateY(0)}}.reminders-close{position:absolute;top:12px;right:16px;background:transparent;border:none;font-size:1.6rem;color:var(--sf-blue);cursor:pointer}.reminders-title{font-family:Bebas Neue Pro,Union,sans-serif;font-size:1.9rem;font-weight:700;color:var(--sf-blue);margin:30px 0}.reminders-explanation{font-size:1rem;line-height:1.5;margin:0 0 24px}.reminders-warning{font-size:.95rem;color:var(--sf-red);margin:0 0 24px;padding:14px;background:#e627311a;border-radius:10px}.reminders-settings-link{background:none;border:none;color:var(--sf-blue);text-decoration:underline;font:inherit;font-weight:700;cursor:pointer;padding:0}.reminders-toggle-section{display:flex;justify-content:space-between;align-items:center;margin:24px 0}.reminders-toggle-label{font-weight:700;color:var(--sf-blue)}.reminders-toggle{position:relative;width:60px;height:34px;background:#ccc;border-radius:34px;border:none;cursor:pointer;padding:0}.reminders-toggle:disabled{opacity:.5;cursor:not-allowed}.reminders-toggle--on{background:var(--sf-green)}.reminders-toggle-slider{position:absolute;top:3px;left:3px;width:28px;height:28px;background:#fff;border-radius:50%;transition:transform .3s;box-shadow:0 2px 4px #0003}.reminders-toggle--on .reminders-toggle-slider{transform:translate(26px)}.reminders-label{display:block;font-weight:700;color:var(--sf-blue);margin-bottom:12px}.reminders-time-inputs{display:flex;align-items:center;justify-content:center;gap:12px}.reminders-select{font-size:1.1rem;padding:10px 14px;border:2px solid var(--sf-blue);border-radius:10px;background:var(--sf-bg);font-weight:700;min-width:72px}.reminders-select:disabled{opacity:.6}.reminders-separator{font-size:1.4rem;font-weight:700;color:var(--sf-blue)}.reminders-message{margin-top:16px;padding:12px;border-radius:10px;font-size:.95rem;text-align:center}.reminders-message--success{background:#28ab641f;color:var(--sf-green)}.reminders-message--error{background:#e627311a;color:var(--sf-red)}.reminders-save-button{display:block;width:100%;margin-top:8px;background:var(--sf-blue);color:#fff;border:none;border-radius:10px;padding:14px;font-size:1rem;font-weight:700;cursor:pointer}.reminders-save-button:disabled{opacity:.6;cursor:not-allowed}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:999;animation:authFadeInOverlay .3s ease forwards}@keyframes authFadeInOverlay{to{background:#00000073}}.menu-close{position:absolute;top:18px;right:30px;background:transparent;border:none;font-size:1.4rem;color:#000;cursor:pointer;line-height:1;z-index:10;-webkit-tap-highlight-color:transparent}.menu-close:focus,.menu-close:focus-visible{outline:none;box-shadow:none}.auth-modal,.auth-modal-frame,.auth-modal__content,.auth-modal__content *,.profile-modal,.profile-modal *,.avatar-crop-modal,.avatar-crop-modal *,.menu-profile-button,.menu-profile-button *{font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif}.auth-modal{position:fixed;top:100px;left:50%;transform:translate(-50%);width:min(92vw,420px);z-index:1100;font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif}.auth-modal-frame{height:calc(100vh - 100px);max-height:calc(100vh - 100px);background:var(--sf-bg);border-radius:18px 18px 0 0;box-shadow:0 20px 48px #00000059;padding:28px 32px max(36px,var(--inset-bottom));display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;width:100%;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.auth-modal__content{position:relative;width:100%;max-width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;box-sizing:border-box}.auth-modal__title{margin-top:0;font-size:1.7rem;color:var(--sf-blue);letter-spacing:.08rem;text-align:center}.auth-modal__subtitle{font-size:1.1rem;color:#194093d9;text-align:center;max-width:280px;line-height:1.4}.auth-modal__error,.auth-modal__message{width:100%;max-width:280px;font-size:1.1rem;border-radius:6px;padding:10px 14px;text-align:center}.auth-modal__error{background:#dc26261f;color:var(--sf-red)}.auth-modal__message{background:#22c55e1f;color:var(--sf-green)}.auth-form{width:100%;max-width:280px;display:flex;flex-direction:column;gap:16px;align-items:stretch;margin:0 auto;box-sizing:border-box}.auth-form__field{display:flex;flex-direction:column;gap:6px;font-size:1.1rem;color:var(--sf-blue)}.auth-form__field span{font-weight:600}.auth-form__field input{width:100%;padding:10px 12px;font-family:inherit;font-size:max(16px,1.2rem);border-radius:8px;border:2px solid rgba(6,61,166,.35);background:#fff;color:#000;transition:border .15s ease,box-shadow .15s ease;box-sizing:border-box}.auth-form__field input:focus{outline:none;border-color:#063da6a6;box-shadow:0 0 0 3px #063da633}.auth-form__field input:disabled{opacity:.65}.auth-form__submit{margin-top:6px;margin-bottom:20px;padding:12px;font-family:inherit;background:#063da6;color:var(--sf-bg);text-transform:uppercase;font-size:1.1rem;border:none;border-radius:8px;cursor:pointer;letter-spacing:.08rem;transition:transform .15s ease,box-shadow .15s ease}.auth-form__submit:hover{transform:translateY(-1px);box-shadow:0 12px 24px #063da659}.auth-form__submit:disabled{opacity:.6;cursor:wait;transform:none;box-shadow:none}.auth-modal__links{width:100%;max-width:280px;display:flex;flex-direction:column;gap:8px;align-items:center;margin-top:4px}.auth-link{background:none;border:none;color:#063da6;text-decoration:underline;font-family:inherit;font-size:1.1rem;cursor:pointer;padding:0}.auth-link:hover,.auth-link:focus{color:var(--sf-red)}.auth-consent{font-size:1.1rem;color:#0000008c;line-height:1.4;text-align:center;max-width:280px}.auth-consent--bottom{margin-top:16px}.auth-consent a{color:#000000bf;text-decoration:underline}.auth-consent a:hover,.auth-consent a:focus{color:#000000e6}.auth-modal .menu-close{top:12px;right:12px}.auth-modal--ios-simple{position:fixed;bottom:0;left:0;right:0;top:auto;transform:none;width:100%;z-index:1100}.auth-modal-frame--ios-simple{position:fixed;bottom:0;left:0;right:0;width:100%;height:50vh;max-height:50vh;top:auto;transform:translateY(100%);border-radius:18px 18px 0 0;padding:28px 32px max(36px,var(--inset-bottom));animation:slideUpModalIOS .4s cubic-bezier(.32,.72,0,1) forwards}@keyframes slideUpModalIOS{to{transform:translateY(0)}}.auth-modal__content--ios-simple{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;height:100%;padding:0}.auth-apple-signin--ios-simple{width:100%;max-width:280px;margin:0}.auth-consent--ios-simple{font-size:.95rem;color:#0000008c;line-height:1.4;text-align:center;max-width:280px;margin:0;padding:0 16px}.auth-consent--ios-simple a{color:#000000bf;text-decoration:underline}.auth-username-input-container{width:100%;max-width:280px;display:flex;flex-direction:column;gap:16px;align-items:stretch}.auth-username-input-container .auth-form__field{width:100%}.auth-username-input-container .auth-form__field input{width:100%;padding:10px 12px;font-family:inherit;font-size:max(16px,1.2rem);border-radius:8px;border:2px solid rgba(6,61,166,.35);background:#fff;color:#000;transition:border .15s ease,box-shadow .15s ease;box-sizing:border-box}.auth-username-input-container .auth-form__field input:focus{outline:none;border-color:#063da6a6;box-shadow:0 0 0 3px #063da633}.auth-username-input-container .auth-form__submit{width:100%;padding:12px;background:#063da6;color:var(--sf-bg);text-transform:uppercase;font-size:1.1rem;border:none;border-radius:8px;cursor:pointer;letter-spacing:.08rem;transition:transform .15s ease,box-shadow .15s ease}.auth-username-input-container .auth-form__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px #063da659}.auth-username-input-container .auth-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-divider{width:100%;max-width:280px;display:flex;align-items:center;text-align:center;margin:8px 0;color:#0006;font-size:1rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid rgba(0,0,0,.2)}.auth-divider span{padding:0 12px}.auth-apple-signin{width:100%;max-width:280px;padding:12px;background:#000;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s ease,transform .15s ease;margin-top:8px}.auth-apple-signin:hover{background:#1a1a1a;transform:translateY(-1px)}.auth-apple-signin:active{background:#000;transform:translateY(0)}.auth-apple-signin:disabled{opacity:.6;cursor:wait;transform:none}.auth-apple-signin svg{width:18px;height:18px}.auth-form__name-validation{margin-top:4px;font-size:.95rem}.auth-form__validation-checking{color:#0009;font-style:italic}.auth-form__validation-error{color:var(--sf-red);display:flex;flex-direction:column;gap:6px}.auth-form__validation-error span{color:var(--sf-red);font-weight:500}.auth-form__suggestion-button{background:#dc26261a;color:var(--sf-red);border:1px solid rgba(220,38,38,.3);border-radius:6px;padding:6px 10px;font-size:.9rem;cursor:pointer;transition:background .15s ease;text-align:left;margin-top:4px}.auth-form__suggestion-button:hover{background:#dc262633}.auth-form__validation-success{color:var(--sf-green);font-weight:500}@media(max-height:700px){.auth-modal__content{gap:12px}.auth-consent--bottom{margin-top:8px}.auth-modal-frame{padding:24px 32px 28px}}.profile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1200}.profile-modal{position:fixed;top:100px;left:50%;transform:translate(-50%) translateY(100vh);width:min(92vw,420px);background:var(--sf-bg);height:calc(100vh - 100px);border-radius:18px 18px 0 0;padding:32px 28px max(32px,var(--inset-bottom));box-shadow:0 24px 48px #00000059;z-index:1201;display:flex;flex-direction:column;gap:20px;font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif;animation:slideUpModal .4s cubic-bezier(.32,.72,0,1) forwards;touch-action:pan-y;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@keyframes slideUpModal{to{transform:translate(-50%) translateY(0)}}.profile-close-button{position:absolute;top:12px;right:14px;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#063da6}.profile-header{display:flex;flex-direction:column;align-items:center;gap:14px}.profile-avatar-button{position:relative;border:none;background:transparent;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.profile-avatar-button:disabled{cursor:wait;opacity:.6}.profile-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid #063da6;display:block}.profile-avatar-edit{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);background:#063da6e6;color:#fff;font-size:.7rem;letter-spacing:.08rem;text-transform:uppercase;padding:4px 10px;border-radius:999px;pointer-events:none}.profile-avatar-button:hover .profile-avatar-edit{background:#063da6}.profile-avatar-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffff8c;border-radius:50%;font-size:1.4rem;color:#063da6}.profile-title{font-size:1.6rem;color:#063da6;margin:0}.profile-field{display:flex;flex-direction:column;gap:6px}.profile-label{font-size:.85rem;letter-spacing:.08rem;text-transform:uppercase;color:#063da6;min-width:fit-content;white-space:nowrap}.profile-input{border:2px solid #063da6;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:max(16px,1.2rem);color:#063da6;background:#fff}.profile-input:focus{outline:none;box-shadow:0 0 0 3px #063da633}.profile-email{font-size:1.2rem;color:#063da6;word-break:break-word;overflow-wrap:anywhere;max-width:100%}.profile-message{font-size:.95rem;text-align:center;padding:8px 10px;border-radius:8px}.profile-message--error{background:#df404f1a;color:#df404f}.profile-message--success{background:#37a85a1f;color:#168941}.profile-actions{display:flex;flex-direction:column;gap:12px}.profile-save-button{background:#063da6;color:#fff;border:none;border-radius:10px;padding:14px;font-family:inherit;font-size:1.1rem;text-transform:uppercase;letter-spacing:.08rem;cursor:pointer;transition:background .15s ease,transform .15s ease}.profile-save-button:disabled{background:#063da680;cursor:not-allowed}.profile-save-button:not(:disabled):hover{background:#094cd0;transform:translateY(-1px)}.profile-logout-button{background:transparent;color:#df404f;border:2px solid #df404f;border-radius:999px;padding:12px;font-family:inherit;font-size:1rem;text-transform:uppercase;letter-spacing:.08rem;cursor:pointer;transition:background .15s ease,color .15s ease}.profile-logout-button:hover{background:#df404f;color:#fff}.profile-delete-account-button{background:transparent;color:#df404f;border:none;padding:12px;font-family:inherit;font-size:.95rem;text-transform:uppercase;letter-spacing:.08rem;cursor:pointer;text-align:center;transition:opacity .15s ease}.profile-delete-account-button:hover{opacity:.7}.avatar-crop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1500}.avatar-crop-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,420px);background:var(--sf-bg);border-radius:16px;box-shadow:0 24px 48px #00000059;padding:24px;z-index:1501;display:flex;flex-direction:column;gap:18px;font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif}.avatar-cropper{position:relative;width:100%;aspect-ratio:1;background:#063da60d;border-radius:12px;overflow:hidden}.avatar-crop-controls{display:flex;align-items:center;gap:12px}.avatar-crop-controls input[type=range]{flex:1}.avatar-crop-slider-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.08rem;color:#063da6}.avatar-crop-error{font-size:.9rem;color:#df404f;text-align:center}.avatar-crop-actions{display:flex;justify-content:flex-end;gap:12px}.avatar-crop-cancel,.avatar-crop-confirm{border:none;border-radius:10px;padding:10px 18px;font-size:1rem;text-transform:uppercase;letter-spacing:.08rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.avatar-crop-cancel{background:#063da61f;color:#063da6}.avatar-crop-cancel:hover{transform:translateY(-1px);box-shadow:0 10px 22px #063da626}.avatar-crop-confirm{background:#063da6;color:#fff}.avatar-crop-confirm:hover{transform:translateY(-1px);box-shadow:0 12px 24px #063da640}.avatar-crop-cancel:disabled,.avatar-crop-confirm:disabled{opacity:.6;cursor:wait;box-shadow:none;transform:none}.profile-name-validation{margin-top:6px;font-size:.95rem}.profile-name-validation-checking{color:#0009;font-style:italic}.profile-name-validation-error{color:var(--sf-red);display:flex;flex-direction:column;gap:8px}.profile-name-validation-error span{color:var(--sf-red);font-weight:500}.profile-name-suggestion-button{background:#dc26261a;color:var(--sf-red);border:1px solid rgba(220,38,38,.3);border-radius:6px;padding:8px 12px;font-size:.9rem;cursor:pointer;transition:background .15s ease;text-align:left;margin-top:4px}.profile-name-suggestion-button:hover{background:#dc262633}.profile-name-validation-success{color:var(--sf-green);font-weight:500}.banner-container{position:fixed;bottom:0;left:0;right:0;z-index:999;padding-top:16px;padding-bottom:calc(16px + var(--inset-bottom));box-shadow:0 -2px 8px #00000026;animation:slideUp .3s ease-out;box-sizing:border-box;max-width:100vw;overflow:hidden;margin:0;border:none;transform:translateZ(0);will-change:transform;min-height:auto;height:auto}.banner-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:calc(16px + var(--inset-bottom));z-index:-1;background-color:inherit}@keyframes slideUp{0%{transform:translateY(100%) translateZ(0);opacity:0}to{transform:translateY(0) translateZ(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0) translateZ(0);opacity:1}to{transform:translateY(100%) translateZ(0);opacity:0}}.banner-container.closing{animation:slideDown .3s ease-in forwards}.banner-content{width:100%;max-width:100%;display:flex;align-items:center;justify-content:center;gap:16px;padding:0 48px 0 16px;box-sizing:border-box;overflow:hidden;min-height:auto}.banner-text{flex:1;font-size:1.5rem;line-height:1.6;font-weight:500;min-width:0;overflow-wrap:break-word;white-space:pre-line}.banner-text a{color:inherit;text-decoration:underline;cursor:pointer;transition:opacity .2s ease}.banner-text a:hover{opacity:.8}.banner-text a:active{opacity:.6}.banner-shareable-text,.banner-reviewable-text,.banner-battle-menu-text{transition:opacity .2s ease}.banner-shareable-text:hover,.banner-reviewable-text:hover,.banner-battle-menu-text:hover{opacity:.8}.banner-shareable-text:active,.banner-reviewable-text:active,.banner-battle-menu-text:active{opacity:.6}.banner-close{position:absolute;top:8px;right:8px;background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .2s ease;border-radius:4px;min-width:32px;min-height:32px;z-index:1000}.banner-close:hover{opacity:.7}.banner-close:active{opacity:.5}@media(max-width:480px){.banner-container{padding:14px 0;padding-bottom:calc(14px + var(--inset-bottom))}.banner-content{padding:0 44px 0 12px;gap:12px}.banner-text{font-size:1.3rem}.banner-close{top:6px;right:6px}}.score-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:900}.score-modal{position:fixed;top:80px;left:50%;transform:translate(-50%);width:min(92vw,420px);height:calc(100vh - 100px);max-height:calc(100vh - 100px);box-sizing:border-box;padding:48px 24px 32px;background:var(--sf-bg);border-radius:18px;z-index:1000;display:flex;flex-direction:column;overflow-y:auto}.score-modal-close{position:absolute;top:14px;right:18px;background:transparent;border:none;color:var(--sf-blue);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0}.score-modal-card{margin-top:8px;border:2px solid var(--sf-yellow);border-radius:12px;padding:18px 16px 22px;background:var(--sf-bg);flex:0 0 auto;display:flex;flex-direction:column;align-items:center}.score-modal-total{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:12px}.score-modal-total-value{font-size:clamp(2.4rem,6vw,3.2rem);font-weight:700;color:var(--sf-blue)}.score-modal-total-label{font-size:1.1rem;color:#000}.score-modal-grid{display:flex;justify-content:center;gap:32px}.score-modal-grid-item{display:flex;flex-direction:column;align-items:center;gap:2px}.score-modal-grid-value{font-size:1.4rem;font-weight:600;color:var(--sf-blue)}.score-modal-grid-label{font-size:1rem;color:#000}.score-modal-grid-item.max-streak .score-modal-grid-label{white-space:nowrap}@media(max-width:420px){.score-modal{top:72px;max-height:calc(100vh - 88px);padding:40px 16px 24px}}.play-page--unlimited .stack-wrap{--word-stack-gap: 16px;--word-row-step: calc(var(--tile-w, 46px) * 54 / 46 + var(--word-stack-gap))}.play-page--unlimited .word-stack{position:relative;gap:var(--word-stack-gap)}@media(max-width:384px){.play-page--unlimited .stack-wrap{--word-stack-gap: 10px}}@media(min-width:385px)and (max-width:519px){.play-page--unlimited .stack-wrap{--word-stack-gap: 14px}}@media(min-width:385px)and (max-width:519px)and (max-height:932px){.play-page--unlimited .stack-wrap{--word-stack-gap: 12px}}@media(max-width:519px){:is(html.platform-web,html.platform-native) .play-page--unlimited .stack-wrap{--word-stack-gap: 8px}}@media(max-width:519px)and (max-height:720px){.play-page--unlimited .stack-wrap{--word-stack-gap: 6px}}.play-page--unlimited .word-row{transition:none}.play-page--unlimited .word-row.word-row-clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}.play-page--unlimited .word-row.word-row-clickable:focus-visible{outline:2px solid var(--sf-blue);outline-offset:4px;border-radius:6px}.play-page--unlimited .theme-group{display:flex;flex-direction:column-reverse;align-items:center;gap:var(--word-stack-gap, 16px)}.play-page--unlimited .theme-selection-group{outline:3px double var(--theme-color, var(--ink));outline-offset:3px;border-radius:6px}.play-page--unlimited.kb-theme-hints-active .kb-key.s-theme{background:var(--theme-color);box-shadow:none;color:#fff}.play-page--unlimited.kb-theme-hints-active.theme-sf-2 .kb-key.s-theme,.play-page--unlimited.kb-theme-hints-active.theme-sf-5 .kb-key.s-theme{color:var(--text-dark)}.play-page--unlimited.kb-theme-hints-active .kb-key.s-gray{background:var(--gray);color:#fff;box-shadow:none;opacity:.55;text-decoration:line-through}.play-page--unlimited .word-row.slide-out-right{position:relative;z-index:4;animation:unlimitedSlideOutRight .72s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none;will-change:transform,opacity}.play-page--unlimited .word-row.shift-down{transform:translateY(calc(-1 * var(--word-row-step, 70px)));backface-visibility:hidden}.play-page--unlimited .word-row.shift-down.shift-down-active{transform:translateY(0);transition:transform .48s cubic-bezier(.4,0,.2,1);will-change:transform}@keyframes unlimitedSlideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(calc(100% + 28px));opacity:0}}.play-page--unlimited .stack-with-counter{display:flex;justify-content:center;width:100%}.play-page--unlimited .stack-play-area{position:relative;min-width:0}.play-page--unlimited .bonus-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;pointer-events:none;animation:unlimitedBonusOverlayIn .28s ease forwards}.play-page--unlimited .bonus-overlay-text{font-family:Bebas Neue Pro,Union,sans-serif;font-size:clamp(28px,8vw,56px);font-weight:700;letter-spacing:.04em;white-space:nowrap;max-width:calc(100% - 24px);color:var(--ink);text-shadow:0 2px 24px rgba(254,251,239,.95);padding:12px 20px;border-radius:12px;background:#fefbefe0;box-shadow:0 8px 32px #1a1a1a1f}@keyframes unlimitedBonusOverlayIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.play-page--unlimited .theme-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:19;display:grid;place-items:center;pointer-events:none;animation:unlimitedThemeOverlayIn .28s ease forwards}.play-page--unlimited .theme-overlay-text{font-family:Bebas Neue Pro,Union,sans-serif;font-size:clamp(32px,10vw,48px);font-weight:700;letter-spacing:.04em;text-transform:capitalize;color:var(--theme-color, var(--ink));text-shadow:0 2px 24px rgba(254,251,239,.95);padding:10px 24px;border-radius:12px;background:#fefbefe0;box-shadow:0 8px 32px #1a1a1a1f}@keyframes unlimitedThemeOverlayIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.play-page--unlimited .solved-counter{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;padding-top:8px;flex-shrink:0;-webkit-user-select:none;user-select:none}.play-page--unlimited .solved-counter-value{font-family:Bebas Neue Pro,Union,sans-serif;font-size:clamp(28px,8vw,40px);font-weight:700;line-height:1;color:var(--ink)}.play-page--unlimited .solved-counter-label{font-size:11px;letter-spacing:.02em;color:var(--muted);text-align:center;margin-top:2px;max-width:52px;line-height:1.2}.play-page--unlimited .has-theme-color{--theme-border-color: color-mix(in srgb, var(--theme-color) 65%, transparent);color:var(--theme-border-color)}.play-page--unlimited .has-theme-color .tile.dot{border-color:var(--theme-border-color)}.play-page--unlimited .tile.revealed-level-1,.play-page--unlimited .tile.revealed-green{background:var(--sf-green);color:#fff;border-color:var(--sf-green)}.play-page--unlimited .tile.revealed-level-2{background:var(--sf-yellow);color:var(--text-dark);border-color:var(--sf-yellow)}.play-page--unlimited .tile.revealed-level-3{background:var(--sf-blue);color:#fff;border-color:var(--sf-blue)}.play-page--unlimited .tile.revealed-level-4{background:var(--sf-red);color:#fff;border-color:var(--sf-red)}.play-page--unlimited .tile.revealed-level-5{background:var(--sf-orange);color:var(--text-dark);border-color:var(--sf-orange)}.play-page--unlimited .tile.revealed-level-6{background:var(--sf-teal);color:#fff;border-color:var(--sf-teal)}.play-page--unlimited .tile.revealed-level-7{background:var(--sf-purple);color:#fff;border-color:var(--sf-purple)}.play-page--unlimited .tile.revealed-level-8{background:var(--sf-coral);color:#fff;border-color:var(--sf-coral)}.play-page--unlimited .tile.solved-level-1{background:var(--sf-green);color:#fff;border-color:var(--sf-green)}.play-page--unlimited .tile.solved-level-2{background:var(--sf-yellow);color:var(--text-dark);border-color:var(--sf-yellow)}.play-page--unlimited .tile.solved-level-3{background:var(--sf-blue);color:#fff;border-color:var(--sf-blue)}.play-page--unlimited .tile.solved-level-4{background:var(--sf-red);color:#fff;border-color:var(--sf-red)}.play-page--unlimited .tile.solved-level-5{background:var(--sf-orange);color:var(--text-dark);border-color:var(--sf-orange)}.play-page--unlimited .tile.solved-level-6{background:var(--sf-teal);color:#fff;border-color:var(--sf-teal)}.play-page--unlimited .tile.solved-level-7{background:var(--sf-purple);color:#fff;border-color:var(--sf-purple)}.play-page--unlimited .tile.solved-level-8{background:var(--sf-coral);color:#fff;border-color:var(--sf-coral)}.play-page--unlimited .stack-wrap:before{content:"";display:none;width:24px;flex-shrink:0}.play-page--unlimited .stack-infinity{display:none;position:absolute;top:0;bottom:0;right:calc(100% + 6px);width:18px;overflow:visible;transform:translate(-22px);opacity:.55;pointer-events:none}.play-page--unlimited .stack-infinity__svg{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;overflow:visible}.play-page--unlimited .stack-infinity__seg--revealed{stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.play-page--unlimited .stack-infinity__seg--hidden{stroke-width:1.5px;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:3 3}.play-page--unlimited #row0 .tile.dot,.play-page--unlimited #row1 .tile.dot,.play-page--unlimited #row2 .tile.dot,.play-page--unlimited #row3 .tile.dot{border-color:var(--theme-border-color, rgba(0, 0, 0, .18))}.play-page--unlimited .tile.dot{border-width:2px;color:#00000026}.play-page--unlimited .tile.flipping{animation:flipIn .65s ease;transition:none;will-change:transform;backface-visibility:hidden}.play-page--unlimited #row0 .empty-slot,.play-page--unlimited #row1 .empty-slot,.play-page--unlimited #row2 .empty-slot,.play-page--unlimited #row3 .empty-slot{border-color:#0000002e}.play-page--unlimited .word-row.has-theme-color .empty-slot{border-color:color-mix(in srgb,var(--theme-color) 38%,transparent)}.play-page--unlimited .word-row:has(.empty-slot-row).dropping,.play-page--unlimited .word-row:has(.empty-slot-row).shift-down{animation:none;transform:none}.play-page--unlimited .empty-slot{animation:unlimitedEmptyPulse 2.4s ease-in-out infinite}.play-page--unlimited .stack-wrap:has(.tile.flipping) .empty-slot,.play-page--unlimited .stack-wrap:has(.word-row.dropping) .empty-slot,.play-page--unlimited .stack-wrap:has(.word-row.slide-out-right) .empty-slot,.play-page--unlimited .stack-wrap:has(.word-row.shift-down-active) .empty-slot{animation-play-state:paused}@keyframes unlimitedEmptyPulse{0%,to{opacity:.7}50%{opacity:1}}.play-page--unlimited .word-row.row-disabled-top{pointer-events:none;opacity:.42}.play-page--unlimited .row-disabled-top-slots{position:relative}.play-page--unlimited .row-disabled-top-slots:after{content:"";position:absolute;left:-4%;right:-4%;top:50%;height:2px;background:#00000047;transform:rotate(-7deg);pointer-events:none}.play-page--unlimited.play-page--grid-reduced .word-stack{gap:var(--word-stack-gap)}.end-modal-panel .complete-inline .splash-stack{margin:14px auto 10px}.end-modal-panel .complete-inline .splash-stack-row{margin-top:-6px}.end-modal-panel .complete-inline .splash-stack-row:last-child{margin-top:0}.end-modal-panel .complete-inline .splash-stack-tile{width:22px;height:22px;border-radius:3px;box-shadow:none}.end-modal-panel .unlimited-end-stats{display:flex;justify-content:center;align-items:flex-start;gap:28px;margin-top:12px}.end-modal-panel .unlimited-end-stats .solved-counter{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;flex-shrink:0}.end-modal-panel .unlimited-end-stats .solved-counter-value{font-family:Bebas Neue Pro,Union,sans-serif;font-size:32px;font-weight:700;line-height:1;color:var(--ink)}.end-modal-panel .complete-inline.failed .unlimited-end-stats .solved-counter:first-child .solved-counter-value{color:var(--red)}.end-modal-panel .unlimited-end-stats .solved-counter-label{font-size:11px;letter-spacing:.02em;color:var(--muted);text-align:center;margin-top:2px;max-width:52px;line-height:1.2}@font-face{font-family:Union;src:url(../assets/fonts/Union.woff2) format("woff2"),url(../assets/fonts/Union.woff) format("woff"),url(../assets/fonts/Union.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block;unicode-range:U+0000-00CA,U+00CC-00E7,U+00EC-10FFFF}@font-face{font-family:Union;src:url(../assets/fonts/Union.otf) format("opentype");font-weight:400;font-style:normal;font-display:block;unicode-range:U+00CB,U+00E8-00EB}@font-face{font-family:Bebas Neue Pro;src:url(../assets/fonts/BebasNeue-Pro-Expanded-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Bebas Neue Pro;src:url(../assets/fonts/BebasNeue-Pro-SemiExpanded-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:block}:root{--sf-bg: #fefbef;--sf-green: #28ab64;--sf-red: #e62731;--sf-yellow: #fee245;--sf-blue: #194093;--sf-orange: #e8a020;--sf-teal: #1a8f7d;--sf-purple: #5b4d9e;--sf-coral: #e85a3c;--text-dark: #1a1a1a;--bg: var(--sf-bg);--ink: var(--text-dark);--muted: rgba(26, 26, 26, .55);--accent: var(--sf-blue);--tile: #ffffff;--tile-w: 46px;--tile-h: 54px;--good: var(--sf-green);--yellow: var(--sf-yellow);--orange: #e8a020;--red: var(--sf-red);--gray: rgba(26, 26, 26, .35);--ios-kb-key-h: 50px;--ios-kb-key-aspect-w: 40;--ios-kb-key-aspect-h: 50;--ios-kb-gap: 3px;--ios-kb-row-gap: 11px;--ios-kb-pad-x: 10px;--ios-kb-radius: 5px;--ios-kb-font: 22px;--ios-kb-return-min: 44px;--ios-kb-shadow: 0 1px 0 rgba(0, 0, 0, .28);--keyboard-margin-top: 14px;--input-area-margin-top: 24px;--input-area-padding-top: 26px;--play-header-gap: 40px;--play-inline-pad: 14px;--inset-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));--inset-right: var(--safe-area-inset-right, env(safe-area-inset-right, 0px));--inset-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--inset-left: var(--safe-area-inset-left, env(safe-area-inset-left, 0px))}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden}body{font-family:Union,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--sf-bg);color:var(--text-dark);width:100%;height:100vh;height:100svh;height:100dvh;margin:0;padding:max(8px,var(--inset-top)) 0 max(8px,var(--inset-bottom));box-sizing:border-box;overflow:hidden;-webkit-font-smoothing:antialiased}html.platform-web,html.platform-native{height:var(--app-height, 100svh);overflow:hidden}html.platform-web body,html.platform-native body{height:100%;max-height:100%}.container{width:100%;max-width:480px;margin:0 auto;position:relative;z-index:1}.splash-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--sf-bg);display:flex;align-items:center;justify-content:center;transition:opacity .4s ease,visibility .4s ease}.splash-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.splash-content{display:flex;flex-direction:column;align-items:center;gap:14px;transform:translateY(-32px);animation:splashFadeIn .5s ease forwards}@keyframes splashFadeIn{0%{opacity:0}to{opacity:1}}.splash-stack{display:flex;flex-direction:column-reverse;align-items:center;margin-top:10px;perspective:500px}.splash-stack-row{display:flex;gap:4px;justify-content:center;margin-top:-10px;opacity:0;transform-origin:center bottom;animation:splashBlockStack .9s cubic-bezier(.34,1.2,.64,1) forwards;animation-delay:calc(.16s * var(--stack-i))}.splash-stack-row:last-child{margin-top:0}.splash-stack-tile{width:40px;height:40px;border-radius:5px;border:1.5px solid var(--ink);box-shadow:0 3px #0000001f;flex-shrink:0}.splash-stack-row.s-green .splash-stack-tile{background:var(--good);border-color:var(--good)}.splash-stack-row.s-yellow .splash-stack-tile{background:var(--yellow);border-color:var(--yellow)}.splash-stack-row.s-orange .splash-stack-tile{background:var(--orange);border-color:var(--orange)}.splash-stack-row.s-red .splash-stack-tile{background:var(--red);border-color:var(--red)}.splash-stack--static{perspective:none}.splash-stack--static .splash-stack-row{opacity:1;animation:none}@keyframes splashBlockStack{0%{opacity:0;transform:translateY(-120px) scale(.75) rotateX(25deg)}55%{opacity:1;transform:translateY(0) scale(1) rotateX(0)}72%{opacity:1;transform:translateY(6px) scale(1.03) rotateX(-3deg)}88%{opacity:1;transform:translateY(-2px) scale(.99) rotateX(1deg)}to{opacity:1;transform:translateY(0) scale(1) rotateX(0)}}.woopword-logo-img{display:block;width:auto;max-width:min(320px,92vw);height:auto;max-height:52px;object-fit:contain}.woopword-logo--text{display:inline-flex;align-items:center;justify-content:center;background:#000;border-radius:4px;padding:10px 22px;max-width:min(320px,92vw);box-sizing:border-box}.woopword-logo-text{font-family:Bebas Neue Pro,sans-serif;font-size:clamp(1.75rem,8vw,2.35rem);font-weight:400;line-height:1;letter-spacing:.06em;color:#fff;white-space:nowrap}.splash-brand{display:flex;flex-direction:column;align-items:center;gap:4px}.loading-indicator{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:var(--sf-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-indicator__spinner{width:32px;height:32px;border:3px solid rgba(26,26,26,.12);border-top-color:var(--accent);border-radius:50%;animation:loadingSpin .75s linear infinite}@keyframes loadingSpin{to{transform:rotate(360deg)}}.splash-by{font-family:Union,sans-serif;font-size:1.25rem;color:var(--text-dark);margin:0}.play-page--hidden{display:none!important}.top-header{position:relative;width:100%;flex-shrink:0;padding-top:12px;margin-bottom:0;overflow:visible}.top-header:has(.widget-header--mode){min-height:128px;box-sizing:border-box}.widget-header{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:14px 0 4px;text-align:center;overflow:visible;pointer-events:none}.widget-header--mode{margin-bottom:20px;gap:0;min-height:116px;box-sizing:border-box}.header-meta-slot,.widget-header--mode .solved-counter{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:40px;min-height:48px;padding-top:0;flex-shrink:0}.header-meta-value{font-family:Union,sans-serif;font-size:clamp(22px,6vw,30px);line-height:1;color:var(--text-dark)}.header-meta-label{font-size:9px;letter-spacing:.02em;color:var(--muted);text-align:center;margin-top:2px;max-width:44px;line-height:1.2}.widget-header--mode .solved-counter-label{font-size:12px;letter-spacing:.02em;color:var(--text-dark);text-align:center;margin-top:2px;max-width:52px;line-height:1.2;white-space:nowrap}.header-meta-slot .header-meta-label{visibility:hidden}.widget-header--mode .solved-counter-value{font-family:Bebas Neue Pro,Union,sans-serif;font-size:clamp(22px,6vw,30px);font-weight:700;line-height:1;color:var(--ink)}.top-header:has(.widget-header--mode){min-height:148px;box-sizing:border-box}.top-header:has(.widget-header--mode) .header-bar.s-green.pos-tl{left:-25px}.top-header:has(.widget-header--mode) .header-bar.s-yellow.pos-tr{top:8px}.top-header:has(.widget-header--mode) .header-bar.s-orange.pos-bl{left:-66px}.top-header:has(.widget-header--mode) .header-bar.s-red.pos-br{right:4px}.top-header:has(.widget-header--mode) .header-deco--admin-nav .header-bar.pos-bl{left:-66px}.top-header:has(.widget-header--mode) .header-deco--admin-nav .header-bar.pos-br{right:4px}.header-deco{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.header-bar{--bar-letter-w: 11px;--bar-gap: 2px;position:absolute;width:calc(var(--letters) * var(--bar-letter-w) + (var(--letters) - 1) * var(--bar-gap));height:14px;border-radius:4px;border:1.5px solid transparent;box-shadow:0 2px #0000001a}.header-bar.s-green{background:var(--good);border-color:var(--good)}.header-bar.s-yellow{background:var(--yellow);border-color:var(--yellow)}.header-bar.s-orange{background:var(--orange);border-color:var(--orange)}.header-bar.s-red{background:var(--red);border-color:var(--red)}.header-bar.pos-tl{left:-2px;top:2px}.header-bar.pos-tr{right:-46px;top:18px}.header-bar.pos-bl{left:-58px;bottom:6px}.header-bar.pos-br{right:12px;bottom:8px}.header-deco--admin-nav{pointer-events:none;z-index:2}.header-deco--admin-nav .header-bar--admin{pointer-events:auto;touch-action:manipulation;cursor:pointer;padding:0;margin:0;border:none;-webkit-tap-highlight-color:transparent;position:absolute;z-index:3}.header-deco--admin-nav .header-bar.pos-bl{left:8px}.header-deco--admin-nav .header-bar.pos-br{right:8px}.header-deco--admin-nav .header-bar--admin:after{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px}.header-deco--admin-nav .header-bar--admin:active{filter:brightness(1.12);transform:scale(1.03)}@media(min-width:520px){.header-deco{left:50%;right:auto;width:480px;transform:translate(-50%)}.header-bar.pos-tr{right:12px}.header-bar.pos-bl{left:12px}.top-header:has(.widget-header--mode) .header-bar.s-orange.pos-bl,.top-header:has(.widget-header--mode) .header-deco--admin-nav .header-bar.pos-bl{left:4px}.top-header:has(.widget-header--mode) .header-bar.s-red.pos-br,.top-header:has(.widget-header--mode) .header-deco--admin-nav .header-bar.pos-br{right:4px}}.widget-header .game-logo,.widget-header .header-subtitle,.widget-header .header-meta,.widget-header .practice-header-title,.widget-header .close-practice-btn--compact,.widget-header .mode-toggle{position:relative;z-index:1}.widget-header .close-practice-btn--compact{pointer-events:auto}@media(max-width:320px){.header-deco:not(.header-deco--admin-nav){display:none}}.game-logo{width:auto;max-width:min(150px,70vw);height:auto;max-height:36px;margin-top:4px;object-fit:contain}.game-logo--next{max-width:min(118px,58vw);max-height:28px}.header-subtitle{font-family:Union,sans-serif;font-size:1.35rem;margin-top:2px;line-height:1.1;color:var(--text-dark)}.widget-header--practice{margin-bottom:28px;gap:6px}.practice-header-title{font-family:Union,sans-serif;font-size:1.35rem;line-height:1.1;color:var(--text-dark);margin-top:4px}.close-practice-btn--compact{margin-top:0;padding:4px 12px;font-size:.75rem;font-weight:600;border-width:1.5px;border-radius:6px}.countdown-timer{font-size:1.35rem;font-weight:400}.header-subtitle.countdown-timer{margin-top:10px}.close-practice-btn{display:inline-block;margin-top:10px;padding:8px 16px;border:2px solid var(--sf-blue);border-radius:8px;background:transparent;color:var(--sf-blue);font-family:Union,sans-serif;font-size:.85rem;font-weight:700;cursor:pointer;transition:opacity .15s ease;-webkit-tap-highlight-color:transparent}.close-practice-btn:hover{opacity:.85}.close-practice-btn:active{opacity:.75}.end-close-practice{width:100%;margin-top:8px}.stack-wrap{display:flex;gap:0px;margin-top:6px;margin-bottom:28px;flex-shrink:0;align-items:stretch;justify-content:center}.stack-wrap:after{content:"";display:block;width:20px;flex-shrink:0}.bracket{position:relative;display:flex;flex-direction:column-reverse;width:14px;flex-shrink:0;align-self:stretch;margin-left:-6px}.br-seg{flex:1;position:relative;transition:color .4s ease,opacity .4s ease;opacity:.55}.br-seg-stem{position:absolute;left:-2.5px;top:0;bottom:0;width:0;border-left:2.5px solid currentColor;transition:border-left-color .35s ease;pointer-events:none;z-index:0}.bracket[data-top-seg="1"] #brSeg1 .br-seg-stem,.bracket[data-top-seg="2"] #brSeg2 .br-seg-stem,.bracket[data-top-seg="3"] #brSeg3 .br-seg-stem,.bracket[data-top-seg="4"] #brSeg4 .br-seg-stem{top:10px;clip-path:inset(2.5px 0 0 0)}.bracket[data-top-seg="1"] #brSeg1.segment-unrevealed .br-seg-stem,.bracket[data-top-seg="2"] #brSeg2.segment-unrevealed .br-seg-stem,.bracket[data-top-seg="3"] #brSeg3.segment-unrevealed .br-seg-stem,.bracket[data-top-seg="4"] #brSeg4.segment-unrevealed .br-seg-stem{clip-path:inset(1.5px 0 0 0)}#brSeg1 .br-seg-stem{bottom:10px}.br-seg.segment-unrevealed .br-seg-stem{left:-1.5px;border-left-width:1.5px;border-left-style:dashed;border-left-color:#0000002e}#brSeg2.segment-unrevealed .br-seg-stem{border-left-color:#d7aa1994}#brSeg3.segment-unrevealed .br-seg-stem{border-left-color:#e8a02073}#brSeg4.segment-unrevealed .br-seg-stem{border-left-color:#e6273159}#brSeg1.segment-extra,#brSeg2.segment-extra,#brSeg3.segment-extra,#brSeg4.segment-extra{color:var(--gray);opacity:1}#brSeg2.segment-extra.segment-unrevealed .br-seg-stem,#brSeg3.segment-extra.segment-unrevealed .br-seg-stem,#brSeg4.segment-extra.segment-unrevealed .br-seg-stem{border-left-color:var(--gray)}#brSeg1.segment-extra.segment-unrevealed:after{border-bottom-color:var(--gray);border-left-color:var(--gray)}#brSeg1{color:var(--good)}#brSeg2{color:var(--yellow)}#brSeg3{color:var(--orange)}#brSeg4{color:var(--red)}.br-seg.segment-solved-1,.br-seg.segment-solved-2,.br-seg.segment-solved-3,.br-seg.segment-solved-4{opacity:1}.bracket[data-top-seg="1"] #brSeg1:before,.bracket[data-top-seg="2"] #brSeg2:before,.bracket[data-top-seg="3"] #brSeg3:before,.bracket[data-top-seg="4"] #brSeg4:before{content:"";position:absolute;top:0;left:-2.5px;width:8px;height:10px;border-top:2.5px solid currentColor;border-left:2.5px solid currentColor;border-top-left-radius:8px;transition:border-top-color .35s ease,border-left-color .35s ease;z-index:1;pointer-events:none}#brSeg1:after{content:"";position:absolute;bottom:0;left:-2.5px;width:8px;height:10px;border-bottom:2.5px solid currentColor;border-left:2.5px solid currentColor;border-bottom-left-radius:8px;transition:border-bottom-color .35s ease,border-left-color .35s ease;z-index:1;pointer-events:none}#brSeg1.segment-unrevealed:after{left:-1.5px;border-bottom-width:1.5px;border-left-width:1.5px;border-bottom-style:dashed;border-left-style:dashed;border-bottom-color:#0000002e;border-left-color:#0000002e}.br-knik{position:absolute;top:var(--knik-top, 87.5%);left:-8px;width:8px;height:16px;border-left:2.5px solid var(--knik-color, currentColor);border-top-left-radius:7px;border-bottom-left-radius:7px;transform:translateY(-50%);pointer-events:none;z-index:1;transition:top .35s ease,border-color .35s ease}.word-stack{flex:0 1 auto;width:auto;max-width:100%;min-width:0;display:flex;flex-direction:column-reverse;align-items:center;gap:16px}.word-row{transition:opacity .5s ease}.word-row.coach-row-spotlight{position:relative;z-index:901;isolation:isolate;opacity:.92}.coach-balloon-active .word-row.solved-row:not(.coach-row-spotlight){position:relative;z-index:901;isolation:isolate;opacity:.55}.coach-balloon-active .word-row.solved-row.coach-row-spotlight{opacity:.78}.word-row.coach-row-spotlight-pair .tile:not(.revealed-green):not(.solved-level-1):not(.solved-level-2):not(.solved-level-3):not(.solved-level-4){background:#f0ede6}.word-row.solved-row{opacity:.85}.coach-balloon-active .word-row.solved-row{transition:opacity .28s ease}.word-row.dropping{animation:dropIn .85s cubic-bezier(.4,1.4,.5,1) both;will-change:transform,opacity}@keyframes dropIn{0%{transform:translateY(-260px);opacity:0}70%{transform:translateY(8px);opacity:1}to{transform:translateY(0);opacity:1}}.tiles{display:flex;gap:5px;justify-content:center;align-items:center;flex-wrap:nowrap;width:auto;max-width:100%;perspective:700px}.tile{flex:1 1 0;min-width:26px;max-width:var(--tile-w);width:var(--tile-w);aspect-ratio:46 / 54;height:auto;box-sizing:border-box;background:var(--tile);border:1.5px solid var(--ink);border-radius:4px;display:grid;place-items:center;font-family:Union,sans-serif;font-weight:400;font-size:clamp(20px,7.5vw,35px);line-height:1;text-align:center;-webkit-user-select:none;user-select:none;transition:background .3s ease,color .3s ease,border-color .3s ease}.tile-letter{display:block;line-height:1;transform:translate(-.08em)}.tile.dot{border-width:2px;color:#00000026}#row0 .tile.dot{border-color:#28ab64a6}#row1 .tile.dot{border-color:#d7aa19d9}#row2 .tile.dot{border-color:#e8a020b3}#row3 .tile.dot{border-color:#e6273199}.tile.revealed-green,.tile.solved-level-1{background:var(--good);color:#fff;border-color:var(--good)}.tile.solved-level-2{background:var(--yellow);color:#fff;border-color:var(--yellow)}.tile.solved-level-3{background:var(--orange);color:#fff;border-color:var(--orange)}.tile.solved-level-4{background:var(--red);color:#fff;border-color:var(--red)}.tile.unplayed-reveal,.tile.revealed-extra,.tile.solved-extra,.word-row.extra-word-row .tile{border-color:var(--gray)}.tile.unplayed-reveal,.tile.revealed-extra,.tile.solved-extra{background:var(--sf-bg);color:var(--gray)}.tile.unplayed-reveal{animation:unplayedTileIn .45s ease both}#row0.extra-word-row .tile.dot,#row1.extra-word-row .tile.dot,#row2.extra-word-row .tile.dot,#row3.extra-word-row .tile.dot{border-color:var(--gray);color:var(--gray)}#row0.extra-word-row .empty-slot,#row1.extra-word-row .empty-slot,#row2.extra-word-row .empty-slot,#row3.extra-word-row .empty-slot{border-color:var(--gray)}.word-row.unplayed-reveal-row{animation:unplayedRowIn .5s ease both}@keyframes unplayedTileIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes unplayedRowIn{0%{opacity:.35}to{opacity:1}}.empty-slot-row{display:flex;gap:5px;justify-content:center;flex-wrap:nowrap;width:auto;max-width:100%}.empty-slot{flex:1 1 0;min-width:26px;max-width:46px;width:46px;aspect-ratio:46 / 54;height:auto;box-sizing:border-box;border:1.5px dashed rgba(0,0,0,.18);border-radius:4px;background:transparent;animation:emptyPulse 2.4s ease-in-out infinite}.stack-wrap:has(.tile.flipping) .empty-slot,.stack-wrap:has(.word-row.dropping) .empty-slot{animation-play-state:paused}#row1 .empty-slot{border-color:#d7aa1994}#row2 .empty-slot{border-color:#e8a02073}#row3 .empty-slot{border-color:#e6273159}@keyframes emptyPulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes flipIn{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}to{transform:rotateX(0)}}.tile.flipping{animation:flipIn .9s ease;transition:none;will-change:transform;backface-visibility:hidden}.new-word-banner{text-align:center;font-family:Union,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sf-blue);font-weight:700;padding:6px 0;opacity:0;transition:opacity .3s ease}.new-word-banner.show{opacity:1}.input-area{margin-top:var(--input-area-margin-top);padding-top:var(--input-area-padding-top);border-top:1px solid rgba(0,0,0,.1);flex-shrink:0}.input-row{--input-control-h: calc(var(--tile-h) * .75);--menu-btn-size: var(--input-control-h);display:flex;align-items:center;gap:var(--play-inline-pad)}.input-row-leading{display:flex;align-items:center;gap:6px;flex-shrink:0}.input-row-main{flex:1;min-width:0}.input-display{height:var(--input-control-h, var(--tile-h));min-height:var(--input-control-h, var(--tile-h));box-sizing:border-box;border:1.5px solid var(--ink);border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;font-family:Bebas Neue Pro,sans-serif;font-size:20px;font-weight:400;line-height:1;letter-spacing:.06em;color:var(--sf-blue);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.menu-btn{flex:0 0 var(--menu-btn-size, var(--tile-h));width:var(--menu-btn-size, var(--tile-h));height:var(--menu-btn-size, var(--tile-h));aspect-ratio:1;box-sizing:border-box;border:1.5px solid var(--ink);border-radius:4px;background:var(--sf-bg);color:var(--sf-blue);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent}.menu-btn:hover{background:#0000000a}.menu-btn:active{background:#00000014}.input-text{font-family:inherit}.input-display.empty .input-text:before{content:attr(data-placeholder);font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;color:var(--muted);opacity:.55}.input-display.shake{animation:shake .4s ease}.input-caret{display:inline-block;width:2px;height:calc(var(--input-control-h, var(--tile-h)) * .55);background:var(--accent);margin-left:4px;animation:caretBlink 1s steps(2) infinite}@keyframes caretBlink{0%,50%{opacity:1}50.01%,to{opacity:0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.keyboard{--ios-kb-preview-lift: calc(var(--ios-kb-key-h) * .9);margin-top:max(0px,calc(var(--keyboard-margin-top) - var(--ios-kb-preview-lift)));padding-top:var(--ios-kb-preview-lift);flex-shrink:0;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:var(--ios-kb-pad-x);padding-right:var(--ios-kb-pad-x);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--ios-kb-row-gap);align-items:stretch;touch-action:manipulation;overflow:visible}@media(min-width:520px){.keyboard{width:100%;max-width:480px;margin-left:auto;margin-right:auto}}.kb-row{display:grid;gap:var(--ios-kb-gap);width:100%;justify-items:center;overflow:visible;grid-template-columns:repeat(var(--kb-cols, 10),minmax(0,1fr))}.kb-row[data-cols="20"]{grid-template-columns:repeat(20,minmax(0,1fr))}.kb-row--indented{transform:none}.kb-spacer{visibility:hidden;pointer-events:none}.kb-key{position:relative;overflow:visible;z-index:0;width:auto;max-width:100%;height:var(--ios-kb-key-h);aspect-ratio:var(--ios-kb-key-aspect-w) / var(--ios-kb-key-aspect-h);border:none;background:var(--tile);color:var(--ink);border-radius:var(--ios-kb-radius);box-shadow:var(--ios-kb-shadow);font-family:Bebas Neue Pro,sans-serif;font-weight:400;font-size:var(--ios-kb-font);line-height:1;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}.kb-key-label{position:relative;z-index:1}.kb-key-preview{position:absolute;left:50%;bottom:calc(100% - 4px);width:calc(100% + 14px);height:calc(var(--ios-kb-key-h) * 1.5);transform:translate(-50%);transform-origin:center bottom;z-index:2;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:7px 7px 2px 2px;background:var(--tile);color:var(--ink);box-shadow:0 1px #00000047,0 2px 8px #0000001f;pointer-events:none;animation:kbKeyPreview .22s cubic-bezier(.22,.95,.31,1.15) forwards}.kb-key-preview-letter{font-size:calc(var(--ios-kb-font) * 1.5);line-height:1;letter-spacing:.02em;transform:translateY(-.05em)}@keyframes kbKeyPreview{0%{opacity:0;transform:translate(-50%) scale(.5)}16%{opacity:1;transform:translate(-50%) scale(1.04)}72%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.94)}}.kb-key:active{transform:scale(.97)}.kb-key.tapped:active{transform:none}.kb-key.kb-wide{font-size:12px;letter-spacing:.1em}.kb-key.kb-backspace{width:100%;justify-self:stretch;aspect-ratio:auto;background:var(--tile);box-shadow:var(--ios-kb-shadow);color:var(--ink)}.kb-key.kb-backspace.disabled{cursor:not-allowed;pointer-events:none}.kb-key.kb-backspace.disabled svg{opacity:.3}.kb-row--indented .kb-key.kb-backspace{justify-self:end;width:100%;max-width:100%}.kb-row--indented .kb-key.kb-backspace svg{width:16px;height:16px}.kb-row--bottom .kb-key.kb-enter{justify-self:end;width:100%;max-width:100%}.kb-row--bottom .kb-key.kb-give-up{justify-self:start;width:100%;max-width:100%}.kb-key.kb-give-up{aspect-ratio:auto;background:var(--tile);box-shadow:var(--ios-kb-shadow);color:var(--ink)}.kb-key.kb-give-up.disabled{cursor:not-allowed;pointer-events:none}.kb-key.kb-give-up.disabled svg{opacity:.3}.kb-key.kb-give-up svg{width:16px;height:16px}.kb-key.kb-give-up:active:not(.disabled){opacity:.88}.kb-key.kb-enter{aspect-ratio:auto;background:var(--sf-blue);color:var(--sf-bg);box-shadow:var(--ios-kb-shadow);font-family:Bebas Neue Pro,sans-serif;font-size:20px;letter-spacing:.04em}.kb-key.kb-enter:active{opacity:.88}.kb-key.s-green,.kb-key.s-green .kb-key-preview{background:var(--good);color:#fff;box-shadow:none}.kb-key.s-gray{background:var(--gray);color:#fff;box-shadow:none;opacity:.55;text-decoration:line-through}.kb-key.s-gray .kb-key-preview{background:var(--gray);color:#fff;box-shadow:none;opacity:1;text-decoration:none}@media(max-width:384px){:root{--play-header-gap: 26px;--keyboard-margin-top: 3px;--input-area-margin-top: 12px;--input-area-padding-top: 14px;--ios-kb-key-h: 46px;--ios-kb-key-aspect-w: 36;--ios-kb-key-aspect-h: 46;--ios-kb-gap: 2px;--ios-kb-row-gap: 8px;--ios-kb-font: 20px;--ios-kb-return-min: 38px}.top-header{padding-top:4px}.widget-header{padding:8px 0 2px}.widget-header--mode{margin-bottom:20px}.widget-header--practice{margin-bottom:10px}.game-logo{max-height:28px}.game-logo--next{max-width:min(100px,52vw);max-height:22px}.header-subtitle{font-size:1.1rem;margin-top:0}.header-subtitle.countdown-timer{margin-top:6px}.practice-header-title{font-size:1.1rem;margin-top:0}.stack-wrap{margin-top:4px;margin-bottom:16px}.word-stack{gap:10px}.feedback{margin:2px 0 0;min-height:14px;font-size:.8rem}.input-display{font-size:18px}.input-display.empty .input-text:before{font-size:inherit}}@media(min-width:385px)and (max-width:519px){:root{--play-header-gap: 44px}.top-header{padding-top:12px}.widget-header{padding:16px 0 6px}.widget-header--mode{margin-bottom:20px}.widget-header--practice{margin-bottom:34px}.game-logo{max-height:40px}.game-logo--next{max-height:30px}.header-subtitle,.practice-header-title,.countdown-timer{font-size:1.42rem}.header-subtitle.countdown-timer{margin-top:11px}.stack-wrap{margin-top:8px;margin-bottom:24px}.word-stack{gap:14px}}@media(min-width:385px)and (max-width:519px)and (max-height:932px){:root{--play-header-gap: 34px;--keyboard-margin-top: 8px;--input-area-margin-top: 16px;--input-area-padding-top: 18px;--ios-kb-key-h: 48px;--ios-kb-key-aspect-w: 37;--ios-kb-key-aspect-h: 48;--ios-kb-gap: 2px;--ios-kb-row-gap: 9px;--ios-kb-font: 21px;--ios-kb-return-min: 40px}.stack-wrap{margin-bottom:20px}.word-stack{gap:12px}.feedback{margin:4px 0 0;min-height:16px}}@media(min-width:520px){:root{--play-header-gap: 48px}}@media(max-width:519px){:is(html.platform-web,html.platform-native){--play-header-gap: 22px;--keyboard-margin-top: 4px;--input-area-margin-top: 8px;--input-area-padding-top: 10px;--ios-kb-key-h: 44px;--ios-kb-key-aspect-w: 35;--ios-kb-key-aspect-h: 44;--ios-kb-gap: 2px;--ios-kb-row-gap: 7px;--ios-kb-font: 19px;--ios-kb-return-min: 36px}:is(html.platform-web,html.platform-native) .top-header{padding-top:4px}:is(html.platform-web,html.platform-native) .widget-header{padding:8px 0 2px}:is(html.platform-web,html.platform-native) .widget-header--mode{margin-bottom:20px}:is(html.platform-web,html.platform-native) .widget-header--practice{margin-bottom:14px}:is(html.platform-web,html.platform-native) .game-logo{max-height:30px}:is(html.platform-web,html.platform-native) .game-logo--next{max-height:24px}:is(html.platform-web,html.platform-native) .header-subtitle,:is(html.platform-web,html.platform-native) .practice-header-title,:is(html.platform-web,html.platform-native) .countdown-timer{font-size:1.1rem}:is(html.platform-web,html.platform-native) .header-subtitle.countdown-timer{margin-top:6px}:is(html.platform-web,html.platform-native) .stack-wrap{margin-top:2px;margin-bottom:10px}:is(html.platform-web,html.platform-native) .word-stack{gap:8px}:is(html.platform-web,html.platform-native) .feedback{margin:2px 0 0;min-height:12px;font-size:.8rem}:is(html.platform-web,html.platform-native) .input-display{font-size:18px}:is(html.platform-web,html.platform-native) .play-page-body{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:max(12px,var(--inset-bottom))}}@media(max-width:519px){.play-page-body{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:max(12px,var(--inset-bottom))}}@media(max-width:519px)and (max-height:720px){:root{--play-header-gap: 14px;--keyboard-margin-top: 2px;--input-area-margin-top: 4px;--input-area-padding-top: 6px;--ios-kb-key-h: 38px;--ios-kb-key-aspect-w: 30;--ios-kb-key-aspect-h: 38;--ios-kb-gap: 1px;--ios-kb-row-gap: 5px;--ios-kb-font: 17px;--ios-kb-return-min: 30px;--tile-w: 38px;--tile-h: 44px}.top-header{padding-top:2px}.widget-header{padding:6px 0 0}.widget-header--mode{margin-bottom:20px}.widget-header--practice{margin-bottom:8px}.game-logo{max-height:26px}.game-logo--next{max-height:20px}.header-subtitle,.practice-header-title,.countdown-timer{font-size:1rem}.header-subtitle.countdown-timer{margin-top:4px}.stack-wrap{margin-top:0;margin-bottom:6px}.word-stack{gap:6px}.feedback{margin:0;min-height:10px;font-size:.75rem}.input-display,.kb-key.kb-enter{font-size:16px}.play-page-body{padding-bottom:max(20px,var(--inset-bottom));scroll-padding-bottom:max(20px,var(--inset-bottom))}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#1a1a1a94;display:flex;align-items:center;justify-content:center;padding:20px 16px}.modal-panel{position:relative;width:100%;max-width:480px;background:var(--sf-bg);border-radius:12px;border:1.5px solid var(--ink);box-shadow:0 8px 32px #0000002e;overflow:hidden}.modal-panel--menu{max-width:520px;display:flex;flex-direction:column;max-height:calc(100dvh - max(16px,var(--inset-top)) - max(16px,var(--inset-bottom)));margin-bottom:0}.modal-panel--menu .modal-header--minimal{flex-shrink:0}.modal-panel--menu .menu-profile-button{flex-shrink:0;position:relative;z-index:1}.modal-deco{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.modal-deco .modal-bar-1{left:-24px;top:calc(14% - 20px)}.modal-deco .modal-bar-2{right:-50px;top:32%}.modal-deco .modal-bar-3{left:18px;top:calc(42% + 15px)}.modal-deco .modal-bar-4{right:-18px;top:52%}.modal-deco .modal-bar-5{left:-42px;bottom:32%}.modal-deco .modal-bar-6{right:4px;bottom:14%}.modal-panel .modal-header,.modal-panel .modal-body{position:relative;z-index:1}.modal-header{display:flex;align-items:center;gap:8px;padding:12px 12px 10px;border-bottom:1px solid rgba(0,0,0,.1)}.modal-header--minimal{justify-content:flex-end;border-bottom:none;padding-bottom:4px}.modal-panel--menu .modal-header--minimal{padding-top:8px;padding-bottom:2px}.modal-header--minimal .modal-back-spacer{display:none}.modal-title-spacer{flex:1}.modal-back,.modal-back-spacer{flex-shrink:0;width:36px}.modal-back{border:none;background:transparent;font-family:Union,sans-serif;font-size:1.25rem;color:var(--sf-blue);cursor:pointer;padding:4px 0;line-height:1}.modal-title{flex:1;font-family:Union,sans-serif;font-size:1.1rem;font-weight:700;text-align:center;min-width:0}.modal-close{flex-shrink:0;width:36px;height:36px;border:none;background:transparent;color:var(--ink);border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.7}.modal-close:hover{opacity:1;background:#0000000d}.modal-body{max-height:min(60vh,400px);overflow-y:auto}.modal-body--menu{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body--explain{max-height:none;overflow-y:visible;padding-top:6px;padding-bottom:10px}.modal-panel--explain{max-width:520px}.modal-panel--explain .modal-header{padding:10px 12px}.modal-header--explain .modal-explain-title{flex:1;min-width:0;margin:0 auto;font-family:Union,sans-serif;font-size:25px;font-weight:400;letter-spacing:.01em;line-height:1;color:var(--sf-blue);text-align:center}.modal-menu{display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px 16px 28px}.modal-body--menu .modal-menu{gap:10px;padding:8px 20px 20px}.modal-menu-btn{position:relative;z-index:1;width:auto;min-width:min(260px,84vw);max-width:100%;padding:10px 24px;border:none;border-radius:6px;background:var(--sf-blue);color:var(--sf-bg);font-family:Union,sans-serif;font-size:1.25rem;font-weight:700;line-height:1.2;text-align:center;cursor:pointer;transition:opacity .15s ease;-webkit-tap-highlight-color:transparent}.modal-menu-btn:hover{opacity:.92}.modal-menu-btn:active{opacity:.85}.modal-menu-btn--with-dot{position:relative}.modal-menu-btn--unlimited{background:var(--sf-bg);color:var(--sf-blue);box-shadow:inset 0 0 0 2px var(--sf-blue)}.menu-reminder-dot{position:absolute;top:6px;right:8px;width:9px;height:9px;border-radius:50%;background:var(--sf-red)}.modal-content{padding:14px 18px 18px;font-family:Union,sans-serif;font-size:.9rem;line-height:1.55;color:var(--ink)}.modal-content--explain{font-family:Bebas Neue Pro,sans-serif;font-size:1.2rem;font-weight:400;line-height:1.35;letter-spacing:.02em;padding:14px 18px 26px}.modal-content--explain strong{font-family:Bebas Neue Pro,sans-serif;font-weight:700;letter-spacing:.02em}.modal-explain-intro-list{list-style:none;margin:0;padding:0 0 0 1.15em;display:flex;flex-direction:column;gap:9px}.modal-explain-intro-list li{position:relative;padding-left:.2em}.modal-explain-intro-list li:before{content:"";position:absolute;left:-1.05em;top:.52em;width:5px;height:5px;border-radius:50%;background:var(--sf-blue)}.modal-content p+p{margin-top:10px}.modal-explain-score{margin-top:16px}.modal-explain-score-title{margin-bottom:0;font-family:Bebas Neue Pro,sans-serif;font-size:1.25rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.modal-explain-score-title+.modal-explain-score-intro{margin-top:0}.modal-explain-score-intro{margin-bottom:6px}.modal-explain-score-list{list-style:none;display:flex;flex-direction:column;gap:3px}.modal-explain-score-list li{display:flex;justify-content:space-between;gap:16px}.modal-contact-link{display:inline-block;margin-top:10px;color:var(--sf-blue);font-weight:700;text-decoration:none}.modal-contact-link:hover{text-decoration:underline}.intro-modal-overlay{padding:28px 20px;animation:coachOverlayIn .28s ease-out both}.intro-modal-overlay--exit{animation:coachOverlayOut .28s ease-in both}.intro-modal-panel{max-width:min(420px,92vw);max-height:calc(100dvh - max(28px,var(--inset-top)) - max(28px,var(--inset-bottom)) - 56px);border:none;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:modalPanelIn .4s cubic-bezier(.22,1,.36,1) both}.intro-modal-panel--exit{animation:modalPanelOut .32s ease-in both}.modal-fade-overlay{animation:coachOverlayIn .28s ease-out both}.modal-fade-overlay--exit{animation:coachOverlayOut .28s ease-in both}.modal-fade-panel{animation:modalPanelIn .4s cubic-bezier(.22,1,.36,1) both}.modal-fade-panel--exit{animation:modalPanelOut .32s ease-in both}.intro-modal-body{display:flex;flex-direction:column;max-height:none;overflow:visible}.intro-modal-content{padding:40px 36px 20px;text-align:center;font-family:Bebas Neue Pro,sans-serif;font-size:1.4rem;font-weight:400;line-height:1.35;letter-spacing:.02em;color:var(--ink)}.intro-modal-content p+p{margin-top:12px}.intro-modal-actions{display:flex;justify-content:center;padding:16px 32px 36px}.intro-modal-start{width:100%;max-width:min(280px,82vw);padding:12px 28px}@keyframes coachOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes coachOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes coachBalloonIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 12px)) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes coachBalloonOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.96)}}@keyframes modalPanelIn{0%{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalPanelOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.96)}}.coach-balloon-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:#1a1a1aad;animation:coachOverlayIn .28s ease-out both;-webkit-tap-highlight-color:transparent}.coach-balloon-overlay--exit{animation:coachOverlayOut .28s ease-in both}.coach-balloon-arrows{position:fixed;top:0;right:0;bottom:0;left:0;z-index:902;width:100%;height:100%;pointer-events:none;overflow:visible;animation:coachArrowsIn .4s ease-out .06s both}.coach-balloon-arrows--exit{animation:coachArrowsOut .28s ease-in both}@keyframes coachArrowsIn{0%{opacity:0}to{opacity:1}}@keyframes coachArrowsOut{0%{opacity:1}to{opacity:0}}.coach-arrow{fill:none;stroke:var(--sf-bg);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.coach-arrowhead-fill{fill:var(--sf-bg)}.coach-balloon-anchor{position:fixed;z-index:903;width:max-content;max-width:min(420px,calc(100vw - 48px));transform:translate(-50%,-50%);animation:coachBalloonIn .4s cubic-bezier(.22,1,.36,1) both;pointer-events:none}.coach-balloon-anchor--exit{animation:coachBalloonOut .32s ease-in both}.coach-balloon{--coach-balloon-pad-x: 6px;padding-block:14px;padding-inline:var(--coach-balloon-pad-x);border-radius:8px;background:var(--sf-bg);border:none;box-shadow:0 10px 40px #0000004d;text-align:center;font-family:Bebas Neue Pro,sans-serif;font-size:1.2rem;font-weight:400;line-height:1.32;letter-spacing:.02em;color:var(--ink);cursor:pointer;pointer-events:auto;width:min(420px,calc(100vw - 48px));max-width:min(420px,calc(100vw - 48px));box-sizing:border-box}.coach-balloon p{margin:0;width:100%;box-sizing:border-box}.coach-balloon-lines{display:flex;flex-direction:column;align-items:center;gap:6px}.coach-balloon-line{display:block;max-width:100%;white-space:normal;text-align:center;text-wrap:balance}.coach-balloon-single{text-align:center;text-wrap:balance}.input-hint{text-align:center;margin-top:8px;font-family:Union,sans-serif;font-size:.75rem;color:var(--muted)}.feedback{text-align:center;margin:8px 0 2px;min-height:18px;font-family:Union,sans-serif;font-size:.85rem;flex-shrink:0}.feedback.good{color:var(--sf-green)}.feedback.bad{color:var(--sf-red)}.feedback.info{color:var(--muted)}.end-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:#1a1a1a6b;display:flex;align-items:center;justify-content:center;padding:20px 16px}.end-modal-panel{width:100%;max-width:320px;background:var(--sf-bg);border-radius:12px;border:1.5px solid rgba(26,26,26,.12);box-shadow:0 12px 40px #0000002e;padding:28px 24px 24px}.complete-inline{text-align:center;padding:0}.complete-inline h2{font-family:Bebas Neue Pro,Union,sans-serif;font-size:2.4rem;font-weight:400;letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;color:var(--sf-green)}.complete-inline.failed h2{color:var(--sf-red)}.complete-inline .reveal{font-family:Union,sans-serif;font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;margin:6px 0 22px;color:var(--muted)}.complete-inline .reveal span{color:var(--sf-blue)}.complete-inline.failed .reveal.fail-words{margin-top:-6px;font-size:1.15rem;letter-spacing:.12em}.complete-inline .score-stats{display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:center;margin-top:14px}.complete-inline .score-line{font-family:Union,sans-serif;font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;margin-top:0;color:var(--muted)}.complete-inline .streak-line b{color:var(--orange)}.complete-inline .score-line b{font-weight:800;color:var(--ink);font-size:32px;margin-left:4px}.complete-inline.failed .score-line b{color:var(--red)}.complete-inline>.intro-modal-start{margin-top:20px}.score-blocks{display:flex;flex-direction:column-reverse;align-items:center;gap:8px;margin:16px auto 20px;width:fit-content}.score-row{display:flex;gap:4px;justify-content:center}.score-block{width:22px;height:22px;border-radius:3px;border:1.5px solid var(--ink)}.score-block.s-green{background:var(--good);border-color:var(--good)}.score-block.s-yellow{background:var(--yellow);border-color:var(--yellow)}.score-block.s-orange{background:var(--orange);border-color:var(--orange)}.score-block.s-red{background:var(--red);border-color:var(--red)}.score-block.s-missed{background:transparent;border:1.5px dashed var(--red);color:var(--red);display:flex;align-items:center;justify-content:center;font-family:Union,sans-serif;font-size:14px;line-height:1}.new-game-btn{margin-top:6px;padding:12px 22px;background:var(--sf-green);color:var(--sf-bg);border:none;border-radius:8px;font-family:Union,sans-serif;font-size:1rem;cursor:pointer}.new-game-btn:hover{opacity:.9}.new-game-btn:disabled{opacity:.45;cursor:not-allowed}.share-btn{margin-top:0;padding:11px 22px;background:transparent;color:var(--sf-blue);border:1.5px solid var(--sf-blue);border-radius:8px;font-family:Union,sans-serif;font-size:1rem;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .15s ease,color .15s ease}.share-btn:hover{background:var(--sf-blue);color:var(--sf-bg)}.share-btn.shared{background:var(--good);color:#fff;border-color:var(--good)}.offline-panel{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:24px;text-align:center;max-width:320px;margin-left:auto;margin-right:auto}.offline-panel .feedback.bad{margin:0;line-height:1.4}.offline-actions{display:flex;flex-direction:column;gap:10px;width:100%}.offline-actions .share-btn{width:100%;justify-content:center}.end-actions{display:flex;flex-direction:row;gap:8px;align-items:stretch;margin-top:20px}.end-actions .share-btn{flex:1 1 0;min-width:0;width:auto;margin-top:0;justify-content:center;background:var(--sf-bg);color:var(--sf-blue);border:1.5px solid var(--sf-blue)}.end-actions .share-btn:hover{background:#19409314;color:var(--sf-blue)}.end-actions .share-btn.shared{background:var(--good);color:#fff;border-color:var(--good)}.end-dismiss-btn{flex:1 1 0;min-width:0;width:auto;padding:11px 22px;background:var(--sf-blue);color:var(--sf-bg);border:none;border-radius:8px;font-family:Union,sans-serif;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .15s ease}.end-dismiss-btn:hover{opacity:.9}.complete-inline .extra-words-prompt-text{margin:0;text-align:center;font-family:Bebas Neue Pro,sans-serif;font-size:1.2rem;font-weight:400;line-height:1.35;letter-spacing:.02em;color:var(--text-dark);text-transform:none}.extra-words-prompt-remember{display:flex;align-items:flex-start;gap:10px;margin-top:16px;cursor:pointer;font-family:Bebas Neue Pro,sans-serif;font-size:1rem;font-weight:400;line-height:1.35;letter-spacing:.02em;color:var(--text-dark);text-transform:none;text-align:left}.extra-words-prompt-remember input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin:2px 0 0;accent-color:var(--ink);cursor:pointer}.extra-words-prompt-actions{display:flex;gap:10px;justify-content:center;margin-top:20px;width:100%}.extra-words-prompt-actions .modal-menu-btn{flex:1 1 0;min-width:0;max-width:none;padding:8px 12px;font-size:.95rem}.extra-words-prompt-no{background:transparent;color:var(--ink);border:1.5px solid rgba(0,0,0,.2)}.input-end-actions{display:flex;flex-direction:column;gap:8px;width:100%}.input-end-actions-row{display:flex;align-items:center;gap:8px;width:100%}.input-end-actions--extra .input-end-actions-row{flex-direction:row}.input-end-actions .share-btn,.input-end-actions .new-game-btn{width:100%;margin-top:0;justify-content:center}.input-end-actions--extra .input-share-btn--compact{flex:0 0 auto;width:auto;min-width:0;padding:0 12px;font-size:.9rem}.input-end-actions--finished .input-end-actions-row{width:100%}.input-end-actions--finished .input-share-btn{flex:1;width:100%;background:var(--sf-blue);color:var(--sf-bg);border:1.5px solid var(--sf-blue);border-radius:4px;font-size:1rem;font-weight:700;padding:0 16px;justify-content:center}.input-end-actions--finished .input-share-btn:hover{background:var(--sf-blue);color:var(--sf-bg);opacity:.9}.input-end-actions--finished .input-share-btn.shared{background:var(--good);color:#fff;border-color:var(--good)}.input-end-actions--extra .input-end-guess{flex:1;min-width:0}.input-end-actions .input-share-btn{height:var(--input-control-h, var(--tile-h));min-height:var(--input-control-h, var(--tile-h));max-height:var(--input-control-h, var(--tile-h));padding:0 16px;box-sizing:border-box;border-radius:4px;font-size:1rem;line-height:1;background:var(--sf-blue);color:var(--sf-bg);border-color:var(--sf-blue)}.input-end-actions .input-share-btn:hover{background:var(--sf-blue);color:var(--sf-bg);opacity:.9}.input-end-actions .input-next-btn{padding:10px 18px;font-size:.95rem}.input-end-actions .input-close-practice{font-size:.85rem;padding:6px 0}.play-page.game-over .stack-wrap{margin-bottom:12px}.play-page.game-over .input-area{margin-top:4px;padding-top:8px}.play-page.game-over .input-row{align-items:flex-start}.play-page.game-over .input-end-actions:not(.input-end-actions--finished) .input-share-btn{font-size:1.2rem;padding:0 20px;height:auto;min-height:var(--input-control-h, var(--tile-h));max-height:none}.play-page.game-over .input-end-actions:not(.input-end-actions--finished) .input-share-btn svg{width:17px;height:17px}.play-page.game-over .keyboard{display:none}.stack-wrap-clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}.stack-wrap-clickable:focus-visible{outline:2px solid var(--sf-blue);outline-offset:4px;border-radius:8px}#root{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}#mode-panel-daily,#mode-panel-unlimited{flex:1;min-height:0;display:flex;flex-direction:column}html.platform-web #root,html.platform-native #root{height:100%;max-height:100%}.play-page,.app-page{width:100%;position:relative}.play-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:var(--play-header-gap)}.play-page-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;width:100%;max-width:480px;margin:0 auto;padding-top:6px;padding-left:max(var(--play-inline-pad),var(--inset-left));padding-right:max(var(--play-inline-pad),var(--inset-right))}.app-page{padding-bottom:24px}.app-page h1{font-size:1.75rem;font-weight:400;margin-bottom:12px}.app-page-hint{font-family:Union,sans-serif;font-size:.85rem;color:var(--muted);line-height:1.6}
