[hidden]{display:none!important}.topbar nav{overflow-x:auto}.topbar .login-btn{max-width:270px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-message{text-align:center;padding:80px 20px;color:#bad4f5}.wallet-bar,.shop-panel,.empty-panel{background:#0d3270;border:3px solid #000;border-radius:24px;box-shadow:0 5px #000;padding:28px;margin-bottom:26px}.wallet-bar{display:flex;justify-content:space-between;align-items:center;gap:24px}.wallet-bar strong{display:block;font-size:32px}.wallet-bar small,.product-price small{font-size:15px;color:#bad4f5}.wallet-actions{display:flex;align-items:center;gap:20px}.bridge-state{font-size:14px;color:#a9bedb;margin:22px 0}.bridge-state.online{color:#9ee7c0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:3px solid #000;border-radius:23px;box-shadow:0 5px #000;overflow:hidden;background:#103c81;display:flex;flex-direction:column}.product-image{background:#08214b;aspect-ratio:4/3;display:flex;justify-content:center;border-bottom:3px solid #000}.product-image img{width:100%;height:100%;object-fit:contain}.product-copy{padding:24px;display:flex;flex-direction:column;flex:1}.product-copy h2{font-size:23px;margin:10px 0}.product-copy p{color:#b8ceef;white-space:pre-wrap;line-height:1.65;flex:1;overflow-wrap:anywhere}.product-price{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:22px 0}.product-price strong{font-size:26px;color:#ffcf38}.product-price>span{color:#b8ceef;font-size:12px}.product-copy button{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.empty-panel{text-align:center;padding:50px 25px}.empty-panel p{margin:16px 0 24px;color:#b8ceef}.empty-panel .big-icon{display:block;color:#ffb53e}.shop-panel h2{font-size:23px;margin-bottom:15px}.shop-panel h3{margin:24px 0 12px}.shop-panel p{color:#bdd2ee;line-height:1.7;margin:10px 0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.panel-head h2{margin:0}.notice{color:#adcbed!important;font-size:13px!important;line-height:1.65!important}.table-scroll{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}th{color:#91baf0;font-size:12px;text-transform:uppercase}td,th{padding:17px 12px;border-bottom:1px solid #32619b;vertical-align:top}td small,details small{display:block;color:#a8c3e7;font-size:12px;margin-top:5px}.order-id{font-size:10px;word-break:break-all}.status{display:inline-block;background:#1e579e;padding:5px 10px;border-radius:8px;white-space:nowrap}.status.delivered{background:#146345;color:#b4ffda}.status.review{background:#893b26;color:#ffd4bd}.status.refunded{background:#57531e;color:#fff3b0}.empty-text{padding:20px 0}.small-btn{font-size:12px;padding:8px 14px;white-space:nowrap}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.admin-tabs a{background:#0b4db2;padding:10px 20px;border-radius:12px;border:2px solid #000;box-shadow:0 3px #000}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-products article{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid #32619b}.admin-products article img{height:65px;width:75px;object-fit:contain;border-radius:10px;background:#092755}.admin-products article div{flex:1;min-width:0}.admin-products small{display:block;color:#a9c4e9;font-size:12px;margin-top:5px}.stack-form{display:grid;gap:18px;margin:24px 0 12px}.stack-form label{font-size:14px;color:#d3e2f8;display:block}.stack-form input:not([type=checkbox]),.stack-form select,.stack-form textarea{display:block;width:100%;margin-top:7px;background:#0852b2;border:2px solid #176aca;border-radius:12px;padding:12px 14px;color:#fff;font:inherit;outline-offset:3px}.stack-form input::placeholder{color:#a3c2ed}.stack-form textarea{min-height:90px;resize:vertical}.stack-form input[type=file]{font-size:12px}.stack-form input[type=checkbox]{width:20px;height:20px;accent-color:#ffc619;flex-shrink:0}.stack-form .check-label{display:flex;gap:12px;align-items:flex-start}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.purchase-total{font-size:20px;color:#ffc619!important}.code-list>div{padding:15px 0;border-bottom:1px solid #32619b}.code-list small{display:block;color:#a9c4e9}.code-list button{margin-top:8px}.mono{font-family:monospace}details{margin-top:20px}summary{cursor:pointer;color:#ffce38}details p{border-bottom:1px solid #32619b;padding-bottom:12px}#detail-modal{max-height:88vh;width:min(640px,calc(100vw - 32px));overflow-y:auto;padding:45px 30px 30px}#detail-modal h2{font-size:27px;margin:15px 0}#detail-modal #detail-content>img{max-height:50vh;object-fit:contain}#detail-modal .close{top:12px;right:18px}#detail-modal p{color:#bdd2ee;line-height:1.6}.stack-form .btn{width:100%}#toast{display:none!important}.topup-list{display:grid;gap:16px}.topup-card{display:grid;grid-template-columns:1fr 140px auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #32619b}.topup-card img{width:140px;height:180px;object-fit:contain;background:#fff;border-radius:12px}.topup-actions{display:flex;flex-direction:column;gap:8px}
.pay-screen{max-width:980px;margin:28px auto 40px;color:#d7deea}.pay-tabs{display:flex;justify-content:center;gap:6px;width:fit-content;margin:0 auto 28px;padding:6px;background:#2c3344;border-radius:18px}.pay-tabs button{border:0;background:transparent;color:#c5ccd8;font:inherit;font-weight:700;padding:12px 22px;border-radius:14px;cursor:pointer}.pay-tabs button.active{background:#3b82f6;color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.35)}.pay-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:stretch}.pay-qr,.pay-info,.pay-sheet{background:#fff;color:#1f2937;border-radius:26px;box-shadow:0 16px 40px rgba(0,0,0,.18)}.pay-qr{padding:18px;display:flex;align-items:center;justify-content:center}.pay-qr img{width:100%;height:auto;border-radius:18px;display:block}.pay-info{padding:28px 26px 22px}.pay-info h2,.pay-sheet h2{margin:0 0 18px;font-size:22px;color:#111827}.pay-bank{display:flex;gap:14px;align-items:center;background:#eef6ff;border-radius:16px;padding:14px 16px}.pay-mark{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#e11d78;color:#fff;font-weight:800;flex:none}.pay-bank strong{display:block;color:#111827}.pay-bank small{display:block;color:#4b5563;margin-top:2px}.pay-warn{color:#e11d48;font-size:13px;line-height:1.55;margin:16px 0}.pay-label{font-weight:700;margin:8px 0}.pay-amount{display:block;font-weight:700;margin-bottom:14px}.pay-amount input{display:block;width:100%;margin-top:8px;border:1px solid #d7deea;border-radius:12px;padding:12px 14px;font:inherit;color:#111827;background:#f8fafc}.pay-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:148px;border:1.5px dashed #cbd5e1;border-radius:16px;background:#f8fafc;text-align:center;cursor:pointer;padding:18px}.pay-drop input{position:absolute;width:1px;height:1px;opacity:0}.pay-drop-icon{width:42px;height:42px;border-radius:12px;background:#e5e7eb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='m21 16-5-5-9 9'/%3E%3C/svg%3E") center/24px no-repeat}.pay-drop-name{font-weight:700;color:#111827}.pay-drop-hint{color:#6b7280;font-size:13px}.pay-submit{width:100%;margin-top:18px;border:0;border-radius:14px;background:#3b82f6;color:#fff;font:inherit;font-weight:800;padding:14px 18px;cursor:pointer}.pay-submit:disabled{opacity:.6;cursor:wait}.pay-note{color:#6b7280;font-size:13px;text-align:center;margin:12px 0 0}.pay-sheet{padding:28px}.pay-sheet p,.pay-sheet h3{color:#374151}
.slip-entry{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;padding:22px 24px;border-radius:20px;background:#ffc619;color:#10224f;border:3px solid #000;box-shadow:0 5px #000;font-weight:800}.slip-entry span{font-weight:700}.slip-back{margin:-10px 0 18px}.slip-review{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(280px,1fr);gap:28px;align-items:center}.slip-review img{width:100%;max-height:720px;object-fit:contain;background:#fff;border-radius:16px}.slip-copy h2{font-size:40px;margin:8px 0}.slip-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.slip-actions .btn{min-width:180px}.btn.danger{background:#9f2433;color:#fff;border-color:#5c1018}.admin-products article .small-btn{margin-left:8px}
@media(max-width:1050px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{gap:10px}.topbar nav a{padding:8px 10px}.topbar .login-btn{font-size:10px;max-width:230px}.admin-products article{flex-wrap:wrap}.wallet-actions{flex-direction:column;align-items:flex-end;gap:12px}}
@media(max-width:700px){.product-grid,.admin-columns,.topup-card,.pay-grid,.slip-review{grid-template-columns:1fr}.pay-tabs{width:100%;flex-wrap:wrap}.pay-tabs button{flex:1}.wallet-bar{align-items:flex-start;flex-direction:column;padding:24px}.wallet-actions{align-items:flex-start}.wallet-bar strong{font-size:28px}.shop-panel{padding:22px 16px;border-radius:20px}.panel-head{gap:10px}.shop-panel h2{font-size:20px}.form-row{gap:12px}.product-copy{padding:22px}#detail-modal{padding:45px 22px 24px}.topbar nav{order:3}.admin-products article img{width:55px}td,th{padding:12px 8px}}
