[hidden]{display:none!important}
.shop-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 20px;color:#a08060;font-size:12px}
.shop-breadcrumb a{color:#a95b29;text-decoration:none}
.shop-page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:23px}
.shop-page-heading h1{margin:0;color:#6a3c18;font-size:25px;line-height:1.35;font-weight:800;letter-spacing:-.5px}
.shop-page-heading p,.shop-muted{margin:7px 0 0;color:#97775a;font-size:12px;line-height:1.75}
.shop-state{grid-column:1/-1;padding:35px 22px;text-align:center;border:1px solid #efddc3;border-radius:11px;background:#fffcf6;color:#8e6d50}
.shop-state>.site-icon{width:28px;height:28px;margin-bottom:13px;color:#d59760}
.shop-state h2{margin:0 0 9px;font-size:16px;font-weight:750;color:#80542f;line-height:1.5}
.shop-state p{max-width:520px;margin:0 auto 18px;font-size:12px;line-height:1.8}
.shop-state .btn{font-size:12px;padding:9px 18px}
.shop-spinner{display:inline-block;width:25px;height:25px;margin:0 0 16px;border:2px solid #f3dcc0;border-top-color:#bf6b2b;border-radius:50%;animation:shop-spin .75s linear infinite}
@keyframes shop-spin{to{transform:rotate(360deg)}}
.shop-notice{padding:12px 14px;margin:14px 0;border:1px solid #efcbbb;border-radius:8px;background:#fff2eb;color:#a35738;font-size:12px;line-height:1.75;overflow-wrap:anywhere}
.shop-notice[data-state=success]{background:#f2f8eb;border-color:#cddfbe;color:#58713e}
.member-field label,.history-filters label>span{display:block;margin-bottom:7px;color:#8c613d;font-size:11px;font-weight:700}
.member-field input,.member-field select,.history-filters input,.history-filters select{display:block;width:100%;height:41px;padding:10px 12px;border:1px solid #e8d3b7;border-radius:7px;background:#fffdf9;color:#745032;font:12px/1.5 'Inter',sans-serif;min-width:0}
.member-field input::placeholder{color:#b49a80}
.member-field input:focus,.member-field select:focus,.history-filters input:focus,.history-filters select:focus{outline:2px solid #e3ae77;outline-offset:1px;border-color:#c7864c}
.shop-pagination{display:flex;justify-content:center;align-items:center;gap:15px;margin:24px 0 8px;font-size:12px;color:#9c7753}
.shop-pagination:empty{display:none}
.shop-pagination button{border:1px solid #e7caa3;border-radius:7px;background:#fff7e9;color:#985c2d;padding:9px 14px;font:650 11px 'Inter',sans-serif}
.shop-pagination button:disabled{opacity:.4;cursor:default}
.account-image-empty{display:grid;place-items:center;min-height:145px;width:100%;background:#f8eddd;color:#ac8968;font-size:12px}
.account-card .btn-account-buy:disabled{opacity:.5;cursor:default}
.account-card button.account-thumb-wrap{border:0;padding:0;width:100%}
.account-card .account-thumb-wrap:disabled{cursor:default}
.member-tabs{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #ecdbc3}
.member-tabs a{padding:10px 15px;border:1px solid #ebd3b2;border-radius:8px;background:#fffaf0;color:#91623b;font-size:12px;font-weight:650;text-decoration:none}
.member-tabs a[aria-current=page]{background:#ffead0;border-color:#eebc84;color:#a34e1d}
#memberGate:not([hidden]){margin-bottom:22px}
.member-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(275px,.85fr);align-items:start;gap:22px}
.member-panel{padding:25px;border:1px solid #ecdbc1;border-radius:12px;background:#fffdf8;min-width:0}
.member-panel>h2,.shop-row h2{margin:0 0 22px;font-size:17px;font-weight:750;color:#78502b;line-height:1.4}
.member-panel fieldset{min-width:0}
.member-panel fieldset:disabled{opacity:.65}
.member-field{margin-bottom:17px}
.member-field input[readonly]{background:#fbf3e6;color:#a08160}
.member-panel .btn{font-size:12px;padding:11px 17px}
.wallet-balance{display:grid;gap:10px;margin-bottom:27px;padding:20px;border:1px solid #efd0a6;border-radius:10px;background:#fff1dc}
.wallet-balance>span{color:#a47547;font-size:11px;font-weight:650}
.wallet-balance strong{color:#a65323;font-size:29px;line-height:1.2;font-weight:800}
.wallet-balance a{font-size:11px;color:#a6682f;text-decoration:none}
.member-notes{margin:0 0 22px;padding-left:17px;color:#a08264;font-size:12px;line-height:1.85}
.member-notes li+li{margin-top:9px}
.amount-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px}
.amount-shortcuts button{border:1px solid #edcfaa;border-radius:7px;background:#fff4e3;padding:8px 11px;color:#a06937;font:650 11px 'Inter',sans-serif}
.history-filters{display:flex;align-items:flex-end;gap:13px;margin-bottom:22px}
.history-filters label{flex:1;min-width:0;margin:0}
.shop-table-scroll{overflow:auto;border:1px solid #eee0cc;border-radius:9px}
.shop-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px;color:#8f6c4c}
.shop-table th{background:#fff1de;padding:13px;text-align:left;color:#94663d;font-size:10px;font-weight:750}
.shop-table td{padding:15px 13px;border-top:1px solid #f1e5d5}
.shop-table td:nth-child(2){white-space:normal;min-width:150px}
.shop-table a{color:#ae612d;font-weight:650;text-decoration:none}
.shop-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}
.shop-row h2,.shop-row h3{margin:0;font-size:16px;color:#815332;font-weight:750;overflow-wrap:anywhere}
.shop-badge{display:inline-block;padding:6px 10px;border-radius:6px;background:#fff0d8;color:#aa7835;font-size:10px;font-weight:700;white-space:nowrap}
.shop-badge.success{background:#edf5e5;color:#678747}
.shop-badge.danger{background:#fff0e9;color:#b56c4a}
.order-summary{display:grid;gap:13px;padding:18px 0;border-top:1px solid #ecdbc3;border-bottom:1px solid #ecdbc3;margin:0 0 20px}
.order-summary>div{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.order-summary dt{flex-shrink:0;color:#a08263;font-size:11px;font-weight:500;max-width:45%}
.order-summary dd{margin:0;text-align:right;color:#845a35;font-size:12px;font-weight:650;overflow-wrap:anywhere}
.order-summary button{display:block;margin:5px 0 0 auto;border:0;background:none;color:#ae6a30;font:700 10px 'Inter',sans-serif;padding:3px 0;text-decoration:underline}
.shop-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.shop-actions>a{font-size:11px;color:#a76531;text-decoration:none}
.topup-ticket{margin-top:24px;padding-top:24px;border-top:1px dashed #d7b68a}
.bank-qr{display:block;width:210px;height:210px;object-fit:contain;padding:10px;border:1px solid #e8dccd;border-radius:8px;background:#fff;margin:0 auto 20px}
.credential-card{border:1px solid #edd9bd;border-radius:9px;padding:17px;background:#fff9ee}
.credential-card+.credential-card{margin-top:15px}
.credential-card h3{margin:0 0 16px;color:#8f6138;font-size:13px;font-weight:750}
.credential-card label{display:block;margin-top:12px;font-size:10px;color:#a48462}
.credential-card input{display:block;width:100%;padding:10px 12px;margin-top:6px;border:1px solid #e8d5b9;border-radius:6px;background:#fffdf8;color:#7d5634;font:12px 'Inter',sans-serif}
.credential-card button{padding:0;margin-top:10px;border:0;background:none;color:#a16a36;font:700 10px 'Inter',sans-serif}
.reset-password-panel{max-width:440px;margin:20px auto 35px}
.cat-auth-recovery .cat-auth-form{margin-top:22px;text-align:left}
.cat-auth-recovery .cat-auth-submit{margin-top:0}
@media(max-width:991px){.member-layout{grid-template-columns:minmax(0,1fr) minmax(230px,.85fr)}.member-panel{padding:20px}.shop-page-heading h1{font-size:22px}}
@media(max-width:767px){.member-layout{grid-template-columns:1fr}.shop-page-heading{margin-bottom:19px}.shop-page-heading h1{font-size:20px}.shop-breadcrumb{font-size:10px;margin-bottom:16px}.member-panel{padding:18px}.member-tabs{gap:6px;margin-bottom:18px;padding-bottom:17px}.member-tabs a{font-size:10px;padding:9px 10px}.history-filters{flex-wrap:wrap;gap:10px}.history-filters label{flex-basis:calc(50% - 10px)}.history-filters>.btn{width:100%}.shop-state{padding:28px 17px}.shop-state h2{font-size:15px}.shop-state p{font-size:11px}.shop-pagination{gap:10px;font-size:10px}.shop-pagination button{font-size:10px;padding:9px}}
@media(prefers-reduced-motion:reduce){.shop-spinner{animation:none}}

/* Additional photos use the established account gallery without replacing its layout. */
.account-gallery-thumbnails{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.account-gallery-thumbnails:empty{display:none}
.account-gallery-thumbnails button{width:76px;padding:0;border:1px solid #f4d2a7;border-radius:8px;overflow:hidden;background:#fff8eb}
.account-gallery-thumbnails img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}

/* Account collages keep their original ratio, including on narrow screens. */
.account-card{min-width:0}
.account-card .account-thumb-wrap{aspect-ratio:auto;height:auto;flex-shrink:0;background:#fff8ef}
.account-card .account-thumb-wrap .account-thumb{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}
.account-card:hover .account-thumb{transform:none}
.account-card .account-footer{margin-top:auto;min-width:0}
.account-gallery-main #main-display-image{display:block;width:100%;max-width:100%;height:auto;object-fit:contain}
@media(max-width:575px){
 .account-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .account-card .account-footer{gap:12px;flex-wrap:wrap}
 .account-card .account-price{font-size:20px}
 .account-card .btn-account-buy{min-height:44px;min-width:110px;font-size:12px}
 .account-gallery-thumbnails{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x proximity}
 .account-gallery-thumbnails button{flex:0 0 76px;scroll-snap-align:start}
}
