[hidden]{display:none!important}
.profile-avatar{position:relative;display:inline-grid;place-items:center;overflow:hidden;flex-shrink:0;width:27px;height:27px;border-radius:50%;border:1px solid #aa8bff40;background:linear-gradient(130deg,#493561,#241c35);color:#ddcdff;font:600 10px var(--sans);vertical-align:middle}
.profile-avatar img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;margin:0!important;border-radius:50%!important}
.profile-avatar.avatar-large{width:82px;height:82px;font-size:25px;border:2px solid #b59bff66;box-shadow:0 8px 30px #12092050}
.profile-photo-editor{display:flex;align-items:center;gap:20px;padding:20px 0 12px}.profile-photo-editor>div:last-child{display:grid;gap:8px;justify-items:start}.profile-photo-editor small{font-size:10px;color:var(--muted)}.profile-photo-editor .shop-link{font-size:11px}#profile-name{font-size:18px;font-weight:600;margin-bottom:3px}.chat-author{display:flex;align-items:center;gap:8px;margin-bottom:7px}.chat-author .profile-avatar{width:25px;height:25px}.chat-message .chat-author b{margin:0}.message-system .chat-author{justify-content:center}
.shop-launcher{position:fixed;right:26px;bottom:24px;z-index:40;display:flex;gap:9px;padding:7px;border:1px solid var(--line);border-radius:18px;background:rgba(24,20,33,.94);backdrop-filter:blur(16px);box-shadow:0 16px 60px #0006}
.shop-launcher button{display:flex;align-items:center;gap:10px;border:0;border-radius:12px;padding:13px 17px;cursor:pointer;transition:transform .2s,background .2s;font-size:14px}
.launcher-chat{background:transparent}.launcher-chat:hover{background:#ffffff0b}.launcher-cart{background:var(--purple);color:#1a102d}.shop-launcher button:hover{transform:translateY(-2px)}.shop-launcher b{font-size:11px;min-width:22px;min-height:22px;padding:1px 5px;border-radius:7px;display:grid;place-items:center;background:#130b2622}.launcher-chat b{background:var(--teal);color:#0e3430}
.shop-dialog{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 36px);padding:28px;border:1px solid #bda4ff30;border-radius:24px;background:linear-gradient(150deg,#211a30,#15111f);color:var(--text);box-shadow:0 30px 100px #0009;overflow:auto;scrollbar-width:thin;scrollbar-color:#6c548e transparent}
.shop-dialog::backdrop{background:#08050fba;backdrop-filter:blur(7px)}.shop-dialog h2{font:600 33px/1.15 var(--display);letter-spacing:-1px;margin:22px 0 12px}.shop-dialog h2 em{font-family:var(--serif);font-weight:400;color:var(--purple)}
.shop-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-dialog-head .eyebrow{font-size:9px;letter-spacing:1.5px}.dialog-close{border:1px solid var(--line);border-radius:50%;width:34px;height:34px;flex-shrink:0;background:#ffffff04;color:var(--muted);font-size:24px;line-height:1;cursor:pointer;transition:.2s}.dialog-close:hover{background:#aa8bff22;color:white;transform:rotate(6deg)}
.shop-muted{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 22px}.shop-dialog label{display:grid;gap:7px;font-size:12px;margin:15px 0;color:#ded5ef}.shop-dialog label small{display:inline;color:var(--muted)}.shop-dialog input,.shop-dialog textarea{font:14px var(--sans);color:var(--text);min-width:0;max-width:100%;width:100%;background:#0d09144d;border:1px solid var(--line);border-radius:10px;padding:12px 13px;outline:none;transition:border-color .2s,box-shadow .2s}.shop-dialog input:focus,.shop-dialog textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #aa8bff12}.shop-dialog textarea{resize:vertical}.shop-dialog input::placeholder,.shop-dialog textarea::placeholder{color:#8f819f}.shop-dialog button{cursor:pointer}.shop-dialog button:disabled{opacity:.45;cursor:wait}
.shop-primary{border:0;border-radius:11px;padding:14px 17px;background:linear-gradient(120deg,#b899ff,#9470f0);color:#1c1031;font-weight:700;transition:transform .2s,box-shadow .2s}.shop-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #9b71ff25}.shop-secondary{padding:10px 15px;border:1px solid var(--line);border-radius:10px;background:#ffffff05;font-size:12px;transition:background .2s}.shop-secondary:hover{background:#aa8bff15}.shop-link{border:0;background:transparent;font-size:11px;padding:0;color:var(--purple);text-align:left}.shop-link:hover{text-decoration:underline}.form-feedback{font-size:12px;line-height:1.6;color:var(--teal);overflow-wrap:anywhere;min-height:0}.form-feedback:empty{margin:0}.account-modes{display:flex;gap:5px;padding:4px;background:#0d091455;border-radius:12px;margin:23px 0}.account-modes button{flex:1;padding:10px 5px;background:transparent;border:0;border-radius:8px;font-size:12px;color:var(--muted)}.account-modes button.selected{background:#aa8bff20;color:var(--text)}#auth-submit,#checkout-button,#profile-orders{width:100%;margin-top:12px}.test-account-note,.checkout-note{display:block;margin:14px 0 0;color:var(--muted);font-size:10px;line-height:1.7}#logout-button{width:100%;margin-top:12px}
.cart-lines{margin:24px 0;border-top:1px solid var(--line)}.cart-line{display:flex;gap:12px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.cart-item-icon{width:54px;height:62px;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;background:radial-gradient(circle,#7c4bc51c,transparent);color:var(--purple);font-size:28px;flex-shrink:0}.cart-item-icon img{width:90%;height:90%;object-fit:contain}.cart-item-copy{min-width:0;flex:1;display:grid;gap:2px}.cart-item-copy b{font-size:13px;overflow-wrap:anywhere}.cart-item-copy small{font-size:11px;color:var(--muted)}.cart-item-copy button{margin-top:5px}.quantity-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;overflow:hidden}.quantity-control button{border:0;background:#ffffff05;width:28px;height:34px;flex-shrink:0}.quantity-control input{border:0;padding:4px 0;text-align:center;border-radius:0;width:40px;font-size:12px;appearance:textfield}.quantity-control input::-webkit-inner-spin-button{appearance:none}.quantity-control input:focus{box-shadow:none}.coupon-row{display:flex;gap:8px}.coupon-row input{flex:1}.coupon-row button{flex-shrink:0}.cart-totals{border-top:1px solid var(--line);padding-top:14px;margin-top:23px}.cart-totals>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:5px 0;color:var(--muted)}.cart-totals .cart-total{font-size:17px;color:var(--text);padding-top:13px}.cart-total b{color:var(--purple)}.shop-empty{text-align:center;padding:32px 10px;color:var(--muted)}.shop-empty>span{display:block;font-size:36px;color:var(--purple);margin-bottom:12px}.shop-empty b{font-size:14px;color:var(--text);font-weight:500}.shop-empty p{font-size:12px;max-width:300px;margin:10px auto}
.chat-dialog{width:min(660px,calc(100% - 32px));padding:25px}.chat-dialog h2{font-size:26px;margin:10px 0 2px}.chat-dialog .shop-dialog-head{align-items:flex-start}.chat-order-list{margin-top:25px}.order-list-entry{position:relative;display:grid;width:100%;text-align:left;gap:6px;border:1px solid var(--line);padding:18px 42px 18px 18px;border-radius:14px;margin:10px 0;background:#ffffff03;transition:.2s}.order-list-entry:hover{background:#aa8bff0e;border-color:#aa8bff50;transform:translateY(-2px)}.order-list-entry b{font-size:14px}.order-list-entry small{font-size:10px;color:var(--muted)}.order-badge{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.order-badge.is-open{color:var(--teal)}.order-arrow{position:absolute;right:20px;top:50%;color:var(--purple)}.chat-order-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-top:20px;padding-bottom:12px;font-size:10px;color:var(--teal)}.chat-order-summary{font-size:11px;color:var(--muted);padding:12px 0;overflow-wrap:anywhere}.chat-messages{height:clamp(200px,43dvh,420px);overflow:auto;overscroll-behavior:contain;padding:8px 4px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:#6c548e transparent}.chat-message{max-width:86%;width:fit-content;padding:12px 15px;border:1px solid var(--line);border-radius:15px;background:#ffffff05;overflow-wrap:anywhere;flex-shrink:0}.chat-message b{display:block;font-size:10px;color:var(--teal)}.chat-message p{font-size:13px;line-height:1.6;margin:5px 0;white-space:pre-wrap}.chat-message time{display:block;text-align:right;font-size:9px;color:var(--muted)}.chat-message a{font-size:11px;color:var(--purple);display:block}.chat-message img{display:block;max-width:100%;max-height:220px;border-radius:8px;margin:6px 0;object-fit:contain}.message-customer{align-self:flex-end;background:#9b72f51a;border-color:#b79aff24}.message-customer b{color:var(--purple)}.message-system{align-self:center;text-align:center;max-width:95%;border:0;background:none;padding:5px 8px}.message-system b{font-size:9px;color:var(--muted)}.message-system p{font-size:11px;color:var(--muted)}.message-system time{text-align:center;font-size:8px}.chat-compose{display:flex;gap:8px;align-items:stretch;padding-top:12px;border-top:1px solid var(--line);margin-top:10px}.chat-compose textarea{resize:none;font-size:13px}.chat-compose button{width:48px;font-size:24px;padding:6px;flex-shrink:0}.chat-footnote{display:block;font-size:9px;text-align:center;color:var(--muted);margin:10px 0 0}.shop-toast{position:fixed;left:50%;bottom:105px;max-width:calc(100% - 30px);transform:translate(-50%,12px);padding:11px 19px;border:1px solid #aa8bff50;border-radius:12px;z-index:1000;background:#211a30;box-shadow:0 8px 40px #0006;opacity:0;pointer-events:none;transition:.2s;font-size:13px;text-align:center}.shop-toast.show{opacity:1;transform:translate(-50%,0)}
.product-buy{cursor:pointer;width:100%;font-family:var(--sans)}.product-buy:disabled{opacity:.4;cursor:default}.nav button{cursor:pointer;font:inherit}
@media(max-width:640px){.shop-launcher{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));justify-content:center;padding:5px;border-radius:15px}.shop-launcher button{justify-content:center;flex:1;padding:11px 9px;font-size:12px}.shop-dialog{width:calc(100% - 16px);padding:21px;max-height:calc(100dvh - 16px);border-radius:19px}.shop-dialog h2{font-size:29px}.cart-line{gap:9px}.cart-item-icon{width:43px;height:53px}.cart-item-copy b{font-size:12px}.quantity-control button{width:24px}.quantity-control input{width:32px}.chat-dialog{padding:18px}.chat-dialog h2{font-size:22px}.chat-messages{height:clamp(160px,44dvh,430px)}.chat-message{max-width:91%}.footer{padding-bottom:105px}.product-card .product-buy{grid-column:1/3;grid-row:3;margin-top:10px}.product-card{grid-template-rows:auto 1fr auto}.shop-toast{bottom:90px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.shop-launcher button,.shop-primary,.dialog-close,.order-list-entry,.shop-toast{transition:none}}
#discord-login{width:100%;margin-top:12px}
.message-payment{align-self:flex-start}
.message-payment>p{font-family:monospace;user-select:all}
.message-payment>small{margin-inline-start:8px;color:var(--teal);font-size:11px}
.chat-payment-details{margin:12px 0 8px;padding:12px;border-left:3px solid var(--purple);border-radius:8px;background:#aa8bff0e}
.chat-payment-details dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:8px 0;font-size:12px}
.chat-payment-details dt{font-weight:700}
.chat-payment-details dd{margin:0}
.chat-payment-details small{font-size:10px;color:var(--muted)}
.store-request{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding:16px 20px;border:1px solid var(--line);border-radius:12px;background:#aa8bff0a}
.store-request p{margin:4px 0 0;color:var(--muted);font-size:13px}
#request-submit{width:100%;margin-top:12px}
.chat-compose #chat-add-image{font-size:18px}
.chat-attachment{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font-size:12px;color:var(--muted)}
.chat-attachment span{min-width:0;overflow-wrap:anywhere}
.chat-attachment button{flex-shrink:0}
.store-reviews{margin-top:42px;padding-top:24px;border-top:1px solid var(--line)}
.store-reviews h2{margin:10px 0 6px}
#open-review{margin-bottom:14px;cursor:pointer}
.store-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:12px}
.store-review-card{margin:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#aa8bff0a}
.store-review-card strong{color:var(--purple);letter-spacing:2px}
.store-review-card p{margin:8px 0 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}
.store-review-card small{display:block;margin-top:8px;color:var(--muted);overflow-wrap:anywhere}
.delivery-review{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#aa8bff0a}
.delivery-review h3{margin:0 0 10px;font-size:16px}
.delivery-review select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#211a30;color:var(--text)}
.delivery-review .shop-muted{margin-bottom:12px}
.chat-alert-settings{display:grid;justify-items:start;gap:4px;margin-top:12px}.chat-alert-settings p{margin:0}.order-unread{font-size:11px;font-weight:700;color:var(--teal)}
#support-form .shop-primary { width: 100%; margin-top: 12px; }
@media (max-width: 420px) {
  .shop-launcher { gap: 4px; }
  .shop-launcher button { gap: 4px; padding-inline: 5px; white-space: nowrap; }
}
