.game-ui{--slot-size:76px;--active-card-size:70px;--active-font-size:27px;--stack-card-size:74px;--stack-column-size:74px;--stack-left:150px;--stack-top:930px;--stack-width:420px;--stack-height:336px;--stack-content-height:320px;--stack-gap:8px;--card-radius:11px;--card-font-size:27px;--depth-1-opacity:.96;--depth-2-opacity:.91;--depth-3-opacity:.86;--header-control-size:48px;z-index:10;color:#3e3027;pointer-events:none;transform-origin:0 0;width:720px;height:1280px;position:absolute;top:0;left:0}.game-ui[data-ui-variant=deck]{--slot-size:72px;--active-card-size:66px;--active-font-size:25px;--stack-card-size:74px;--stack-column-size:74px;--stack-top:950px;--stack-height:240px;--stack-content-height:218px;--stack-gap:0px;--card-radius:9px;--card-font-size:25px;--depth-1-opacity:.95;--depth-2-opacity:.88;--depth-3-opacity:.8;--header-control-size:44px}.game-ui[data-ui-variant=tray]{--slot-size:68px;--active-card-size:60px;--active-font-size:24px;--stack-card-size:64px;--stack-column-size:82px;--stack-left:141px;--stack-top:930px;--stack-width:438px;--stack-height:292px;--stack-content-height:277px;--stack-gap:7px;--card-radius:10px;--card-font-size:24px;--depth-1-opacity:.9;--depth-2-opacity:.81;--depth-3-opacity:.74;--header-control-size:44px}.game-ui[data-ui-variant=clean]{--slot-size:68px;--active-card-size:62px;--active-font-size:23px;--stack-card-size:66px;--stack-column-size:66px;--stack-top:940px;--stack-height:316px;--stack-content-height:291px;--stack-gap:9px;--card-radius:8px;--card-font-size:23px;--depth-1-opacity:.92;--depth-2-opacity:.83;--depth-3-opacity:.74;--header-control-size:42px}.game-ui button{font:inherit}.game-header{grid-template-columns:var(--header-control-size) 1fr var(--header-control-size);align-items:start;height:54px;display:grid;position:absolute;top:32px;left:48px;right:48px}.ui-control{width:var(--header-control-size);height:var(--header-control-size);color:#3e3027;cursor:pointer;pointer-events:auto;place-items:center;padding:0;display:grid}.ui-control:active{transform:translateY(2px)}.restart-control svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.speed-control{font-size:17px;font-weight:800}.level-label{letter-spacing:.12em;justify-self:center;font-size:22px;font-weight:750;line-height:1}.game-ui[data-ui-variant=colony] .ui-control{background:#fffffff5;border:1px solid #4233393d;border-radius:9px;box-shadow:0 3px #3d30363d,0 6px 12px #2b1e241a}.game-ui[data-ui-variant=colony] .level-label{background:#ffffff94;border:1px solid #4233391a;border-radius:9px;padding:12px 20px 10px}.game-ui[data-ui-variant=deck] .ui-control{background:#fff9ebe6;border:1px solid #513b2b47;border-radius:13px;height:42px;box-shadow:0 2px #4b342533}.game-ui[data-ui-variant=deck] .level-label{background:#fff9ebdb;border:1px solid #513b2b2e;border-radius:999px;padding:11px 24px 10px;box-shadow:0 2px 5px #35251a14}.game-ui[data-ui-variant=tray] .ui-control,.game-ui[data-ui-variant=tray] .level-label{background:#fff8e4b8;border:1px solid #4e392829;border-radius:11px;box-shadow:0 2px 5px #34241914,inset 0 1px #ffffff8f}.game-ui[data-ui-variant=tray] .level-label{padding:11px 20px 10px}.game-ui[data-ui-variant=clean] .ui-control{height:40px;box-shadow:none;background:#fffaef75;border:1px solid #40302638;border-radius:8px}.game-ui[data-ui-variant=clean] .level-label{background:0 0;border:0;padding:10px 16px}.active-slots{pointer-events:none;background:0 0;position:absolute;inset:0}.active-slots:before{z-index:-1;content:"";pointer-events:none;position:absolute}.active-slot{width:var(--slot-size);height:var(--slot-size);place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.active-batch{width:var(--active-card-size);height:var(--active-card-size);color:var(--batch-ink);font-size:var(--active-font-size);background:var(--batch-color);border-radius:var(--card-radius);place-items:center;font-weight:900;line-height:1;display:grid}.game-ui[data-ui-variant=colony] .active-slot{background:#fffdf9fa;border:2px solid #473d412e;border-radius:10px;box-shadow:0 4px #5b565940,0 7px 12px #2a1a231a}.game-ui[data-ui-variant=deck] .active-slots:before{background:#fff8e457;border-radius:14px;width:576px;height:92px;top:814px;left:72px;box-shadow:inset 0 -2px #48342614}.game-ui[data-ui-variant=deck] .active-slot{background:#fffaefeb;border:1px solid #4a362842;border-radius:9px;box-shadow:0 3px #4c36272e,0 5px 9px #34241914}.game-ui[data-ui-variant=tray] .active-slots:before{background:#fff8e473;border:1px solid #4e392829;border-radius:14px;width:576px;height:92px;top:814px;left:72px;box-shadow:inset 0 1px #ffffff6b}.game-ui[data-ui-variant=tray] .active-slot{background:#fffaefdb;border:1px solid #4a362838;border-radius:10px;box-shadow:0 2px 5px #34241914}.game-ui[data-ui-variant=clean] .active-slot{background:#fffaefe0;border:1px solid #40302638;border-radius:8px;box-shadow:0 2px 5px #34241914}.active-batch--incoming{opacity:0}.active-batch--arrived{animation:.13s ease-out slot-arrive}@keyframes slot-arrive{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.batch-stacks{top:var(--stack-top);left:var(--stack-left);width:var(--stack-width);height:var(--stack-height);grid-template-columns:repeat(4, var(--stack-column-size));pointer-events:none;justify-content:space-between;display:grid;position:absolute}.batch-stack{width:var(--stack-column-size);height:var(--stack-height);pointer-events:none;position:relative;overflow:visible}.stack-column{width:100%;height:var(--stack-content-height);align-items:center;gap:var(--stack-gap);pointer-events:none;flex-direction:column;display:flex;position:relative}.stack-card{flex:0 0 var(--stack-card-size);width:var(--stack-card-size);height:var(--stack-card-size);color:var(--batch-ink);font-size:var(--card-font-size);background:var(--batch-color);border-radius:var(--card-radius);pointer-events:none;place-items:center;padding:0;font-weight:900;line-height:1;display:grid;position:relative}.flying-batch{z-index:80;width:var(--stack-card-size);height:var(--stack-card-size);color:var(--batch-ink);font-size:var(--card-font-size);background:var(--batch-color);border-radius:var(--card-radius);pointer-events:none;transform-origin:50%;will-change:transform;place-items:center;font-weight:900;line-height:1;transition:transform .24s cubic-bezier(.22,.75,.25,1);display:grid;position:absolute;transform:translate(-50%,-50%)scale(1)}.game-ui[data-ui-variant=colony] :is(.active-batch,.stack-card,.flying-batch){background:linear-gradient(180deg, var(--batch-light) 0%, var(--batch-color) 38%, var(--batch-color) 70%, var(--batch-dark) 100%);box-shadow:0 5px 0 var(--batch-dark), 0 8px 12px #2a1a2329, inset 0 2px #ffffff61;border:1px solid #3022296b;outline:3px solid #fffffff5}.game-ui[data-ui-variant=colony] :is(.active-batch,.stack-card,.flying-batch)>span{color:var(--batch-ink);-webkit-text-stroke:2px #302631;text-shadow:-1px -1px #302631,1px -1px #302631,-1px 1px #302631,1px 2px #302631}.game-ui[data-ui-variant=colony] :is(.active-batch,.stack-card,.flying-batch)>.cream-amount{-webkit-text-stroke:0;text-shadow:0 1px #ffffff80}.game-ui[data-ui-variant=deck] :is(.active-batch,.stack-card,.flying-batch){background:linear-gradient(180deg, var(--batch-light) 0%, var(--batch-color) 32%, var(--batch-color) 82%, var(--batch-dark) 100%);box-shadow:0 5px 0 var(--batch-dark), 0 7px 10px #301f1521, inset 0 1px #ffffff3d;border:1px solid #2d1f1a5c;outline:2px solid #fffaefeb}.game-ui[data-ui-variant=deck] :is(.active-batch,.stack-card,.flying-batch)>span{color:var(--batch-ink);-webkit-text-stroke:1.5px #34282b;text-shadow:0 2px #34282b}.game-ui[data-ui-variant=deck] :is(.active-batch,.stack-card,.flying-batch)>.cream-amount{-webkit-text-stroke:0;text-shadow:0 1px #ffffff73}.game-ui[data-ui-variant=deck] .stack-card--depth-1,.game-ui[data-ui-variant=deck] .stack-card--depth-2,.game-ui[data-ui-variant=deck] .stack-card--depth-3{margin-top:-26px}.game-ui[data-ui-variant=deck] .stack-card--depth-0{z-index:4}.game-ui[data-ui-variant=deck] .stack-card--depth-1{z-index:3}.game-ui[data-ui-variant=deck] .stack-card--depth-2{z-index:2}.game-ui[data-ui-variant=deck] .stack-card--depth-3{z-index:1}.game-ui[data-ui-variant=tray] .batch-stack{background:#fff8e438;border:1px solid #5039271f;border-radius:14px;padding-top:8px;box-shadow:inset 0 1px #ffffff42}.game-ui[data-ui-variant=tray] :is(.active-batch,.stack-card,.flying-batch){background:linear-gradient(180deg, var(--batch-light) 0%, var(--batch-color) 58%, var(--batch-color) 100%);box-shadow:0 3px 0 var(--batch-dark), 0 5px 8px #301f151a, inset 0 2px #ffffff47;border:1px solid #2d1f1847}.game-ui[data-ui-variant=tray] :is(.active-batch,.stack-card,.flying-batch)>span{color:var(--batch-ink);text-shadow:0 2px #2d1d184d}.game-ui[data-ui-variant=tray] :is(.active-batch,.stack-card,.flying-batch)>.cream-amount{text-shadow:0 1px #ffffff75}.game-ui[data-ui-variant=clean] :is(.active-batch,.stack-card,.flying-batch){background:var(--batch-color);box-shadow:0 3px 0 var(--batch-dark);border:1px solid #2a1e1742}.game-ui[data-ui-variant=clean] :is(.active-batch,.stack-card,.flying-batch)>span{color:var(--batch-ink);text-shadow:0 1px 1px #28191442;font-weight:800}.game-ui[data-ui-variant=clean] :is(.active-batch,.stack-card,.flying-batch)>.cream-amount{text-shadow:0 1px #ffffff61}.stack-card--depth-0{opacity:1;cursor:pointer;pointer-events:auto}.stack-card--depth-1{opacity:var(--depth-1-opacity)}.stack-card--depth-2{opacity:var(--depth-2-opacity)}.stack-card--depth-3{opacity:var(--depth-3-opacity)}.stack-card:disabled{cursor:default}.stack-card--depth-0:active{transform:translateY(2px)}.stack-card--departing{opacity:0}.stack-card--shake{animation:.18s ease-in-out stack-shake}@keyframes stack-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.stack-move{transition:transform .21s cubic-bezier(.22,.75,.25,1)}.stack-enter-active{transition:opacity .15s 60ms}.stack-enter-from,.stack-leave-to{opacity:0}.stack-leave-active{transition:opacity 60ms;position:absolute}.stack-overflow{z-index:8;color:#49372c;text-align:center;opacity:.72;background:#fffaefbd;border-radius:999px;min-width:24px;padding:2px 5px;font-size:13px;font-weight:700;line-height:1;position:absolute;bottom:2px;right:7px}.flying-batch--active{transform:translate(-50%, -50%) translate(var(--flight-x), var(--flight-y)) scale(var(--flight-scale))}.ui-variant-switcher{z-index:120;pointer-events:auto;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;bottom:14px;right:14px}.ui-variant-toggle{color:#40352e;letter-spacing:.04em;cursor:pointer;background:#f9f7f2f0;border:1px solid #3f352e47;border-radius:10px;width:44px;height:44px;padding:0;font-size:13px;font-weight:850;box-shadow:0 2px #382d2633,0 4px 9px #271f1a1f}.ui-variant-menu{background:#f9f7f2f5;border:1px solid #3f352e38;border-radius:10px;gap:4px;width:104px;padding:6px;display:grid;position:absolute;bottom:52px;right:0;box-shadow:0 8px 24px #271f1a2e}.ui-variant-menu button{color:#51443b;letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;height:30px;padding:0 8px;font-size:11px;font-weight:800}.ui-variant-menu button:hover,.ui-variant-menu .ui-variant-option--selected{background:#eee8dd;border-color:#3f352e1f}.ui-variant-menu button:disabled{cursor:default;opacity:.45}.game-modal-backdrop{z-index:100;pointer-events:auto;background:#1a161261;place-items:center;display:grid;position:absolute;inset:0}.game-modal{text-align:center;background:#fff8e8;border:1px solid #72523a;border-radius:14px;width:320px;padding:28px;box-shadow:0 14px 50px #2618104d}.game-modal h2{margin:0 0 12px;font-size:30px}.game-modal p{color:#765142;margin:0 0 24px;font-size:17px}.game-modal button{color:#3e3027;cursor:pointer;background:#fff1cd;border:1px solid #72523a;border-radius:8px;min-width:170px;height:44px;padding:0 22px;font-weight:800;box-shadow:0 2px #5c3d2759}.game-ui[data-ui-variant=colony] .game-modal{background:linear-gradient(#fffdf7,#fff3d6);border:2px solid #473d413d;box-shadow:0 6px #473d412e,0 18px 50px #26181047}.game-ui[data-ui-variant=deck] .game-modal,.game-ui[data-ui-variant=deck] .game-modal button{border-radius:18px}.game-ui[data-ui-variant=tray] .game-modal{background:#fff8e4f5;border-color:#4e39282e;box-shadow:0 12px 36px #26181038}.game-ui[data-ui-variant=clean] .game-modal{background:#fffaf0;border-color:#4030262e;border-radius:10px;box-shadow:0 10px 30px #26181033}.game-ui[data-ui-variant=clean] .game-modal button{box-shadow:none;background:0 0;border-color:#40302647}.game-modal button:active,.ui-variant-toggle:active{box-shadow:none;transform:translateY(2px)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#cfd5dc;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{background:linear-gradient(#d9dee4 0%,#c7cdd5 100%)}#app{place-items:center;display:grid}.game-shell{aspect-ratio:720/1280;border-radius:16px;width:min(100vw,56.25vh);max-height:100vh;position:relative;overflow:hidden;box-shadow:0 18px 60px #181f2833}#game-canvas{position:absolute;inset:0}canvas{image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;max-width:100%;max-height:100%;display:block}
