:root{--g1: #6a3093;--g2: #a044ff;--g3: #b96aff;--grad: linear-gradient(135deg, #6a3093, #a044ff);--bg: #f7f2ff;--bg2: #ffffff;--pbg: #f0e6ff;--pbg2: #e4d0ff;--border: rgba(106, 48, 147, .14);--border2: rgba(160, 68, 255, .25);--text: #1a0033;--text2: #5a3d80;--muted: #957aaf;--green: #22c55e;--red: #ef4444;--img-bg: #eef0ff;--shadow: 0 4px 20px rgba(106, 48, 147, .18);--shadow-lg: 0 12px 40px rgba(106, 48, 147, .28)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Sora,sans-serif;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{display:none}*{scrollbar-width:none}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.sup-enter-active{animation:cartBounce .45s cubic-bezier(.34,1.56,.64,1)}.sup-leave-active{transition:all .25s ease-in}.sup-leave-to{transform:translateY(80px);opacity:0}.sup-enter-from{transform:translateY(100%);opacity:0}.sheet-enter-active{animation:sheetIn .32s cubic-bezier(.34,1.56,.64,1)}.sheet-leave-active{transition:transform .25s ease-in,opacity .2s}.sheet-leave-to{transform:translateY(100%);opacity:0}.lang-fade-enter-active,.lang-fade-leave-active{transition:opacity .15s,transform .15s}.lang-fade-enter-from{opacity:0;transform:translateY(4px)}.lang-fade-leave-to{opacity:0;transform:translateY(-4px)}@keyframes sheetIn{0%{transform:translateY(100%);opacity:.4}to{transform:translateY(0);opacity:1}}@keyframes cartBounce{0%{transform:translateY(100%);opacity:0}60%{transform:translateY(-6px);opacity:1}80%{transform:translateY(3px)}to{transform:translateY(0)}}@keyframes itemIn{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes secIn{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes chipIn{0%{opacity:0;transform:scale(.8) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes addPop{0%{transform:scale(1)}35%{transform:scale(1.32)}65%{transform:scale(.88)}to{transform:scale(1)}}@keyframes numPop{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes tagIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes recIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes successPop{0%{transform:scale(0) rotate(-90deg);opacity:0}60%{transform:scale(1.2) rotate(8deg)}80%{transform:scale(.92) rotate(-3deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes chipFly{0%{transform:translate(120px) scale(.8);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes playRing{0%{transform:translate(-50%,-50%) scale(1);opacity:.5}to{transform:translate(-50%,-50%) scale(1.7);opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(6px)}}@keyframes pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.4);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes langFlash{0%{opacity:1}40%{opacity:.5}to{opacity:1}}body.lang-switching{animation:langFlash .22s ease}.grad-text{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.orange-text{background:linear-gradient(135deg,#ff6b35,#ff3d00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#1a00338c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:flex-end;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{background:var(--bg2);border-radius:24px 24px 0 0;width:100%;max-height:94vh;overflow-y:auto;will-change:transform;touch-action:pan-y}.sheet.dragging{transition:none!important;animation:none!important;pointer-events:none}.sheet.snap-back{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sheet.snap-close{transition:transform .28s ease-in}.drag-handle{width:48px;height:5px;border-radius:3px;background:#6a309333;margin:14px auto 2px;cursor:grab;transition:background .15s}.drag-handle:active{background:#6a309373;cursor:grabbing}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1.5px solid var(--border)}.sheet-title{font-family:Raleway,sans-serif;font-size:16px;font-weight:900}.btn-p{background:var(--grad);color:#fff;border:none;border-radius:16px;padding:15px;font-size:14px;font-weight:900;font-family:Raleway,sans-serif;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow);transition:transform .15s}.btn-p:active{transform:scale(.97)}.btn-p:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-o{background:transparent;color:var(--g1);border:2px solid var(--g2);border-radius:16px;padding:13px;font-size:14px;font-weight:900;font-family:Raleway,sans-serif;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s}.btn-o:active{background:var(--pbg)}.btn-g{background:var(--pbg);color:var(--text2);border:none;border-radius:16px;padding:13px;font-size:13px;font-weight:800;font-family:Sora,sans-serif;cursor:pointer;width:100%;transition:background .15s}.btn-g:active{background:var(--pbg2)}.x-btn{width:36px;height:36px;border-radius:50%;background:var(--pbg);border:none;color:var(--g1);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.qty{display:flex;align-items:center;gap:8px}.qb{width:30px;height:30px;border-radius:50%;background:var(--pbg);border:2px solid var(--border2);color:var(--g1);font-size:18px;font-weight:900;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s}.qb.plus{background:var(--grad);color:#fff;border-color:transparent}.qb:active{transform:scale(.87)}.qv{font-family:Raleway,sans-serif;font-size:15px;font-weight:900;color:var(--g1);min-width:18px;text-align:center}.tag{background:var(--pbg);border:1.5px solid var(--border2);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:800;color:var(--g1)}.itag{display:inline-flex;align-items:center;gap:3px;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:800;letter-spacing:.2px;line-height:1.5;white-space:nowrap;animation:tagIn .25s cubic-bezier(.34,1.56,.64,1) both}.itag.hit{background:var(--grad);color:#fff;box-shadow:0 2px 8px #6a30934d}.itag.top{background:linear-gradient(135deg,#ff8c00,#ff4d00);color:#fff;box-shadow:0 2px 8px #ff640047}.totals-block{padding:16px 20px 0}.total-row{display:flex;justify-content:space-between;padding:5px 0}.total-lbl{font-size:14px;font-weight:700;color:var(--text2)}.total-val{font-size:14px;font-weight:800}.total-divider{height:1.5px;background:var(--border);margin:10px 0}.total-main{display:flex;justify-content:space-between}.total-main .lbl{font-family:Raleway,sans-serif;font-size:14px;font-weight:900}.total-main .val{font-family:Raleway,sans-serif;font-size:22px;font-weight:900}.acts{padding:16px 20px 32px;display:flex;flex-direction:column;gap:10px}.info-notice{margin:16px 20px 0;background:#edf4ff;border:1.5px solid #93c5fd;border-radius:14px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start}.info-notice-icon{font-size:20px;flex-shrink:0;margin-top:1px}.info-notice-title{font-size:13px;font-weight:800;color:#1d4ed8;margin-bottom:3px}.info-notice-desc{font-size:12px;font-weight:600;color:#1e3a8a;line-height:1.55}.tdiv{height:1.5px;background:var(--border);margin:10px 0}.sum-card{margin:0 20px 18px;background:var(--pbg);border:1.5px solid var(--border);border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center}.sum-lbl{font-size:12px;font-weight:800;color:var(--muted);margin-bottom:4px}.sum-amt{font-family:Raleway,sans-serif;font-size:24px;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.qr-box{margin:4px 20px 16px;background:var(--pbg);border:1.5px solid var(--border);border-radius:16px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px}.qr-inner{background:#fff;border-radius:12px;padding:14px;width:150px;height:150px;display:flex;align-items:center;justify-content:center}.qr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2.5px;width:100%}.qr-c{aspect-ratio:1;border-radius:1px}
