[hidden]{display:none!important}.legacy-tab-active{background:var(--theme-nav-active);box-shadow:0 0 24px #7c3aed66}.legacy-sidebar-shell{display:flex;align-items:flex-start;gap:24px}.legacy-sidebar{width:248px;flex-shrink:0;position:sticky;top:96px;border:1px solid #ffffff1a;border-radius:16px;background:#0b1020e6;padding:16px}.legacy-sidebar-link{position:relative;display:flex;align-items:center;border-radius:6px;padding:10px 12px;font-size:15px;line-height:1.2;color:#ffffff99}.legacy-sidebar-link:hover,.legacy-sidebar-active{background:#ffffff14;color:white}.legacy-sidebar-active::before{position:absolute;content:"";left:0;top:8px;bottom:8px;width:2px;background:var(--primary);border-radius:2px}.legacy-main{min-height:50vh}dialog::backdrop{background:#0009}dialog:not([open]){display:none}@media(max-width:767px){.legacy-sidebar-shell{flex-direction:column}.legacy-sidebar{position:static;width:100%}.legacy-sidebar-shell>section{width:100%}}
:root{--font-sans-thai:"Noto Serif Thai","Noto Serif Thai Fallback";--font-geist-sans:Geist,"Geist Fallback";--font-geist-mono:"Geist Mono","Geist Mono Fallback"}body{font-family:var(--font-sans-thai),var(--font-geist-sans),sans-serif;font-size:15px;font-weight:400;line-height:1.65}@media(min-width:768px){body{font-size:16px}}.legacy-size{position:absolute;bottom:6px;right:6px;background:#000b;padding:2px 6px;border-radius:4px;font:500 10px/1.5 sans-serif;color:white;pointer-events:none}.legacy-hero figure{height:min(42vh,420px);min-height:140px}.legacy-slide-dot{height:8px;min-height:0;width:8px;padding:0;border:0;border-radius:999px;background:#ffffff66}.legacy-slide-dot.selected{width:24px;background:white}.legacy-marquee{animation:news-marquee 36s linear infinite;margin:0}.legacy-marquee:hover{animation-play-state:paused}.shelf-card figure{margin:0}@media(min-width:768px){.legacy-hero figure{max-height:380px}}@media(min-width:1024px){.legacy-hero figure{max-height:420px}}
.legacy-hero figure{height:auto;aspect-ratio:16/9;max-height:min(42vh,420px)}@media(min-width:768px){.legacy-hero figure{max-height:380px}}@media(min-width:1024px){.legacy-hero figure{max-height:420px}}

.legacy-content-section{overflow:hidden;border-radius:1rem;border:1px solid var(--border);background:var(--card);box-shadow:0 12px 32px rgba(0,0,0,.28);padding:1rem}@media(min-width:640px){.legacy-content-section{padding:1.5rem}}
@layer components{.legacy-parity{font-size:15px;line-height:1.65}.legacy-parity button{min-height:0;color:inherit;font-weight:inherit;padding:0;background:transparent;border-radius:0}.legacy-parity input,.legacy-parity select{min-height:0}.legacy-parity h1,.legacy-parity h2,.legacy-parity h3{font-size:inherit;line-height:inherit}.legacy-parity .grid{grid-template-columns:none;gap:0}}
@layer components{.legacy-parity label{display:inline;color:inherit;margin:0}.legacy-password-input{height:44px;border-color:#ffffff1a;background:#0000004d;color:#f4f4f5}.legacy-avatar-save{height:32px;padding:0 12px;font-size:12px}}
.legacy-tall-input,.legacy-password-input{height:44px}.legacy-avatar-save{height:32px;padding:0 12px;font-size:12px}
#mobile-navigation nav{align-items:stretch}body:has(nav[aria-label="เมนูบัญชี"]) .legacy-sidebar{width:256px;top:80px}@media(max-width:767px){body:has(nav[aria-label="เมนูบัญชี"]) .legacy-sidebar{width:100%;position:static}}
nav.site-nav-tabs{flex-wrap:nowrap;width:min(100%,max-content);max-width:100%;overflow:hidden}nav[aria-label="เมนูบัญชี"],nav[aria-label="เมนูหลังบ้าน"]{align-items:stretch}
.site-header{max-width:100%}
.site-header-inner{width:100%;min-width:0}
.site-brand{min-width:0;flex:0 1 auto}
.site-brand .theme-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.legacy-tab{min-width:0}
@media(max-width:1360px){
  .site-brand .theme-title{max-width:10rem}
  .legacy-tab{padding-inline:.4rem;font-size:12px;gap:.25rem}
  .site-nav-tabs{height:52px}
  .legacy-tab{height:44px}
}
@media(max-width:1240px){
  .site-header-inner [data-user-menu]>button>span:nth-child(2),.site-header-inner [data-user-menu]>button>span:nth-child(3){display:none}
  .site-brand .theme-title{max-width:8rem}
}
@media(max-width:1100px){
  .legacy-tab .nav-short-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .legacy-tab{padding-inline:.7rem}
  .site-nav-tabs{height:48px}
  .legacy-tab{height:40px}
  .site-brand .theme-title{max-width:6.5rem}
}
@media(max-width:400px){.site-header-inner{flex-wrap:nowrap;gap:4px}.site-header-inner>a{min-width:0;gap:6px;white-space:nowrap}.site-header-inner>div:last-child{gap:4px}.site-header-inner>div:last-child>a.theme-account{padding-inline:6px}.site-header-inner [data-user-menu]>button.theme-account{gap:4px;padding-inline:6px}.site-header-inner [data-user-menu]>button>span:first-child,.site-header-inner [data-user-menu]>button>span:first-child img{width:24px;height:24px}.site-header-inner [data-mobile-toggle]{width:44px;height:44px}}
@media(max-width:375px){.site-header-inner{padding-left:8px;padding-right:8px}.site-header-inner>a .theme-title{max-width:4.2rem;overflow:hidden;text-overflow:ellipsis}}
[data-wallet-channel="bank"]{border-color:#22e3ff66;background:#1a1028;color:#d9fbff;box-shadow:0 8px 18px #0005}[data-wallet-channel="bank"][aria-pressed="true"]{border-color:#0891b2;background:#18d7ff;color:#041018;box-shadow:0 12px 24px #18d7ff47}[data-wallet-channel="tmn"]{border-color:#ff4fd866;background:#1a1028;color:#ffd6f4;box-shadow:0 8px 18px #0005}[data-wallet-channel="tmn"][aria-pressed="true"]{border-color:#c026d3;background:#ff4fd8;color:#1a0614;box-shadow:0 12px 24px #ff4fd847}[data-wallet-channel="code"]{border-color:#f5c45166;background:#1a1028;color:#fde68a;box-shadow:0 8px 18px #0005}[data-wallet-channel="code"][aria-pressed="true"]{border-color:#a16207;background:#f5c451;color:#1a1204;box-shadow:0 12px 24px #f5c45147}[data-wallet-tabs] .api-message{padding:0;border:0;background:transparent;color:var(--muted-foreground);white-space:pre-wrap}[data-wallet-tabs] .legacy-table-search{width:100%;max-width:none;height:40px}.legacy-member-meter p{color:inherit}
.legacy-data-table{width:100%;border-collapse:collapse;font-size:15px;color:var(--foreground)}.legacy-data-table thead{background:#141c33;color:#d5def2}.legacy-data-table th{height:44px;padding:14px 12px;text-align:center;vertical-align:middle;font-size:13px;font-weight:600;color:#d5def2}.legacy-data-table td{padding:12px;text-align:center;vertical-align:middle;border-bottom:1px solid var(--border)}.legacy-data-table tbody tr:nth-child(odd){background:#140e22}.legacy-data-table tbody tr:nth-child(even){background:#1c1630}.legacy-data-table tbody tr:last-child td{border-bottom:0}.legacy-data-table .legacy-table-empty{padding:32px 12px;color:var(--muted-foreground)}.legacy-table-search{height:40px;max-width:320px}.legacy-table-size{height:32px;min-height:0;width:80px;padding:4px 12px;font-size:14px;background:#1a1028;border:1px solid #6d28d980;border-radius:6px;color:#f3fbff}.legacy-pager-button{height:32px;min-height:0;min-width:32px;border:1px solid var(--border);border-radius:6px;padding:0 8px;font-size:12px;font-weight:500;background:var(--background);color:var(--foreground)}.legacy-pager-button.selected{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.legacy-column-popup{position:fixed;z-index:80;max-height:288px;width:220px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#1a2340;padding:4px 0;text-align:left;box-shadow:0 20px 25px #0005;color:#f5f7ff}.legacy-column-popup button{display:block;width:100%;height:auto;padding:8px 12px;text-align:left;font-size:14px;color:#f5f7ff;border-radius:0;background:transparent}.legacy-column-popup button:hover,.legacy-column-popup button.selected{background:#ffffff1a}.legacy-column-popup button.selected{font-weight:500}@media(min-width:768px){.legacy-data-table{font-size:16px}}

/* Original rank tones: external CSS preserves strict style-src. */
.legacy-member-meter.rank-bronze{border-color:#e8b089;background:linear-gradient(to bottom right,#fff4e6,#f6d7b0);color:#7a3e12;box-shadow:0 8px 24px rgba(138,75,31,0.28)}
.rank-bronze .rank-chip{background:#8a4b1f;color:#ffe7c2;box-shadow:0 0 0 2px #f0c14b}.rank-bronze .rank-name,.rank-name-bronze{color:#7a3e12}.rank-bronze .rank-track{border-color:#7a3e12}.rank-bronze .rank-bar{background:#7a3e12}
.legacy-member-meter.rank-silver{border-color:#cbd5e1;background:linear-gradient(to bottom right,#f8fafc,#e2e8f0);color:#334155;box-shadow:0 8px 24px rgba(51,65,85,0.22)}
.rank-silver .rank-chip{background:#334155;color:#f8fafc;box-shadow:0 0 0 2px #e2e8f0}.rank-silver .rank-name,.rank-name-silver{color:#1e293b}.rank-silver .rank-track{border-color:#1e293b}.rank-silver .rank-bar{background:#1e293b}
.legacy-member-meter.rank-gold{border-color:#f0c14b;background:linear-gradient(to bottom right,#fffbeb,#fde68a);color:#854d0e;box-shadow:0 8px 24px rgba(180,130,20,0.3)}
.rank-gold .rank-chip{background:#a16207;color:#fff7d6;box-shadow:0 0 0 2px #facc15}.rank-gold .rank-name,.rank-name-gold{color:#854d0e}.rank-gold .rank-track{border-color:#854d0e}.rank-gold .rank-bar{background:#854d0e}
.legacy-member-meter.rank-diamond{border-color:#7dd3fc;background:linear-gradient(to bottom right,#f0f9ff,#bae6fd);color:#0e7490;box-shadow:0 8px 24px rgba(14,116,144,0.28)}
.rank-diamond .rank-chip{background:#0e7490;color:#ecfeff;box-shadow:0 0 0 2px #67e8f9}.rank-diamond .rank-name,.rank-name-diamond{color:#0e7490}.rank-diamond .rank-track{border-color:#0e7490}.rank-diamond .rank-bar{background:#0e7490}
.legacy-member-meter.rank-master{border-color:#818cf8;background:linear-gradient(to bottom right,#eef2ff,#c7d2fe);color:#3730a3;box-shadow:0 8px 24px rgba(67,56,202,0.28)}
.rank-master .rank-chip{background:#4338ca;color:#eef2ff;box-shadow:0 0 0 2px #a5b4fc}.rank-master .rank-name,.rank-name-master{color:#3730a3}.rank-master .rank-track{border-color:#3730a3}.rank-master .rank-bar{background:#3730a3}
.legacy-member-meter.rank-champion{border-color:#f9a8d4;background:linear-gradient(to bottom right,#fdf2f8,#fbcfe8);color:#9d174d;box-shadow:0 8px 24px rgba(157,23,77,0.26)}
.rank-champion .rank-chip{background:#9d174d;color:#fce7f3;box-shadow:0 0 0 2px #f9a8d4}.rank-champion .rank-name,.rank-name-champion{color:#9d174d}.rank-champion .rank-track{border-color:#9d174d}.rank-champion .rank-bar{background:#9d174d}
.legacy-member-meter.rank-legend{border-color:#fdba74;background:linear-gradient(to bottom right,#fff7ed,#fed7aa);color:#c2410c;box-shadow:0 8px 24px rgba(194,65,12,0.28)}
.rank-legend .rank-chip{background:#c2410c;color:#ffedd5;box-shadow:0 0 0 2px #fb923c}.rank-legend .rank-name,.rank-name-legend{color:#c2410c}.rank-legend .rank-track{border-color:#c2410c}.rank-legend .rank-bar{background:#c2410c}
.legacy-member-meter.rank-immortal{border-color:#c4b5fd;background:linear-gradient(to bottom right,#f5f3ff,#ddd6fe);color:#5b21b6;box-shadow:0 8px 24px rgba(91,33,182,0.3)}
.rank-immortal .rank-chip{background:#5b21b6;color:#f5f3ff;box-shadow:0 0 0 2px #ddd6fe}.rank-immortal .rank-name,.rank-name-immortal{color:#5b21b6}.rank-immortal .rank-track{border-color:#5b21b6}.rank-immortal .rank-bar{background:#5b21b6}
.rank-progress-0{width:0%}.rank-progress-1{width:1%}.rank-progress-2{width:2%}.rank-progress-3{width:3%}.rank-progress-4{width:4%}.rank-progress-5{width:5%}.rank-progress-6{width:6%}.rank-progress-7{width:7%}.rank-progress-8{width:8%}.rank-progress-9{width:9%}.rank-progress-10{width:10%}.rank-progress-11{width:11%}.rank-progress-12{width:12%}.rank-progress-13{width:13%}.rank-progress-14{width:14%}.rank-progress-15{width:15%}.rank-progress-16{width:16%}.rank-progress-17{width:17%}.rank-progress-18{width:18%}.rank-progress-19{width:19%}.rank-progress-20{width:20%}.rank-progress-21{width:21%}.rank-progress-22{width:22%}.rank-progress-23{width:23%}.rank-progress-24{width:24%}.rank-progress-25{width:25%}.rank-progress-26{width:26%}.rank-progress-27{width:27%}.rank-progress-28{width:28%}.rank-progress-29{width:29%}.rank-progress-30{width:30%}.rank-progress-31{width:31%}.rank-progress-32{width:32%}.rank-progress-33{width:33%}.rank-progress-34{width:34%}.rank-progress-35{width:35%}.rank-progress-36{width:36%}.rank-progress-37{width:37%}.rank-progress-38{width:38%}.rank-progress-39{width:39%}.rank-progress-40{width:40%}.rank-progress-41{width:41%}.rank-progress-42{width:42%}.rank-progress-43{width:43%}.rank-progress-44{width:44%}.rank-progress-45{width:45%}.rank-progress-46{width:46%}.rank-progress-47{width:47%}.rank-progress-48{width:48%}.rank-progress-49{width:49%}.rank-progress-50{width:50%}.rank-progress-51{width:51%}.rank-progress-52{width:52%}.rank-progress-53{width:53%}.rank-progress-54{width:54%}.rank-progress-55{width:55%}.rank-progress-56{width:56%}.rank-progress-57{width:57%}.rank-progress-58{width:58%}.rank-progress-59{width:59%}.rank-progress-60{width:60%}.rank-progress-61{width:61%}.rank-progress-62{width:62%}.rank-progress-63{width:63%}.rank-progress-64{width:64%}.rank-progress-65{width:65%}.rank-progress-66{width:66%}.rank-progress-67{width:67%}.rank-progress-68{width:68%}.rank-progress-69{width:69%}.rank-progress-70{width:70%}.rank-progress-71{width:71%}.rank-progress-72{width:72%}.rank-progress-73{width:73%}.rank-progress-74{width:74%}.rank-progress-75{width:75%}.rank-progress-76{width:76%}.rank-progress-77{width:77%}.rank-progress-78{width:78%}.rank-progress-79{width:79%}.rank-progress-80{width:80%}.rank-progress-81{width:81%}.rank-progress-82{width:82%}.rank-progress-83{width:83%}.rank-progress-84{width:84%}.rank-progress-85{width:85%}.rank-progress-86{width:86%}.rank-progress-87{width:87%}.rank-progress-88{width:88%}.rank-progress-89{width:89%}.rank-progress-90{width:90%}.rank-progress-91{width:91%}.rank-progress-92{width:92%}.rank-progress-93{width:93%}.rank-progress-94{width:94%}.rank-progress-95{width:95%}.rank-progress-96{width:96%}.rank-progress-97{width:97%}.rank-progress-98{width:98%}.rank-progress-99{width:99%}.rank-progress-100{width:100%}
@media(min-width:1024px){.legacy-product-columns.grid{grid-template-columns:minmax(0,1fr) minmax(22rem,28rem)}}.legacy-quantity-grid.grid{grid-template-columns:3rem 1fr 3rem}.legacy-product-input{height:44px;min-height:0;width:100%;border:1px solid #ffffff1a;border-radius:12px;background:#0000004d;padding:0 12px;font-size:14px;color:#f4f4f5}.legacy-product-input::placeholder{color:#71717a;text-transform:none}#legacy-confirm{position:fixed;inset:0;z-index:80;width:min(448px,calc(100% - 32px));height:fit-content;max-height:min(90vh,calc(100% - 32px));margin:auto;overflow-y:auto;display:grid;gap:16px;padding:24px;background:#161022;color:#f3fbff;border-radius:8px;box-shadow:0 10px 25px #0005}#legacy-confirm:not([open]){display:none}#legacy-confirm [data-confirm-close]{width:32px;height:32px;min-height:0;padding:0;border:0;background:transparent;color:#f3fbff}#legacy-confirm [data-confirm-accept],#legacy-confirm [data-confirm-cancel]{height:36px;min-height:0;padding:0 16px;border-radius:6px;font-size:14px}#legacy-confirm [data-confirm-cancel]{border:1px solid rgba(255,255,255,.18);background:#241838;color:#f3fbff}#legacy-confirm [data-confirm-accept]{border:0;background:#18d7ff;color:#041018}#legacy-confirm [data-confirm-accept]:disabled{opacity:.5}


.legacy-coupon-ticket.grid{grid-template-columns:14.5rem minmax(0,1fr)}@media(max-width:639px){.legacy-coupon-ticket.grid{grid-template-columns:minmax(0,1fr)}}.legacy-reward-card.grid{grid-template-columns:5rem minmax(0,1fr)}.legacy-filter-chip{border-color:var(--border);background:#0003;color:var(--muted-foreground)}.legacy-filter-chip[aria-pressed="true"]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}[data-rank-choice].selected{border-color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 50%,transparent)}.rank-exp-label{text-shadow:0 1px 2px #000d}.rank-label-bronze{color:#e8b089}.rank-label-silver{color:#e2e8f0}.rank-label-gold{color:#f0c14b}.rank-label-diamond{color:#7dd3fc}.rank-label-master{color:#a5b4fc}.rank-label-champion{color:#f9a8d4}.rank-label-legend{color:#fdba74}.rank-label-immortal{color:#c4b5fd}
@layer components{.legacy-parity button{border-width:0}.legacy-parity button:disabled{opacity:1}}[data-rank-choice]:disabled{opacity:1;cursor:default}

@layer components{.legacy-parity button{justify-content:normal}}nav[aria-label="เมนูบัญชี"] .legacy-sidebar-link{line-height:1}nav[aria-label="เมนูบัญชี"] .legacy-sidebar-active{font-weight:600}nav[aria-label="เมนูบัญชี"] form button{justify-content:flex-start;text-align:left}
@media(min-width:768px){.legacy-parity{font-size:16px}}

.contact-telegram{background:#229ed9}.contact-discord{background:#5865f2}.contact-facebook{background:#1877f2}
.theme-editor-preview{background:var(--preview-themeSection);border-color:var(--preview-themeBorder);color:var(--preview-themeText)}
.theme-preview-header{background:var(--preview-themeHeader)}.theme-preview-title{color:var(--preview-themeTitle)}
.theme-preview-account{background:var(--preview-themeAccount);color:var(--preview-themeAccountText)}
.theme-preview-nav{background:var(--preview-themeNav)}.theme-preview-active{background:var(--preview-themeNavActive);color:var(--preview-themeTitle)}.theme-preview-nav-text{color:var(--preview-themeNavText)}
.theme-preview-card{background:var(--preview-themeCard);border-color:var(--preview-themeBorder)}.theme-preview-muted{color:var(--preview-themeMuted)}.theme-preview-price{color:var(--preview-themePrice)}.theme-preview-button{background:var(--preview-themeButton);color:var(--preview-themeButtonText)}

nav[aria-label="เมนูหลังบ้าน"] .legacy-sidebar-link{padding:6px 10px;font-size:13px;line-height:1;font-weight:400;color:#ffffff8c}
nav[aria-label="เมนูหลังบ้าน"] .legacy-sidebar-active{font-weight:500;color:#fff}
nav[aria-label="เมนูหลังบ้าน"] .legacy-sidebar-active::before{top:4px;bottom:4px}
.legacy-confirm-danger [data-confirm-accept]{background:#e11d48;color:white}

/* Account overview mirrors the source's full-width stacked mobile layout. */
@media(max-width:767px){body:has(form[action$="/account"]) .legacy-sidebar-shell{width:100%;min-width:0}body:has(form[action$="/account"]) .legacy-sidebar{width:100%;top:auto}body:has(form[action$="/account"]) .legacy-sidebar-shell>section{width:100%;min-width:0}body:has(form[action$="/account"]) nav[aria-label="เมนูบัญชี"] ul{scrollbar-width:none;-ms-overflow-style:none}body:has(form[action$="/account"]) nav[aria-label="เมนูบัญชี"] ul::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}}
@media(max-width:767px){body.account-rewards .legacy-sidebar-shell,body.account-rewards .legacy-sidebar,body.account-rewards .legacy-sidebar-shell>section{width:100%;min-width:0}body.account-rewards .legacy-sidebar{position:static}body.account-rewards nav[aria-label="เมนูบัญชี"] ul{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}body.account-rewards nav[aria-label="เมนูบัญชี"] ul::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}}
body.account-rewards .legacy-coupon-ticket p{overflow-wrap:normal}
@media(max-width:767px){body:has(form[action$="/account"]) nav[aria-label="เมนูบัญชี"] ul{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto}}

.legacy-category-field{height:32px;max-width:320px;margin-inline:auto;text-align:center;border:1px solid #6d28d980;background:#1a1028;color:#f3fbff;box-shadow:none;width:100%}
.legacy-edit-dialog{position:fixed;inset:0;margin:auto;width:calc(100% - 2rem);max-width:512px;max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 10px 30px #0005}
/* Admin products: keep the legacy product editor readable under the site's CSP. */
.legacy-panel{border:1px solid hsl(var(--border));border-radius:1rem;background:hsl(var(--card));padding:1rem}
.legacy-product-input,.legacy-product-select,.legacy-product-textarea{display:block;width:100%;margin-top:.35rem;border:1px solid #6d28d9;border-radius:.5rem;background:#1a1028;color:#f3fbff;padding:.55rem .75rem}
.legacy-product-dialog label{color:#f3fbff!important}
.legacy-product-select option{background:#1a1028;color:#f3fbff}
.legacy-product-dialog{background:hsl(var(--card));color:hsl(var(--foreground));border-color:hsl(var(--border))}
.legacy-product-dialog::backdrop{background:#08050dbb;backdrop-filter:blur(3px)}
.legacy-product-primary,.legacy-product-danger{display:inline-flex;align-items:center;justify-content:center;min-height:2.25rem;border-radius:.5rem;padding:.4rem .85rem;font-size:.875rem;font-weight:600}
.legacy-product-primary{background:#22d3ee;color:#07121c}.legacy-product-danger{background:#be123c;color:#fff}
.legacy-product-dialog .product-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:1024px){.legacy-product-dialog .product-fields{grid-template-columns:minmax(0,1fr)!important}}
.lucky-dialog{position:fixed;inset:0;margin:auto;width:min(94vw,34rem);max-width:none;max-height:min(92dvh,54rem);overflow:auto;padding:0;border:1px solid rgb(240 193 75 / .4);border-radius:1rem;background:#07061a;color:#fff;box-shadow:0 24px 80px rgb(0 0 0 / .65)}
.lucky-dialog::backdrop{background:rgb(0 0 0 / .72);backdrop-filter:blur(4px)}
.lucky-dialog-inner{position:relative;display:grid;gap:1rem;padding:1.25rem}
.lucky-dialog-close{position:absolute;right:.6rem;top:.45rem;z-index:2;display:grid;width:2.75rem;height:2.75rem;place-items:center;border:0;border-radius:.75rem;background:transparent;color:#fff;font-size:2rem;line-height:1}
.lucky-dialog-close:hover{background:rgb(255 255 255 / .1)}
.lucky-stage{position:relative;margin:0 auto;width:100%;max-width:26.25rem;overflow:hidden;border-radius:1rem;background:radial-gradient(circle at 50% 42%,#312e81 0%,#1e1b4b 46%,#07061a 100%);padding:.75rem 2rem 2rem}
.lucky-pointer{position:absolute;z-index:5;left:50%;top:.25rem;transform:translateX(-50%)}
.lucky-pointer span{display:block;width:.875rem;height:.875rem;margin:0 auto;transform:rotate(45deg);border-radius:2px;background:linear-gradient(to bottom right,#fff6d0,#f0c14b);box-shadow:0 2px 6px rgb(0 0 0 / .45)}
.lucky-pointer::after{content:"";display:block;width:0;height:0;margin:-.25rem auto 0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:22px solid #f0c14b;filter:drop-shadow(0 3px 2px rgb(0 0 0 / .35))}
.lucky-wheel-box{position:relative;margin:1rem auto 0;aspect-ratio:1;width:100%;filter:drop-shadow(0 18px 18px rgb(0 0 0 / .45))}
.lucky-rotor,.lucky-rotor svg{width:100%;height:100%;display:block}
.lucky-shine{pointer-events:none;position:absolute;inset:0;border-radius:999px;background:linear-gradient(180deg,rgb(255 255 255 / .28),transparent 40%,rgb(0 0 0 / .32))}
.lucky-hub{pointer-events:none;position:absolute;inset:0;display:grid;place-items:center}
.lucky-hub span{display:grid;width:3.5rem;height:3.5rem;place-items:center;border-radius:999px;background:linear-gradient(to bottom,#fff6d0,#f0c14b,#a16207);box-shadow:inset 0 2px 0 rgb(255 255 255 / .75),0 6px 0 #7c4a12}
.lucky-hub svg{width:1.5rem;height:1.5rem;color:#7c4a12}
.lucky-stand{position:relative;z-index:0;margin:-.5rem auto 0;height:1.25rem;width:9rem;border-radius:100%;background:linear-gradient(to bottom,#6d4ad4,#241447);box-shadow:0 14px 24px rgb(109 74 212 / .55)}
.lucky-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:.5rem!important}
.lucky-actions>button,.shelf-card button.primary,.lucky-reveal-card button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:2.75rem;border:0;border-radius:.375rem;background:#18d7ff;color:#041018;font-size:.875rem;font-weight:500;cursor:pointer}
.lucky-actions>button:hover,.shelf-card button.primary:hover,.lucky-reveal-card button:hover{background:#46e1ff}
.lucky-actions [data-lucky-spin="free"]{border:1px solid #f0c14b;background:transparent;color:#fde68a}
.lucky-actions [data-lucky-spin="free"]:hover{background:rgb(240 193 75 / .15);color:#fde68a}
.lucky-actions button:disabled{opacity:.5;cursor:not-allowed}
.lucky-reveal-card.fan-5{border:1px solid #f0c14b;background:#1a1408;box-shadow:0 0 48px rgb(240 193 75 / .55)}
.lucky-reveal-card.fan-3{border:1px solid rgb(240 193 75 / .8);background:#141022;box-shadow:0 0 28px rgb(240 193 75 / .28)}
.lucky-reveal-card.fan-0{border:1px solid rgb(255 255 255 / .15);background:#12101c}
.lucky-reveal-card .title-big{font-size:1.875rem;line-height:2.25rem;font-weight:700;color:#fde68a}
.lucky-reveal-card .title{font-size:1.25rem;line-height:1.75rem;font-weight:700;color:#fff}
.lucky-reveal-card .line{margin-top:.75rem;font-size:1rem;font-weight:600;color:#fff}
.lucky-reveal-card .sub{margin-top:.25rem;font-size:.875rem;color:rgb(255 255 255 / .75)}
.lucky-reveal{position:fixed;z-index:80;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(7 6 26 / .72);padding:1rem}
.lucky-reveal[hidden]{display:none}
.lucky-reveal canvas,.lucky-reveal-flash{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lucky-reveal-flash{background:radial-gradient(circle,rgb(240 193 75 / .42),transparent 62%);animation:prize-flash 900ms ease-out both}
.lucky-reveal-card{position:relative;z-index:1;width:min(100%,24rem);border-radius:1rem;padding:1.5rem 1.25rem;text-align:center;animation:prize-pop 280ms ease-out both}
.lucky-reveal-card img,.lucky-reveal-miss{width:8rem;height:8rem;margin:1rem auto 0;border-radius:1rem;object-fit:cover}
.lucky-reveal-miss{display:grid;place-items:center;background:#1e293b;color:#e2e8f0;font-size:2.25rem;font-weight:700}
.lucky-reveal-card button{margin-top:1.25rem;width:100%}
@keyframes prize-pop{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}
@keyframes prize-flash{from{opacity:.72}to{opacity:0}}
@media(max-width:480px){.lucky-dialog-inner{gap:.75rem;padding:1rem}.lucky-stage{padding:.6rem 1rem 1.25rem}.lucky-dialog-close{right:.25rem;top:.15rem}}
.account-orders-table>[data-legacy-table]>div:first-child{display:none}.account-orders-table>[data-legacy-table]>.overflow-x-auto{margin-top:0}.account-orders-table .legacy-data-table th[data-column="category"]>div,.account-orders-table .legacy-data-table th[data-column="name"]>div{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.25rem}.account-orders-table .legacy-data-table th[data-column="category"]>div>span:nth-child(3),.account-orders-table .legacy-data-table th[data-column="name"]>div>span:nth-child(3){flex-basis:100%}.account-orders-table button[data-table-filter] svg{display:none}.account-orders-table button[data-table-filter]::before{content:"";display:inline-block;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18l-7 8v6l-4 2v-8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18l-7 8v6l-4 2v-8z'/%3E%3C/svg%3E") center/contain no-repeat}
@media(max-width:767px){body:has(.account-orders-table) .legacy-sidebar-shell{width:100%;min-width:0}body:has(.account-orders-table) .legacy-sidebar{position:static;width:100%;min-width:0}body:has(.account-orders-table) .legacy-sidebar-shell>section{width:100%;min-width:0}body:has(.account-orders-table) nav[aria-label="เมนูบัญชี"] ul{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}body:has(.account-orders-table) nav[aria-label="เมนูบัญชี"] ul::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}body:has(.account-orders-table) .account-orders-table .legacy-data-table{min-width:370px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(1){width:40px;min-width:40px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(2){width:52px;min-width:52px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(3){width:85px;min-width:85px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(4){width:69px;min-width:69px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(5){width:53px;min-width:53px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th:nth-child(6){width:71px;min-width:71px}body:has(.account-orders-table) .account-orders-table .legacy-data-table th[data-column="category"]>div>span:nth-child(2),body:has(.account-orders-table) .account-orders-table .legacy-data-table th[data-column="name"]>div>span:nth-child(2){flex-shrink:0}body:has(.account-orders-table) .account-orders-table .legacy-data-table th[data-column="category"]>div>span:first-child{max-width:35px;text-align:center}}
.account-orders-table [data-column-hint]:empty{display:none}@media(min-width:768px){.account-orders-table .legacy-data-table{width:916px;min-width:916px;table-layout:fixed}.account-orders-table .legacy-data-table th:nth-child(1){width:104px}.account-orders-table .legacy-data-table th:nth-child(2){width:108px}.account-orders-table .legacy-data-table th:nth-child(3){width:199px}.account-orders-table .legacy-data-table th:nth-child(4){width:132px}.account-orders-table .legacy-data-table th:nth-child(5){width:172px}.account-orders-table .legacy-data-table th:nth-child(6){width:201px}.account-orders-table .legacy-data-table th{font-size:15px;line-height:24.75px}.account-orders-table .legacy-data-table th>div.inline-flex.flex-col{flex-direction:row;align-items:center;gap:.25rem}.account-orders-table .legacy-data-table th>div>span:nth-child(2):not(:has(*)){display:none}}@media(max-width:767px){body:has(.account-orders-table) .account-orders-table .legacy-data-table th{padding-top:12px;padding-bottom:12px}}
.account-topups-table button[data-table-filter] svg{display:none}.account-topups-table button[data-table-filter]::before{content:"";display:inline-block;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18l-7 8v6l-4 2v-8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18l-7 8v6l-4 2v-8z'/%3E%3C/svg%3E") center/contain no-repeat}
.account-topups-table [data-column-hint]:empty{display:none}@media(max-width:767px){body:has(.account-topups-table) .legacy-sidebar-shell nav[aria-label="เมนูบัญชี"] ul{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto}}
@media(min-width:768px){.account-topups-table .legacy-data-table th{padding-top:15px;padding-bottom:15px}}
@media(min-width:768px){.account-topups-table .legacy-data-table{width:916px;min-width:916px;table-layout:fixed}}
@media(min-width:768px){.legacy-sidebar-shell:has(.account-topups-table){width:min(calc(100vw - 32px),1248px);flex:0 0 auto}}
@media(max-width:767px){body:has(.account-topups-table) nav[aria-label="เมนูบัญชี"] ul{scrollbar-width:none;-ms-overflow-style:none}body:has(.account-topups-table) nav[aria-label="เมนูบัญชี"] ul::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}}
.discounts-table-shell.legacy-content-section{margin-bottom:0;border:0;background:transparent;box-shadow:none;padding:0}.discounts-table-shell [data-table-sort],.discounts-table-shell [data-table-filter]{min-height:0;border:0;border-radius:6px;background:transparent;color:var(--muted-foreground);padding:4px;font-weight:500}.discounts-table-shell [data-table-sort]:hover,.discounts-table-shell [data-table-filter]:hover,.discounts-table-shell [data-table-filter][aria-expanded=true]{background:#ffffff1a;color:var(--foreground)}
.discounts-table-shell .legacy-table-search{height:40px;min-height:40px}
.legacy-announcements input:not([type=hidden]){height:2.25rem!important;min-height:2.25rem!important;padding-top:.25rem;padding-bottom:.25rem}.legacy-announcements .legacy-content-section{padding:1rem!important}.legacy-announcements input[name="sort_order"]{box-sizing:border-box;width:6rem!important;min-width:6rem;flex:0 0 6rem}.legacy-announcements textarea{min-height:80px!important;line-height:1.25rem}.legacy-announcements-create.legacy-content-section{border-style:dashed;border-color:rgb(34 227 255 / 40%);background:rgb(34 227 255 / 5%)}

.legacy-announcements{margin-top:.375rem}

.legacy-bestsellers-table [data-table-sort],.legacy-bestsellers-table [data-table-filter]{display:inline-flex;align-items:center;justify-content:center;min-width:24px;width:24px;height:24px;min-height:0;padding:4px;border:0;border-radius:6px;background:transparent;color:#d5def2;font-weight:500}
.legacy-bestsellers-table [data-table-sort]:hover,.legacy-bestsellers-table [data-table-filter]:hover,.legacy-bestsellers-table [data-table-filter][aria-expanded="true"]{background:#ffffff1a;color:#f3fbff}
.legacy-bestsellers-table .legacy-table-search{height:40px;min-height:40px}
.legacy-bestsellers-table .legacy-data-table th{line-height:1.5}
.legacy-bestsellers-table label{margin:0}

.discount-codes-admin [data-admin-thai-datetime] label{margin:0;color:var(--foreground)}
.discount-codes-admin [data-admin-thai-datetime] select{min-width:0;height:2.25rem;min-height:2.25rem;padding:0 .55rem;border-radius:.5rem;background:#1a1028;color:#f3fbff}
.discount-codes-admin [data-discount-code-create] label{display:block;margin:0;color:#f4f4f5}
.discount-codes-admin .legacy-content-section:has([data-discount-code-create]){border-style:dashed;border-color:rgb(34 227 255 / 40%);background:rgb(34 227 255 / 5%)}
.discount-codes-admin [data-discount-code-create] input:not([type=hidden]),.discount-codes-admin [data-discount-code-create] select{box-sizing:border-box;height:2.25rem!important;min-height:2.25rem!important}
.discount-codes-admin [data-discount-code-create] [data-date-error]{margin:0}
.legacy-main:has(.discount-codes-admin)>.notice{display:none}
.discount-codes-admin [data-legacy-table] thead th button{box-sizing:border-box;min-width:1.375rem!important;width:1.375rem!important;height:1.375rem!important;min-height:1.375rem!important;padding:.25rem!important;border-radius:.5rem!important;background:transparent!important;color:#d5def2!important;box-shadow:none!important}
.discount-codes-admin [data-legacy-table] .legacy-table-search{height:40px;min-height:40px}
@media(max-width:639px){.discount-codes-admin [data-discount-code-create]{grid-template-columns:minmax(0,1fr)!important}}
.item-codes-admin .item-code-product .item-code-textarea{display:block;box-sizing:border-box;width:100%;height:117px;min-height:117px!important;resize:vertical;border:1px solid #532282;border-radius:.65rem;background:#1a1028;padding:.75rem;color:#eff6ff;font-size:.875rem;line-height:1.5rem}
.item-codes-admin .item-code-product .item-code-add-form{display:grid;gap:.5rem}
.item-codes-admin .item-code-textarea::placeholder{color:#71717a}
.item-codes-admin .item-code-add-button{justify-self:start;height:2rem;min-height:2rem;padding:.25rem .75rem;font-size:.75rem}
.item-codes-admin .item-code-edit-form{display:flex;min-width:20rem;gap:.5rem;align-items:center}
.item-codes-admin .item-code-edit-form input{min-width:0;flex:1}
.item-codes-admin .item-code-delete-form{display:flex;align-items:center;gap:.5rem}
.item-codes-admin [data-legacy-table] .overflow-x-auto{box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto}


.admin-sidebar{top:80px}@media(max-width:767px){.admin-sidebar{position:static;top:auto}}
@media(max-width:767px){body.account-password .legacy-sidebar-shell,body.account-password .legacy-sidebar-shell>section{width:100%;min-width:0}body.account-password .legacy-sidebar{position:static;width:100%;min-width:0}body.account-password nav[aria-label="เมนูบัญชี"] ul{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}body.account-password nav[aria-label="เมนูบัญชี"] ul::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}}
body.account-password .legacy-password-input{background:#0000004d!important;border-color:#ffffff1a!important;color:#f4f4f5!important}
body.account-password form[action$="/account/password"] button[type="submit"]{height:44px}
@media(min-width:768px){body.account-password [data-user-menu] button>span.hidden{max-width:10rem}}

/* Route-specific parity for the Next.js /admin/codes page. */
.codes-admin .codes-setting-toggle{display:flex;align-items:center;gap:.75rem;min-height:3rem;padding:.75rem 1rem;border:1px solid rgb(255 255 255/.1);border-radius:.75rem;background:rgb(0 0 0/.15);font-size:.875rem;font-weight:500}
.codes-admin .codes-setting-toggle input{width:1rem;height:1rem;accent-color:#22e3ff}
.codes-admin .codes-create-form{display:grid!important;gap:1rem;width:100%;max-width:56rem;margin-inline:auto}
.codes-admin .codes-create-fields{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.codes-admin .codes-create-form label{display:block;margin:0}
.codes-admin .codes-create-fields input:not([type=hidden]){height:2.25rem;min-height:2.25rem;padding-top:.25rem;padding-bottom:.25rem}
.codes-admin .codes-date-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:100%;max-width:52rem;margin-inline:auto}
.codes-admin .codes-thai-date{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
.codes-admin .codes-thai-date select{display:block;width:100%;min-width:0;height:2.25rem;min-height:2.25rem!important;border:1px solid #532282;border-radius:.65rem;background:#1a1028;padding:0 .55rem;color:#eff6ff;font-size:.875rem}
.codes-admin [data-legacy-table] thead th button{box-sizing:border-box;min-width:1.375rem!important;width:1.375rem!important;height:1.375rem!important;min-height:1.375rem!important;padding:.25rem!important;border-radius:.5rem!important;background:transparent!important;color:#d5def2!important;box-shadow:none!important}
.codes-admin .codes-edit-trigger{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2rem;padding:.4rem .75rem;border:0;border-radius:.55rem;background:#facc15;color:#111827;font-size:.8rem;font-weight:600}
.codes-admin .codes-edit-dialog{position:fixed;width:min(32rem,calc(100vw - 2rem));max-width:none;max-height:calc(100vh - 2rem);margin:auto;padding:1.5rem;border:1px solid #442064;border-radius:1rem;background:#170d24;color:#f8fafc;box-shadow:0 20px 50px #0008}
.codes-admin .codes-edit-dialog::backdrop{background:#0009;backdrop-filter:blur(3px)}
.codes-admin .codes-edit-dialog h2{margin:0 0 1.25rem;text-align:center;font-size:1.25rem;font-weight:700}
.codes-admin .codes-edit-form{display:grid!important;gap:.65rem}
.codes-admin .codes-edit-close{position:absolute;top:.75rem;right:.75rem;width:2rem;height:2rem;border:0;border-radius:.4rem;background:transparent;color:#cbd5e1;font-size:1.5rem}
.codes-admin label{color:#f4f4f5}
.legacy-main:has(.codes-admin)>.notice{display:none}
.codes-admin tbody tr button:disabled{opacity:.45}
.codes-admin .legacy-data-table td[data-key="code"]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.discount-codes-admin [data-legacy-table] tbody button:disabled.bg-destructive\/40{background:#fb7185!important;opacity:.5}
@media(min-width:768px){
  .codes-admin .legacy-data-table{table-layout:fixed}
  .codes-admin .legacy-data-table th:nth-child(1),.codes-admin .legacy-data-table td:nth-child(1){width:151px}
  .codes-admin .legacy-data-table th:nth-child(2),.codes-admin .legacy-data-table td:nth-child(2){width:96px}
  .codes-admin .legacy-data-table th:nth-child(3),.codes-admin .legacy-data-table td:nth-child(3){width:80px}
  .codes-admin .legacy-data-table th:nth-child(4),.codes-admin .legacy-data-table td:nth-child(4),.codes-admin .legacy-data-table th:nth-child(5),.codes-admin .legacy-data-table td:nth-child(5){width:123px}
  .codes-admin .legacy-data-table th:nth-child(6),.codes-admin .legacy-data-table td:nth-child(6){width:96px}
  .codes-admin .legacy-data-table th:nth-child(7),.codes-admin .legacy-data-table td:nth-child(7){width:114px}
  .codes-admin .legacy-data-table th:nth-child(8),.codes-admin .legacy-data-table td:nth-child(8){width:98px}
  .discount-codes-admin .legacy-data-table{table-layout:fixed}
  .discount-codes-admin .legacy-data-table th:nth-child(1),.discount-codes-admin .legacy-data-table td:nth-child(1){width:148px}
  .discount-codes-admin .legacy-data-table th:nth-child(2),.discount-codes-admin .legacy-data-table td:nth-child(2){width:173px}
  .discount-codes-admin .legacy-data-table th:nth-child(3),.discount-codes-admin .legacy-data-table td:nth-child(3){width:89px}
  .discount-codes-admin .legacy-data-table th:nth-child(4),.discount-codes-admin .legacy-data-table td:nth-child(4){width:79px}
  .discount-codes-admin .legacy-data-table th:nth-child(5),.discount-codes-admin .legacy-data-table td:nth-child(5){width:74px}
  .discount-codes-admin .legacy-data-table th:nth-child(6),.discount-codes-admin .legacy-data-table td:nth-child(6){width:163px}
  .discount-codes-admin .legacy-data-table th:nth-child(7),.discount-codes-admin .legacy-data-table td:nth-child(7){width:89px}
  .discount-codes-admin .legacy-data-table th:nth-child(8),.discount-codes-admin .legacy-data-table td:nth-child(8){width:66px}
  .item-codes-admin .legacy-data-table{table-layout:fixed}
  .item-codes-admin .legacy-data-table th:nth-child(1),.item-codes-admin .legacy-data-table td:nth-child(1){width:301px}
  .item-codes-admin .legacy-data-table th:nth-child(2),.item-codes-admin .legacy-data-table td:nth-child(2){width:478px}
  .item-codes-admin .legacy-data-table th:nth-child(3),.item-codes-admin .legacy-data-table td:nth-child(3){width:103px}
  .discounts-table-shell .legacy-data-table{table-layout:fixed}
  .discounts-table-shell .legacy-data-table th:nth-child(1),.discounts-table-shell .legacy-data-table td:nth-child(1){width:94px}
  .discounts-table-shell .legacy-data-table th:nth-child(2),.discounts-table-shell .legacy-data-table td:nth-child(2){width:110px}
  .discounts-table-shell .legacy-data-table th:nth-child(3),.discounts-table-shell .legacy-data-table td:nth-child(3){width:306px}
  .discounts-table-shell .legacy-data-table th:nth-child(4),.discounts-table-shell .legacy-data-table td:nth-child(4){width:128px}
  .discounts-table-shell .legacy-data-table th:nth-child(5),.discounts-table-shell .legacy-data-table td:nth-child(5){width:295px}
}
@media(max-width:767px){
  .codes-admin .legacy-data-table{width:744px;min-width:744px;table-layout:fixed}
  .codes-admin .legacy-data-table th:nth-child(1),.codes-admin .legacy-data-table td:nth-child(1){width:128px}
  .codes-admin .legacy-data-table th:nth-child(2),.codes-admin .legacy-data-table td:nth-child(2){width:72px}
  .codes-admin .legacy-data-table th:nth-child(3),.codes-admin .legacy-data-table td:nth-child(3){width:72px}
  .codes-admin .legacy-data-table th:nth-child(4),.codes-admin .legacy-data-table td:nth-child(4){width:105px}
  .codes-admin .legacy-data-table th:nth-child(5),.codes-admin .legacy-data-table td:nth-child(5){width:105px}
  .codes-admin .legacy-data-table th:nth-child(6),.codes-admin .legacy-data-table td:nth-child(6){width:72px}
  .codes-admin .legacy-data-table th:nth-child(7),.codes-admin .legacy-data-table td:nth-child(7){width:102px}
  .codes-admin .legacy-data-table th:nth-child(8),.codes-admin .legacy-data-table td:nth-child(8){width:88px}
  .discount-codes-admin .legacy-data-table{width:678px;min-width:678px;table-layout:fixed}
  .discount-codes-admin .legacy-data-table th:nth-child(1),.discount-codes-admin .legacy-data-table td:nth-child(1){width:136px}
  .discount-codes-admin .legacy-data-table th:nth-child(2),.discount-codes-admin .legacy-data-table td:nth-child(2),.discount-codes-admin .legacy-data-table th:nth-child(3),.discount-codes-admin .legacy-data-table td:nth-child(3),.discount-codes-admin .legacy-data-table th:nth-child(4),.discount-codes-admin .legacy-data-table td:nth-child(4),.discount-codes-admin .legacy-data-table th:nth-child(5),.discount-codes-admin .legacy-data-table td:nth-child(5){width:72px}
  .discount-codes-admin .legacy-data-table th:nth-child(6),.discount-codes-admin .legacy-data-table td:nth-child(6){width:105px}
  .discount-codes-admin .legacy-data-table th:nth-child(7),.discount-codes-admin .legacy-data-table td:nth-child(7){width:86px}
  .discount-codes-admin .legacy-data-table th:nth-child(8),.discount-codes-admin .legacy-data-table td:nth-child(8){width:64px}
  .item-codes-admin .legacy-data-table{width:498px;min-width:498px;table-layout:fixed}
  .item-codes-admin .legacy-data-table th:nth-child(1),.item-codes-admin .legacy-data-table td:nth-child(1){width:79px}
  .item-codes-admin .legacy-data-table th:nth-child(2),.item-codes-admin .legacy-data-table td:nth-child(2){width:344px}
  .item-codes-admin .legacy-data-table th:nth-child(3),.item-codes-admin .legacy-data-table td:nth-child(3){width:75px}
  .discounts-table-shell .legacy-data-table{table-layout:fixed}
  .discounts-table-shell .legacy-data-table th:nth-child(1),.discounts-table-shell .legacy-data-table td:nth-child(1){width:58px}
  .discounts-table-shell .legacy-data-table th:nth-child(2),.discounts-table-shell .legacy-data-table td:nth-child(2){width:72px}
}
@media(max-width:400px){.discounts-table-shell .legacy-data-table{width:353px;min-width:353px}.discounts-table-shell .legacy-data-table th:nth-child(3),.discounts-table-shell .legacy-data-table td:nth-child(3){width:79px}.discounts-table-shell .legacy-data-table th:nth-child(4),.discounts-table-shell .legacy-data-table td:nth-child(4){width:72px}.discounts-table-shell .legacy-data-table th:nth-child(5),.discounts-table-shell .legacy-data-table td:nth-child(5){width:72px}}
@media(min-width:401px) and (max-width:767px){.discounts-table-shell .legacy-data-table{width:370px;min-width:370px}.discounts-table-shell .legacy-data-table th:nth-child(3),.discounts-table-shell .legacy-data-table td:nth-child(3){width:87px}.discounts-table-shell .legacy-data-table th:nth-child(4),.discounts-table-shell .legacy-data-table td:nth-child(4){width:73px}.discounts-table-shell .legacy-data-table th:nth-child(5),.discounts-table-shell .legacy-data-table td:nth-child(5){width:80px}}
@media(max-width:767px){.codes-admin .codes-create-fields,.codes-admin .codes-date-fields{grid-template-columns:minmax(0,1fr)}.codes-admin .codes-create-fields{gap:1rem}.codes-admin .codes-date-fields{gap:1rem}.codes-admin .codes-create-form{gap:1rem}.codes-admin [data-legacy-table] .overflow-x-auto{box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto}}
.codes-admin .codes-create-form>div.flex.justify-center button[type="submit"],.discount-codes-admin [data-discount-code-create]>div button[type="submit"]{height:2.75rem;min-height:2.75rem;padding:.5rem 1rem;font-size:.875rem}
.codes-admin tbody td button{height:2rem;min-height:2rem;padding:.25rem .75rem;font-size:.75rem}
.discount-codes-admin [data-legacy-table] tbody button{height:2rem;min-height:2rem;padding:.25rem .75rem;font-size:.75rem}
.item-codes-admin .item-code-textarea{min-height:80px;border-color:#6d28d980;padding:.5rem .75rem;color:#f3fbff;line-height:normal}
.item-codes-admin .item-code-edit-form button,.item-codes-admin .item-code-delete-form button{height:2.75rem;min-height:2.75rem;padding:.5rem 1rem;font-size:.875rem}
.legacy-data-table thead th button[data-table-sort],.legacy-data-table thead th button[data-table-filter]{box-sizing:border-box;min-width:1.375rem!important;width:1.375rem!important;height:1.375rem!important;min-height:1.375rem!important;padding:.25rem!important;border:0!important;border-radius:.5rem!important;background:transparent!important;color:#d5def2!important;box-shadow:none!important}
.codes-admin .legacy-table-search,.discount-codes-admin .legacy-table-search,.item-codes-admin .legacy-table-search,.discounts-table-shell .legacy-table-search{height:40px!important;min-height:40px!important}
.codes-admin [data-table-pages] button,.discount-codes-admin [data-table-pages] button,.item-codes-admin [data-table-pages] button,.discounts-table-shell [data-table-pages] button{font-size:13px!important;line-height:1.5!important}
.codes-admin label:has(>[data-table-size]),.discount-codes-admin label:has(>[data-table-size]),.item-codes-admin label:has(>[data-table-size]),.discounts-table-shell label:has(>[data-table-size]){margin:0!important}
.codes-admin .legacy-data-table thead th,.discount-codes-admin .legacy-data-table thead th,.item-codes-admin .legacy-data-table thead th,.discounts-table-shell .legacy-data-table thead th{border-bottom:0}
.legacy-column-popup:popover-open{position:fixed;inset:auto;margin:0;z-index:80;box-sizing:border-box;width:220px;max-width:calc(100vw - 16px);max-height:288px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#1a2340;padding:4px 0;text-align:left;box-shadow:0 20px 25px #0005;color:#f5f7ff}
.legacy-data-table thead th button[data-table-sort][data-sort-active],.legacy-data-table thead th button[data-table-filter][data-filter-active],.legacy-data-table thead th button[data-table-filter][aria-expanded="true"]{background:#e0f2fe!important;color:#041018!important}

/* B5 measurement: the category source uses an h-11 table head without
   vertical padding. Keep this correction scoped to categories/subcategories. */
@media(max-width:767px){[data-category-admin-table] .legacy-data-table th{padding-top:12px;padding-bottom:12px}}
@media(min-width:768px){[data-category-admin-table] .legacy-data-table th{padding-top:13px;padding-bottom:13px}}

/* B1-FIX8: mirror the measured Next.js mobile table-head line box.  The
   source uses 13px text at 1.65 line-height (21.45px) with 14px vertical
   cell padding; Laravel inherited the 16px body line-height instead. */
@media(max-width:767px){
  .codes-admin .legacy-data-table thead th,
  .discount-codes-admin .legacy-data-table thead th,
  .item-codes-admin .legacy-data-table thead th,
  .discounts-table-shell .legacy-data-table thead th{padding-top:14px;padding-bottom:14px;line-height:21.45px}
}

/* B1-FIX8: align the coupon editor's measured label/input row box and
   section heading spacing with the shared Next.js Label + space-y-2 form. */
.discount-codes-admin section:has(> form[data-discount-code-create])>h2{margin-bottom:25.5px}
.discount-codes-admin [data-discount-code-create] .space-y-2{display:flex;flex-direction:column;gap:2.39px}
.discount-codes-admin [data-discount-code-create] .space-y-2>:not([hidden])~:not([hidden]){margin-top:0}
.discount-codes-admin [data-discount-code-create] label{display:block;margin:0;font-size:15px;line-height:24px;font-weight:500}

/* B1-FIX8 remeasurement: the legacy mobile tables were pinned to widths from
   a previous screenshot. Restore intrinsic table sizing so header labels wrap
   according to their measured Next.js min-content widths. */
@media(max-width:767px){
  .codes-admin .legacy-data-table,
  .discount-codes-admin .legacy-data-table,
  .item-codes-admin .legacy-data-table,
  .discounts-table-shell .legacy-data-table{width:100%!important;min-width:0!important;table-layout:auto!important}
  .codes-admin .legacy-data-table th,.codes-admin .legacy-data-table td,
  .discount-codes-admin .legacy-data-table th,.discount-codes-admin .legacy-data-table td,
  .item-codes-admin .legacy-data-table th,.item-codes-admin .legacy-data-table td,
  .discounts-table-shell .legacy-data-table th,.discounts-table-shell .legacy-data-table td{width:auto!important;min-width:0!important}
  .codes-admin .legacy-data-table thead th .inline-flex.flex-col.items-center.gap-1>span:first-child,
  .discount-codes-admin .legacy-data-table thead th .inline-flex.flex-col.items-center.gap-1>span:first-child,
  .item-codes-admin .legacy-data-table thead th .inline-flex.flex-col.items-center.gap-1>span:first-child,
  .discounts-table-shell .legacy-data-table thead th .inline-flex.flex-col.items-center.gap-1>span:first-child{font-weight:600;letter-spacing:.025em}
}

/* Match the source SectionHeading (20px mobile / 24px desktop, 20px bottom
   gap) and the measured Label/Input rhythm in its coupon form. */
.discount-codes-admin section:has(>h2):has(>[data-discount-code-create])>h2{margin-bottom:20px;font-size:20px;line-height:27.5px}
@media(min-width:768px){.discount-codes-admin section:has(>h2):has(>[data-discount-code-create])>h2{font-size:24px;line-height:33px}}
.discount-codes-admin [data-discount-code-create] .space-y-2{gap:1.39px}
@media(max-width:767px){.discount-codes-admin [data-discount-code-create] .space-y-2{gap:.75px}}

/* Remove a Blade-only empty hint node from the header flex stack. Next.js
   renders no hint element until sorting/filtering is active. */
.codes-admin .legacy-data-table thead th [data-column-hint]:empty,
.discount-codes-admin .legacy-data-table thead th [data-column-hint]:empty,
.item-codes-admin .legacy-data-table thead th [data-column-hint]:empty,
.discounts-table-shell .legacy-data-table thead th [data-column-hint]:empty{display:none}

/* The source form uses normal text flow inside its Label/Input groups. Inline
   Labels reserve the body line box (26.4px desktop / 24.75px mobile); the
   Laravel flex override removed that baseline and shifted every following row. */
.discount-codes-admin [data-discount-code-create] .space-y-2:not([data-admin-thai-datetime]){display:block;gap:normal}
.discount-codes-admin [data-discount-code-create] .space-y-2:not([data-admin-thai-datetime])>:not([hidden])~:not([hidden]){margin-top:0}
.discount-codes-admin [data-discount-code-create] .space-y-2:not([data-admin-thai-datetime]) label{display:inline;margin:0 0 8px;font-size:15px;line-height:15px;font-weight:500}
.discount-codes-admin [data-discount-code-create] [data-admin-thai-datetime]{display:block;gap:normal}
.discount-codes-admin [data-discount-code-create] [data-admin-thai-datetime]>label{display:inline;margin:0 0 8px;font-size:15px;line-height:15px;font-weight:500}
.discount-codes-admin [data-discount-code-create] [data-admin-thai-datetime]>p.text-xs{margin-bottom:0}
@media(max-width:767px){.discount-codes-admin [data-discount-code-create]{font-size:15px;line-height:24.75px}}

/* Store filters follow the source h-10 controls; the global legacy form reset
   must not force these two controls to 44px on narrow screens. */
.legacy-product-filter input[name="q"],.legacy-product-filter select{min-height:40px}
.legacy-product-filter button{min-height:40px;padding-block:0}
.legacy-product-filter button{justify-content:center;text-align:center}
.legacy-cart-layout{grid-template-columns:minmax(0,1fr)}
@media(min-width:1024px){.legacy-cart-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}

/* Storefront B4 parity, based on source component geometry. Next.js keeps the
   16:9 slider wrapper full width and caps only its height; slides fill that
   wrapper absolutely. Applying the aspect ratio to Blade's figure instead
   constrained its width when the desktop height cap was reached. */
.legacy-hero{aspect-ratio:16/9;min-height:140px;max-height:min(42vh,420px)}
.legacy-hero figure{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;margin:0}
@media(min-width:640px){.legacy-hero{min-height:200px}}
@media(min-width:768px){.legacy-hero{max-height:380px}}
@media(min-width:1024px){.legacy-hero{max-height:420px}}

/* The source mobile product-search input is a 26px line box while its submit
   and platform select remain 40px controls. The global compatibility reset
   added 10px vertical padding and a 40px minimum to every input. */
@media(max-width:639px){.legacy-product-filter input[name="q"]{height:26px!important;min-height:26px!important;padding-top:0!important;padding-bottom:0!important;line-height:24.75px!important}}

/* Cart B4: preserve the source SectionHeading rhythm and the Radix Input/
   Label styles despite the legacy site-wide form reset. */
.legacy-cart-subtotal{margin-top:8px!important;font-size:15px;line-height:28px}
.legacy-cart-layout{margin-top:20px!important}
.legacy-cart-layout>aside label{display:block;color:#d5e4f4!important;font-size:15px;line-height:15px;font-weight:500;margin:0 0 8px}
.legacy-cart-layout>aside #cart-note{height:36px!important;min-height:36px!important;padding:4px 12px!important;border-color:rgba(109,40,217,.5);background:#1a1028;color:#f3fbff}
.legacy-cart-layout button[data-cart-delta]{height:32px!important;min-height:32px!important;padding:4px 12px!important;color:#d5e4f4!important;background:#0d0a16!important;border:1px solid #6d28d966!important;border-radius:8px}
.legacy-cart-layout input[name="quantity"]{height:32px!important;min-height:32px!important;padding:0!important}

/* Top-up channel parity: the site-wide `.grid` compatibility rule uses two
   columns on phones and otherwise overrides Tailwind's default grid sizing.
   Keep these settings stacked below the source's `sm` breakpoint. The source
   table cells use the 12px block padding and render member email/status as
   plain text. */
.topup-settings-grid{grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.topup-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.topup-settings-form label{margin:0;color:var(--foreground)}
.topup-settings-form .space-y-1\.5>label{display:inline;font-size:15px;line-height:15px;margin:0 0 6px}
.topup-settings-form input:not([type="checkbox"]){height:36px;min-height:36px;padding-top:4px;padding-bottom:4px}
.topup-settings-form input[type="checkbox"]{width:16px;height:16px;min-height:16px;margin:0}
.topup-settings-form button[type="submit"]{height:44px;min-height:44px;padding-top:8px;padding-bottom:8px}
.topup-table [data-table-search]{height:40px;min-height:40px}
.topup-table label{margin:0}
.topup-table .legacy-data-table td{padding-top:12px;padding-bottom:12px}
.topup-table .legacy-data-table td:last-child button[type="submit"]{height:32px;min-height:32px;padding:0 12px}
.topup-table .legacy-data-table [data-column-hint]:empty{display:none}
@media(max-width:639px){.topup-settings-form .space-y-1\.5{font-size:15px;line-height:1.65}}

select.order-status-select{width:auto!important;max-width:14rem;min-width:8rem;height:40px;min-height:40px;flex:0 0 auto!important}
@media(max-width:389px){.site-header-inner{padding-left:.5rem;padding-right:.5rem;gap:.25rem}.site-header-inner>.ml-auto{gap:.25rem}}
.home-category-grid{display:grid;width:100%;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.home-category-grid[data-count="1"]{grid-template-columns:minmax(0,1fr)}
.home-category-grid>li{display:flex;min-width:0}
.home-category-grid>li>a{display:flex;flex-direction:column;width:100%;height:100%}
.home-category-grid>li>a>div{display:flex;flex:1 1 auto;flex-direction:column;justify-content:center}
@media(min-width:640px){
.home-category-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1024px){
.home-category-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-category-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-category-grid[data-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.home-category-grid[data-count="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}
.home-category-grid[data-count="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}
}
