:root{--c-bg: #ffffff;--c-surface: #ffffff;--c-surface-subtle: #f8fafc;--c-border-subtle: #e5e7eb;--c-border-strong: #cbd5e1;--c-text: #0f172a;--c-text-subtle: #475569;--ff: Lato, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";--fs-title: 18px;--fs-sub: 16px;--fs-body: 15px;--fs-small: 12.5px;--fw-medium: 600;--r-xs: 6px;--r-sm: 8px;--r-md: 10px;--r-lg: 12px;--sh-card: 0 4px 20px rgba(2, 6, 23, .08);--sh-modal: 0 12px 40px rgba(2, 6, 23, .18);--pill-h-sm: 36px;--pill-h-md: 40px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--modal-pill-radius: 8px;--modal-primary-bg: #0f172a;--modal-primary-text: #ffffff;--modal-primary-bd: #0f172a;--modal-secondary-bg: #ffffff;--modal-secondary-bd: #e2e8f0;--modal-secondary-tx: #0f172a}.srOnly{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.codeBlock{background:#f6f8fa;padding:12px;border:1px solid #e5e7eb;border-radius:8px;max-width:520px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.4}.statNote{margin:0;line-height:1.35}.modalPrimary,.msPrimary,.btnPrimary{min-height:40px;padding:0 16px;border-radius:var(--modal-pill-radius);font-weight:700;font-size:14px;color:var(--modal-primary-text);background:var(--modal-primary-bg);border:1px solid var(--modal-primary-bd);cursor:pointer;transition:opacity .12s ease,transform 80ms ease,background .12s ease}.modalPrimary:hover,.msPrimary:hover,.btnPrimary:hover{opacity:.92}.modalPrimary:active,.msPrimary:active,.btnPrimary:active{transform:translateY(1px)}.modalSecondary{min-height:36px;padding:0 14px;border-radius:var(--modal-pill-radius);font-weight:600;font-size:14px;color:var(--modal-secondary-tx);background:var(--modal-secondary-bg);border:1px solid var(--modal-secondary-bd);cursor:pointer;transition:background .12s ease,transform 80ms ease}.modalSecondary:hover{background:#f8fafc}.modalSecondary:active{transform:translateY(1px)}.gameGrid{min-height:60dvh;display:grid;place-content:center;grid-template-columns:repeat(1,minmax(260px,340px));gap:24px}.gameCard{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 24px #02061714;padding:24px 22px;display:grid;gap:16px;justify-items:center}.gameCardArt{display:grid;grid-auto-flow:column;gap:8px;margin-top:6px;margin-bottom:6px}.gameCardArt .tile{width:10px;height:10px;border-radius:4px;border:1px solid #e2e8f0;background:#e2e8f0}.gameCardTitle{font-size:16px;font-weight:700;color:#0f172a;margin:4px 0}.btnFooter{min-height:44px;min-width:170px;padding:10px 14px;border:1px solid #e2e8f0;background:#fff;border-radius:10px;font-weight:700}.landingPage .gameGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.gameCard{border:1px solid #e5e7eb;border-radius:12px;padding:16px;background:#fff;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;align-items:flex-start}.demoBox{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:4px}.gameCardTitle{margin:8px 0 12px;font-size:18px;font-weight:700}.footerShell{border-top:1px solid #e5e7eb}.footerContent{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;justify-content:space-between}.footerMeta{opacity:.7;font-size:12px}.statsGrid{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.formRow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.dateInput{border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px;font-size:14px}.diffSelect{font-size:var(--fs-body, 15px);padding:8px 22px 8px 12px;border-radius:12px}@media (max-width: 480px){.diffSelect{font-size:12px;padding:5px 18px 5px 8px;border-radius:10px}}:root{--modal-surface: #ffffff;--modal-text: #0f172a;--modal-muted: #475569;--modal-border: #e2e8f0;--modal-divider: #e5e7eb;--modal-radius: 12px;--modal-shadow: 0 8px 28px rgba(2, 6, 23, .2), 0 2px 8px rgba(2, 6, 23, .1);--modal-header-h: 56px;--modal-footer-h: 64px;--modal-max-w: 680px;--modal-pad-x: 24px;--modal-pad-y: 20px;--modal-icon-btn: 36px}.modalOverlay,.msScrim{position:fixed;inset:0;background:#0f172a73;z-index:2000;display:grid;place-items:center;padding:16px}.modalPanel,.msCard{background:var(--modal-surface);color:var(--modal-text);width:min(96vw,var(--modal-max-w));max-height:92vh;border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);display:grid;grid-template-rows:var(--modal-header-h) 1fr var(--modal-footer-h);overflow:hidden}.modalHeader,.msHeader{display:grid;grid-template-columns:1fr auto;align-items:center;height:var(--modal-header-h);padding:0 var(--modal-pad-x);border-bottom:1px solid var(--modal-divider)}.modalTitle,.msTitle{font-size:var(--fs-sub, 16px);font-weight:var(--fw-medium, 600);letter-spacing:.1px}.modalClose,.msClose{width:var(--modal-icon-btn);height:var(--modal-icon-btn);display:inline-grid;place-items:center;font-size:22px;line-height:1;border-radius:8px;cursor:pointer;border:1px solid transparent;background:transparent}.modalClose:focus-visible,.msClose:focus-visible{outline:2px solid #94a3b8;outline-offset:1px}.modalBody,.msBody{padding:var(--modal-pad-y) var(--modal-pad-x);overflow:auto}.well{padding:12px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.statNote{color:#475569;font-size:13px}.statError{color:#b91c1c;font-size:13px}.modalBody .statsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin:10px 0 6px}.modalBody .statCell{background:#f8fafc;border:1px solid var(--modal-border);border-radius:10px;padding:12px;min-height:72px;display:grid;align-content:center;justify-items:center}.modalBody .statValue{font-weight:800;font-size:18px;line-height:1}.modalBody .statLabel{margin-top:6px;font-size:12.5px;color:var(--modal-muted);text-align:center}.modalFooter,.msFooter{height:var(--modal-footer-h);padding:0 var(--modal-pad-x);border-top:1px solid var(--modal-divider);display:flex;align-items:center;justify-content:flex-end;gap:10px}.modalPanel.narrow{--modal-max-w: 520px}.howtoList{display:grid;gap:6px;margin:0;padding-left:0%}.howtoList li{list-style:none}.demoBox{display:inline-block;width:32px!important;height:32px!important;border-radius:4px;vertical-align:middle;margin-right:10px;box-shadow:0 0 0 1px #e5e7eb inset}.calendarLegend{display:flex;gap:10px;align-items:center;color:#475569;font-size:13px}.calendarNav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.calendarChevron{width:var(--modal-icon-btn);height:var(--modal-icon-btn);display:inline-grid;place-items:center;border-radius:8px;cursor:pointer;border:1px solid var(--modal-border);background:#fff}.calendarChevron:active{transform:translateY(1px)}.resultBody{display:grid;gap:10px}.answerWord{font-weight:800;font-size:18px}.welcomeModalOverlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;background:#02061799;-webkit-backdrop-filter:saturate(120%) blur(1px);backdrop-filter:saturate(120%) blur(1px);padding:24px}.welcomePanel{width:min(560px,94vw);background:var(--modal-surface);color:var(--modal-text);border:1px solid var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);padding:28px 24px;text-align:center}.welcomeLogo{display:inline-grid;grid-auto-flow:column;gap:6px;margin-bottom:10px}.welcomeMeta{margin-top:16px;display:grid;gap:8px}.metaLine{display:flex;justify-content:space-between;border:1px solid var(--modal-border);border-radius:10px;padding:8px 10px;background:#fff}.metaLabel{color:var(--modal-muted);font-size:13px}.metaValue{font-weight:600}html,body,#root{height:100dvh;overflow:hidden;margin:0;color:#0f172a;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--safe-top: env(safe-area-inset-top, 0px);--c-bg: #ffffff;--c-surface: #ffffff;--c-surface-subtle: #f8fafc;--c-border-subtle: #e5e7eb;--c-border-strong: #cbd5e1;--c-text: #0f172a;--c-text-subtle: #475569;--ff: Lato, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";--fs-title: 18px;--fs-sub: 16px;--fs-body: 15px;--fs-small: 12.5px;--fw-medium: 600;--r-xs: 6px;--r-sm: 8px;--r-md: 10px;--r-lg: 12px;--sh-card: 0 4px 20px rgba(2, 6, 23, .08);--sh-modal: 0 12px 40px rgba(2, 6, 23, .18);--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--page-max: 920px;--row-pad: 16px;--header-h: 56px;--footer-h: 50px;--board-cols: 5;--board-rows: 6;--board-gap: clamp(6px, 1.6vw, 10px);--board-to-kb-gap: 12px;--kb-rows: 3;--kb-key-h: clamp(30px, 7.5vh, 44px);--kb-key-w: clamp(30px, 7.5vh, 44px);--kb-gap: 8px;--kb-pad-v: 6px;--safe-bottom: env(safe-area-inset-bottom, 0px);--kb-total-h: calc( (var(--kb-rows) * var(--kb-key-h)) + ((var(--kb-rows) - 1) * var(--kb-gap)) + (2 * var(--kb-pad-v)) + var(--safe-bottom) );--board-vert-gaps: calc((var(--board-rows) - 1) * var(--board-gap));--board-horz-gaps: calc((var(--board-cols) - 1) * var(--board-gap));--avail-h: calc( 100dvh - var(--header-h) - var(--footer-h) - var(--kb-total-h) - var(--board-to-kb-gap) );--avail-w: calc(min(var(--page-max), 100vw) - (2 * var(--row-pad)));--tile-by-h: calc( (var(--avail-h) - var(--board-vert-gaps)) / var(--board-rows) );--tile-by-w: calc( (var(--avail-w) - var(--board-horz-gaps)) / var(--board-cols) );--tile: clamp(42px, min(var(--tile-by-h), var(--tile-by-w)), 60px);--kb-cols-max: 10;--kb-key-by-w: calc( (var(--avail-w) - ((var(--kb-cols-max) - 1) * var(--kb-gap))) / var(--kb-cols-max) );--kb-key-w: clamp(30px, var(--kb-key-by-w), 44px);--kb-key-h: var(--kb-key-w)}@media (min-width: 768px){:root{--row-pad: 20px;--header-h: 72px;--footer-h: 80px;--board-gap: clamp(8px, 1vw, 12px);--board-to-kb-gap: 20px;--kb-key-h: clamp(34px, 5.2vh, 48px);--kb-key-w: clamp(34px, 5.2vh, 48px);--kb-gap: 10px;--kb-pad-v: 10px;--tile: clamp(50px, min(var(--tile-by-h), var(--tile-by-w)), 72px)}}.pageShell{min-height:100dvh;display:grid;grid-template-rows:var(--header-h) 1fr var(--footer-h);background:var(--c-bg);color:var(--c-text);font-family:var(--ff)}.pageRow{width:100%;max-width:980px;margin-inline:auto;padding-inline:var(--row-pad)}.headerShell{position:relative;border-bottom:1px solid #e5e7eb;background:#fff}.headerContent{display:flex;align-items:center;gap:12px;min-height:var(--header-h);padding:10px var(--row-pad)}.headerTitle{flex:1 1 auto;margin:0;line-height:1.15}.headerTitle .statNote{margin:0}.headerRight{margin-left:auto;display:flex;align-items:center;gap:8px}.headerRight .modalPrimary{min-height:var(--pill-h-md);padding:0 12px;font-size:14px;border-radius:var(--modal-pill-radius)}.diffSelect{min-height:var(--pill-h-md);font-size:14px;padding:0 12px;border-radius:var(--modal-pill-radius)}.diffSelect:focus{outline:none;box-shadow:0 0 0 3px #11182726}.gameShell{height:100%;display:grid;grid-template-rows:auto auto;row-gap:var(--board-to-kb-gap);place-content:center;justify-items:center;padding-inline:var(--row-pad)}.gameboardShell{display:grid;justify-items:center;align-content:center;row-gap:12px;min-height:0}.boardContainer{display:grid;grid-template-columns:repeat(var(--board-cols),var(--tile));grid-template-rows:repeat(var(--board-rows),var(--tile));gap:var(--board-gap);margin-inline:auto}:root{--game-vert-pad: 32px}.gameArea{display:grid;justify-items:center;align-content:center;row-gap:18px;padding-block:var(--game-vert-pad);min-height:0}.guessRow{display:contents}.tile{width:var(--tile);height:var(--tile);display:inline-grid;place-items:center;text-transform:uppercase;font-size:calc(var(--tile) * .55);font-weight:700;border:1px solid #d1d5db;background:#fff;border-radius:6px}.tile--big{width:var(--tile);height:var(--tile)}.keyboardShell,.keyboard{margin-inline:auto;display:grid;gap:var(--kb-gap);position:static;bottom:auto;padding:var(--kb-pad-v) var(--row-pad) calc(var(--kb-pad-v) + var(--safe-bottom))}.kbRow{display:flex;justify-content:center;gap:var(--kb-gap);flex-wrap:nowrap;min-height:var(--kb-key-h)}.kbRow .key,.kbRow button{box-sizing:border-box;height:var(--kb-key-h);width:var(--kb-key-w);min-width:var(--kb-key-w);min-height:var(--kb-key-h);padding:0 10px;font-weight:700;-webkit-user-select:none;user-select:none;line-height:1}.keySpacer{width:calc(var(--kb-key-w) * .5);display:inline-block}.key{-webkit-user-select:none;user-select:none;margin:2px;padding:8px 10px;min-width:42px;height:calc(var(--kb-key) * 1.2);font-size:18px;border:1px solid #e5e7eb;background:#fff;font-weight:700;cursor:pointer}.key--wide{min-width:calc((var(--kb-key-w) * 1.6) + var(--kb-gap))!important}.key:focus-visible{outline:2px solid #94a3b8;outline-offset:1px;border-color:#94a3b8}.tile.is-correct,.key.is-correct{background:#16a34a22}.tile.is-present,.key.is-present{background:#f59e0b22}.tile.is-absent,.key.is-absent{background:#00000010}.resultBanner{margin-top:12px;font-weight:700}.footerShell{min-height:var(--footer-h);border-top:1px solid #e5e7eb;background:#fff;position:static}.footerContent{min-height:var(--footer-h);display:flex;align-items:center;justify-content:center;gap:12px;padding-inline:var(--row-pad);font-size:13px}.btnStats{min-height:var(--pill-h-md);min-width:150px;padding:0 12px;border:1px solid var(--modal-secondary-bd);background:var(--modal-secondary-bg);color:var(--modal-secondary-tx);border-radius:var(--modal-pill-radius);font-weight:600;font-size:14px}.btnStats:focus-visible{outline:2px solid #94a3b8;outline-offset:1px}.wordleStatus{display:inline-flex;align-items:center;gap:6px;min-height:var(--pill-h-md);padding:0 12px;border:1px solid var(--modal-secondary-bd);background:var(--modal-secondary-bg);color:var(--modal-secondary-tx);border-radius:var(--modal-pill-radius);font-size:14px;font-weight:600;width:auto}.wordleStatus--error{background:#fee2e2}.statusError{color:#dc143c}@media (max-width: 480px){:root{--row-pad: 6px;--header-h: 50px;--footer-h: 56px;--board-gap: clamp(5px, 1.2vw, 8px);--board-to-kb-gap: 10px;--kb-gap: 6px;--kb-pad-v: 3px;--kb-cols-max: 10;--kb-key-by-w: calc( (var(--avail-w) - ((var(--kb-cols-max) - 1) * var(--kb-gap))) / var(--kb-cols-max) );--kb-aspect: .82;--kb-key-w: clamp(28px, var(--kb-key-by-w), 38px);--kb-key-h: calc(var(--kb-key-w) * var(--kb-aspect));--tile: clamp(44px, min(var(--tile-by-h), var(--tile-by-w)), 60px)}.gameShell,.keyboardShell,.keyboard{padding-inline:0}.headerShell{align-self:center}.headerContent{align-self:center;gap:6px;padding-inline:6px;height:calc(var(--header-h) - 4px)}.headerTitle{font-size:14px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.headerRight{gap:6px}.diffSelect{min-height:var(--pill-h-sm);font-size:14px;padding:0 12px;border-radius:var(--modal-pill-radius)}.headerRight .modalPrimary{min-height:var(--pill-h-sm);padding:0 12px;font-size:14px;border-radius:var(--modal-pill-radius)}.kbRow .key,.kbRow button{font-size:14px;padding:0}.key{margin:.1px;color:#0f172a!important;font-size:12px;height:50px!important}.key--wide{width:var(--kb-key-w)!important;min-width:var(--kb-key-w)!important;font-size:9px!important;letter-spacing:0px;height:50px!important}.footerContent{padding-inline:4px;gap:6px}.wordleStatus{min-height:var(--pill-h-sm);padding:0 12px;font-size:14px;border-radius:var(--modal-pill-radius)}.btnStats{min-height:var(--pill-h-sm);padding:0 12px;font-size:14px}}.calHeader{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.calNavBtn{border:1px solid #d9d9d9;background:#fff;padding:6px 10px;border-radius:6px;cursor:pointer}.calNavBtn:hover{background:#fafafa}.calMonth{font-weight:700}.calLegend{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:#666;margin-bottom:8px}.calLegendItem{display:flex;gap:6px;align-items:center}.calLegendSwatch{width:14px;height:14px;border-radius:4px;display:inline-block}.calGrid{display:grid;gap:8px}.calWeekHead{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;color:#666;font-size:12px;text-align:center}.calWeek{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calCell{display:grid;grid-template-rows:auto auto;place-items:center;min-height:42px;border-radius:8px;border:1px solid #e8e8e8;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff}.calCell.is-blank{background:transparent;border:none;cursor:default}.calCell.is-disabled{color:#bbb;background:#fafafa;border-color:#eee;cursor:not-allowed}.calCell.is-disabled:hover{background:#fafafa}.calCell.is-disabled:focus{outline:none;box-shadow:none}.calCell.is-disabled .calBadges .badge{opacity:.25}.calCell.is-today-playing{background:#f0f0f0}.calCell.is-completed-1{background:#e5f5e0}.calCell.is-completed-2{background:#a1d99b}.calCell.is-completed-3{background:#31a354}.calBadges{display:flex;gap:4px;margin-top:2px}.badge{font-size:10px;line-height:12px;padding:1px 4px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#ffffffd9;color:#333}.badge-e.on,.badge-m.on,.badge-h.on{background:#fff;font-weight:700}.badge-e.off,.badge-m.off,.badge-h.off{opacity:.35}
