@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--bg:#f7f5ef;--ink:#244c3d;--muted:#7b8379;--panel:#fffefa;--line:#dedfd5;--tint:#edf0e5;--sel:#c7ddad;--accent:#dfe8b5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:focus-visible,a:focus-visible{outline:3px solid #b7c783;outline-offset:2px}header{max-width:1240px;margin:auto;padding:30px 42px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;color:inherit;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:-1px}.dot{color:#a8b977}.logo{width:35px;height:35px;display:grid;grid-template-columns:1fr 1fr;margin-right:12px;font-size:13px;letter-spacing:0;border:1px solid var(--ink);padding:3px}.logo span{border-left:1px solid var(--line)}.quiet{font-size:23px}main{max-width:1156px;margin:58px auto 70px;display:grid;grid-template-columns:1fr 500px;gap:90px;padding:0 32px}.intro{padding-top:22px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px}h1{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-3px;line-height:1.03;font-size:84px;margin:28px 0}h1 em{font-weight:400;color:#7c8b55}p{font-size:15px;line-height:1.85;color:var(--muted)}.daily{display:flex;align-items:center;gap:13px;background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:19px 16px;margin-top:37px}.daily>span{font-size:28px}.daily b{font-size:13px}.daily small{display:block;font-size:10px;margin-top:5px;color:var(--muted)}.daily button{font-size:11px;margin-left:auto;font-weight:700}.how{max-width:320px;margin-top:53px}.how p{font-size:13px}.tip{font-family:Georgia,serif;font-style:italic}.play{background:var(--panel);border:1px solid var(--line);padding:26px;border-radius:18px;box-shadow:0 14px 45px #244c3d05}.game-top{display:flex;align-items:center;justify-content:space-between}h2{font-size:17px;letter-spacing:-.4px;margin:8px 0 22px}.levels{display:flex;padding:4px;background:var(--bg);border-radius:9px;gap:3px}.levels button{flex:1;font-size:12px;padding:9px 0;border-radius:6px}.levels .active{background:var(--ink);color:var(--panel)}.meta{display:flex;justify-content:space-between;margin:21px 0 12px;font-size:11px;color:var(--muted)}.meta i{display:inline-block;width:6px;height:6px;background:#849a56;border-radius:50%;margin-right:3px}#progress{opacity:.7;margin-left:7px}#clock{font-variant-numeric:tabular-nums}.board-wrap{position:relative}#board{display:grid;grid-template-columns:repeat(9,1fr);border:2px solid var(--ink);aspect-ratio:1}#board button{padding:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:24px;position:relative;color:#637f4d;min-width:0}#board button.fixed{color:var(--ink);font-weight:600}#board button:nth-child(3n){border-right:2px solid var(--ink)}#board button:nth-child(9n){border-right:0}#board button:nth-child(n+19):nth-child(-n+27),#board button:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid var(--ink)}#board button:nth-child(n+73){border-bottom:0}#board .related{background:var(--tint)}#board .same{background:var(--accent)}#board .selected{background:var(--sel)}#board .error{color:#bd4b40;background:#fbe9e1}.pencil{display:grid;grid-template-columns:repeat(3,1fr);font-size:9px;height:100%;align-items:center;padding:2px;line-height:1}.tools{display:flex;justify-content:space-between;margin:18px 0}.tools button{font-size:23px;width:20%;border-radius:8px;padding:5px 0}.tools small{display:block;font-size:9px;margin-top:5px}.tools .active{background:var(--accent)}#keys{display:grid;grid-template-columns:repeat(9,1fr);gap:5px}#keys button{background:var(--tint);border-radius:7px;font-size:24px;padding:11px 0}#keys button:hover{background:var(--sel)}.below{display:flex;align-items:center;justify-content:space-between;margin-top:23px;font-size:9px;color:var(--muted)}.below button{font-size:11px;color:var(--ink);font-weight:700}#status{font-size:11px;line-height:1.5;min-height:16px;margin:15px 0 0}footer{max-width:1156px;margin:auto;padding:24px 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}footer>span:first-child{letter-spacing:2px;font-size:9px}#veil{position:absolute;inset:0;background:var(--panel);font-size:22px;width:100%;z-index:2}#veil small{font-size:12px}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:28px;max-width:390px;width:90%}dialog::backdrop{background:#18332977}dialog div{display:flex;justify-content:flex-end;gap:12px}dialog button{background:var(--tint);border-radius:8px;padding:10px 15px}#accept{background:var(--ink);color:var(--panel)}body.dark{--bg:#172a23;--panel:#20372d;--ink:#e0e6d5;--muted:#a6b2a4;--line:#425248;--tint:#304637;--sel:#526b43;--accent:#425b34}body.dark .levels .active{background:#cbd9ad;color:#20372d}@media(max-width:850px){main{gap:35px;grid-template-columns:1fr 440px;padding:0 22px}h1{font-size:62px}.play{padding:20px}.daily{flex-wrap:wrap}.daily button{margin-left:0}.how{margin-top:30px}}@media(max-width:680px){header{padding:19px 22px}.brand{font-size:23px}main{display:flex;flex-direction:column;margin:24px auto 35px;gap:22px;max-width:510px;padding:0 16px}.intro{padding:0}.intro .eyebrow{font-size:9px}h1{font-size:48px;letter-spacing:-2px;margin:12px 0;line-height:1}h1 br{display:none}.intro>p{font-size:12px;margin:0}.intro>p br{display:none}.daily{margin-top:18px;padding:12px 14px;flex-wrap:nowrap}.daily button{margin-left:auto}.how{display:none}.play{padding:17px;border-radius:13px}h2{font-size:16px;margin-bottom:17px}#board button{font-size:23px}.pencil{font-size:9px}.meta{margin-top:16px}.tools{margin:12px 0}#keys button{padding:10px 0;font-size:23px}footer{padding:20px 16px}footer>span:nth-child(2){display:none}}

.collection-button{display:flex;justify-content:space-between;width:100%;background:var(--tint);padding:12px 14px;border-radius:8px;margin:0 0 14px;font-size:12px;font-weight:600}.wide-dialog{max-width:760px;max-height:88vh;overflow:auto}.wide-dialog .dialog-header{display:flex;justify-content:space-between;align-items:center}.dialog-header h2{font-size:25px;margin-bottom:4px}.wide-dialog .filters{display:flex;align-items:end;justify-content:start;gap:16px;flex-wrap:wrap;margin-bottom:20px}.filters label{font-size:11px;display:grid;gap:6px}.filters select{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:9px;font:inherit}.filters>span{font-size:11px;margin-left:auto;padding:10px 0}.wide-dialog #catalogGrid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;max-height:45vh;overflow:auto;padding:3px}.wide-dialog #catalogGrid button{padding:12px 4px;border:1px solid var(--line);font-size:14px}.wide-dialog #catalogGrid small{display:block;font-size:9px;margin-top:5px;color:var(--muted)}#catalogGrid .solved{background:var(--accent)}#catalogGrid .started{border-color:var(--ink)!important}.wide-dialog .storage-note{font-size:11px;line-height:1.6;margin-top:20px}.wide-dialog #statsSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}.wide-dialog #statsSummary>div{display:block;background:var(--tint);padding:16px;border-radius:8px}.wide-dialog #statsSummary strong{display:block;font-size:22px}.wide-dialog #statsSummary small{display:block;font-size:10px;margin-top:7px}.stats-table{border-collapse:collapse;width:100%;font-size:12px}.stats-table td,.stats-table th{text-align:left;padding:12px 6px;border-bottom:1px solid var(--line)}.stats-table th{font-size:10px;color:var(--muted)}@media(max-width:600px){.wide-dialog{padding:20px}.wide-dialog #catalogGrid{grid-template-columns:repeat(4,1fr)}.wide-dialog #statsSummary{grid-template-columns:repeat(2,1fr)}.stats-table{font-size:10px}.stats-table th{font-size:9px}}
