@font-face{font-family:Fraunces;src:url(/fonts/fraunces-1.000-latin-ext.woff2) format("woff2");font-weight:400 700;font-display:swap}@font-face{font-family:Fraunces Vietnamese;src:url(/fonts/fraunces-1.000-vietnamese.woff2) format("woff2");font-weight:400 700;font-display:swap}@font-face{font-family:"Noto Serif Bulgarian";src:url(/fonts/noto-serif-2.015-bulgarian.woff2) format("woff2");font-weight:400 700;font-display:swap}@font-face{font-family:Fraunces-fallback;src:local("Georgia");size-adjust:115.33%;ascent-override:84.8%;descent-override:22.11%;line-gap-override:0%}:root{--paper: #faf8f3;--surface: #ffffff;--ink: #22302b;--ink-soft: #5b6a65;--ink-faint: #8a968f;--line: #e2ddd2;--line-strong: #cfc8b8;--green-800: #245546;--green-700: #2f6f5e;--green-100: #e3eeea;--green-50: #f1f6f2;--tint-sudoku: #e3eeea;--tint-2048: #f3e9d9;--tint-solitaire: #e7efe4;--tint-minesweeper: #e8ebee;--tint-chess: #efe7dc;--text-sm: .9rem;--text-base: 1.0625rem;--text-lg: 1.2rem;--text-xl: 1.45rem;--text-2xl: 1.8rem;--text-3xl: clamp(2.2rem, 4.5vw, 3.1rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-1: 0 1px 2px rgba(34, 48, 43, .06), 0 2px 8px rgba(34, 48, 43, .06);--shadow-2: 0 2px 4px rgba(34, 48, 43, .07), 0 6px 20px rgba(34, 48, 43, .08);--ease: cubic-bezier(.2, 0, 0, 1);--dur-1: .15s;--dur-2: .25s;--measure: 44rem;--measure-wide: 72rem;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--color-bg: var(--paper);--color-surface: var(--surface);--color-ink: var(--ink);--color-ink-soft: var(--ink-soft);--color-accent: var(--green-700);--color-accent-soft: var(--green-100);--color-line: var(--line);--radius: var(--radius-md)}:root{--font-display: "Fraunces", "Fraunces-fallback", Georgia, serif;--display-weight: 560;--display-weight-strong: 620;--display-track-lg: -.022em;--display-track-md: -.012em;--display-leading: 1.16}html:lang(vi){--font-display: "Fraunces Vietnamese", "Fraunces-fallback", Georgia, serif}html:lang(bg){--font-display: "Noto Serif Bulgarian", Georgia, serif}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}::selection{background:var(--green-100);color:var(--ink)}:focus-visible{outline:2px solid var(--green-700);outline-offset:2px}a{color:var(--green-700);text-underline-offset:.15em;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--green-700) 40%,transparent);transition:color var(--dur-1) var(--ease),text-decoration-color var(--dur-1) var(--ease)}a:hover{color:var(--green-800);text-decoration-color:currentColor}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;line-height:var(--display-leading);letter-spacing:var(--display-track-md);text-wrap:balance}h1{font-size:clamp(1.75rem,3vw,2.35rem);font-weight:var(--display-weight-strong);letter-spacing:var(--display-track-lg);margin:var(--space-3) 0 var(--space-4)}h2{font-size:var(--text-xl);margin:var(--space-12) 0 var(--space-4)}h3{font-size:var(--text-lg);margin:var(--space-8) 0 var(--space-3)}.btn{display:inline-flex;align-items:center;gap:.5em;font:inherit;font-weight:600;padding:.6em 1.15em;border:1px solid transparent;border-radius:var(--radius-sm);text-decoration:none;cursor:pointer;transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.btn--primary{background:var(--green-700);color:var(--paper)}.btn--primary:hover{background:var(--green-800);color:var(--paper)}.btn--secondary{background:transparent;color:var(--green-700);border-color:var(--line-strong)}.btn--secondary:hover{border-color:var(--green-700);background:var(--green-50);color:var(--green-800)}.btn--quiet{background:transparent;color:var(--ink-soft)}.btn--quiet:hover{background:var(--green-50);color:var(--ink)}.site-header{border-bottom:1px solid var(--line);background:var(--paper);padding:var(--space-4)}.site-header__inner{max-width:var(--measure-wide);margin-inline:auto;display:flex;align-items:center;gap:var(--space-6)}.brand{font-family:Fraunces,Fraunces-fallback,Georgia,serif;font-weight:var(--display-weight-strong);letter-spacing:var(--display-track-md);font-size:1.15rem;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2)}.brand__mark{display:block;width:1.5rem;height:1.5rem;border-radius:.3rem}@media(max-width:359px){.brand__word{display:none}}.site-nav{margin-left:auto;display:flex;align-items:center;gap:var(--space-5)}.site-nav__link{color:var(--ink);text-decoration:none;font-weight:600;font-size:.98rem;padding:.3em 0;border-bottom:2px solid transparent;transition:color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease)}.site-nav__link:hover{color:var(--green-800);border-bottom-color:var(--green-700)}.install-action[hidden]{display:none}.install-action{flex:none;min-height:2.25rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.35em .75em;border:1px solid var(--green-700);border-radius:var(--radius-sm);background:var(--green-50);color:var(--green-800);font:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease),opacity var(--dur-1) var(--ease)}.install-action:hover{background:var(--green-700);color:var(--surface)}.install-action:disabled{cursor:wait;opacity:.65}.install-action svg{width:1.15rem;height:1.15rem;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.install-dialog{width:min(30rem,calc(100% - 2rem));margin:auto;padding:var(--space-8);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);color:var(--ink);box-shadow:var(--shadow-2)}.install-dialog::backdrop{background:#22302b7a}.install-dialog__close-form{position:absolute;top:var(--space-3);right:var(--space-3);margin:0}.install-dialog__close{width:2.25rem;height:2.25rem;display:inline-grid;place-items:center;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer}.install-dialog__close:hover{border-color:var(--line);background:var(--green-50);color:var(--ink)}.install-dialog__close svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.install-dialog__icon{width:3.5rem;height:3.5rem;display:grid;place-items:center;margin-bottom:var(--space-4);border-radius:var(--radius-md);background:var(--green-100)}.install-dialog__icon img{width:2.5rem;height:2.5rem;border-radius:var(--radius-sm)}.install-dialog h2{margin:0 2.5rem var(--space-3) 0;font-size:var(--text-xl)}.install-dialog p{margin:0 0 var(--space-4);color:var(--ink-soft)}.install-dialog ol{margin:0;padding-left:1.35rem}.install-dialog li+li{margin-top:var(--space-2)}@media(max-width:639px){.site-header__inner{flex-wrap:wrap;gap:var(--space-3) var(--space-4)}.install-action:not([hidden]){order:4;width:100%}.install-dialog{padding:var(--space-6)}}.locale-menu{position:relative;flex:none;font-size:var(--text-sm)}.locale-menu__trigger{min-width:4.25rem;min-height:2.25rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.25em .65em;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--paper);font-weight:700;cursor:pointer;list-style:none;transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.locale-menu__trigger::-webkit-details-marker{display:none}.locale-menu__trigger:hover,.locale-menu[open]>.locale-menu__trigger{border-color:var(--green-700);background:var(--green-50)}.locale-menu__trigger svg{width:.75rem;height:.5rem;transition:transform var(--dur-1) var(--ease)}.locale-menu[open]>.locale-menu__trigger svg{transform:rotate(180deg)}.locale-menu__panel{position:absolute;z-index:20;top:calc(100% + var(--space-2));right:0;width:max-content;min-width:13rem;max-height:min(70vh,30rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-2)}.locale-menu__list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-1)}.locale-menu__item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:.45em .65em;border-radius:var(--radius-sm);color:var(--ink-soft);text-decoration:none;font-weight:600}a.locale-menu__item:hover{color:var(--ink);background:var(--green-50);text-decoration:none}.locale-menu__item.is-current{color:var(--ink);background:var(--green-100)}.locale-menu__code{color:var(--ink-faint);font-size:.78rem;letter-spacing:.04em}.page{max-width:var(--measure);margin-inline:auto;padding:0 var(--space-4) var(--space-12)}.page--wide{max-width:var(--measure-wide)}.site-footer{border-top:1px solid var(--line);margin-top:var(--space-16);background:var(--paper);color:var(--ink-soft);font-size:var(--text-sm);padding:var(--space-10) var(--space-4) var(--space-8)}.site-footer__inner{max-width:var(--measure-wide);margin-inline:auto;display:grid;gap:var(--space-8)}@media(min-width:720px){.site-footer__inner{grid-template-columns:2fr 1fr 1fr}}.site-footer__col--brand .brand{font-size:1.05rem}.site-footer__tagline{margin:var(--space-3) 0 0;max-width:26rem}.site-footer__heading{margin:0 0 var(--space-3);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink)}.site-footer__list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.site-footer a:not(.brand){color:var(--ink-soft);text-decoration:none}.site-footer a:not(.brand):hover{color:var(--ink);text-decoration:underline}.site-footer .locale-menu{margin-top:var(--space-4)}.site-footer .locale-menu__panel{top:auto;right:auto;bottom:calc(100% + var(--space-2));left:0}.home-hero{width:100vw;margin-inline:calc(50% - 50vw);background:var(--green-50);border-bottom:1px solid color-mix(in srgb,var(--green-700) 12%,var(--line));padding:var(--space-12) var(--space-4)}.home-hero__inner{max-width:var(--measure-wide);margin-inline:auto}.home-hero__eyebrow{margin:0 0 var(--space-2);color:var(--green-700);font-size:.8rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.home-hero h1{max-width:50rem;margin:0;font-size:var(--text-3xl)}.home-hero__lead{max-width:44rem;margin:var(--space-4) 0 0;color:var(--ink-soft);font-size:var(--text-lg);line-height:1.55}.home-proof{list-style:none;margin:var(--space-6) 0 var(--space-6);padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.home-proof li{display:inline-flex;align-items:center;gap:var(--space-2);padding:.35em .75em;border-radius:999px;background:var(--green-100);color:var(--ink);font-size:var(--text-sm);font-weight:650}.home-proof li span{color:var(--green-700);font-weight:800}.home-landing>.game-card-grid{margin-top:var(--space-10)}.home-landing__prose{max-width:var(--measure);margin:var(--space-10) auto 0;color:var(--ink-soft)}.home-landing__prose>:first-child{margin-top:0}.simple-page--hub>:not(.game-card-grid),.page--wide>.breadcrumb{max-width:var(--measure);margin-inline:auto}.simple-page--hub>.game-card-grid{margin-block:var(--space-8)}.game-card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}@media(min-width:600px){.game-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:900px){.game-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.game-card{min-width:0;min-height:11rem;display:flex;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:0 0 #22302b00;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.game-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--green-700) 58%,var(--line));box-shadow:var(--shadow-1);color:var(--ink)}.game-card:focus-visible{outline-offset:3px}.game-glyph{--game-tint: var(--green-100)}.game-glyph[data-game=sudoku]{--game-tint: var(--tint-sudoku)}.game-glyph[data-game="2048"]{--game-tint: var(--tint-2048)}.game-glyph[data-game=solitaire]{--game-tint: var(--tint-solitaire)}.game-glyph[data-game=minesweeper]{--game-tint: var(--tint-minesweeper)}.game-glyph[data-game=chess]{--game-tint: var(--tint-chess)}.game-card__glyph{width:3rem;height:3rem;flex:0 0 3rem;display:grid;place-items:center;border-radius:14px;background:var(--game-tint);color:var(--green-800)}.game-glyph svg{width:2.25rem;height:2.25rem;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.game-glyph text{fill:currentColor;stroke:none;font-family:var(--font-body);font-size:9px;font-weight:800;letter-spacing:-.06em}.game-glyph[data-game=solitaire] path,.game-glyph__eye{fill:currentColor;stroke:none}.game-card__body{min-width:0;display:flex;flex:1;flex-direction:column}.game-card__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--display-weight-strong);letter-spacing:var(--display-track-md);line-height:var(--display-leading)}.game-card__blurb{margin-top:var(--space-2);color:var(--ink-soft);font-size:var(--text-sm);line-height:1.5}.game-card__play{margin-top:auto;padding-top:var(--space-4);color:var(--green-700);font-size:var(--text-sm);font-weight:700}@media(max-width:380px){.home-hero{padding-block:var(--space-10)}.game-card{min-height:0;padding:var(--space-4)}}.breadcrumb{margin:var(--space-4) 0 0;font-size:.88rem;color:var(--ink-soft)}.breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1)}.breadcrumb li+li:before{content:"›";margin-right:var(--space-1);color:var(--ink-faint);font-weight:700}.breadcrumb a{color:var(--ink-soft)}.breadcrumb a:hover{color:var(--ink)}.lead{font-size:1.1rem;color:var(--ink-soft);margin-top:0}.quick-answer{background:color-mix(in srgb,var(--green-100) 72%,var(--surface));border:1px solid color-mix(in srgb,var(--green-700) 13%,var(--line));border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);margin:var(--space-10) 0}.quick-answer__label{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--green-700);margin-bottom:var(--space-2)}.quick-answer__label:before{content:"";width:.45rem;height:.45rem;border-radius:999px;background:var(--green-700)}.quick-answer p{margin:0}.faq details{border-bottom:1px solid var(--line);padding:0}.faq details:first-of-type{border-top:1px solid var(--line)}.faq summary{position:relative;cursor:pointer;font-weight:600;list-style:none;padding:var(--space-4) var(--space-10) var(--space-4) 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";position:absolute;top:50%;right:var(--space-2);width:.55rem;height:.55rem;border-right:2px solid var(--green-700);border-bottom:2px solid var(--green-700);transform:translateY(-65%) rotate(45deg);transition:transform var(--dur-2) var(--ease)}.faq details[open] summary:after{transform:translateY(-30%) rotate(225deg)}.faq p{margin:0;padding:0 var(--space-10) var(--space-5) 0;color:var(--ink-soft)}.page article[data-sections] .skip-to-game{margin:0 0 var(--space-5)}.skip-to-game a{display:inline-flex;align-items:center;min-height:2.5rem;padding:.42em .9em;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:transparent;color:var(--green-700);font-weight:650;text-decoration:none;transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.skip-to-game a:hover{border-color:var(--green-700);background:var(--green-50);color:var(--green-800)}article[data-sections]>h2{margin-top:var(--space-12);scroll-margin-top:var(--space-6)}.related-games ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-3)}.related-games a{min-width:10rem;display:inline-flex;align-items:center;gap:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--ink);text-decoration:none;font-weight:600;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.related-games a:hover{border-color:var(--green-700);background:var(--green-50);box-shadow:var(--shadow-1);color:var(--ink);transform:translateY(-1px)}.related-games__glyph{width:2.25rem;height:2.25rem;flex:0 0 2.25rem;display:grid;place-items:center;border-radius:10px;background:var(--game-tint);color:var(--green-800)}.related-games__glyph svg{width:1.65rem;height:1.65rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.related-games__arrow{margin-left:auto;color:var(--green-700)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
