[data-shop-wallet]:empty { display:none; }
.commerce-wallet { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:24px; align-items:center; padding:10px 20px; margin-block:0 16px; background:#faf8fb; border:1px solid #ded5e1; border-radius:8px; color:#45344a; }
.commerce-wallet-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.commerce-wallet-row>div { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.commerce-money { display:inline-flex; gap:7px; align-items:center; vertical-align:middle; }
.commerce-money img { object-fit:cover; border-radius:50%; width:26px; height:26px; }
.commerce-wallet-row strong { font-size:24px; }
.commerce-wallet button,.commerce-wallet a,.commerce-dialog button,.shop-buy { font:inherit; cursor:pointer; border:1px solid #ccd3d9; border-radius:5px; padding:9px 16px; background:#fff; color:#76516e; text-decoration:none; }
.shop-buy,.commerce-dialog .commerce-primary { background:#365b75; color:white; border-color:#76516e; }
.shop-buy { margin-top:16px; width:100%; font-weight:600; }
.shop-buy:disabled,.commerce-dialog button:disabled { opacity:.6; cursor:default; }
.commerce-dialog { width:min(560px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); box-sizing:border-box; border:1px solid #d4d8dc; border-radius:12px; padding:30px; color:#344352; background:#fafafa; }
.commerce-dialog::backdrop { background:rgba(20,28,38,.55); }
.commerce-dialog h2 { margin:0 0 14px; font-size:25px; }
.commerce-dialog p { line-height:1.6; }
.commerce-dialog label { display:grid; gap:8px; margin:18px 0; }
.commerce-dialog input,.commerce-dialog select { width:100%; box-sizing:border-box; border:1px solid #bbc7d0; border-radius:5px; padding:12px; font:inherit; background:white; color:inherit; }
.commerce-total,.commerce-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:24px; }
.commerce-feedback { color:#684c29; min-height:24px; }
.commerce-wallet .commerce-history-trigger { display:flex; align-items:center; gap:10px; min-height:44px; padding:8px 0 8px 20px; border:0; border-inline-start:1px solid #ded5e1; border-radius:0; background:transparent; text-align:start; color:#76516e; }
.commerce-history-trigger:hover { color:#365d7c; }
.commerce-history-trigger svg { width:18px; height:18px; margin-inline-start:auto; }
.commerce-orders-count { font-size:12px; color:#746b79; }
.commerce-history-trigger:disabled { cursor:default; }
html[dir="rtl"] .commerce-history-trigger svg { transform:scaleX(-1); }
.commerce-orders>p { padding-block:20px; font-size:14px; color:#746b79; }
.commerce-wallet-feedback:empty { display:none; }
.commerce-wallet-feedback { position:fixed; z-index:100; inset-inline-end:16px; bottom:16px; display:flex; align-items:start; gap:16px; width:max-content; max-width:min(460px,calc(100vw - 32px)); box-sizing:border-box; margin:0; padding:14px 16px; border:1px solid #d8adb4; border-radius:6px; background:#fff7f8; box-shadow:0 4px 20px #45344a20; font-size:14px; line-height:1.5; color:#953e4c; }
.commerce-wallet-feedback button { flex-shrink:0; border:0; background:transparent; padding:0 4px; font-size:24px; line-height:1; color:inherit; }
.commerce-wallet-row .ui-placeholder { width:70px; }
.commerce-wallet button:focus-visible,.commerce-wallet a:focus-visible { outline:2px solid #76516e; outline-offset:4px; }
.commerce-wallet-row strong { font-variant-numeric:tabular-nums; }
.commerce-orders article { display:flex; gap:16px; justify-content:space-between; border-bottom:1px solid #dedede; padding:16px 0; overflow-wrap:anywhere; }
.commerce-orders small,.commerce-status { display:block; font-size:12px; margin-top:6px; }
.commerce-status.pending { color:#856122; }.commerce-status.delivered { color:#38684e; }.commerce-status.refunded { color:#755271; }
@media(max-width:550px) { .commerce-dialog { padding:20px; }}

[data-shop-wallet="full"] { grid-template-columns:minmax(0,1fr); }
[data-shop-wallet="full"] .commerce-history-trigger { border-inline-start:0; border-top:1px solid #ded5e1; margin-top:14px; padding:12px 0 0; }
