/* Word Search uses the shared Salam Games shell and a bright discovery desk. */
body[data-sg-page="word-search"]{color:#253a55}
.ws-app{width:min(100%,1040px);margin:auto;padding:22px 16px 28px;position:relative;z-index:1;box-sizing:border-box}
.ws-app [hidden],.ws-app .hidden{display:none!important}
.ws-app button{font:inherit;cursor:pointer;touch-action:manipulation}
.ws-app button:focus-visible,.ws-app a:focus-visible,.ws-app input:focus-visible{outline:3px solid #075985;outline-offset:3px}
.ws-app h1,.ws-app h2,.ws-app h3,.ws-app p{margin:0}
.ws-app h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.1;color:#5132a3;font-weight:1000}
.ws-app h2{font-size:1.6rem;line-height:1.2;color:#5132a3;font-weight:1000}
.ws-eyebrow{color:#075985;font-size:.73rem;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}
.ws-welcome,.ws-play,.ws-results,.ws-book{background:#fffdfa;border:2px solid #d9e9f2;border-radius:28px;box-shadow:0 7px 0 #c9e5f0,0 18px 38px #27446016;overflow:hidden}
.ws-welcome{display:grid;grid-template-columns:1fr 1.1fr}
.ws-hero{padding:38px 28px;min-height:330px;display:flex;flex-direction:column;align-items:flex-start;gap:13px;background:linear-gradient(180deg,#edfafbcc 0%,#ecfaf0e8 65%,#def3e4d9 100%),url('/assets/scenes/salam-garden-640.webp') center/cover}
.ws-hero .ws-emblem{display:grid;place-items:center;width:76px;height:76px;border-radius:24px;background:#fffef3;box-shadow:0 5px 0 #baded6;font-size:38px;transform:rotate(-6deg)}
.ws-hero p:not(.ws-eyebrow){max-width:32ch;line-height:1.6;font-weight:750}
.ws-choices{padding:30px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.ws-mode{display:flex;gap:12px;text-align:left;align-items:center;width:100%;padding:16px;border-radius:19px;border:2px solid #bedee4;background:#edf9f5;color:#205d54;box-shadow:0 4px 0 #cae7e0;min-height:70px;transition:transform .15s}
.ws-mode strong{display:block;font-size:1.15rem;font-weight:1000}.ws-mode small{display:block;font-size:.81rem;margin-top:3px;font-weight:750}
.ws-mode>span:first-child{font-size:1.7rem}.ws-mode:nth-of-type(2){background:#fff5d6;border-color:#f4d58e;color:#754719;box-shadow:0 4px 0 #efdfb5}.ws-mode:nth-of-type(3){background:#f0ebff;border-color:#d7c6f5;color:#5132a3;box-shadow:0 4px 0 #ddd0f1}
.ws-mode:hover{transform:translateY(-2px)}.ws-mode:active{transform:translateY(2px)}
.ws-prefs{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;color:#526277;font-size:.83rem;font-weight:800}
.ws-button,.ws-pill{min-height:44px;padding:9px 15px;border-radius:14px;border:2px solid #cfc2ed;background:#f3eeff;color:#5132a3;font-weight:950!important;font-size:.92rem!important}
.ws-primary{background:#ffd77d;color:#604314;border-color:#dbae52;box-shadow:0 4px 0 #e6c271}.ws-button:disabled{opacity:.7;cursor:default}
.ws-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:#ece7fb;border-bottom:2px solid #dfd4f3}.ws-top strong{font-size:1.05rem;color:#5132a3}.ws-top small{display:block;color:#55446e;font-weight:800;margin-top:2px}
.ws-play-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr);gap:25px;padding:22px}
.ws-board-area{min-width:0}.ws-direction{font-size:.85rem;line-height:1.5;color:#4a5269;font-weight:850;margin-bottom:10px!important}
.ws-board-scroll{overflow:auto;padding:5px 2px 8px;max-width:100%;overscroll-behavior-x:contain;scrollbar-color:#8b6ac1 #f4edfc}
#grid{--size:6;width:100%;display:grid;gap:4px;padding:6px;box-sizing:border-box;border:2px solid #dcd1f0;border-radius:18px;background:#f2edf9;user-select:none;-webkit-user-select:none;touch-action:none;direction:ltr}
#grid.ws-large{min-width:calc(var(--size)*48px + 16px);touch-action:pan-x pan-y}
.ws-row{display:grid;grid-template-columns:repeat(var(--size),minmax(0,1fr));gap:4px}
.ws-app .cell{aspect-ratio:1;width:100%;min-width:0;display:grid;place-items:center;padding:0;border:1px solid #ded5ec;border-radius:9px;background:white;color:#39435c;font-weight:1000;font-size:clamp(.95rem,3.8vw,1.35rem);line-height:1;box-shadow:0 2px 0 #ddd4ec;touch-action:inherit;transition:background .13s,box-shadow .13s}
.ws-app .cell.found-cell{background:#c4ead7;color:#154d3c;border-color:#61a88b;box-shadow:0 2px 0 #9bceb7}
.ws-app .cell.hint{box-shadow:inset 0 0 0 3px #aa6713,0 2px 0 #daba80;background:#fff1c5}
.ws-app .cell.selected,.ws-app .cell.preview{background:#ffdb86;color:#614414;border-color:#b88934;box-shadow:0 2px 0 #d3ac65}
.ws-app .cell:focus-visible{position:relative;z-index:2;outline-offset:0}
.ws-selection{min-height:25px;text-align:center;font-size:.87rem;font-weight:850;letter-spacing:.12em;color:#72551d;margin-top:5px!important;overflow-wrap:anywhere}
.ws-tools{display:flex;gap:8px;justify-content:center;margin-top:10px;flex-wrap:wrap}.ws-tools button{flex:1}
.ws-hint{min-height:43px;margin:13px 0 8px!important;text-align:center;color:#514267;font-size:.86rem;line-height:1.5;font-weight:800}
.ws-zoom{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;color:#536077;font-size:.82rem;font-weight:800}.ws-zoom input{width:18px;height:18px;accent-color:#7150b0}
.ws-search-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.word-tag{border:2px solid #d8c8ed;border-radius:14px;padding:8px 11px;min-height:44px;background:#f5effe;color:#613b8d;font-weight:1000!important;font-size:.94rem!important;letter-spacing:.025em}
.word-tag.found{background:#e0f2e6;border-color:#9bcab0;color:#205942}
.ws-sidebar{min-width:0}.ws-sidebar h2{font-size:1.35rem}.ws-sidebar>p{font-size:.85rem;color:#586476;line-height:1.5;margin-top:5px}
.ws-progress{height:10px;width:100%;accent-color:#5aa98b;margin:10px 0 5px;border:0;border-radius:8px;overflow:hidden}.ws-progress::-webkit-progress-bar{background:#e4ebec}.ws-progress::-webkit-progress-value{background:#5aa98b}
.ws-discovery{padding:18px;background:#fff3cf;border:2px solid #efd89c;border-radius:20px;position:relative}.ws-discovery h3{color:#705019;font-size:1.6rem;font-weight:1000;letter-spacing:.05em;margin:4px 0}
.ws-discovery strong{display:block;color:#513f27;font-size:1.1rem;line-height:1.3}.ws-discovery p{font-size:.9rem;line-height:1.5;margin-top:10px;color:#5e4f3a}
.ws-discovery .ws-think{padding-top:10px;border-top:1px dashed #c7ad70;font-weight:900}.ws-ref{display:block;margin-top:12px;font-size:.73rem;color:#655740;line-height:1.4}
#finishBtn{width:100%;margin-top:15px}.ws-results,.ws-book{padding:28px}.ws-result-heading{text-align:center}.ws-result-heading>span{display:block;font-size:45px;margin-bottom:8px}.ws-result-heading p{line-height:1.5;margin-top:8px;color:#596174}
.ws-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px;margin:22px 0}.ws-result-card{padding:15px;border-radius:17px;background:#f0f8f3;border:2px solid #cae3d3}.ws-result-card h3{font-weight:1000;font-size:1.13rem;color:#2a6551}.ws-result-card p{line-height:1.5;margin-top:5px;font-size:.88rem}.ws-result-card small{display:block;color:#536255;font-size:.73rem;margin-top:8px}.ws-locked{background:#f2f3f5;border-color:#dce1e7;color:#606b7a}.ws-locked h3{color:#586274}
.ws-recall{padding:18px;border:2px solid #dcd0ee;border-radius:19px;background:#f6f0fd}.ws-recall h3{font-size:1rem;font-weight:950;color:#614781}.ws-recall p{margin:8px 0;line-height:1.5;font-size:.91rem}#recallOptions{display:flex;gap:8px;flex-wrap:wrap}#recallFeedback{min-height:24px;font-weight:800;color:#39556b}
.ws-result-actions{display:flex;justify-content:center;gap:10px;margin-top:20px;flex-wrap:wrap}.ws-notes{margin:20px auto 0;max-width:760px;background:#ffffffd9;border-radius:18px;padding:15px 18px;border:1px solid #cce3ec;color:#4a5b6d;font-size:.86rem;line-height:1.6}.ws-notes summary{cursor:pointer;font-weight:900;min-height:26px}.ws-notes p{margin-top:10px}.ws-storage{padding:10px;border-radius:12px;background:#fff3cf;color:#664917;font-size:.8rem;line-height:1.5;margin:12px 0!important}
@media(max-width:720px){.ws-app{padding:12px 8px 18px}.ws-welcome{grid-template-columns:1fr}.ws-hero{min-height:0;padding:22px;display:block}.ws-hero .ws-emblem{float:right;width:55px;height:55px;font-size:29px;margin-left:8px}.ws-hero .ws-eyebrow{margin-bottom:6px}.ws-hero>p:last-child{margin-top:10px}.ws-choices{padding:18px 20px 24px}.ws-play-body{grid-template-columns:1fr;gap:20px;padding:14px 8px}.ws-top{padding:10px 12px}.ws-top strong{font-size:.96rem}.ws-top .ws-button{padding:7px 10px}.ws-sidebar{padding:0 4px}.ws-results,.ws-book{padding:20px 15px}.ws-result-grid{grid-template-columns:1fr 1fr}.ws-result-card{padding:12px}.ws-app h1{font-size:2.1rem}#grid{gap:3px;padding:4px}.ws-row{gap:3px}.ws-app .cell{border-radius:7px}.ws-search-list{gap:6px;margin-top:10px}.ws-direction{font-size:.79rem}.ws-prefs{padding:0 5px}.ws-play-body{max-width:540px;margin:auto}}
@media(prefers-reduced-motion:reduce){.ws-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ws-mode:hover,.ws-mode:active{transform:none}}

.ws-targets{padding:16px 22px 0}.ws-targets h2{font-size:1.1rem}.ws-targets>p{font-size:.8rem;color:#566277;line-height:1.5;margin-top:4px}.ws-targets .ws-search-list{margin:8px 0 0}.ws-targets .ws-progress{display:none}#readWordBtn{width:100%;margin:3px 0 4px}.ws-results,.ws-book{scroll-margin-top:calc(var(--sg-header,76px) + 12px)}
@media(max-width:720px){.ws-targets{padding:12px 12px 0}.ws-targets h2{font-size:1rem}.ws-hero{position:relative;padding:20px}.ws-hero .ws-emblem{float:none;position:absolute;right:18px;top:20px;width:45px;height:45px;font-size:26px}.ws-hero .ws-eyebrow{padding-right:53px}.ws-hero h1{font-size:1.9rem;clear:both;margin-top:13px}.ws-hero p:not(.ws-eyebrow){font-size:.92rem}.ws-choices{padding-top:20px}.ws-choices h2{font-size:1.3rem}.ws-mode{padding:13px;min-height:65px}.ws-mode strong{font-size:1.03rem}.ws-mode small{font-size:.77rem}.ws-play-body{padding-top:12px}}

.ws-welcome{scroll-margin-top:calc(var(--sg-header,76px) + 12px)}

/* Clip sideways paint without creating a body scroll container that breaks the shared sticky header. */
html:has(body[data-sg-page="word-search"]){overflow-x:clip}
body[data-sg-page="word-search"]{overflow-x:clip!important;overflow-y:visible}

.ws-word-check{visibility:hidden;display:inline-block;min-width:1.05em}.word-tag.found .ws-word-check{visibility:visible}
