:root{--bg: #f5f5f5;--container-bg: #fff;--container-shadow: rgba(0, 0, 0, .1);--sand: #c2a36b;--sandstone: #8b6f47;--sand-light: #f4e2c0;--text: #000;--text-strong: #000;--text-muted: #666;--text-on-sand: #fff;--border: #000;--border-strong: #8b6f47;--error: #d9352a;--error-bg: #d9352a;--pyramid-bg: #ffffff;--pyramid-line: #000000;--button-bg: #000000;--button-text: #ffffff;--toggle-bg: #fff;--toggle-border: #c2a36b}[data-theme=dark]{--bg: #14110d;--container-bg: #1f1a14;--container-shadow: rgba(0, 0, 0, .55);--sand: #c2a36b;--sandstone: #d4b988;--sand-light: #3a2f1e;--text: #f0e6d2;--text-strong: #fff;--text-muted: #b7a98a;--text-on-sand: #1f1a14;--border: #d4b988;--border-strong: #d4b988;--error: #ff6b6b;--error-bg: #b53a2c;--pyramid-bg: #1f1a14;--pyramid-line: #d4b988;--button-bg: #d4b988;--button-text: #1f1a14;--toggle-bg: #1f1a14;--toggle-border: #d4b988}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;text-align:center;background-color:var(--bg);margin:0;padding:0;width:100%;min-height:100%;user-select:none;-webkit-tap-highlight-color:transparent;color:var(--text);transition:background-color .25s ease,color .25s ease}body{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:16px 12px 32px;box-sizing:border-box;min-height:100vh;min-height:100dvh}.container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;max-width:420px;background:var(--container-bg);padding:clamp(12px,4vw,24px);box-shadow:0 0 14px var(--container-shadow);border-radius:12px;box-sizing:border-box;transition:background-color .25s ease,box-shadow .25s ease}#starter-container{border:2px solid var(--sand);border-radius:8px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background-color:var(--sand-light);width:100%;max-width:100%;box-sizing:border-box;transition:background-color .25s ease,border-color .25s ease;order:-50}#row0{display:flex;justify-content:center;width:100%;max-width:fit-content}.instruction-label{font-size:clamp(13px,3.6vw,16px);font-weight:700;color:var(--sandstone);margin:10px 0 0;pointer-events:none;min-height:1.2em;text-align:center;width:100%}.word-row{display:flex;align-items:center;justify-content:center;width:100%;margin-bottom:5px;min-height:46px}.letter-box{width:clamp(36px,10.5vw,44px);height:clamp(36px,10.5vw,44px);font-size:clamp(18px,5.5vw,22px);border-radius:8px;color:var(--sand);text-align:center;border:1.5px solid var(--border);margin-right:4px;box-sizing:border-box;text-transform:uppercase;transition:all .3s ease-in-out;display:inline-flex;justify-content:center;align-items:center;font-weight:600}.letter-box:last-child{margin-right:0}.word-row.validated .letter-box{border:1.5px solid var(--sandstone);background-color:var(--sand-light);color:var(--sandstone);font-weight:700}.word-row.validated{animation:fadeInRow .5s ease-in-out}@keyframes fadeInRow{0%{transform:scale(1.05);opacity:.7}to{transform:scale(1);opacity:1}}.word-row.active .letter-box.empty{border:2.5px solid var(--sand);background-color:var(--container-bg);color:var(--text)}.word-row.active .letter-box.filled{border:1.5px solid var(--border);background-color:var(--sand);color:var(--text-on-sand)}.word-row.active .letter-box.error{border:1.5px solid var(--border);background-color:var(--error-bg)!important;color:#fff}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.shake-error{animation:shake .6s ease-in-out}#row0 .letter-box{background-color:var(--sand);color:var(--text-on-sand);border:1.5px solid var(--sandstone)}.word-row .letter-box.completed{border:1.5px solid var(--border);background-color:var(--sand);color:var(--text-on-sand)}.wave-animate .letter-box{animation:waveUp 1s ease-in-out forwards;background-color:var(--sand)!important;color:var(--text-on-sand)!important}@keyframes waveUp{0%{transform:scale(1);box-shadow:none}50%{transform:scale(1.5);box-shadow:0 8px 20px #0000004d}to{transform:scale(1);box-shadow:none}}#row0.wave-animate .letter-box{color:var(--text-on-sand)!important}#pyramid-container{width:100%;height:130px;display:flex;justify-content:center;align-items:flex-end;margin:0;position:relative;overflow:hidden}#pyramid-container canvas{display:block;max-width:100%;max-height:100%}.button-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;justify-content:center}#reset-progress-btn,#play-again-btn,#share-btn{display:inline-block;padding:10px 16px;font-size:15px;cursor:pointer;border:none;background:var(--button-bg);color:var(--button-text);border-radius:6px;font-weight:600;font-family:inherit;transition:opacity .2s ease,transform .1s ease}#reset-progress-btn:active,#play-again-btn:active,#share-btn:active{transform:translateY(1px)}#share-btn{background:var(--sand);color:var(--text-on-sand)}.stats-pill{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:6px 12px;background:var(--sand-light);border:1px solid var(--sand);border-radius:999px;font-size:12px;color:var(--sandstone);font-variant-numeric:tabular-nums}.stats-item{display:inline-flex;gap:4px}.stats-label{opacity:.7;font-weight:500}.stats-sep{opacity:.5}#stats-time,#stats-best,#stats-played{font-weight:700}#game-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;box-sizing:border-box}#overlay-content{background:var(--container-bg);color:var(--text);padding:24px 20px;border-radius:12px;text-align:center;max-width:420px;width:100%;box-sizing:border-box}#overlay-content h1{margin-top:0;color:var(--sandstone)}#overlay-content .rules{text-align:left;list-style:none;padding:0;margin:6px 0 4px;font-size:14px;line-height:1.45}#overlay-content .rules li{padding:3px 0 3px 20px;position:relative}#overlay-content .rules li:before{content:"\2022";color:var(--sand);position:absolute;left:6px;font-weight:700;top:2px}#overlay-content button{padding:12px 24px;font-size:16px;cursor:pointer;border:none;background:var(--sand);color:var(--text-on-sand);border-radius:6px;font-weight:600;font-family:inherit}#theme-toggle{position:fixed;top:12px;right:12px;z-index:500;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--toggle-border);background:var(--toggle-bg);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;color:var(--sandstone);transition:background .25s ease,border-color .25s ease,color .25s ease;padding:0;line-height:1}#theme-toggle:hover{background:var(--sand-light)}.theme-icon-dark,[data-theme=dark] .theme-icon-light{display:none}[data-theme=dark] .theme-icon-dark{display:inline}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:var(--sandstone);color:#fff;padding:10px 18px;border-radius:999px;font-size:14px;font-weight:600;z-index:600;box-shadow:0 4px 14px #0003;animation:toastIn .25s ease-out}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (max-width: 360px){.letter-box{margin-right:3px}.stats-pill{font-size:11px;padding:5px 10px}}@media (min-width: 600px){body{padding-top:32px}.container{padding:24px}.letter-box{width:44px;height:44px;font-size:22px}}[hidden]{display:none!important}.overlay-tagline{margin:0 0 14px;color:var(--text-muted);font-size:14px;line-height:1.4}.overlay-example{display:flex;flex-direction:column;align-items:center;gap:6px;margin:10px 0 18px;padding:14px 8px;background:var(--sand-light);border-radius:10px;border:1px solid var(--sand)}.example-starter,.example-row{display:flex;gap:3px;justify-content:center}.example-starter span,.example-row span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:12px;font-weight:700;border-radius:3px;font-family:inherit;letter-spacing:0}.example-starter span{background:var(--sand);color:var(--text-on-sand);border:1px solid var(--sandstone)}.example-row span{background:var(--container-bg);color:var(--sandstone);border:1.5px solid var(--sand)}.example-row.example-final span{background:var(--sand);color:var(--text-on-sand);border-color:var(--sandstone)}.example-arrow{color:var(--sandstone);font-size:14px;line-height:1;opacity:.7;margin:2px 0}.example-pyramid{display:flex;flex-direction:column;align-items:center;gap:3px}.overlay-tip{font-size:13px;color:var(--text-muted);margin:4px 0 18px;line-height:1.4}.mode-picker{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;text-align:left}.mode-card{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:8px;border:2px solid var(--sand-light);background:var(--container-bg);color:var(--text);cursor:pointer;font-family:inherit;transition:border-color .15s ease,background .15s ease,transform .05s ease;text-align:left}.mode-card:hover{border-color:var(--sand)}.mode-card:active{transform:translateY(1px)}.mode-card[aria-checked=true]{border-color:var(--sand);background:var(--sand-light)}.mode-name{font-weight:700;font-size:16px;color:var(--sandstone)}.mode-desc{font-size:13px;line-height:1.35;color:var(--text-muted)}#switch-mode-btn{background:transparent;color:var(--sandstone);border:1.5px solid var(--sand);padding:9px 14px;font-size:14px;cursor:pointer;border-radius:6px;font-weight:600;font-family:inherit}#switch-mode-btn:active{transform:translateY(1px)}#hint-btn{background:var(--sand-light);color:var(--sandstone);border:1.5px solid var(--sand);padding:9px 14px;font-size:14px;cursor:pointer;border-radius:6px;font-weight:600;font-family:inherit}#hint-btn:hover:not(:disabled){background:var(--sand);color:var(--text-on-sand)}#hint-btn:active:not(:disabled){transform:translateY(1px)}#hint-btn:disabled{opacity:.45;cursor:not-allowed}[data-mode=whittle] #starter-container{display:none}[data-mode=whittle] #row8{order:-45;border:2px solid var(--sand);border-radius:8px;padding:10px;background-color:var(--sand-light);width:100%;max-width:100%;box-sizing:border-box;justify-content:center;margin-bottom:5px}[data-mode=whittle] #row8 .letter-box{background-color:var(--sand);color:var(--text-on-sand);border:1.5px solid var(--sandstone)}[data-mode=whittle] #row8 .letter-box.empty{background-color:transparent;color:transparent;border:1.5px dashed var(--sand)}[data-mode=whittle] #row8 .letter-box.skipped,[data-mode=whittle] #row7 .letter-box.skipped,[data-mode=whittle] #row6 .letter-box.skipped,[data-mode=whittle] #row5 .letter-box.skipped,[data-mode=whittle] #row4 .letter-box.skipped{background-color:var(--sand-light);color:var(--sandstone);border:1.5px dashed var(--sandstone);opacity:.6}[data-mode=whittle] #starter-label{order:-42}[data-mode=whittle] #pyramid-container{order:-40}[data-mode=whittle] #row7{order:-30}[data-mode=whittle] #row6{order:-20}[data-mode=whittle] #row5{order:-10}[data-mode=whittle] #row4{order:0}[data-mode=whittle] #row3{order:10}[data-mode=whittle] .button-row{order:20}[data-mode=whittle] .stats-pill{order:30}.word-row{position:relative}.row-info-btn{position:absolute;left:calc(100% + 6px);top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:1.5px solid var(--sand);background:var(--sand-light);color:var(--sandstone);font:600 13px/1 inherit;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .15s ease,background .15s ease,color .15s ease}.row-info-btn:hover{opacity:1;background:var(--sand);color:var(--text-on-sand)}.row-info-btn:focus-visible{outline:2px solid var(--sandstone);outline-offset:2px}@media (max-width: 480px){.row-info-btn{left:auto;right:-28px;width:20px;height:20px;font-size:12px}}@media (max-width: 380px){.row-info-btn{right:2px}}.definition-modal{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200;padding:16px;box-sizing:border-box;animation:defn-fade-in .15s ease-out}@keyframes defn-fade-in{0%{opacity:0}to{opacity:1}}.definition-card{background:var(--container-bg);color:var(--text);border:2px solid var(--sand);border-radius:14px;padding:22px 24px 18px;width:100%;max-width:440px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 18px 40px var(--container-shadow);text-align:left;animation:defn-pop-in .18s ease-out}@keyframes defn-pop-in{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.definition-word{margin:0 0 12px;font-size:24px;color:var(--sandstone);text-transform:uppercase;letter-spacing:.05em;padding-right:32px}.definition-body{font-size:15px;line-height:1.45}.definition-body .defn-pos{font-style:italic;color:var(--text-muted);margin:10px 0 4px;font-size:13px}.definition-body .defn-pos:first-child{margin-top:0}.definition-body ol{margin:0;padding-left:22px}.definition-body ol li{margin-bottom:6px}.definition-body .defn-empty{color:var(--text-muted);margin:0 0 8px}.definition-body .defn-loading{color:var(--text-muted);font-style:italic;margin:0}.definition-source{margin:14px 0 0;font-size:12px;color:var(--text-muted)}.definition-source a{color:var(--sandstone);text-decoration:underline}.definition-close{position:absolute;top:8px;right:12px;background:none;border:none;font-size:26px;line-height:1;cursor:pointer;color:var(--text-muted);padding:4px 8px;border-radius:4px}.definition-close:hover{color:var(--text);background:var(--sand-light)}
