:root{color:#263052;background:#f8f7ff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 0,#e5f9ff 0,#0000 35%),radial-gradient(circle at 90% 20%,#f3e9ff 0,#0000 35%),#f8f7ff;min-height:100vh;margin:0}.app{max-width:1180px;margin:auto;padding:22px 22px 48px}header{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;min-height:66px;margin-bottom:30px;display:grid}h1{text-align:center;color:#7150d9;letter-spacing:-.045em;text-shadow:0 2px #fff;margin:0;font-size:clamp(2rem,4vw,3.1rem)}.text-button,button{font:inherit;cursor:pointer}button:focus-visible{outline-offset:3px;outline:3px solid #ffac36}.text-button{color:#7150d9;background:0 0;border:0;border-radius:16px;padding:12px;font-weight:800}#home{justify-self:start}#sound{background:#fff;justify-self:end;font-size:1.4rem;box-shadow:0 5px 15px #604ba31a}#home[hidden]{visibility:hidden;display:block}#screen>h2{color:#263052;margin:4px 0 22px;font-size:clamp(1.45rem,3vw,2rem)}.categories{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:20px;display:grid}.category,.primary,.secondary{background:#fff;border:0;border-radius:24px;padding:22px;box-shadow:0 10px 26px #493a8419}.category{text-align:left;border:2px solid #fff;flex-direction:column;align-items:flex-start;gap:12px;min-height:210px;transition:transform .15s,box-shadow .15s;display:flex}.category:hover{border-color:#c5b4ff;transform:translateY(-4px);box-shadow:0 14px 32px #493a8429}.category span{background:#f1eaff;border-radius:20px;padding:12px;font-size:3.2rem;line-height:1.3}.category strong{color:#302658;font-size:1.5rem}.category small{color:#766d93;font-size:1rem}.category:after{content:"Play →";color:#008ca5;background:#e9faff;border-radius:100px;align-self:flex-end;margin-top:auto;padding:8px 16px;font-weight:800}.primary,.secondary{min-height:54px;padding:15px 24px;font-weight:800}.primary{color:#fff;background:linear-gradient(135deg,#7654e8,#4c83ec)}.secondary{color:#7150d9;background:#fff;border:2px solid #e0d6ff}.actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.status{color:#473777;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 0 18px;font-size:1.08rem;font-weight:800;display:flex}.board{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(36px,9vw,115px);display:grid;position:relative}.column{grid-auto-rows:120px;gap:12px;min-width:0;display:grid}.tile{z-index:1;touch-action:manipulation;background:#fff;border:3px solid #e9e4fa;border-radius:22px;justify-content:center;align-items:center;min-height:clamp(86px,12vh,125px);padding:10px;transition:border-color .12s,background .12s;display:flex;position:relative;overflow:hidden;box-shadow:0 5px 13px #4b3c8217}.tile.image{padding:4px}.tile img{object-fit:contain;width:100%;height:100%;display:block}.tile.word{color:#43366d;overflow-wrap:anywhere;font-size:clamp(1.05rem,2.4vw,1.55rem);font-weight:800}.tile.selected{background:#e6faff;border-color:#17b4d2;box-shadow:0 0 0 3px #17b4d225}.tile.matched{color:#19754a;background:#e5f9ee;border-color:#28a86e}.tile.word.matched{color:#19754a}.tile.wrong{background:#fff0ed;border-color:#ff7968}.tile:disabled{opacity:1;cursor:default}.connections{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.message{color:#5a4799;min-height:28px;margin-top:18px;font-weight:800}.complete{text-align:center;background:#fff;border-radius:28px;padding:48px 20px;box-shadow:0 12px 30px #493a8419}.complete h2{color:#7150d9;font-size:2rem}.empty{background:#fff;border-radius:18px;padding:20px}@media (width<=600px){.app{padding:12px 12px 30px}header{grid-template-columns:75px 1fr 55px;margin-bottom:22px}h1{font-size:clamp(1.4rem,5vw,2rem)}.text-button{padding:7px}.board{gap:32px}.column{grid-auto-rows:90px;gap:8px}.tile{border-radius:14px;width:100%;height:90px;min-height:0;padding:5px}.tile.word{font-size:1rem}.status{font-size:.9rem}.categories{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.category{min-height:170px;padding:14px}.category span{padding:9px;font-size:2rem}.category strong{font-size:1.15rem}}
