*{box-sizing:border-box} :root{--bg:#f5f5f5;--card:#fff;--ink:#171717;--muted:#666666;--line:#dddddd;--accent:#fee2e2;--mark:#fecaca}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,sans-serif}body.dark{--bg:#0b0b0b;--card:#171717;--ink:#ffffff;--muted:#bdbdbd;--line:#383838;--accent:#351419;--mark:#76232d}header{max-width:1100px;margin:auto;padding:25px 24px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:12px;align-items:center;font-size:13px;font-weight:750;letter-spacing:2px}.brand b{font-size:24px;background:var(--ink);color:var(--bg);border-radius:15px;padding:10px;letter-spacing:-2px}.brand small{display:block;font-weight:400;letter-spacing:0;font-size:11px;margin-top:5px;color:var(--muted)}main{max-width:1050px;margin:auto;padding:0 24px 35px}nav{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:35px}button,select,input{font:inherit;color:var(--ink)}button{cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:11px 16px}button:hover{border-color:var(--ink)}button:disabled{opacity:.6;cursor:default}nav button.active,.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}h1{font-size:clamp(32px,5vw,51px);letter-spacing:-2px;line-height:1.14;margin:18px 0}h1 em{font-style:normal;color:var(--muted)}h2{font-size:20px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700}.sub,.foot{color:var(--muted);line-height:1.6}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0}.section-title{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.section-title span{font-size:12px;color:var(--muted)}select,input{padding:12px;border:1px solid var(--line);background:var(--card);border-radius:10px}label{display:block}input{display:block;width:100%;margin:12px 0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px}.card{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px}.card .icon{display:block;font-size:27px;margin-bottom:25px}.card strong{display:block;font-size:20px;margin-bottom:7px}.card small{color:var(--muted)}.card:first-child{background:var(--accent)}.foot{font-size:12px;margin-top:28px}.board-wrap{max-width:540px;margin:20px auto;border:1px solid var(--line);padding:12px;background:var(--card);border-radius:18px}#board{display:grid;touch-action:none;user-select:none;gap:2px}#board button{padding:0;border:0;border-radius:6px;aspect-ratio:1;font-size:clamp(12px,3.3vw,20px);font-weight:650;background:transparent}#board button.found{background:var(--mark)}#board button.selected{background:var(--ink);color:var(--bg)}#board button.hinted{outline:2px solid #e32636}#words{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}#words span{padding:9px 12px;background:var(--card);border:1px solid var(--line);border-radius:20px;font-size:13px}#words .done{text-decoration:line-through;background:var(--mark)}#game{max-width:650px;margin:auto}#win{text-align:center;background:var(--accent);padding:22px;border-radius:20px;margin-top:25px}#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);border-radius:12px;padding:14px 20px;display:none;max-width:90%;z-index:10}#settings{max-width:650px}[hidden]{display:none!important}@media(max-width:480px){main{padding:0 16px 25px}header{padding:18px 16px}.cards{grid-template-columns:1fr 1fr;gap:10px}.card{padding:17px}.card strong{font-size:17px}.card .icon{margin-bottom:20px}nav{margin-bottom:26px}.board-wrap{padding:6px}.row{margin:16px 0}}
textarea{background:var(--card);color:var(--ink);font:inherit;border:1px solid var(--line);border-radius:12px;padding:12px}main{max-width:760px}
textarea{width:100%}
:root{--red:#c91e30}body.dark{--red:#ed3348}.brand b,nav button.active,.primary,#board button.selected{background:var(--red);color:#fff;border-color:var(--red)}h1 em,.eyebrow{color:var(--red)}button:focus-visible{outline:3px solid var(--red);outline-offset:3px}.card:hover{border-color:var(--red)}
