.warung-layout{z-index:10;grid-template-columns:.85fr 1.15fr;gap:16px;display:grid;position:absolute;inset:92px 18px 48px}.warung-shop,.warung-counter{border-radius:18px;min-width:0;overflow:auto}.warung-shop{color:var(--navy);background:#fff7df;padding:18px}.shop-sign{background:#f1b72b;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.shop-sign span{font-weight:950}.shop-sign small{font-size:9px}.product-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.product-grid article{background:#fff;border:1px solid #eadcae;border-radius:12px;place-items:center;padding:12px 8px;display:grid}.product-grid article>span{font-size:30px}.product-grid article b{margin-top:4px;font-size:11px}.product-grid article small{color:#7c6a3b;font-size:9px}.product-grid article div{grid-template-columns:26px 26px 26px;align-items:center;margin-top:7px;display:grid}.product-grid article button{background:#edf2f8;border:0;border-radius:7px;width:24px;height:24px}.product-grid article strong{text-align:center;font-size:11px}.receipt{background:#fff;border:1px dashed #d8c588;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.receipt span{color:#6d623f;font-size:10px}.receipt strong{font-size:20px}.receipt .button{min-height:38px;font-size:10px}.warung-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08142ab8;border:1px solid #ffffff1f;padding:14px}.transaction-card{color:var(--navy);background:#fff;border-radius:13px;padding:13px 16px}.transaction-card>small{color:#bf8612;letter-spacing:.12em;font-size:8px;font-weight:950}.transaction-card h2{margin:4px 0}.warung-answer{justify-content:center;align-items:baseline;gap:4px;font-size:34px;font-weight:950;display:flex}.warung-answer span{color:var(--muted);font-size:13px}.number-keypad{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.number-keypad button{background:#f5f7fb;border:1px solid #dce3ee;border-radius:7px;width:34px;height:30px;font-size:10px;font-weight:850}.warung-pads{grid-template-columns:1fr 1fr;gap:8px;height:calc(100% - 145px);margin-top:9px;display:grid}.warung-pads.is-single{grid-template-columns:1fr}.warung-topbar{z-index:10;left:var(--gap-2);right:var(--gap-2);flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:absolute;top:88px}.warung-budget-pill,.warung-cart-pill,.warung-checkout-pill{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#08142a9e;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;display:flex}.warung-budget-pill span{letter-spacing:.06em;color:#9fc4ff;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.warung-budget-pill strong{font-size:15px}.warung-cart-pill{border-style:dashed;border-width:2px}.warung-cart-pill__icon{font-size:22px}.warung-cart-pill div{flex-direction:column;display:flex}.warung-cart-pill strong{font-size:14px;line-height:1.15}.warung-cart-pill span{letter-spacing:.05em;color:#9fc4ff;text-transform:uppercase;font-size:9px;font-weight:800}.warung-cart-pill{transition:transform .15s,box-shadow .15s,border-color .15s}.warung-cart-pill.is-armed{border-color:#25c77a;transform:scale(1.06);box-shadow:0 0 0 4px #25c77a52}.warung-checkout-pill{background:var(--lime);color:var(--navy);cursor:pointer;border:0;font-size:13px;font-weight:900;transition:transform .15s,box-shadow .15s}.warung-checkout-pill:disabled{opacity:.4;cursor:not-allowed}.warung-checkout-pill[data-air-focused=true]{transform:translateY(-2px)scale(1.05);box-shadow:0 0 0 5px #25c77a4d,0 12px 30px #154b354d}.warung-cart-panel{z-index:10;right:var(--gap-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;text-align:center;background:#08142a94;border:3px dashed #ffffff57;border-radius:20px;flex-direction:column;align-items:center;gap:3px;width:168px;padding:16px 10px 12px;transition:transform .15s,box-shadow .15s,border-color .15s,background .15s;display:flex;position:absolute;top:88px;bottom:172px}.warung-cart-dropzone{z-index:5;top:88px;bottom:64px;right:var(--gap-2);pointer-events:none;width:42%;position:absolute}.warung-cart-panel.is-armed{background:#17a8664d;border-style:solid;border-color:#25c77a;transform:scale(1.035);box-shadow:0 0 0 6px #25c77a4d}.warung-cart-panel__icon{font-size:36px}.warung-cart-panel__label{letter-spacing:.08em;color:#9fc4ff;text-transform:uppercase;margin-top:2px;font-size:10px;font-weight:800}.warung-cart-panel__total{font-size:19px}.warung-cart-panel__count{color:#c3d1e6;margin-bottom:4px;font-size:10px;font-weight:700}.warung-cart-panel__items{flex-direction:column;flex:1;align-items:center;gap:5px;width:100%;min-height:0;padding:4px 0;display:flex;overflow-y:auto}.warung-cart-panel__empty{color:#ffffffc7;padding:6px 2px;font-size:10.5px;line-height:1.4}.warung-cart-panel .warung-checkout-pill{justify-content:center;width:100%;margin-top:6px}.warung-subrow{z-index:10;left:var(--gap-2);right:var(--gap-2);justify-content:center;display:flex;position:absolute;top:138px}.warung-cart-preview{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.warung-cart-chip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#ffffff29;border:1px solid #ffffff42;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.warung-air-hint{text-align:center;color:#ffffffeb;text-shadow:0 1px 6px #040c1ce6;max-width:480px;font-size:11px;font-weight:700}.warung-shelf{z-index:10;left:var(--gap-2);scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:10px;padding:4px 2px 10px;display:flex;position:absolute;bottom:64px;right:196px;overflow-x:auto}.warung-shelf-card{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-align:center;scroll-snap-align:start;background:#fff7dfeb;border:2px solid #f1b72b8c;border-radius:16px;flex:none;justify-items:center;gap:2px;width:100px;padding:10px 6px;transition:transform .15s,opacity .15s;display:grid;position:relative}.warung-shelf-card__emoji{font-size:26px}.warung-shelf-card b{color:#4a3a10;font-size:10.5px}.warung-shelf-card small{color:#8a733a;font-size:9.5px}.warung-shelf-card.is-carried{opacity:.38;transform:scale(.92)}.warung-shelf-card__qty{color:#fff;background:#25c77a;border-radius:999px;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;font-weight:900;display:grid;position:absolute;top:-7px;right:-7px;box-shadow:0 2px 6px #00000040}.airboard-page{background:#111b2c;height:calc(100vh - 68px)}.airboard-toolbar{color:#fff;background:#162238;border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;height:58px;padding:0 12px;display:flex;overflow-x:auto}.airboard-title{min-width:130px;display:grid}.airboard-title span{font-size:12px;font-weight:950}.airboard-title small{color:#91a4c3;font-size:8px}.tool-group{gap:4px;display:flex}.tool-group button,.file-button{color:#d7e1f0;background:#ffffff0d;border:1px solid #ffffff21;border-radius:8px;min-height:34px;padding:0 9px;font-size:9px}.tool-group button.is-active,.file-button:hover{color:var(--navy);background:var(--lime)}.tool-group.colors button{border-radius:50%;width:26px;padding:0}.tool-group.colors button.is-active{box-shadow:0 0 0 3px #fff}.file-button{cursor:pointer;place-items:center;display:grid}.file-button input{display:none}.airboard-workspace{grid-template-columns:165px 1fr 180px;gap:8px;height:calc(100% - 58px);padding:8px;display:grid}.slide-rail,.camera-mini{background:#162238;border-radius:12px;padding:10px;overflow:auto}.slide-rail>strong{color:#94a8c7;letter-spacing:.13em;margin:4px 3px 10px;font-size:8px;display:block}.slide-rail button{color:#ccd8e9;text-align:left;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:24px 1fr;align-items:center;gap:7px;width:100%;margin-bottom:7px;padding:9px;display:grid}.slide-rail button b{background:#ffffff1a;border-radius:6px;place-items:center;width:22px;height:22px;font-size:8px;display:grid}.slide-rail button span{font-size:8px;line-height:1.35}.slide-rail button.is-active{border-color:var(--lime)}.board-stage{grid-template-rows:1fr 30px;min-width:0;display:grid}.board-document{background:#fff;border-radius:12px;min-height:0;position:relative;overflow:hidden}.board-document object,.board-document img{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.demo-slide{background:radial-gradient(circle at 80% 20%,#dce9ff,#0000 30%),#fff;align-content:center;padding:10%;display:grid;position:absolute;inset:0}.demo-slide>span{color:var(--blue);letter-spacing:.15em;font-size:11px;font-weight:950}.demo-slide h1{max-width:720px;color:var(--navy);margin:14px 0;font-size:clamp(34px,5vw,70px);line-height:.98}.demo-slide p{color:#65738b;max-width:650px;font-size:17px;line-height:1.5}.demo-slide small{color:#8a96a9;position:absolute;bottom:24px;right:30px}.airboard-canvas{z-index:4;touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.airboard-canvas.tool-pointer{cursor:default}.board-status{color:#8fa3c0;align-items:center;gap:12px;padding:0 10px;font-size:8px;display:flex}.camera-mini{position:relative;overflow:hidden}.camera-mini video{object-fit:cover;background:#0b1526;border-radius:8px;width:100%;height:150px;transform:scaleX(-1)}.camera-mini .vision-overlay{width:calc(100% - 20px);height:150px;top:10px;left:10px;right:10px}.camera-mini>span{color:#9fb0c9;margin-top:8px;font-size:8px;display:block}.body-game-hud,.run-hud{z-index:20;grid-template-columns:180px 1fr 180px;align-items:center;gap:12px;height:68px;display:grid;position:absolute;top:16px;left:20px;right:20px}.body-game-hud>div,.run-hud>div{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071227c7;border:1px solid #ffffff21;border-radius:12px;place-items:center;padding:10px 14px;display:grid}.body-game-hud small,.run-hud small{letter-spacing:.12em;color:#9eb0ca;font-size:8px;font-weight:900}.body-game-hud strong,.run-hud strong{font-size:22px}.dodge-field,.beat-field,.run-field{z-index:10;background:0 0;border-radius:24px;position:absolute;inset:118px 6% 116px;overflow:visible}.beat-lanes,.lane-grid{pointer-events:none;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:0}.beat-lanes i,.lane-grid i{border-right:2px dashed #ffffff4d}.beat-lanes i:last-child,.lane-grid i:last-child{border-right:0}.beat-target{z-index:6;aspect-ratio:1;will-change:top;place-items:center;width:26%;max-height:34%;margin-left:-13%;display:grid;position:absolute;transform:translateY(-50%)}.beat-target svg{filter:drop-shadow(0 6px 18px #0000008c);width:100%;height:100%}.beat-target.beat-lane-0{color:#ffd166;left:16.66%}.beat-target.beat-lane-1{color:#7be495;left:50%}.beat-target.beat-lane-2{color:#7fd4ff;left:83.33%}.beat-target[data-judged=hit]{animation:.28s forwards beat-pop}.beat-target[data-judged=miss]{opacity:.2;filter:grayscale()}@keyframes beat-pop{to{opacity:0;transform:translateY(-50%)scale(1.5)}}.beat-hitline{pointer-events:none;border-top:4px dashed #c8f26bd9;justify-items:start;height:0;display:grid;position:absolute;bottom:12%;left:0;right:0}.beat-hitline span{color:#0f2344;letter-spacing:.12em;background:#c8f26beb;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:950;transform:translateY(-135%)}.beat-marker{z-index:8;pointer-events:none;place-items:center;width:84px;height:84px;margin:0 0 -42px -42px;display:grid;position:absolute;bottom:12%;left:50%}.beat-marker i{border:5px solid var(--lime);background:#c8f26b38;border-radius:50%;width:100%;height:100%;box-shadow:0 0 0 6px #08142a59,0 10px 26px #0006}.beat-hud{z-index:20;top:56px;left:var(--gap-2);right:var(--gap-2);grid-template-columns:repeat(5,1fr);gap:6px;display:grid;position:absolute}.body-game-hud,.run-hud{z-index:20;top:56px;left:var(--gap-2);right:var(--gap-2);grid-template-columns:repeat(3,1fr);gap:6px;display:grid;position:absolute}.beat-hud>div,.body-game-hud>div,.run-hud>div{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0712279e;border:1px solid #ffffff24;border-radius:12px;place-items:center;padding:8px 6px;display:grid}.beat-hud small,.body-game-hud small,.run-hud small{letter-spacing:.12em;color:#9eb0ca;font-size:8px;font-weight:900}.beat-hud strong,.body-game-hud strong,.run-hud strong{font-variant-numeric:tabular-nums;font-size:20px}.beat-hud__lane{letter-spacing:.08em;color:var(--lime);font-size:13px!important}.action-pill{background:var(--lime);color:var(--navy);border-radius:999px;padding:7px 14px;font-size:12px;font-weight:950}.beat-duration{z-index:22;left:var(--gap-2);right:var(--gap-2);flex-wrap:wrap;justify-content:center;gap:6px;display:flex;position:absolute;bottom:56px}.beat-duration button{color:#dce7f8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071227b8;border:1px solid #ffffff42;border-radius:999px;min-height:34px;padding:0 14px;font-size:12px;font-weight:800}.beat-duration button.is-active{background:var(--lime);border-color:var(--lime);color:var(--navy)}.beat-duration__custom{color:#dce7f8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071227b8;border:1px solid #ffffff42;border-radius:999px;align-items:center;gap:6px;padding:0 8px 0 12px;font-size:12px;font-weight:800;display:flex}.beat-duration__custom input{color:#fff;text-align:center;background:#ffffff1a;border:1px solid #ffffff38;border-radius:8px;width:52px;min-height:28px;font-weight:800}.beat-duration__custom button{min-height:28px;padding:0 10px}.body-avatar,.runner-avatar{z-index:8;width:70px;height:135px;margin-left:-35px;transition:left .14s,transform .14s;position:absolute;bottom:10%;left:50%}.body-avatar span,.runner-avatar span{width:22px;height:22px;color:var(--lime);font-size:24px;position:absolute;top:0;left:25px}.body-avatar i,.runner-avatar i{background:var(--lime);border-radius:6px;width:8px;height:58px;position:absolute;top:28px;left:32px}.body-avatar b,.runner-avatar b{background:var(--lime);width:56px;height:8px;box-shadow:9px 55px 0 -1px var(--lime), 38px 55px 0 -1px var(--lime);border-radius:6px;position:absolute;top:48px;left:8px}.body-instructions{z-index:20;gap:7px;display:flex;position:absolute;bottom:15px;left:50%;transform:translate(-50%)}.body-instructions span{color:#d9e5f5;background:#071227c7;border:1px solid #ffffff1f;border-radius:8px;padding:7px 10px;font-size:8px}.game-over-card{z-index:30;color:var(--navy);background:#ffffffe6;align-content:center;place-items:center;display:grid;position:absolute;inset:0}.game-over-card h2{margin:0;font-size:46px}.game-over-card button{color:#fff;background:var(--blue);border:0;border-radius:10px;padding:10px 18px}.run-target-label{align-self:stretch}.run-target-label span{background:#ffffff29;border-radius:999px;width:220px;height:5px;overflow:hidden}.run-target-label i{background:var(--lime);height:100%;display:block}.run-field{left:5%;right:5%}.target-zone{color:#fff6;border:2px dashed #fff3;border-radius:18px;place-items:center;width:25%;font-size:12px;font-weight:950;display:grid;position:absolute;top:24%;bottom:15%}.target-zone[data-active=true],.depth-zone[data-active=true]{color:var(--navy);border-color:var(--lime);background:#c8f26bb8;box-shadow:0 0 35px #c8f26b40}.zone-left{left:4%}.zone-center{left:37.5%}.zone-right{right:4%}.depth-zone{z-index:2;color:#d6e1f1;text-align:center;border:1px dashed #ffffff40;border-radius:999px;min-width:130px;padding:8px 13px;font-size:9px;font-weight:900;position:absolute;left:50%;transform:translate(-50%)}.depth-forward{top:7%}.depth-back{bottom:4%}.runner-avatar{transition:left .2s,transform .2s}.admin-page{background:#f3f6fb;min-height:100vh;padding:28px}.admin-shell{width:min(1160px,100%);margin:0 auto}.admin-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-header h1{color:var(--navy);margin:0}.admin-grid{grid-template-columns:360px 1fr;gap:16px;display:grid}.admin-panel{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px}.admin-form{gap:10px;display:grid}.admin-form label{color:#5b687f;gap:4px;font-size:10px;font-weight:800;display:grid}.admin-form input,.admin-form select{border:1px solid #d8e0eb;border-radius:9px;min-height:40px;padding:0 10px}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #e5eaf2;padding:10px;font-size:11px}.admin-note{color:#765b1b;background:#fff8dd;border:1px solid #f0dda4;border-radius:10px;padding:12px;font-size:10px;line-height:1.5}@keyframes pulse{to{transform:scale(1.08)}}@media (max-width:767px){.warung-layout{inset:62px var(--gap-2) 58px;gap:var(--gap-2);grid-template-rows:auto 1fr;grid-template-columns:1fr;overflow:auto}.product-grid{grid-template-columns:repeat(3,1fr)}.product-grid article button{width:40px;height:40px}.number-keypad button{width:44px;height:44px;font-size:var(--text-sm)}.receipt{grid-template-columns:1fr auto}.warung-pads{grid-template-columns:1fr;height:auto;min-height:260px}.warung-topbar{top:60px}.warung-subrow{top:108px}.warung-shelf{bottom:56px;right:var(--gap-2)}.warung-cart-panel{width:100%;height:150px;top:108px;bottom:auto;left:var(--gap-2);right:var(--gap-2);flex-flow:wrap;padding:10px 12px}.warung-cart-dropzone{top:108px;bottom:56px;left:var(--gap-2);right:var(--gap-2);width:auto}.warung-cart-panel__items{flex-flow:wrap}.warung-shelf-card{width:86px}.airboard-page{height:100%}.airboard-toolbar{height:auto;padding:var(--gap-1) var(--gap-2)}.tool-group button,.file-button{min-height:44px;font-size:var(--text-xs)}.airboard-title,.slide-rail,.camera-mini{display:none}.airboard-workspace{grid-template-columns:1fr;height:calc(100% - 56px)}.body-game-hud,.run-hud{left:var(--gap-1);right:var(--gap-1);top:var(--gap-1);grid-template-columns:1fr auto 1fr;height:auto}.body-game-hud small,.run-hud small{font-size:var(--text-xs)}.dodge-field,.beat-field,.run-field{inset:104px var(--gap-1) 104px}.beat-hud{grid-template-columns:repeat(5,1fr);top:50px}.beat-hud strong{font-size:15px}.beat-marker{width:62px;height:62px;margin:0 0 -31px -31px}.body-instructions{flex-wrap:wrap;justify-content:center;gap:4px}.body-instructions span{font-size:var(--text-xs);padding:6px 10px}.admin-page{padding:var(--gap-3)}.admin-grid{grid-template-columns:1fr}.admin-table th,.admin-table td{font-size:var(--text-xs)}}
