header{position:relative}.site-menu{position:absolute;right:0;top:100%;z-index:20;font-size:12px;margin-top:3px}.site-menu summary{list-style:none;cursor:pointer;color:#244b35;padding:5px 9px;background:#f9fcf3;border:1px solid #dce7d3;border-radius:4px;user-select:none}.site-menu summary::-webkit-details-marker{display:none}.site-menu summary:focus-visible,.site-menu a:focus-visible{outline:2px solid #397d48;outline-offset:2px}.site-menu nav{position:absolute;right:0;top:calc(100% + 6px);display:flex;flex-direction:column;gap:0;min-width:185px;padding:6px;background:#f9fcf3;border:1px solid #dce7d3;border-radius:6px;box-shadow:0 8px 24px #244b3514}.site-menu:not([open]) nav{display:none}.site-menu a{display:block;white-space:nowrap;text-decoration:none;color:#244b35;padding:10px 12px;font:13px/1.5 system-ui,sans-serif;border-radius:3px}.site-menu a:hover{background:#e9f3e6}@media(max-width:600px){.site-menu summary{font-size:11px;padding:5px 8px}}

#theme[hidden]{display:none!important}.site-menu .menu-settings{display:block;width:100%;text-align:left;white-space:nowrap;color:#244b35;padding:10px 12px;font:13px/1.5 system-ui,sans-serif;border:0;background:transparent;border-radius:3px;cursor:pointer}.site-menu .menu-settings:hover{background:#e9f3e6}

header>nav>.site-menu{position:relative;right:auto;top:auto;margin:0;flex:0 0 auto}header>nav>.site-menu>summary{display:flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px}header>nav>.site-menu>nav{top:calc(100% + 6px)}header>nav>.site-menu>summary svg{display:block}

/* Compact mosaic navigation panel */
.site-menu nav{box-sizing:border-box;width:224px;min-width:0;max-width:calc(100vw - 24px);padding:8px;background:#fbfcf5;border-color:#d7e3d1;border-radius:10px;box-shadow:0 12px 32px #244b3512;gap:3px;text-align:left}
.site-menu nav a,.site-menu nav .menu-settings{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:9px 11px;text-align:left;font:13px/1.4 system-ui,sans-serif;border-radius:5px;color:#234b37}
.site-menu nav a::before,.site-menu nav .menu-settings::before{content:'';flex:0 0 12px;width:12px;height:12px;background:#85aa7c;box-shadow:4px -4px 0 -1px #d5e6ca}
.site-menu nav a:nth-child(2)::before{background:#a99bc2;box-shadow:4px -4px 0 -1px #e1dbea}
.site-menu nav a:nth-child(3)::before{background:#dba98b;box-shadow:4px -4px 0 -1px #f0dfcb}
.site-menu nav a:nth-child(4)::before{background:#a7b9a3;box-shadow:4px -4px 0 -1px #e2e9d9}
.site-menu nav .menu-settings{margin-top:4px;border-top:1px solid #e3eadc;border-radius:0 0 5px 5px;padding-top:12px}
.site-menu nav .menu-settings::before{background:transparent;border:2px solid #94ab91;box-shadow:none;width:10px;height:10px}
.site-menu nav a:hover,.site-menu nav .menu-settings:hover{background:#edf3e8}
.site-menu nav a:focus-visible,.site-menu nav .menu-settings:focus-visible{outline:2px solid #397d48;outline-offset:-2px}
@media(max-width:600px){.site-menu nav{width:212px;max-height:calc(100dvh - 80px);overflow-y:auto}.site-menu nav a,.site-menu nav .menu-settings{min-height:44px}}

/* Mosaic game launcher */
.site-menu nav{width:300px;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}
.site-menu nav a{white-space:normal;min-height:78px;flex-direction:column;justify-content:center;gap:12px;padding:12px 7px;border:1px solid #e0e7d8;background:#f5f8ed;font-size:12px;text-align:center}
.site-menu nav a:first-child{background:#e6f0df;border-color:#b9d1ad;color:#285b37}
.site-menu nav a:nth-child(2){background:#f0edf6;border-color:#ddd4e9}
.site-menu nav a::before{width:16px;height:16px;flex-basis:16px}
.site-menu nav .menu-settings{grid-column:1 / -1;min-height:40px;margin:2px 0 0;padding:10px 8px;justify-content:flex-start}
@media(max-width:600px){.site-menu nav{width:272px}.site-menu nav a{min-height:72px}.site-menu nav .menu-settings{min-height:44px}}

.language-globe{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:36px;border:1px solid #dce7d3;border-radius:4px;background:#f9fcf3;color:#244b35;flex:none}
.language-globe svg{fill:none;stroke:currentColor;stroke-width:1.5;pointer-events:none}
.language-globe #language{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.language-globe:focus-within{outline:2px solid #397d48;outline-offset:2px}
.menu-mobile-tools{display:none}
@media(max-width:600px){header>nav>#leaderboard{display:none}.menu-mobile-tools{grid-column:1 / -1;display:flex;align-items:center;gap:10px;padding-top:8px;border-top:1px solid #e3eadc}.menu-mobile-tools button{flex:1;min-height:40px;border:1px solid #dce7d3;border-radius:4px;background:#f5f8ed;color:#244b35;font:13px system-ui}.menu-mobile-tools .language-globe{width:44px;height:40px}}

header>nav>.language-globe{width:40px!important;min-width:40px!important;height:36px;padding:0!important;margin:0;flex:0 0 40px}
header>nav>.language-globe svg{width:20px;height:20px}
header>nav>.header-unlimited{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 10px;border:1px solid #dce7d3;border-radius:4px;background:#f9fcf3;color:#244b35;text-decoration:none;font:inherit;white-space:nowrap}
@media(max-width:600px){header>nav>.header-unlimited{display:none}}

.site-menu nav .menu-mobile-tools{grid-column:1 / -1;display:flex;align-items:center;gap:10px;padding-top:8px;border-top:1px solid #e3eadc}
.site-menu .menu-mobile-tools>button{display:none}
@media(max-width:600px){.site-menu .menu-mobile-tools>button{display:block}}

.site-menu nav .menu-mobile-tools .menu-language-link{min-height:40px;flex:1;flex-direction:row;padding:8px;gap:0}
.site-menu nav .menu-mobile-tools .menu-language-link::before{display:none}

header>.language-globe{margin-left:auto}
header>nav>.language-globe,header>.language-globe,header>nav>.nav-icon{box-sizing:border-box;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;flex:0 0 40px;padding:8px!important;margin-top:0}
.nav-icon svg{fill:none;stroke:currentColor;stroke-width:1.6;display:block}
.language-globe .menu-language-select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
@media(max-width:760px){header>.site-menu{margin-left:0}}
@media(max-width:600px){header>nav>#leaderboard.nav-icon{display:inline-flex;align-items:center;justify-content:center}}

/* Header icon controls share one size on game and content pages. */
header .site-menu>summary,header .language-globe,header #leaderboard.nav-icon{box-sizing:border-box!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:8px!important;display:inline-flex!important;align-items:center;justify-content:center;border-radius:4px;flex:0 0 40px;line-height:1}
header .site-menu>summary svg,header .language-globe svg,header #leaderboard.nav-icon svg{width:20px;height:20px;display:block}

/* Shared navigation typography and spacing across every route and viewport. */
header>nav{font:13px/1.4 system-ui,sans-serif;gap:6px;align-items:center}
header>nav>a,header>nav>button,header>nav>.header-unlimited{box-sizing:border-box;font:13px/1.4 system-ui,sans-serif!important;min-height:40px;padding:8px 10px;white-space:nowrap}
header .site-menu{font:13px/1.4 system-ui,sans-serif}
header .site-menu nav>a,header .site-menu nav>button{font:13px/1.4 system-ui,sans-serif!important}
header .site-menu>summary,header .language-globe,header #leaderboard.nav-icon{border:1px solid #dce7d3;background:#f9fcf3;color:#244b35}
header .site-menu>summary svg,header .language-globe svg,header #leaderboard.nav-icon svg{width:20px!important;height:20px!important;stroke-width:1.6}
@media(max-width:600px){header>nav{gap:6px}header .site-menu nav>a,header .site-menu nav>button{font-size:13px!important}}

/* Equal-sized launcher cards even when labels wrap onto two lines. */
header .site-menu>nav{align-items:stretch;grid-auto-rows:auto}
header .site-menu>nav>a{height:96px;min-height:96px;max-height:96px;align-self:stretch;justify-content:center;line-height:1.4!important;padding:10px 7px}
header .site-menu>nav>a::before{flex-shrink:0}
@media(max-width:600px){header .site-menu>nav>a{height:96px;min-height:96px;max-height:96px}}

/* Explicit hidden state must win over shared icon display rules. */
header #leaderboard.nav-icon[hidden]{display:none!important}

.header-dle-games{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid #dce7d3;border-radius:4px;background:#f9fcf3;color:#244b35;text-decoration:none;font-size:12px;white-space:nowrap}
@media(max-width:600px){header>nav>.header-dle-games{display:none}}

header #help.nav-icon{box-sizing:border-box!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:8px!important;display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 40px;border:1px solid #dce7d3;background:#f9fcf3;border-radius:4px;line-height:1}header #help.nav-icon svg{width:20px!important;height:20px!important;stroke-width:1.6}
/* Shared game-page titles; only opt-in inner-page headings use these rules. */
h1.game-block-heading{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin:28px 0!important;font-size:inherit!important;line-height:1.2!important;letter-spacing:0!important}
.game-block-word{display:inline-flex;gap:8px;align-items:center}
.game-block-word i{display:grid;place-items:center;width:54px;height:62px;font:normal 33px/1 Pixel,monospace;color:#254d37;background:#b9d7b1;border:2px solid #9fbe93;box-shadow:4px 4px #d4e3cb}
.game-block-word i:nth-child(even){transform:translateY(-6px)}
.game-block-word i:nth-child(3n){background:#f2cfb8;border-color:#d9b598;box-shadow:4px 4px #e6d3be}
.game-block-word i:nth-child(4n){background:#d8cde5;border-color:#bdacce;box-shadow:4px 4px #d9cfe3}
.game-heading-note{text-align:center;font-size:14px;color:#64795c;line-height:1.6}
@media(max-width:680px){h1.game-block-heading{gap:14px;margin:20px 0!important}.game-block-word{gap:4px}.game-block-word i{width:29px;height:39px;font-size:22px;box-shadow:3px 3px #d4e3cb}.game-block-word i:nth-child(even){transform:translateY(-4px)}}
