/* Functional additions only. The visual identity comes from /css/app-B6hFJFWX.29937.css. */
[hidden]{display:none!important}
.store-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);z-index:60;max-width:calc(100% - 32px);border:1px solid var(--border);background:var(--card);color:var(--foreground);box-shadow:0 12px 40px rgb(0 0 0 / 45%);border-radius:8px;padding:12px 18px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;text-align:center}
.store-toast.visible{opacity:1;transform:translate(-50%,0)}
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);z-index:60;max-width:calc(100% - 32px);border:1px solid var(--border);background:var(--card);color:var(--foreground);box-shadow:0 12px 40px rgb(0 0 0 / 45%);border-radius:8px;padding:12px 18px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;text-align:center}
.toast.visible{opacity:1;transform:translate(-50%,0)}
.spinner{height:20px;width:20px;border:2px solid rgb(255 255 255 / 12%);border-top-color:var(--primary);border-radius:50%;animation:hardmc-spin .8s linear infinite}
@keyframes hardmc-spin{to{transform:rotate(360deg)}}
.loading-state,.empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:12px;border:1px dashed var(--border);border-radius:8px;padding:48px 24px;text-align:center;color:var(--muted-foreground)}
.empty-state svg{width:36px;height:36px;color:var(--primary)}
.empty-state h2{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--foreground)}
.notice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:8px;background:color-mix(in oklab,var(--card) 72%,transparent);padding:14px 16px;font-size:13px;color:var(--muted-foreground);margin-bottom:18px}
.notice svg{width:18px;height:18px;flex-shrink:0;color:var(--primary);margin-top:1px}
.notice.error{border-color:color-mix(in oklab,var(--destructive,#f87171) 40%,transparent);color:#fca5a5}
.notice.success{border-color:color-mix(in oklab,#79d6a3 40%,transparent);color:#79d6a3}
.notice a{color:var(--foreground);text-decoration:underline;text-underline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;border:1px solid transparent;min-height:40px;padding:10px 16px;font-size:14px;font-weight:600;line-height:1.2;transition:opacity .15s,background .15s}
.btn svg{width:16px;height:16px}
.btn:disabled{cursor:not-allowed;opacity:.55}
.btn-primary{background:var(--primary);color:var(--primary-foreground)}
.btn-primary:hover:not(:disabled){opacity:.9}
.btn-secondary{border-color:var(--border);background:color-mix(in oklab,var(--secondary) 60%,transparent);color:var(--foreground)}
.btn-secondary:hover:not(:disabled){background:var(--secondary)}
.btn-block{width:100%}
.qty-control{display:inline-flex;align-items:center;height:40px;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--background)}
.qty-control button{width:30px;height:100%;border:0;background:transparent;color:var(--muted-foreground);font-size:16px}
.qty-control button:hover{color:var(--foreground);background:var(--secondary)}
.qty-control input{width:34px;height:100%;border:0;background:transparent;color:var(--foreground);text-align:center;font-size:13px;-moz-appearance:textfield}
.qty-control input::-webkit-inner-spin-button{display:none}
.form-message{min-height:20px;font-size:13px;color:var(--muted-foreground)}
.form-message.error{color:#fca5a5}
.status-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in oklab,#fbbf24 30%,transparent);background:color-mix(in oklab,#fbbf24 8%,transparent);color:#fcd34d;padding:6px 11px;border-radius:999px;font-size:11px;white-space:nowrap}
.status-pill.approved{color:#79d6a3;border-color:color-mix(in oklab,#79d6a3 30%,transparent);background:color-mix(in oklab,#79d6a3 8%,transparent)}
.status-pill:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.pix-code{width:100%;height:84px;resize:none;border:1px solid var(--border);border-radius:6px;background:var(--background);color:var(--muted-foreground);padding:12px;font-family:var(--font-mono,monospace);font-size:11px;margin:10px 0 12px;overflow-wrap:anywhere}
.cart-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto auto;gap:16px;align-items:center;border:1px solid var(--border);background:var(--card);border-radius:8px;padding:18px}
.cart-thumb{height:56px;width:64px;display:grid;place-items:center;background:var(--secondary);border-radius:6px;color:var(--primary)}
.cart-thumb img{width:58px;height:24px;object-fit:contain;image-rendering:pixelated}
.cart-thumb svg{width:26px;height:26px}
.cart-row h3{font-family:var(--font-display);font-size:16px;font-weight:600}
.cart-row small{font-size:11px;color:var(--muted-foreground)}
.cart-row-price{text-align:right;font-weight:600;white-space:nowrap}
.remove-item{display:block;margin:4px 0 0 auto;border:0;background:none;color:var(--muted-foreground);font-size:11px;padding:2px}
.remove-item:hover{color:#fca5a5}
.summary-item{display:flex;justify-content:space-between;gap:16px;font-size:13px}
.summary-item strong{display:block;font-weight:600}
.summary-item small{display:block;color:var(--muted-foreground);font-size:11px;margin-top:3px}
.summary-item>span:last-child{white-space:nowrap}
.main-nav.open{display:flex}
@media(max-width:767px){.main-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:8px;background:var(--card);border-bottom:1px solid var(--border);padding:16px 24px}.cart-row{grid-template-columns:48px minmax(0,1fr);gap:12px}.cart-row .qty-control{grid-column:2}.cart-row-price{grid-column:2;display:flex;justify-content:space-between;align-items:center;text-align:left}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none}.toast,.store-toast{transition:none}}
