:root{--color-page-bg:#fff8ee;--color-surface:#fff;--color-surface-secondary:#f5f8f5;--color-surface-elevated:#fff;--color-primary-action:#2f6b45;--color-primary-action-hover:#245437;--color-primary-action-active:#245437;--color-primary-action-pressed:#1d442d;--color-on-primary:#fff;--color-primary-outline:#2f6b45;--color-donate-text:#2f6b45;--color-score-text:#2f6b45;--color-accent:#c9623a;--color-accent-hover:#aa4e2f;--color-primary-text:#203026;--color-secondary-text:#5b6c62;--color-success:#26734d;--color-success-surface:#edf8f1;--color-caution:#b45309;--color-warning-surface:#fff2d7;--color-on-warning:#fff;--color-error:#a33f3f;--color-border:#d8e1d9;--color-control-border:#7b8e80;--color-divider:#d8e1d9;--color-focus-ring:#0b63ce;--color-notice-bg:#fff2d7;--color-disabled-bg:#eef2ee;--color-disabled-text:#5b6c62;--color-selected-bg:#e5f2e9;--color-overlay:#2030267a;--color-translucent-surface:#ffffff9e;--color-translucent-surface-soft:#ffffff94;--color-status-icon-text:#fff;--color-stage-bg:#ffffffe0;--color-stage-grid:#2f6b4514;--color-machine-housing:#596b61;--color-machine-highlight:#91a198;--color-machine-recess:#35453c;--color-machine-shadow:#2030262e;--color-machine-fastener:#d9e0db;--color-machine-control:#26362d;--color-machine-control-light:#e1a354;--color-machine-control-ready:#8eb49b;--color-belt-border:#4e5f55;--color-belt-panel:#7d8d83;--color-belt-seam:#687a6f;--color-belt-highlight:#ffffff2e;--color-belt-shadow:#405047;--color-roller-border:#d8e1d9;--color-roller-fill:#45564c;--color-roller-core:#fff8ee;--color-product-surface:#fff;--color-product-text:#203026;--color-product-muted:#5b6c62;--color-product-border:#d8e1d9;--color-product-outline:#314239;--color-product-label:#ffffffd1;--color-product-default:#ecb96f;--color-product-can:#b9d5c2;--color-product-box:#e6a07d;--color-product-jar:#f2cf73;--color-product-jar-lid:#c9623a;--color-product-bag:#e8c99c;--color-product-fresh:#e8a6a0;--color-product-art-outline:#32443a;--color-product-art-metal:#cbd4d0;--color-product-art-metal-shadow:#82938a;--color-product-art-metal-light:#edf1ee;--color-product-art-label:#e6b563;--color-product-art-label-band:#cf744f;--color-product-art-crest:#fff4d8;--color-product-art-ink:#536f68;--color-product-art-shadow:#20302638;--color-product-art-unknown:#f4d7a3;--color-art-paper:#e9bc78;--color-art-paper-light:#fff0cf;--color-art-blue:#6e9faf;--color-art-aqua:#84b8ad;--color-art-violet:#9b8ab7;--color-art-coral:#d4795e;--color-art-gold:#dfb452;--color-art-glass:#d7e8e3b8;--color-art-glass-highlight:#ffffffc2;--color-art-window:#f7eedb;--color-art-rice:#ead79d;--color-art-tomato:#bd6049;--color-art-salsa:#a94f3d;--color-art-peanut:#ad753b;--color-art-chicken:#d58d87;--color-art-chicken-light:#efb4a9;--color-art-tray:#d7d1c4;--color-art-wrap:#ffffffad;--color-art-date:#e8d5a8;--color-art-bowl:#5f7f83;--color-art-oat:#bf8e43;--color-deadline-track:#fff;--color-donate-pattern:#2f6b4514;--color-inspect-pattern:#b4530914;--color-donate-container:#dceee2;--color-donate-container-panel:#f7fbf8;--color-inspect-container:#f2dfbf;--color-inspect-container-panel:#fff8e9;--color-destination-art-shadow:#20302633;--shadow-card:0 8px 24px 0 #2030261a;--shadow-feedback:0 12px 30px 0 #20302624;--shadow-product:0 10px 22px #2030262e;--shadow-product-held:0 16px 32px #2030263d;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;font:16px/1.5 var(--font-sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-primary-text);background:var(--color-page-bg);font-synthesis:none;text-rendering:optimizelegibility;scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--color-page-bg:#121914;--color-surface:#1e2922;--color-surface-secondary:#26342b;--color-surface-elevated:#2c3a31;--color-primary-action:#367a50;--color-primary-action-hover:#3b8055;--color-primary-action-active:#3b8055;--color-primary-action-pressed:#2d6743;--color-on-primary:#fff;--color-primary-outline:#69c58d;--color-donate-text:#7bd09a;--color-score-text:#69c58d;--color-accent:#e58a61;--color-accent-hover:#f09a72;--color-primary-text:#f2f7f2;--color-secondary-text:#b7c5ba;--color-success:#69c58d;--color-success-surface:#1d3828;--color-caution:#f2a766;--color-warning-surface:#3a2d20;--color-on-warning:#271507;--color-error:#f28a8a;--color-border:#65786b;--color-control-border:#809487;--color-divider:#53665a;--color-focus-ring:#73b3ff;--color-notice-bg:#312c1f;--color-disabled-bg:#303a33;--color-disabled-text:#a8b5aa;--color-selected-bg:#274333;--color-overlay:#040906b8;--color-translucent-surface:#1e2922e0;--color-translucent-surface-soft:#1e2922c7;--color-status-icon-text:#0c1a11;--color-stage-bg:#18231df5;--color-stage-grid:#6d957924;--color-machine-housing:#4e6156;--color-machine-highlight:#7e9186;--color-machine-recess:#17231c;--color-machine-shadow:#0000006b;--color-machine-fastener:#aebbb3;--color-machine-control:#111a14;--color-machine-control-light:#efa65e;--color-machine-control-ready:#78b98f;--color-belt-border:#8fa297;--color-belt-panel:#596b61;--color-belt-seam:#46594e;--color-belt-highlight:#e2f0e624;--color-belt-shadow:#0e1611;--color-roller-border:#9aaba0;--color-roller-fill:#3c4c43;--color-roller-core:#d9c9ad;--color-product-surface:#f4eadb;--color-product-text:#203026;--color-product-muted:#59675e;--color-product-border:#87978b;--color-product-outline:#314239;--color-product-label:#ffffffc7;--color-product-default:#dca95e;--color-product-can:#9fc7ad;--color-product-box:#db8e69;--color-product-jar:#e9c45f;--color-product-jar-lid:#bd5734;--color-product-bag:#d9ba88;--color-product-fresh:#d9908b;--color-product-art-outline:#293a31;--color-product-art-metal:#bac5bf;--color-product-art-metal-shadow:#74867c;--color-product-art-metal-light:#e4ebe6;--color-product-art-label:#dba758;--color-product-art-label-band:#c96847;--color-product-art-crest:#f7e8c5;--color-product-art-ink:#425f57;--color-product-art-shadow:#00000057;--color-product-art-unknown:#c89d59;--color-art-paper:#d3a965;--color-art-paper-light:#ecdcb9;--color-art-blue:#658f9d;--color-art-aqua:#75a69c;--color-art-violet:#8b7aa7;--color-art-coral:#c96e54;--color-art-gold:#cfa447;--color-art-glass:#bed3ccc2;--color-art-glass-highlight:#ffffff94;--color-art-window:#e8dcc4;--color-art-rice:#dac78d;--color-art-tomato:#ae5742;--color-art-salsa:#994636;--color-art-peanut:#9d6834;--color-art-chicken:#c67f79;--color-art-chicken-light:#dfa298;--color-art-tray:#c4beb2;--color-art-wrap:#ffffff80;--color-art-date:#d7c391;--color-art-bowl:#526f73;--color-art-oat:#ab7e39;--color-deadline-track:#3a4840;--color-donate-pattern:#69c58d1f;--color-inspect-pattern:#f2a7661f;--color-donate-container:#315541;--color-donate-container-panel:#d7eadc;--color-inspect-container:#684b2f;--color-inspect-container-panel:#f1dfbf;--color-destination-art-shadow:#0000005c;--shadow-card:0 8px 24px 0 #00000047;--shadow-feedback:0 12px 30px 0 #00000061;--shadow-product:0 10px 22px #00000052;--shadow-product-held:0 16px 32px #00000075;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--color-page-bg);margin:0}*{box-sizing:border-box}#root{min-height:100svh}button,input,textarea,select{font:inherit}button{cursor:pointer}h1{color:var(--color-primary-text);margin:0;font-size:clamp(2.25rem,11vw,4.3rem);line-height:1}.results-screen h1{font-size:clamp(1.9rem,9vw,3.25rem);line-height:1.06}::selection{color:var(--color-on-primary);background:var(--color-primary-action)}.game-shell{justify-content:center;align-items:stretch;min-height:100svh;padding:16px;display:flex}.game-screen{flex-direction:column;justify-content:center;width:min(100%,1080px);display:flex}.brand-block{gap:10px;display:grid}.screen-kicker{color:var(--color-secondary-text);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:800}.start-game-name{color:var(--color-accent);margin:0;font-size:1.35rem;font-weight:850;line-height:1.15}.intro-copy,.summary-copy,.prototype-notice,.active-prototype-notice,.future-campaign-card p,.review-card p{color:var(--color-secondary-text);margin:0;font-size:1rem;line-height:1.5}.intro-copy,.summary-copy{color:var(--color-primary-text);font-size:1.05rem}.prototype-notice{border:1px solid var(--color-border);background:var(--color-notice-bg);text-align:left;border-radius:8px;padding:14px 16px}.active-prototype-notice{border:1px solid var(--color-border);background:var(--color-translucent-surface);text-align:center;border-radius:6px;padding:8px 12px;font-size:.82rem}.primary-action,.future-action{border:2px solid #0000;border-radius:8px;width:100%;min-height:56px;padding:16px 18px;font-weight:850;line-height:1.2}.primary-action{color:var(--color-on-primary);background:var(--color-primary-action)}.primary-action:hover{background:var(--color-primary-action-hover)}.primary-action:active{background:var(--color-primary-action-pressed)}.primary-action:focus-visible,.future-action:focus-visible,.assistive-sort-controls button:focus-visible,.pause-control:focus-visible,.theme-switch:focus-visible,.game-dialog button:focus-visible{outline:4px solid var(--color-focus-ring);outline-offset:3px}.conveyor-shell{padding:12px;overflow-x:clip}.conveyor-shell.game-has-overlay{height:100svh;overflow:hidden}.conveyor-game{justify-content:flex-start;gap:12px}.gameplay-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 20px;display:flex}.gameplay-header h1{font-size:clamp(2rem,8vw,3.4rem)}.gameplay-hud{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;width:100%;display:grid}.hud-controls{justify-content:flex-end;align-items:stretch;gap:8px;display:flex}.theme-switch-control{border:1px solid var(--color-border);min-height:52px;color:var(--color-primary-text);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:8px;align-items:center;gap:8px;padding:3px 4px 3px 10px;display:flex}.theme-switch-label{white-space:nowrap;font-size:.78rem;font-weight:800}.theme-switch-label-short{display:none}.theme-switch{border:2px solid var(--color-control-border);min-width:76px;min-height:48px;color:var(--color-primary-text);background:var(--color-surface-secondary);border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:5px 7px;font-weight:850;display:inline-flex}.theme-switch-track{border:2px solid var(--color-control-border);background:var(--color-disabled-bg);border-radius:999px;flex:none;width:38px;height:24px;position:relative}.theme-switch-thumb{width:16px;height:16px;color:var(--color-primary-text);background:var(--color-surface-elevated);border-radius:50%;place-items:center;font-size:.56rem;line-height:1;display:grid;position:absolute;inset:2px auto auto 2px}.theme-switch[aria-checked=true] .theme-switch-track{border-color:var(--color-primary-outline);background:var(--color-selected-bg)}.theme-switch[aria-checked=true] .theme-switch-thumb{color:var(--color-on-primary);background:var(--color-primary-action);transform:translate(14px)}.theme-switch:not(:disabled):hover{border-color:var(--color-primary-outline);background:var(--color-selected-bg)}.theme-switch:not(:disabled):active{background:var(--color-disabled-bg)}.theme-switch-state{min-width:18px;color:var(--color-secondary-text);font-size:.67rem}.theme-switch:disabled{cursor:default;color:var(--color-disabled-text);background:var(--color-disabled-bg)}.pause-control{border:2px solid var(--color-primary-outline);min-width:96px;min-height:52px;color:var(--color-primary-outline);background:var(--color-surface);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-weight:850;display:inline-flex}.pause-control:hover{color:var(--color-on-primary);background:var(--color-primary-action-hover)}.pause-control:active{color:var(--color-on-primary);background:var(--color-primary-action-pressed)}.pause-control-icon,.pause-heading-icon{justify-content:center;align-items:center;gap:4px;display:inline-flex}.pause-control-icon span{background:currentColor;border-radius:2px;width:4px;height:16px}.live-stats,.results-metrics{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.live-stats{width:100%}.live-stats div,.results-metrics div{text-align:center;min-width:0;padding:10px 12px}.live-stats div+div,.results-metrics div+div{border-left:1px solid var(--color-border)}.live-stats dt,.results-metrics dt{color:var(--color-secondary-text);text-transform:uppercase;font-size:.72rem;font-weight:750}.live-stats dd,.results-metrics dd{color:var(--color-primary-text);margin:2px 0 0;font-size:1.15rem;font-weight:900}.feedback-strip{min-height:64px;color:var(--color-primary-text);background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:10px 12px;line-height:1.35;display:grid}.gesture-instruction{color:var(--color-primary-text);text-align:center;margin:-2px 0 0;font-size:.95rem;font-weight:800}.feedback-strip-correct,.feedback-strip-incorrect,.feedback-strip-missed{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-feedback)}.feedback-strip-correct{border-left:6px solid var(--color-success)}.feedback-strip-incorrect,.feedback-strip-missed{border-left:6px solid var(--color-caution)}.feedback-strip-icon{min-width:42px;height:42px;color:var(--color-status-icon-text);background:var(--color-success);border-radius:7px;place-items:center;font-size:.68rem;font-weight:900;display:inline-grid}.feedback-strip-consequence{font-weight:800}.feedback-strip-incorrect .feedback-strip-icon,.feedback-strip-missed .feedback-strip-icon{background:var(--color-caution)}.conveyor-layout{grid-template-areas:"stage""destinations""queue";gap:12px;display:grid}.conveyor-stage{border:1px solid var(--color-border);background:radial-gradient(circle at 50% 18%, var(--color-translucent-surface) 0 2px, transparent 3px), linear-gradient(var(--color-stage-bg), var(--color-stage-bg)), repeating-linear-gradient(90deg, transparent 0 28px, var(--color-stage-grid) 28px 30px);min-width:0;height:320px;box-shadow:var(--shadow-card);border-radius:8px;grid-area:stage;position:relative;overflow:hidden;container-type:inline-size}.conveyor-stage:has(.conveyor-item-dragging,.conveyor-item-returning,.conveyor-item-resolving){overflow:visible}.conveyor-label-row{z-index:3;color:var(--color-secondary-text);text-transform:uppercase;justify-content:space-between;font-size:.72rem;font-weight:800;display:flex;position:absolute;inset:12px 14px auto}.sorting-machine-art{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.machine-floor-shadow{fill:var(--color-machine-shadow)}.machine-frame,.machine-intake,.machine-chute{fill:var(--color-machine-housing);stroke:var(--color-belt-border);stroke-width:3px;vector-effect:non-scaling-stroke}.machine-frame-highlight{fill:var(--color-machine-highlight)}.machine-intake-recess,.machine-chute-recess{fill:var(--color-machine-recess);stroke:var(--color-machine-highlight);stroke-width:2px;vector-effect:non-scaling-stroke}.machine-control-panel rect{fill:var(--color-machine-control);stroke:var(--color-machine-fastener);stroke-width:2px;vector-effect:non-scaling-stroke}.machine-control-panel circle:first-of-type{fill:var(--color-machine-control-ready)}.machine-control-panel circle:last-of-type{fill:var(--color-machine-control-light)}.machine-control-panel path{fill:var(--color-machine-highlight)}.machine-fasteners{fill:var(--color-machine-fastener);stroke:var(--color-machine-recess);stroke-width:1px;vector-effect:non-scaling-stroke}.conveyor-label-row span:last-child{max-width:76px;color:var(--color-caution);text-align:right}.conveyor-belt{border:3px solid var(--color-belt-border);background:linear-gradient(180deg, var(--color-belt-highlight) 0 11px, transparent 11px 78px, var(--color-machine-shadow) 78px 100%), repeating-linear-gradient(90deg, var(--color-belt-panel) 0 24px, var(--color-belt-seam) 24px 28px);height:100px;box-shadow:inset 0 8px 0 var(--color-belt-highlight), 0 10px 0 var(--color-belt-shadow);z-index:1;border-radius:18px;position:absolute;inset:auto 12px 50px}.belt-roller{border:7px solid var(--color-roller-border);background:var(--color-roller-fill);border-radius:50%;width:54px;height:54px;position:absolute;top:50%;transform:translateY(-50%)}.belt-roller:after{content:"";background:var(--color-roller-core);border-radius:50%;position:absolute;inset:11px}.belt-roller-start{left:10px}.belt-roller-middle-start{left:34%}.belt-roller-middle-end{right:34%}.belt-roller-end{right:10px}.belt-status-plate{border:1px solid var(--color-machine-fastener);color:var(--color-machine-fastener);background:var(--color-machine-recess);letter-spacing:.08em;border-radius:3px;padding:2px 8px;font-size:.55rem;font-weight:900;line-height:1.4;position:absolute;inset:auto 50% 6px auto;transform:translate(50%)}.active-item-path{z-index:4;pointer-events:none;will-change:transform;width:136px;height:214px;position:absolute;inset:58px auto auto 18px}.conveyor-item{border:2px solid var(--color-product-border);background:var(--color-product-surface);width:136px;min-height:198px;box-shadow:var(--shadow-product);cursor:grab;pointer-events:auto;text-align:center;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;border-radius:8px;grid-template-rows:82px auto 1fr;align-content:start;gap:7px;padding:12px;display:grid}.conveyor-item-dragging{z-index:6;cursor:grabbing;box-shadow:var(--shadow-product-held)}.conveyor-item-returning,.conveyor-item-resolving{pointer-events:none}.conveyor-item h2{color:var(--color-product-text);margin:0;font-size:.92rem;line-height:1.15}.conveyor-item p{color:var(--color-product-muted);margin:0;font-size:.7rem;line-height:1.28}.item-illustration,.queue-illustration{border:3px solid var(--color-product-outline);background:var(--color-product-default);justify-self:center;place-items:center;display:inline-grid;position:relative}.item-illustration{width:70px;height:78px}.queue-illustration{border-width:2px;flex:none;width:38px;height:42px}.item-illustration span,.queue-illustration span{background:var(--color-product-label);border-radius:3px;width:68%;height:30%}.item-illustration-can,.queue-illustration.item-illustration-can{background:var(--color-product-can);border-radius:14px 14px 10px 10px}.item-illustration-box,.queue-illustration.item-illustration-box{background:var(--color-product-box);border-radius:4px}.item-illustration-jar,.queue-illustration.item-illustration-jar{background:var(--color-product-jar);border-radius:8px 8px 16px 16px}.item-illustration-jar:before,.queue-illustration.item-illustration-jar:before{content:"";border:2px solid var(--color-product-outline);background:var(--color-product-jar-lid);border-radius:3px;height:8px;position:absolute;inset:-7px 7px auto}.item-illustration-bag,.queue-illustration.item-illustration-bag{background:var(--color-product-bag);border-radius:12px 12px 20px 20px;transform:rotate(-2deg)}.item-illustration-fresh,.queue-illustration.item-illustration-fresh{background:var(--color-product-fresh);border-radius:45% 45% 20px 20px}.product-artwork{pointer-events:none;justify-self:center;width:78px;height:82px;display:block;overflow:visible}.product-artwork-compact{flex:none;width:42px;height:46px}.product-artwork-ground-shadow{fill:var(--color-product-art-shadow)}.art-shadow{fill:var(--color-product-art-metal-shadow)}.art-metal{fill:var(--color-product-art-metal)}.art-metal-dark{fill:var(--color-product-art-metal-shadow)}.art-metal-light{fill:var(--color-product-art-metal-light)}.art-highlight{fill:var(--color-product-art-metal-light);opacity:.72}.art-primary{fill:var(--art-primary)}.art-secondary{fill:var(--art-secondary)}.art-panel{fill:var(--art-panel,var(--color-product-art-crest))}.art-ink{fill:var(--art-ink,var(--color-product-art-ink))}.art-paper{fill:var(--color-art-paper-light)}.art-glass{fill:var(--color-art-glass)}.art-glass-highlight{fill:var(--color-art-glass-highlight)}.art-window{fill:var(--color-art-window)}.art-food{fill:var(--art-food)}.art-food-light{fill:var(--art-food-light)}.art-tray{fill:var(--color-art-tray)}.art-bowl{fill:var(--color-art-bowl)}.art-date-panel{fill:var(--color-art-date)}.art-outline,.art-outline-thin{stroke:var(--color-product-art-outline);vector-effect:non-scaling-stroke}.art-line-muted,.art-food-line,.art-food-highlight-line,.art-wrap,.art-date-hand,.art-damage{fill:none;stroke:var(--color-product-art-outline);vector-effect:non-scaling-stroke}.art-no-fill{fill:none}.art-outline{stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.art-outline-thin{stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.art-line-muted{stroke:var(--color-product-art-metal-shadow);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.art-food-line{stroke:var(--art-food);stroke-width:3px;stroke-linecap:round}.art-food-highlight-line{stroke:var(--art-food-light);stroke-width:3px;stroke-linecap:round}.art-wrap{stroke:var(--color-art-wrap);stroke-width:3px;stroke-linecap:round}.art-date-hand{stroke:var(--art-ink,var(--color-product-art-ink));stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.art-damage{stroke:var(--color-product-art-outline);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.product-artwork-beans{--art-primary:var(--color-product-art-label);--art-secondary:var(--color-product-art-label-band)}.product-artwork-salsa{--art-food:var(--color-art-salsa);--art-food-light:var(--color-art-coral);--art-ink:var(--color-art-tomato)}.product-artwork-pasta{--art-primary:var(--color-art-coral);--art-secondary:var(--color-art-gold);--art-food:var(--color-art-oat);--art-ink:var(--color-art-blue)}.product-artwork-tomatoes{--art-primary:var(--color-art-blue);--art-food:var(--color-art-tomato);--art-ink:var(--color-art-aqua)}.product-artwork-peanut-butter{--art-secondary:var(--color-art-blue);--art-food:var(--color-art-peanut);--art-ink:var(--color-art-peanut)}.product-artwork-rice{--art-primary:var(--color-art-violet);--art-secondary:var(--color-art-coral);--art-food:var(--color-art-rice)}.product-artwork-tuna{--art-primary:var(--color-art-blue);--art-ink:var(--color-art-violet)}.product-artwork-chicken{--art-secondary:var(--color-art-aqua);--art-food:var(--color-art-chicken);--art-food-light:var(--color-art-chicken-light)}.product-artwork-vegetables{--art-primary:var(--color-art-violet);--art-food:var(--color-art-gold);--art-food-light:var(--color-art-coral);--art-ink:var(--color-art-blue)}.product-artwork-cereal{--art-primary:var(--color-art-violet);--art-secondary:var(--color-art-coral);--art-food:var(--color-art-gold)}.product-artwork-oats{--art-primary:var(--color-art-aqua);--art-secondary:var(--color-art-gold);--art-food:var(--color-art-oat)}.product-artwork-unlabeled-sauce{--art-secondary:var(--color-art-blue);--art-food:var(--color-art-salsa);--art-food-light:var(--color-art-coral)}.product-artwork-unknown{border:3px dashed var(--color-product-art-outline);color:var(--color-product-art-outline);background:var(--color-product-art-unknown);border-radius:12px;place-items:center;font-size:1.5rem;font-weight:900;display:grid}.item-deadline{border:1px solid var(--color-border);background:var(--color-deadline-track);border-radius:999px;height:12px;position:absolute;inset:auto 18px 18px;overflow:hidden}.item-deadline span{border-radius:inherit;background:var(--color-accent);height:100%;display:block}.queue-panel{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:8px;grid-area:queue;gap:10px;padding:14px;display:grid}.queue-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.queue-heading h2{color:var(--color-primary-text);margin:0;font-size:1rem}.queue-list{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.queue-list li{border:1px solid var(--color-border);min-width:0;color:var(--color-primary-text);background:var(--color-surface-secondary);border-radius:6px;align-items:center;gap:8px;padding:8px;font-size:.78rem;font-weight:750;line-height:1.2;display:flex}.destination-section{z-index:2;grid-area:destinations;grid-template-columns:1fr 1fr;gap:10px;display:grid;position:relative}.destination-zone{width:100%;min-height:92px;color:var(--color-primary-text);border:3px solid var(--color-border);background:var(--color-surface);box-shadow:inset 0 -5px 0 var(--color-destination-art-shadow), var(--shadow-card);text-align:left;border-top-width:10px;border-radius:12px 12px 8px 8px;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:12px 14px;display:grid;position:relative}.destination-zone:after{content:"";opacity:.32;pointer-events:none;background:currentColor;border-radius:999px;height:3px;position:absolute;inset:5px 7px auto}.destination-zone-donate{color:var(--color-donate-text);background:linear-gradient(135deg, var(--color-donate-pattern) 0 18px, transparent 18px), linear-gradient(180deg, var(--color-surface) 0 72%, var(--color-donate-pattern) 72% 100%)}.destination-zone-inspect{color:var(--color-caution);background:linear-gradient(135deg, var(--color-inspect-pattern) 0 18px, transparent 18px), linear-gradient(180deg, var(--color-surface) 0 72%, var(--color-inspect-pattern) 72% 100%)}.destination-zone-targeted{outline:4px solid var(--color-focus-ring);outline-offset:3px;box-shadow:inset 0 -5px 0 currentColor, var(--shadow-feedback);border-color:currentColor}.destination-zone-targeted .destination-art{--destination-art-lift:-3px}.destination-section:has(.destination-zone-targeted) .destination-zone:not(.destination-zone-targeted){box-shadow:inset 0 -5px 0 var(--color-destination-art-shadow);border-style:dashed}:is(.conveyor-game:has(.assistive-donate-control:focus-visible) .destination-zone-donate,.conveyor-game:has(.assistive-inspect-control:focus-visible) .destination-zone-inspect,.conveyor-game:has(.assistive-donate-control:active) .destination-zone-donate,.conveyor-game:has(.assistive-inspect-control:active) .destination-zone-inspect){outline:4px solid var(--color-focus-ring);outline-offset:3px;box-shadow:inset 0 -5px 0 currentColor, var(--shadow-feedback);border-color:currentColor}:is(.conveyor-game:has(.assistive-donate-control:focus-visible) .destination-zone-donate .destination-art,.conveyor-game:has(.assistive-inspect-control:focus-visible) .destination-zone-inspect .destination-art,.conveyor-game:has(.assistive-donate-control:active) .destination-zone-donate .destination-art,.conveyor-game:has(.assistive-inspect-control:active) .destination-zone-inspect .destination-art){--destination-art-lift:-3px}.game-screen[inert] .destination-zone{opacity:.72;filter:saturate(.72);border-style:solid}.destination-marker{pointer-events:none;place-items:center;width:48px;min-width:48px;height:48px;display:inline-grid;position:relative}.destination-art{--destination-art-lift:0px;width:62px;height:58px;transform:translate(-50%, calc(-50% + var(--destination-art-lift)));display:block;position:absolute;top:50%;left:50%;overflow:visible}.destination-art-shadow{fill:var(--color-destination-art-shadow)}.destination-art-fill,.destination-art-panel,.destination-art-line,.destination-art-symbol,.destination-art-stitch{vector-effect:non-scaling-stroke}.destination-art-fill{stroke:currentColor;stroke-width:3px}.destination-art-bag .destination-art-fill{fill:var(--color-donate-container)}.destination-art-tote .destination-art-fill{fill:var(--color-inspect-container)}.destination-art-panel{stroke:currentColor;stroke-width:2px}.destination-art-bag .destination-art-panel{fill:var(--color-donate-container-panel)}.destination-art-tote .destination-art-panel{fill:var(--color-inspect-container-panel)}.destination-art-tote-back,.destination-art-tote-rim{fill:var(--color-inspect-container-panel);stroke:currentColor;stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.destination-art-tote-rim{fill:var(--color-inspect-container)}.destination-art-tote-handle{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.destination-art-line,.destination-art-symbol,.destination-art-stitch{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.destination-art-stitch{stroke-width:2px;stroke-dasharray:3 3}@media (hover:hover){.game-screen:not([inert]) .destination-zone:hover{border-color:currentColor}}.destination-zone small,.destination-zone strong,.destination-drop-label{display:block}.destination-zone small{color:var(--color-secondary-text);margin-bottom:3px;font-size:.72rem}.destination-zone strong{color:currentColor;font-size:1.05rem}.destination-drop-label{color:var(--color-secondary-text);margin-top:4px;font-size:.7rem;font-weight:800}.destination-zone-targeted .destination-drop-label{color:currentColor;text-transform:uppercase}.assistive-sort-controls{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.assistive-sort-controls:focus-within{clip-path:none;white-space:normal;grid-template-columns:1fr 1fr;gap:8px;width:auto;height:auto;display:grid;position:relative;overflow:visible}.assistive-sort-controls p{color:var(--color-primary-text);grid-column:1/-1;margin:0;font-weight:800}.assistive-sort-controls button{border:2px solid var(--color-control-border);min-height:48px;color:var(--color-primary-text);background:var(--color-surface);border-radius:6px;font-weight:800}.gesture-announcement,.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-overlay-backdrop{z-index:50;background:var(--color-overlay);place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.game-dialog{border:1px solid var(--color-border);width:min(100%,460px);max-height:calc(100svh - 32px);color:var(--color-primary-text);background:var(--color-surface-elevated);box-shadow:var(--shadow-feedback);border-radius:8px;gap:16px;padding:22px;display:grid;overflow-y:auto}.start-dialog{text-align:center;gap:18px;width:min(100%,520px)}.start-brand-block{gap:8px;display:grid}.start-brand-block h1{color:var(--color-primary-text);margin:0;font-size:2.8rem;line-height:1}.start-dialog .intro-copy{max-width:42ch;margin-inline:auto}.start-dialog .prototype-notice{font-size:.92rem}.countdown-dialog{place-items:center;width:min(100%,360px);min-height:300px;overflow:hidden}.countdown-stage{border:3px solid var(--color-primary-outline);width:200px;height:200px;color:var(--color-primary-text);background:var(--color-surface-secondary);box-shadow:var(--shadow-card);border-radius:8px;outline:none;place-items:center;padding:18px;display:grid}.countdown-stage:focus-visible{outline:4px solid var(--color-focus-ring);outline-offset:4px}.countdown-content-stack{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.countdown-number{min-width:2ch;color:var(--color-accent);text-align:center;font-size:6.5rem;font-weight:950;line-height:.9}.countdown-prompt{color:var(--color-secondary-text);text-transform:uppercase;font-size:.78rem;font-weight:850;line-height:1.15}.sort-callout{z-index:60;pointer-events:none;place-items:center;width:200px;height:200px;display:grid;position:fixed;top:38%;left:50%;transform:translate(-50%,-50%)}.sort-callout-text{border:3px solid var(--color-accent);width:100%;height:100%;color:var(--color-on-primary);background:var(--color-primary-action);box-shadow:var(--shadow-feedback);text-align:center;border-radius:8px;place-items:center;font-size:2.4rem;font-weight:950;line-height:1;display:grid}.pause-heading{align-items:center;gap:12px;display:flex}.pause-heading h2,.pause-restart-confirmation h3{margin:0}.pause-heading h2{font-size:1.75rem}.pause-heading-icon{width:48px;height:48px;color:var(--color-on-primary);background:var(--color-primary-action);border-radius:8px;flex:none}.pause-heading-icon span{background:currentColor;border-radius:2px;width:6px;height:22px}.pause-dialog>p,.pause-restart-confirmation p{color:var(--color-secondary-text);margin:0;line-height:1.5}.pause-stats{border-block:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.pause-stats div{text-align:center;min-width:0;padding:12px 8px}.pause-stats div+div{border-left:1px solid var(--color-border)}.pause-stats dt{color:var(--color-secondary-text);text-transform:uppercase;font-size:.72rem;font-weight:800}.pause-stats dd{margin:3px 0 0;font-size:1.2rem;font-weight:900}.pause-actions,.pause-confirmation-actions,.pause-restart-confirmation{gap:10px;display:grid}.game-dialog button{border-radius:8px;min-height:52px;padding:12px 16px;font-weight:850}.secondary-action{border:2px solid var(--color-control-border);color:var(--color-primary-text);background:var(--color-surface)}.secondary-action:hover,.secondary-action:active{border-color:var(--color-primary-action);background:var(--color-notice-bg)}.pause-restart-confirmation{border:1px solid var(--color-border);background:var(--color-warning-surface);border-radius:8px;padding:14px}.restart-confirm-action{border:2px solid var(--color-caution);color:var(--color-on-warning);background:var(--color-caution)}.results-shell{padding-block:24px}.results-screen{text-align:center;gap:18px;width:min(100%,760px)}.results-screen h1{font-size:clamp(2rem,9vw,3.5rem)}.final-score{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-feedback);border-radius:8px;gap:4px;padding:18px;display:grid}.final-score span{color:var(--color-secondary-text);text-transform:uppercase;font-size:.78rem;font-weight:800}.final-score strong{color:var(--color-score-text);font-size:clamp(2.7rem,13vw,4.6rem);line-height:1}.results-metrics dd{font-size:1.35rem}.decision-accuracy-detail{color:var(--color-secondary-text);margin:-6px 0 0;font-size:.9rem;line-height:1.45}.count-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.count-row span{border:1px solid var(--color-border);color:var(--color-secondary-text);background:var(--color-surface);border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:750}.review-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:left;border-radius:8px;gap:14px;padding:18px;display:grid}.review-card h2{color:var(--color-primary-text);margin:0;font-size:1.15rem}.missed-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.missed-list li{gap:5px;display:grid}.missed-list li>div{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.missed-list li>span{color:var(--color-secondary-text);line-height:1.42}.missed-list .review-destination{color:var(--color-primary-text);font-size:.88rem;font-weight:800}.review-tag{color:var(--color-on-warning);background:var(--color-caution);border-radius:4px;padding:3px 7px;font-size:.7rem;font-weight:800}.action-stack{gap:12px;display:grid}.future-campaign-card{border:1px dashed var(--color-border);background:var(--color-translucent-surface-soft);border-radius:8px;gap:8px;padding:14px;display:grid}.future-action{color:var(--color-disabled-text);border-color:var(--color-border);background:var(--color-disabled-bg)}.future-action:disabled{cursor:not-allowed;opacity:1}@media (prefers-reduced-motion:no-preference){.active-item-path{transition:transform .12s linear}.primary-action,.destination-zone,.conveyor-item{transition:opacity .16s,background-color .15s,border-color .15s,box-shadow .15s,transform .18s}.destination-art{transition:transform .15s}.primary-action:hover{transform:translateY(-1px)}.conveyor-item-dragging{transition:none}.theme-switch,.theme-switch-track,.theme-switch-thumb{transition:color .15s,background-color .15s,border-color .15s,transform .15s}.game-overlay-backdrop{animation:.14s ease-out game-overlay-backdrop-enter}.game-dialog{animation:.16s ease-out game-dialog-enter}.countdown-number{animation:.32s ease-out countdown-number-enter}.sort-callout-text{animation:sort-callout-enter var(--sort-callout-duration) ease-out}}@keyframes game-overlay-backdrop-enter{0%{opacity:0}}@keyframes game-dialog-enter{0%{opacity:0;transform:scale(.98)}}@keyframes countdown-number-enter{0%{opacity:.3;transform:scale(.78)}}@keyframes sort-callout-enter{0%{opacity:0;transform:scale(.86)}45%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.active-item-path{transform:translate(0)!important}.conveyor-item-resolving{opacity:.35}}@media (width<=430px){.conveyor-shell{padding:8px}.conveyor-game{gap:8px}.game-overlay-backdrop{align-items:end;padding:8px}.game-dialog{gap:12px;max-height:calc(100svh - 16px);padding:18px}.start-brand-block h1{font-size:2.2rem}.start-game-name{font-size:1.15rem}.pause-heading h2{font-size:1.5rem}.active-prototype-notice{padding:6px 8px;font-size:.75rem}.feedback-strip{min-height:48px;padding:6px 8px}.gesture-instruction{font-size:.86rem}.destination-zone{grid-template-columns:36px minmax(0,1fr);gap:6px;min-height:96px;padding:8px}.destination-marker{width:36px;min-width:36px;height:36px}.destination-art{width:44px;height:42px}.machine-control-panel,.belt-roller-middle-start,.belt-roller-middle-end{display:none}.belt-status-plate{font-size:.48rem;bottom:4px}.destination-zone strong{font-size:.92rem}.conveyor-stage{height:280px}.active-item-path{top:38px}.conveyor-belt{bottom:40px}.item-deadline{bottom:12px}}@media (height<=650px){.game-overlay-backdrop{align-items:start;padding:8px}.game-dialog{gap:10px;max-height:calc(100svh - 16px);padding:14px 18px}.start-brand-block{gap:4px}.start-brand-block h1{font-size:1.9rem}.start-game-name{font-size:1.05rem}.start-dialog .intro-copy,.start-dialog .prototype-notice{font-size:.86rem;line-height:1.35}.start-dialog .prototype-notice{padding:10px 12px}.start-dialog .primary-action{min-height:52px;padding-block:12px}.countdown-dialog{min-height:280px}.countdown-stage,.sort-callout{width:180px;height:180px}.countdown-number{font-size:5.6rem}}@media (width<=350px){.hud-controls{grid-template-columns:minmax(0,1fr) minmax(96px,1fr);display:grid}.pause-control{width:100%}.theme-switch-control{min-width:0}.theme-switch-label-long{display:none}.theme-switch-label-short{display:inline}.destination-zone{text-align:center;grid-template-columns:1fr;gap:0;height:96px;min-height:96px;padding:4px 3px}.destination-marker{justify-self:center;height:32px}.destination-art{width:36px;height:34px}.belt-status-plate,.destination-zone small{display:none}.destination-zone strong{font-size:.86rem}.destination-drop-label{font-size:.64rem}}@media (width>=760px){.game-shell{padding:28px}.live-stats{width:auto;min-width:340px}.gameplay-hud{grid-template-columns:minmax(340px,1fr) auto;width:auto}.conveyor-layout{grid-template-columns:minmax(0,1fr) 230px;grid-template-areas:"stage queue""destinations destinations"}.queue-panel{align-content:start}.queue-heading{display:grid}.queue-list{grid-template-columns:1fr}.queue-list li{min-height:84px}.destination-zone{min-height:104px}.results-shell{padding-block:48px}}
