*{box-sizing:border-box} :root{font-family:Arial,Helvetica,sans-serif;color:#20231c;background:#f5f4ee;font-synthesis:none}body{margin:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,summary:focus-visible{outline:3px solid #6755d1;outline-offset:4px}[hidden]{display:none!important}main{width:min(100% - 40px,448px);margin:30px auto 40px}header{display:flex;align-items:center;justify-content:space-between}.edition{font-size:10px;font-weight:800;letter-spacing:1.8px}.circle{width:36px;height:36px;border:1px solid #c6c9be;border-radius:50%;background:transparent;font-weight:700;font-size:18px}h1{font-size:64px;font-weight:950;line-height:.88;letter-spacing:-4px;margin:25px 0 14px}.two{display:inline-block;background:#dfff70;border:2px solid #20231c;padding:2px 13px 4px;transform:rotate(8deg);font-size:54px;box-shadow:3px 3px 0 #20231c;vertical-align:7px}.bang{color:#6755d1}.tagline{margin:0 0 25px;color:#606458;font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);padding:16px 0;border-top:1px solid #c9ccc1;border-bottom:1px solid #c9ccc1;text-align:center}.stats>div+div{border-left:1px solid #c9ccc1}.label{display:block;font-size:9px;font-weight:800;letter-spacing:1.7px;margin-bottom:6px}.stats strong{font-size:34px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-1px}.clock.low{color:#b63429}.selection{height:58px;display:flex;align-items:center;justify-content:center;gap:12px}#word{font-size:13px;color:#606458}#word.active{font-size:23px;letter-spacing:2px;font-weight:800;color:#20231c}#clear{width:32px;height:32px;border:0;background:#e4e5dc;border-radius:50%;font-size:24px}.board-wrap{position:relative;aspect-ratio:1}.board{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;height:100%}.tile{border:1.5px solid #c6c9be;background:#fffef8;border-radius:8px;font-size:clamp(26px,7.5vw,42px);font-weight:800;box-shadow:0 3px 0 #d9dccf;position:relative;user-select:none;-webkit-user-select:none}.tile.selected{background:#dfff70;border-color:#20231c;box-shadow:0 3px 0 #20231c}.tile.last{outline:2px solid #20231c;outline-offset:-5px}.tile:disabled{color:#20231c;opacity:1}.tile.placeholder{color:transparent;background:#e8eadf;box-shadow:none}.tile span{position:relative;z-index:2}#lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}#lines polyline{fill:none;stroke:#687d37;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;opacity:.35}.message{text-align:center;font-size:13px;min-height:18px;margin:18px 0 14px;color:#555d49}.message.error{color:#a43026}.message.success{color:#376521;font-weight:700}.actions{display:flex;gap:10px}.primary,.secondary{min-height:50px;border:1.5px solid #20231c;border-radius:6px;font-weight:800;font-size:15px}.primary{background:#20231c;color:#fffef8;flex:1}.primary:not(:disabled):hover{background:#3a4230}.primary:disabled{background:#d7dace;border-color:#d7dace;color:#6c7162}.secondary{background:transparent;padding:0 24px;flex:1}.tip{text-align:center;font-size:11px;color:#606458;line-height:1.6;margin:12px 0 0}.found-section{margin-top:28px;border-top:1px solid #c9ccc1;padding-top:18px}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.result-heading h2{font-size:16px;margin:0}.result-heading>span{font-size:10px;letter-spacing:1px;color:#606458}.word-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.word-chip{display:inline-flex;align-items:center;gap:10px;border:1px solid #c9ccc1;border-radius:4px;padding:8px 10px;font-size:12px;font-weight:700;background:#fffef8}.word-chip small{color:#606458;font-size:10px}.empty{font-size:13px;color:#757a6b;margin:0}footer{font-size:11px;line-height:1.8;text-align:center;color:#707566;margin-top:32px}footer button{border:0;background:none;color:inherit;text-decoration:underline;font-size:10px;padding:8px}#results{margin-top:22px;background:#e8edda;border:1px solid #ccd3bd;border-radius:8px;padding:18px}#results h2{font-size:21px;letter-spacing:-.5px}#result-summary{font-size:13px;line-height:1.6}summary{cursor:pointer;font-size:13px;font-weight:700;padding:8px 0}#missed-count{font-weight:400}dialog{width:min(100% - 32px,480px);border:1px solid #20231c;border-radius:12px;background:#f5f4ee;padding:24px;color:#20231c;max-height:90dvh}dialog::backdrop{background:#20231cb3;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:8px}dialog h2{font-size:30px;letter-spacing:-1px}dialog p,dialog li{font-size:14px;line-height:1.65}dialog ol{padding-left:20px}dialog li{margin-bottom:12px}.scoring{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center}.scoring span{padding:12px 4px;background:#dfff70;border-radius:4px;font-size:11px}.scoring strong{display:block;font-size:18px;margin-top:5px}dialog .fine{font-size:11px;color:#606458}body:has(dialog[open]){overflow:hidden}@media(min-width:800px){main{margin-top:45px}h1{font-size:76px}.two{font-size:62px}}@media(max-width:360px){main{width:calc(100% - 28px);margin-top:18px}h1{font-size:55px}.two{font-size:46px}.board{gap:6px}.edition{font-size:9px}.tagline{margin-bottom:18px}.stats{padding:12px 0}}@media(prefers-reduced-motion:no-preference){.primary,.tile{transition:background .1s ease}.tile.selected{animation:pop .12s ease}@keyframes pop{50%{transform:scale(.96)}}}
@media(max-width:500px){main{margin-top:16px}h1{font-size:56px;margin:18px 0 12px}.two{font-size:47px}.tagline{margin-bottom:18px}.stats{padding:12px 0}.stats strong{font-size:30px}.selection{height:48px}.message{margin:14px 0 10px}.primary,.secondary{min-height:46px}}
.board-cover{display:none;position:absolute;inset:0;border:1.5px dashed #c6c9be;border-radius:8px;align-items:center;justify-content:center;flex-direction:column;gap:12px;font-size:24px;font-weight:800;letter-spacing:-.5px;text-align:center;padding:18px}.board-cover small{font-size:12px;font-weight:400;letter-spacing:0;color:#606458}.concealed .board,.concealed #lines{visibility:hidden}.concealed .board-cover{display:flex}#feedback{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:130px;height:130px;border-radius:50%;z-index:3;pointer-events:none;box-shadow:0 5px 25px #20231c33}#feedback.accepted{background:#18753b}#feedback.rejected{background:#cf2929}#feedback svg{width:100%;height:100%;fill:none;stroke:white;stroke-width:11;stroke-linecap:round;stroke-linejoin:round}
.actions{flex-direction:column}.primary.submit{background:#28843f;border-color:#226f35;color:white}.primary.submit:not(:disabled):hover{background:#206e34}.primary.submit:disabled{background:#d7dace;border-color:#d7dace;color:#6c7162}
.board-cover #start{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:220px;max-width:85%}.board-cover>span{position:absolute;bottom:calc(50% + 44px)}.board-cover>small{position:absolute;top:calc(50% + 44px);padding:0 12px}.possibilities{display:flex;justify-content:center;gap:20px;padding-top:14px;font-size:11px;color:#606458}.possibilities strong{color:#20231c;font-variant-numeric:tabular-nums}
#clear{width:auto;min-width:54px;height:36px;border-radius:5px;font-size:12px;font-weight:700;padding:0 10px}.selection{min-width:0}#word.active{font-size:clamp(15px,4.5vw,23px);letter-spacing:1px}
.record-notice{position:fixed;z-index:10;top:max(16px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 28px);padding:18px 22px;border:2px solid #20231c;border-radius:10px;background:#dfff70;color:#20231c;font-size:18px;font-weight:800;text-align:center;box-shadow:0 5px 18px #20231c26;pointer-events:none}#results .result-heading{flex-wrap:wrap}
.word-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.word-actions #clear{width:100%;height:auto;min-height:46px;border:1.5px solid #20231c;border-radius:6px;background:transparent;font-size:15px}.word-actions #clear:disabled{opacity:.45;cursor:default}
.stats{scroll-margin-top:12px}
.tile{touch-action:none;animation:none!important}.tile span{pointer-events:none}.sort-label{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:12px;color:#606458}.sort-label select{font:inherit;padding:10px;border:1px solid #c9ccc1;border-radius:6px;background:#fffef8;color:#20231c;min-height:44px}.word-length{flex-basis:100%;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#606458;margin:14px 0 0}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#e4e5dc;border-radius:8px}.auth-tabs button{border:0;border-radius:5px;padding:12px;background:transparent;font-weight:700}.auth-tabs button[aria-pressed=true]{background:#20231c;color:#fffef8}#auth-message:not(:empty){padding:12px;border:1px solid #c9ccc1;border-radius:6px;background:#fffef8}#password-hint{margin-top:-8px}
.tile.vowel{background:#e4dbff}.tile.vowel.selected{background:#dfff70}#mode-label{display:inline-block;color:#6755d1;margin-top:6px;font-size:13px}dialog input,dialog textarea,dialog select{display:block;width:100%;font:inherit;font-size:16px;margin:8px 0 16px;padding:12px;border:1px solid #b7bdab;border-radius:6px;background:#fffef8;color:#20231c}dialog label{display:block;font-size:13px;font-weight:700}dialog form>.primary{width:100%}dialog hr{border:0;border-top:1px solid #c9ccc1;margin:24px 0}.text-button{border:0;background:none;text-decoration:underline;padding:14px 0}#menu h2{margin:0 0 16px}#menu #giveup{margin-top:10px}#menu p{overflow-wrap:anywhere}
.header-tools{display:flex;align-items:center;gap:10px;flex-shrink:0}header{gap:12px}.header-tools #giveup{background:transparent;border:0;color:#606458;font-size:12px;min-height:44px;padding:0 6px;text-decoration:underline}header .edition{line-height:1.5}
#missed-heading{font-size:14px;margin:18px 0 8px}.round-summary{margin:20px 0}.round-summary>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #c9ccc1}.round-summary dt{font-size:14px;color:#606458}.round-summary dd{margin:0;font-weight:800;text-align:right}#game-over>button{display:block;width:100%;margin-top:10px}#game-over h2{margin-top:0}
