@font-face{font-family:'Noto Serif Hebrew MinusFix';src:url('fonts/NotoSerifHebrew-MinusFix.woff2') format('woff2-variations'),url('fonts/NotoSerifHebrew-MinusFix.woff2') format('woff2');font-weight:100 900;font-display:swap}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{font-size:18px}body{font-family:'Noto Serif Hebrew MinusFix','Noto Serif Hebrew',serif;direction:rtl;background:#f7f3ec;color:#1a1209;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem 3rem}button{font-family:inherit;cursor:pointer;border:none;background:0 0}input,textarea{font-family:inherit}.clue-small{font-size:.75em}.page-header{width:100%;max-width:600px;border-bottom:2px solid #2b1d08;padding-bottom:.5rem;margin-bottom:2rem;display:flex;align-items:baseline;gap:.75rem}.page-header h1{font-size:1.1rem;font-weight:400;letter-spacing:.03em;color:#5a3e1b}.page-header .ornament{font-size:1.3rem;color:#c4963a;font-family:Arial,'Iosevka Charon Mono',monospace}.card{background:#fffdf7;border:1px solid #d4c4a0;border-radius:4px;box-shadow:0 2px 12px rgba(43,29,8,.08);padding:2rem 2rem 2.5rem;width:100%;max-width:600px;position:relative}.sym-x{font-family:Arial,'Noto Sans Symbols 2',sans-serif}.sym-plus{font-family:Arial,'Noto Sans JP',sans-serif}.cell{width:2.5rem;height:2.5rem;border:2px solid #8a7050;background:#fff;font-size:1.3rem;font-weight:600;color:#1a1209;cursor:pointer;transition:background .1s,border-color .1s;position:relative;flex-shrink:0;font-family:'Noto Serif Hebrew MinusFix','Noto Serif Hebrew',serif;text-align:center;padding:0;outline:0;caret-color:transparent;-webkit-appearance:none;appearance:none;border-radius:0;box-sizing:border-box;display:block;line-height:normal;padding-top:.45rem}.cell.active,.cell:focus{background:#fdefc8;border:2px solid #c4963a!important;z-index:1}.cell::selection{background:0 0}.cell::-moz-selection{background:0 0}.cell.locked{background:#e8dcc8;color:#5a3e1b;cursor:default;border-color:#b0966a!important;font-style:italic}.cell.locked.active,.cell.locked:focus{background:#e8dcc8;border-color:#b0966a!important}.btn-reveal{font-size:.88rem;color:#5a3e1b;border:1.5px dashed #b0966a;border-radius:3px;padding:.4rem .9rem;background:0 0;transition:background .1s;font-family:inherit;cursor:pointer;white-space:nowrap}.btn-reveal:hover{background:#f3ede0}.btn-row{display:flex;flex-direction:row;justify-content:center;gap:.75rem;margin-bottom:1.6rem}.btn-primary{background:#2b1d08;color:#f7f3ec;border-radius:3px;padding:.55rem 1.4rem;font-size:1.05rem;font-weight:600;transition:background .15s,opacity .15s;letter-spacing:.02em}.btn-primary:disabled{opacity:.35;cursor:default}.btn-primary:not(:disabled):hover{background:#4a3010}.btn-secondary{background:0 0;color:#2b1d08;border:2px solid #2b1d08;border-radius:3px;padding:.55rem 1.4rem;font-size:1.05rem;font-weight:500;transition:background .15s;letter-spacing:.02em}.btn-secondary:hover{background:#eee5d0}@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(6px)}40%{transform:translateX(-6px)}60%{transform:translateX(4px)}80%{transform:translateX(-4px)}}.shake{animation:shake .4s ease}.keyboard{display:flex;flex-direction:column;align-items:center;gap:.4rem}.kb-row{display:flex;flex-direction:row;justify-content:center;gap:.3rem}.kb-key{width:2.3rem;height:2.5rem;border:1.5px solid #b0966a;border-radius:4px;background:#ede4cf;font-size:1.1rem;font-weight:500;color:#1a1209;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .1s,transform 70ms;box-shadow:0 2px 0 #b0966a;-webkit-tap-highlight-color:transparent}.kb-key:active{transform:translateY(2px);box-shadow:none}.kb-key:hover{background:#f7efda}.kb-backspace{width:3.4rem;font-size:1rem}.kb-divider{width:100%;height:1px;background:#d4c4a0;margin:1.2rem 0 1.4rem}.modal-overlay{position:fixed;inset:0;background:rgba(26,18,9,.55);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal-overlay.hidden{display:none}.modal-box{background:#fffdf7;border:1px solid #d4c4a0;border-radius:6px;width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(43,29,8,.22)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem .8rem;border-bottom:1px solid #e4d8be;flex-shrink:0}.modal-header h2{font-size:1.1rem;font-weight:600;color:#2b1d08}.modal-close{font-size:1.3rem;color:#7a6040;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:background .1s}.modal-close:hover{background:#eee5d0}.modal-body{overflow-y:auto;padding:1.2rem 1.4rem;flex:1}.hint-intro{font-size:.95rem;color:#5a3e1b;line-height:1.6;margin-bottom:.85rem}.hint-item{background:#f3ede0;border-right:3px solid #c4963a;border-radius:2px;padding:.65rem .85rem .65rem .7rem;margin-bottom:.75rem;font-size:.98rem;line-height:1.6;color:#2b1d08}.hint-number{font-size:.72rem;color:#9a7840;display:block;margin-bottom:.2rem;font-weight:400}.btn-more-hint{display:block;width:100%;background:0 0;border:2px dashed #b0966a;border-radius:3px;padding:.6rem 1rem;font-size:.95rem;color:#5a3e1b;text-align:center;margin-top:.5rem;transition:background .1s;font-family:inherit;cursor:pointer}.btn-more-hint:hover{background:#f3ede0}.solved-banner{font-size:2.4rem;font-weight:700;color:#c4963a;margin-bottom:1.2rem;letter-spacing:.04em}.solved-hints-title{font-size:.85rem;color:#7a6040;letter-spacing:.08em;margin-bottom:.6rem}.solved-explanation-wrap{margin-bottom:1.2rem}.solved-explanation{font-size:.95rem;color:#2b1d08;line-height:1.7;text-align:right}.solved-hint{font-size:.95rem;color:#2b1d08;line-height:1.6;padding:.4rem 0;border-bottom:1px solid #e4d8be;text-align:right}.solved-hint:last-child{border-bottom:none}@media (max-width:540px){.card{padding:1.2rem .8rem 1.8rem}html{font-size:16px}.cell{width:2rem;height:2rem;font-size:1.05rem;line-height:2rem}.keyboard{width:100%}.kb-row{width:100%;justify-content:center;gap:.22rem}.kb-key{flex:1;max-width:2.6rem;min-width:0;height:2.6rem;font-size:1.05rem}.kb-backspace{flex:1.5;max-width:3.8rem}.btn-primary,.btn-secondary{font-size:.95rem;padding:.5rem 1rem}}@media (max-width:360px){html{font-size:14px}.cell{width:1.85rem;height:1.85rem;font-size:.95rem;line-height:1.85rem}}