*{box-sizing:border-box}body{margin:0;background:#ebdfca;color:#1f4140;font:14px 'Space Grotesk',sans-serif}main{max-width:1250px;margin:auto;padding:18px 24px;height:min(100dvh,980px);min-height:640px;display:flex;flex-direction:column}button,select,input{font:inherit}button,select{cursor:pointer;background:#f7f1e5;border:1px solid #bcbaa7;color:#244844;border-radius:8px;padding:10px 13px;font-weight:600}button:hover{background:#d7e6cf}button:disabled{opacity:.45;cursor:default}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}small{font-size:9px;letter-spacing:1.6px}h1{font-size:29px;margin:3px 0}h1 span{font-size:10px;margin-left:10px;letter-spacing:2px;color:#b36030}nav{display:flex;align-items:center;gap:40px;border-top:1px solid #c6c6b1;padding:10px 0}nav div{display:grid;gap:5px}nav b{font-size:19px}select{margin-left:auto}.stage{position:relative;flex:1;min-height:260px;border-radius:18px;overflow:hidden;background:#173637}canvas{width:100%;height:100%;display:block;touch-action:none}.caption{position:absolute;left:20px;top:16px;color:#f5e1ac}.caption b{font-size:18px}.caption p{font-size:11px;opacity:.7;margin:6px 0}.tip{position:absolute;bottom:14px;right:16px;font-size:8px;color:#b8c9ae;letter-spacing:1px}.panel{display:grid;grid-template-columns:1fr 1fr auto;gap:25px;padding-top:14px;align-items:center}#cuts{display:flex;gap:6px;margin-top:7px}#cuts button{font-size:11px;color:#a8522e}#cuts button.cut{background:#d5c6aa;text-decoration:line-through}.slider{display:flex;align-items:center;gap:8px;margin-top:7px}.slider input{width:100%;accent-color:#367566}.slider button{padding:9px 13px}.actions{display:flex;gap:7px}#start{background:#24584f;color:#fff0d7}.actions button{font-size:12px;padding:13px 15px}footer{display:flex;justify-content:space-between;font-size:9px;color:#73806a;padding-top:13px;gap:20px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e49c31;outline-offset:2px}@media(max-width:650px){main{padding:13px;min-height:720px}h1{font-size:25px}h1 span{display:block;font-size:9px;margin:3px 0}header button{font-size:10px}nav{gap:19px}nav b{font-size:16px}select{font-size:11px;padding:8px}.panel{grid-template-columns:1fr;gap:12px}.panel>div{width:100%}.actions{justify-content:center}.actions button{flex:1}.caption{left:13px;top:12px}.caption b{font-size:14px}.tip{font-size:6px;letter-spacing:.2px;left:13px;right:auto}.stage{min-height:260px}footer{display:block;font-size:8px;line-height:1.5}footer span{display:block}}
