@media (orientation:portrait) and (width<=700px){body.play-theme-jam-jar-match .play-shell[data-game-shell]{--game-width-from-height:100vw}body.play-theme-jam-jar-match .play-shell[data-game-shell] .game-stage{aspect-ratio:auto;height:max(430px,min(100svh - 108px,115vw + 85px));min-height:0}}@media (orientation:landscape) and (height<=520px){body.play-theme-jam-jar-match .play-shell[data-game-shell]{--game-width-from-height:100vw}body.play-theme-jam-jar-match .play-shell[data-game-shell] .game-stage{aspect-ratio:auto;height:max(220px,100svh - 108px);min-height:0}}body.play-theme-jam-jar-match .play-shell[data-game-shell]:fullscreen{--game-shell-max-width:100vw;--fullscreen-game-width:100vw}body.play-theme-jam-jar-match .play-shell[data-game-shell]:fullscreen .game-stage{aspect-ratio:auto;height:calc(100dvh - 56px);min-height:0}.jam{--ink:#3a1f10;--paper:#fff6e4;--line:#7a3b1c;--accent:#c8323f;--accent-dark:#7d1422;width:100%;height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#3a2112;font-family:ui-rounded,Trebuchet MS,Segoe UI,sans-serif;position:relative;overflow:hidden}.jam *,.jam :before,.jam :after{box-sizing:border-box}.jam-board{touch-action:none;cursor:pointer;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.jam-board:focus-visible{box-shadow:inset 0 0 0 3px #ffd36b}.jam-fx{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.jam-icon-box{flex:none;place-items:center;display:inline-grid}.jam-icon-art{background-repeat:no-repeat;display:block}.jam-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.jam-hud{color:#fff4dc;z-index:2;font-variant-numeric:tabular-nums;background:linear-gradient(#4a2814f2,#36190af2);border-bottom:2px solid #9a5a2c;grid-template-rows:62px 22px;align-content:start;height:88px;padding:3px 6px 0;display:grid;position:absolute;top:0;left:0;right:0}.jam-hud[hidden]{display:none}.jam-hud-bar{align-items:center;gap:6px;min-width:0;display:flex}.jam-moves{color:#fff;background:radial-gradient(circle at 35% 30%,#e6505c,#9c1c2b 70%);border:2px solid #f6d49a;border-radius:50%;flex:none;place-content:center;justify-items:center;width:56px;height:56px;display:grid;box-shadow:inset 0 -3px #0003,0 2px 6px #0005}.jam-moves strong{text-shadow:0 1px #0006;font-size:24px;font-weight:900;line-height:1}.jam-moves span{opacity:.9;font-size:12px;font-weight:800;line-height:1}.jam-moves.is-low{border-color:#fff;animation:1s ease-in-out infinite jam-low}@keyframes jam-low{50%{transform:scale(1.07)}}.jam-goals{flex:1;justify-content:center;gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.jam-goal{justify-items:center;gap:1px;width:50px;display:grid}.jam-jar{background:#ffffff26;border:2px solid #ffffffb0;border-top-width:0;border-radius:8px 8px 12px 12px;place-items:center;width:38px;height:38px;display:grid;position:relative;overflow:hidden}.jam-jar:before{content:"";z-index:2;background:linear-gradient(#c98a4b,#8a5427);border-radius:4px;height:7px;position:absolute;top:0;left:-2px;right:-2px}.jam-jar-fill{height:calc(var(--fill,0) * 100%);background:var(--jam);opacity:.85;transition:height .25s ease-out;position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 3px #ffffff59}.jam-jar-icon{z-index:1;margin-top:5px;position:relative}.jam-goal-count{font-size:15px;font-weight:900;line-height:1.1}.jam-goal.is-done .jam-jar{border-color:#ffe07a;box-shadow:0 0 8px #ffd24a}.jam-goal.is-done .jam-jar:before{background:linear-gradient(#ffe38a,#d4a017)}.jam-goal.is-done .jam-goal-count{color:#aef29a}.jam-goal.is-bump .jam-jar{animation:.28s ease-out jam-bump}@keyframes jam-bump{40%{transform:scale(1.18)rotate(-4deg)}}.jam-menu-btn{width:40px;height:40px;color:inherit;cursor:pointer;touch-action:manipulation;background:#ffffff18;border:1px solid #ffffff40;border-radius:12px;flex:none;place-items:center;padding:0;display:grid}.jam-menu-btn svg{fill:currentColor;width:20px;height:20px}.jam-menu-btn:focus-visible{outline-offset:1px;outline:2px solid #ffd36b}.jam-hud-sub{white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;font-weight:800;display:flex}.jam-hud-level{text-overflow:ellipsis;opacity:.9;overflow:hidden}.jam-hud-stars{color:#ffd54a;flex:none}.jam-hud-tip{opacity:.85;text-align:center;margin:0;font-size:12px;font-weight:700;line-height:1.25;display:none}@media (width<=370px){.jam-hud{padding:3px 4px 0}.jam-hud-bar{gap:4px}.jam-goal{width:46px}.jam-moves{width:52px;height:52px}}.jam.is-wide .jam-hud{background:linear-gradient(90deg,#4a2814f2,#36190af2);border-bottom:0;border-right:2px solid #9a5a2c;grid-template-rows:auto auto auto;align-content:center;gap:8px;width:156px;height:auto;padding:8px;bottom:0;right:auto}.jam.is-wide .jam-hud-bar{flex-wrap:wrap;justify-content:center}.jam.is-wide .jam-goals{flex-wrap:wrap;flex:0 0 100%;order:3}.jam.is-wide .jam-hud-sub{white-space:normal;text-align:center;flex-direction:column;align-items:center;gap:2px}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.jam.is-wide .jam-hud-tip{display:block}}.jam.is-wide .jam-moves{border-radius:18px;width:70px;height:50px}@media (height<=440px){.jam.is-wide .jam-hud{gap:4px;padding:5px 6px}.jam.is-wide .jam-moves{width:66px;height:44px}.jam.is-wide .jam-moves strong{font-size:20px}.jam.is-wide .jam-jar{width:32px;height:32px}.jam.is-wide .jam-goal{width:44px}.jam.is-wide .jam-goal-count{font-size:13px}.jam.is-wide .jam-menu-btn{width:36px;height:36px}}.jam-banner{z-index:4;color:#fff4dc;pointer-events:none;background:#3a1d0ce8;border:2px solid #f6d49a;border-radius:18px;align-items:center;gap:10px;width:min(92%,380px);padding:12px 14px;display:flex;position:absolute;top:96px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0007}.jam-banner[hidden]{display:none}.jam-banner-body{gap:4px;min-width:0;display:grid}.jam-banner strong{font-size:18px;font-weight:900;line-height:1.15}.jam-banner span{font-size:14px;font-weight:650;line-height:1.3}.jam-banner[data-tone=good]{border-color:#ffe07a}.jam-banner[data-tone=warn]{border-color:#ff8a6a}.jam-banner.is-in{animation:.35s cubic-bezier(.2,1.4,.4,1) both jam-banner-in}@keyframes jam-banner-in{0%{opacity:0;transform:translate(-50%,10px)scale(.94)}to{opacity:1;transform:translate(-50%)scale(1)}}.jam.is-wide .jam-banner{width:min(62%,380px);padding:8px 12px;top:8px;left:calc(50% + 78px)}.jam.is-wide .jam-banner strong{font-size:16px}.jam.is-wide .jam-banner span{font-size:13px}.jam-toast{z-index:4;color:#fff4dc;text-align:center;pointer-events:none;background:#2b1508e8;border:1px solid #f6d49a90;border-radius:999px;max-width:min(92%,380px);padding:8px 14px;font-size:14px;font-weight:750;line-height:1.3;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.jam-toast[hidden]{display:none}.jam-toast.is-in{animation:.25s ease-out both jam-toast-in}@keyframes jam-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.jam.is-wide .jam-toast{left:calc(50% + 78px)}.jam-screen{z-index:5;place-items:center;padding:12px;display:grid;position:absolute;inset:0;overflow:auto}.jam-screen[hidden]{display:none}.jam-card{border:3px solid var(--line);background:var(--paper);text-align:center;border-radius:22px;width:min(100%,380px);padding:18px 18px 16px;box-shadow:0 16px 40px #0008}.jam-card h2{color:var(--ink);margin:0 0 8px;font-size:24px;line-height:1.15}.jam-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.jam-actions.jam-stack{flex-direction:column;align-items:stretch}.jam-btn{border:2px solid var(--line);min-width:96px;min-height:46px;color:var(--ink);cursor:pointer;touch-action:manipulation;background:#fffdf6;border-bottom-width:4px;border-radius:14px;padding:8px 16px;font:850 16px/1.1 ui-rounded,Trebuchet MS,Segoe UI,sans-serif}.jam-btn:hover{background:#fff1d6}.jam-btn:active{border-bottom-width:2px;transform:translateY(2px)}.jam-btn:focus-visible,.jam-tile:focus-visible{outline-offset:2px;outline:3px solid #2f7de1}.jam-btn.jam-primary{background:var(--accent);border-color:var(--accent-dark);color:#fffaf0}.jam-btn.jam-primary:hover{background:#d8434f}.jam-btn.jam-small{min-width:0;min-height:40px;padding:6px 12px;font-size:14px}.jam-btn[hidden]{display:none}.jam-title{background:#3a2112 50%/cover no-repeat;place-items:end center;padding:10px}.jam-title-card{border:3px solid var(--line);text-align:center;background:#fff6e4f2;border-radius:22px;width:min(100%,400px);padding:14px 16px 12px;box-shadow:0 16px 40px #0007}.jam-logo{color:#b2202f;letter-spacing:.01em;text-shadow:0 2px #f6c982;margin:0;font-size:34px;font-weight:900;line-height:1}.jam-lede{margin:6px 0 4px;font-size:15px;font-weight:700;line-height:1.3}.jam-demo{justify-content:center;align-items:center;gap:6px;width:fit-content;height:50px;margin:2px auto 0;display:flex;position:relative}.jam-demo-line{background:#d7263d;border-radius:5px;width:0;height:10px;margin-top:-5px;animation:2.4s ease-in-out infinite jam-demo;position:absolute;top:50%;left:20px;box-shadow:0 0 0 2px #7d0f1f}.jam-demo-fruit{z-index:1;position:relative}.jam-demo-jar{margin-left:10px}@keyframes jam-demo{0%{opacity:1;width:0}45%{opacity:1;width:92px}70%{opacity:1;width:92px}85%,to{opacity:0;width:92px}}.jam-stats{opacity:.85;margin:10px 0 0;font-size:13px;font-weight:700}.jam-note{opacity:.85;margin:6px 0 0;font-size:12.5px;line-height:1.3}.jam-note[hidden]{display:none}.jam.is-wide .jam-title{place-items:center end;padding:10px 16px}.jam.is-wide .jam-title-card{width:min(58%,400px);padding:10px 14px}.jam.is-wide .jam-logo{font-size:28px}.jam.is-wide .jam-lede{margin:4px 0 2px;font-size:13.5px}.jam.is-wide .jam-actions{margin-top:8px}.jam.is-wide .jam-btn{min-height:44px}.jam.is-wide .jam-stats{margin-top:6px}@media (height<=470px){.jam.is-wide .jam-demo{display:none}}.jam-levels{background:#2d1709f2;align-content:start;place-items:stretch stretch;gap:10px;padding:10px}.jam-levels-head{color:#fff4dc;align-items:center;gap:10px;display:flex}.jam-levels-head h2{flex:1;margin:0;font-size:20px}.jam-levels-stars{color:#ffd54a;white-space:nowrap;font-weight:850}.jam-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.jam.is-wide .jam-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.jam-tile{border:2px solid var(--line);background:var(--paper);min-height:78px;color:var(--ink);cursor:pointer;touch-action:manipulation;border-bottom-width:4px;border-radius:14px;align-content:center;justify-items:center;gap:2px;padding:6px 3px;font-family:inherit;display:grid}.jam-tile:hover{background:#ffefd2}.jam-tile[data-current]{border-color:var(--accent);box-shadow:0 0 0 2px #ffd36b}.jam-tile:disabled{cursor:default;opacity:.72;background:#d9c3a3}.jam-tile-num{font-size:20px;line-height:1}.jam-tile-name{text-align:center;overflow-wrap:anywhere;font-size:12px;font-weight:800;line-height:1.1}.jam-tile-stars{letter-spacing:1px;color:#b3a38c;font-size:15px;line-height:1}.jam-tile-stars.s1,.jam-tile-stars.s2,.jam-tile-stars.s3{color:#e0a100}.jam-tile-lock{opacity:.75;font-size:12px;font-weight:700;line-height:1.1}@media (height<=640px){.jam:not(.is-wide) .jam-tile{min-height:66px}.jam:not(.is-wide) .jam-tile-name{display:none}}.jam.is-wide .jam-tile{min-height:0;padding:5px 2px}.jam.is-wide .jam-tile-name{display:none}.jam-menu,.jam-results{background:#1c0d0499}.jam-menu-hint{margin:0;font-size:14px;line-height:1.35}.jam-res-stars{justify-content:center;gap:6px;margin:2px 0 6px;display:flex}.jam-res-stars[hidden]{display:none}.jam-star{color:#d8c8ad;font-size:38px;line-height:1;transition:color .2s}.jam-star.is-on{color:#f2b000;text-shadow:0 2px #9a6a00;animation:.45s cubic-bezier(.2,1.6,.4,1) both jam-star}@keyframes jam-star{0%{transform:scale(.3)rotate(-30deg)}to{transform:scale(1)rotate(0)}}.jam-tally{text-align:left;grid-template-columns:1fr auto;gap:3px 12px;margin:4px 0 0;font-size:14.5px;display:grid}.jam-tally dt{font-weight:650}.jam-tally dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:850}.jam-results[data-won=true] .jam-tally dt:nth-last-of-type(2),.jam-results[data-won=true] .jam-tally dd:nth-last-of-type(2){border-top:2px dashed #d8b98c;padding-top:3px}.jam-res-note{margin:8px 0 0;font-size:13px;font-weight:650;line-height:1.35}.jam.is-wide .jam-card{padding:10px 14px}.jam.is-wide .jam-card h2{margin-bottom:4px;font-size:20px}.jam.is-wide .jam-star{font-size:28px}.jam.is-wide .jam-tally{font-size:13px}.jam.is-wide .jam-res-note{margin-top:4px;font-size:12.5px}.jam.is-wide .jam-results .jam-actions{margin-top:8px}.jam.is-wide .jam-results .jam-btn{min-height:40px}@media (prefers-reduced-motion:reduce){.jam-banner.is-in,.jam-star.is-on,.jam-toast.is-in,.jam-goal.is-bump .jam-jar,.jam-moves.is-low{animation:none}.jam-demo-line{width:92px;animation:none}.jam-jar-fill{transition:none}}
