:root{--paper:#f7f1e5;--ink:#493d30;--muted:#8a7c65;--sage:#57795d;--line:#e1d8c4;--gold:#c79843;--clay:#af6242}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button{font:inherit;cursor:pointer;border:1px solid #d7cbb4;border-radius:9px;background:#fffaf0;color:var(--ink);padding:10px 15px;font-size:12px;font-weight:650;transition:background .15s}button:hover{background:#eee5d1}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #ad7938;outline-offset:3px}header{max-width:1300px;margin:auto;height:90px;padding:0 42px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:3px}.brand>span{font-size:43px;color:#aa7b42}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:4px;font-weight:550}header p{font:italic 16px Georgia,serif;color:var(--muted)}main{max-width:1300px;margin:34px auto 20px;padding:0 42px;display:grid;grid-template-columns:310px minmax(0,1fr);gap:50px}.eyebrow{font-size:9px;font-weight:750;letter-spacing:1.8px;color:var(--muted)}h1{font:400 43px/1.12 Georgia,serif;letter-spacing:-1.4px;margin:19px 0}h1 em{color:var(--clay)}.intro{font-size:13px;line-height:1.8;color:var(--muted);margin:22px 0 30px}.level-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}.level-head h2{font-size:12px;margin:0}.level-head span{font-size:10px;color:var(--muted)}#levels{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.level{padding:12px 5px;font:400 18px Georgia,serif;position:relative}.level[aria-pressed=true]{background:#5b7057;color:#fff;border-color:#5b7057}.level small{display:block;font:10px system-ui;margin-top:4px;min-height:12px;color:#b7934e}.level[aria-pressed=true] small{color:#e8d9ac}.recipe{margin-top:27px;padding:20px 0 0;border-top:1px solid var(--line)}#order{display:flex;align-items:center;gap:6px;margin-top:13px}.order-nut{position:relative;width:25%;padding:6px 4px;border:1px solid #ded2bb;border-radius:10px;text-align:center;background:#fffaf0}.order-nut img{width:42px;height:46px;object-fit:contain;display:block;margin:0 auto 5px}.order-nut span{font-size:9px}.order-nut.current{border:2px solid var(--sage);padding:5px 3px}.order-nut.packed{opacity:.4}.order-nut.packed:after{content:'✓';position:absolute;inset:12px 0;font-size:27px;color:#3c724b;font-weight:bold}.next-order{font-size:12px;line-height:1.5;color:#6a7757;margin:13px 0 23px}details{font-size:11px;color:var(--muted);line-height:1.7;border-top:1px solid var(--line);padding-top:16px}summary{cursor:pointer;font-weight:650}a{color:inherit}.game-panel{background:#fffaf0;border:1px solid var(--line);border-radius:19px;padding:22px;box-shadow:0 12px 35px #60472908;align-self:start}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head h2{font:400 27px Georgia,serif;margin:7px 0 0}.stats{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:20px;padding:20px 0 17px}.stats span{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted);font-weight:700}.stats strong{font:400 25px Georgia,serif;display:block;margin-top:7px}.bowl-wrap{position:relative;background:#e9e7d7;border-radius:12px;overflow:hidden}canvas{display:block;width:100%;height:auto;touch-action:manipulation}.bowl-caption{position:absolute;top:15px;left:17px;font-size:8px;letter-spacing:1.4px;font-weight:700;color:#8c8a70;pointer-events:none}.actions{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:9px;margin-top:15px}.action{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 12px}.action>span{font-size:25px;color:#957244}.action div{flex:1;font-size:13px}.action small{display:block;font-size:9px;font-weight:450;color:var(--muted);margin-top:4px;white-space:nowrap}kbd{font:9px ui-sans-serif,system-ui;background:#eae3d5;border:1px solid #dacfba;border-radius:4px;padding:2px 4px;color:#857154}.primary{background:#5b7057;color:#fff;border-color:#5b7057}.primary:hover{background:#475f43}.primary kbd{background:#6c8066;color:#fff;border-color:#92a28b;margin-left:5px}.nuts{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}.nut-card{padding:9px 4px;min-height:70px;text-align:center;font-size:10px;position:relative}.nut-card strong{display:block;font-size:11px;margin-bottom:6px}.nut-card span{display:block;color:var(--muted);font-size:9px}.nut-card.ready{border-color:#78926a;background:#edf2df}.nut-card.danger{border-color:#b36c4b;background:#fae7d9}.nut-card.wanted{box-shadow:inset 0 0 0 1px var(--sage)}#status{font-size:11px;text-align:center;color:#937141;min-height:32px;line-height:1.5;margin:13px 0 7px}.tools{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding-top:12px}.tools button{font-size:11px;padding:8px 11px}.tools span{font-size:9px;line-height:1.5;color:var(--muted);margin-left:auto;text-align:right;max-width:210px}#result{position:absolute;inset:55px 35px;align-content:center;text-align:center;background:#fffaf0f5;border:1px solid #e2d8bd;box-shadow:0 12px 35px #513e3026;border-radius:15px;padding:26px}#result h2{font:400 34px/1.1 Georgia,serif;margin:16px 0}#result p{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:22px}#result button{margin:3px}footer{max-width:1216px;margin:27px auto;padding:0 0 25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:var(--muted)}footer span{letter-spacing:0}dialog{width:calc(100% - 30px);max-width:510px;border:1px solid var(--line);border-radius:17px;background:#fffaf0;color:var(--ink);padding:33px;box-shadow:0 20px 60px #0004}dialog::backdrop{background:#46392d66;backdrop-filter:blur(4px)}dialog h2{font:400 34px Georgia,serif;margin:17px 0}dialog p,dialog li{font-size:13px;line-height:1.7}dialog li{padding-bottom:12px}dialog ol{padding-left:20px}#close{float:right;border:0;font-size:22px;background:none;padding:0 6px}[hidden]{display:none!important}@media(min-width:1300px){main{grid-template-columns:330px minmax(0,1fr);gap:65px}}@media(max-width:1000px){main{gap:24px;padding:0 24px;grid-template-columns:240px minmax(0,1fr)}header{padding:0 24px}h1{font-size:34px}.game-panel{padding:16px}.action{gap:5px;padding:8px}.action>span{display:none}.action kbd{display:none}.actions #pick{font-size:10px;padding:8px}.stats{gap:10px}.panel-head h2{font-size:24px}.tools{flex-wrap:wrap}footer{padding:0 24px 20px}.order-nut img{width:35px;height:41px}}@media(max-width:680px){header{height:69px;padding:0 17px}header p{display:none}.brand{font-size:14px}.brand>span{font-size:35px}.brand small{font-size:7px}header button{font-size:11px;padding:8px 10px}main{display:flex;flex-direction:column;margin:23px auto;padding:0 13px;gap:17px}aside>.eyebrow,h1,.intro,details{display:none}.level-head{margin-bottom:10px}#levels{grid-template-columns:repeat(8,1fr);gap:4px}.level{padding:7px 2px;font-size:14px;border-radius:7px}.level small{font-size:8px;min-height:10px;margin-top:3px}.recipe{margin-top:15px;padding-top:14px;display:flex;align-items:center;gap:12px}.recipe .eyebrow{font-size:8px;max-width:45px;line-height:1.7}#order{flex:1;margin:0;gap:5px}.order-nut{padding:4px}.order-nut.current{padding:3px}.order-nut img{width:27px;height:31px;margin-bottom:2px}.order-nut span{font-size:8px}.next-order{font-size:10px;margin:9px 0 0}.game-panel{padding:13px;border-radius:13px;width:100%}.panel-head h2{font-size:23px}.panel-head button{font-size:10px;padding:8px}.stats{padding:16px 0 13px}.stats strong{font-size:22px}.stats span{font-size:7px;letter-spacing:1px}.bowl-caption{font-size:6px;top:9px;left:10px}.actions{gap:5px;margin-top:11px}.action{padding:9px 6px}.action div{font-size:12px}.action small{font-size:7px}.actions #pick{font-size:10px;padding:8px 4px}.actions #pick kbd{display:none}.nuts{gap:4px;margin-top:9px}.nut-card{padding:7px 2px;min-height:60px;border-radius:7px}.nut-card strong{font-size:9px}.nut-card span{font-size:8px}#status{font-size:10px;margin-top:11px}.tools{gap:6px}.tools button{font-size:10px;padding:7px 9px}.tools span{font-size:8px;max-width:115px}#result{inset:28px 12px;padding:14px}#result h2{font-size:25px;margin:10px 0}#result p{font-size:10px;margin:10px 0 12px}#result button{font-size:10px;padding:8px}footer{padding:0 16px 15px;gap:20px;font-size:7px;letter-spacing:.5px}footer span{text-align:right}}
