:root{--brand-blue-400: #597ef7;--brand-blue-500: #2f54eb;--brand-blue-600: #1d39c4;--brand: var(--brand-blue-500);--charcoal-50: #fafaf9;--charcoal-100: #f5f5f4;--charcoal-200: #e7e5e4;--charcoal-500: #78716c;--background: var(--charcoal-50);--card: #ffffff;--text-primary: #171717;--text-secondary: #737373;--text-muted: #a3a3a3;--border: rgba(0, 0, 0, .08);--border-subtle: rgba(0, 0, 0, .06);--surface-hover: rgba(0, 0, 0, .04);--warning: #d97706;background:var(--background);color:var(--text-primary);font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}html{height:100%}body,#root,.ant-app{background:var(--background);height:100%;min-height:100%}body{margin:0}.admin-login{min-height:100vh;display:grid;grid-template-columns:minmax(280px,40%) 1fr;background:#fff}.admin-login-brand{background:linear-gradient(165deg,#2f54eb,#1d39c4);color:#fff;padding:64px 48px;display:flex;flex-direction:column;justify-content:center}.admin-login-mark{font-weight:800;font-size:20px;letter-spacing:.04em;margin-bottom:16px}.admin-login-brand h1{margin:0 0 12px;font-size:32px;line-height:1.25}.admin-login-brand p{margin:0;opacity:.92;font-size:15px}.admin-login-panel{display:flex;flex-direction:column;justify-content:center;padding:48px 56px;max-width:520px;margin:0 auto}@media(max-width:800px){.admin-login{grid-template-columns:1fr}.admin-login-brand{min-height:160px;padding:32px 24px}.admin-login-panel{padding:32px 24px 48px}}.admin-shell,.admin-shell.ant-layout{background:var(--background)!important;height:100%;max-height:100%;overflow:hidden}.admin-shell>.ant-layout{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.admin-sider,.admin-sider.ant-layout-sider-light{background:var(--card)!important;border-right:1px solid var(--border-subtle);height:100%!important;max-height:100%;overflow:hidden}.admin-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding-top:20px;padding-bottom:12px}.brand-lockup{align-items:center;display:flex;flex-shrink:0;gap:8px;height:36px;margin-bottom:20px;padding-inline:20px}.brand-lockup-title{font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.brand-lockup-badge{font-size:11px;font-weight:500;padding:1px 6px;border-radius:4px;background:#2f54eb14;color:var(--brand)}.admin-scroll{--admin-scroll-fade: var(--card);position:relative;display:flex;flex:1 1 0;flex-direction:column;min-height:0}.admin-scroll:before,.admin-scroll:after{content:"";height:28px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity .16s ease;z-index:1}.admin-scroll:before{background:linear-gradient(to bottom,var(--admin-scroll-fade) 0%,transparent 100%);top:0}.admin-scroll:after{background:linear-gradient(to top,var(--admin-scroll-fade) 0%,transparent 100%);bottom:0}.admin-scroll.is-fade-top:before,.admin-scroll.is-fade-bottom:after{opacity:1}.admin-scroll-viewport{flex:1 1 0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:color-mix(in srgb,var(--charcoal-500) 28%,transparent) transparent;scrollbar-width:thin}.admin-scroll-viewport::-webkit-scrollbar{width:6px}.admin-scroll-viewport::-webkit-scrollbar-track{background:transparent}.admin-scroll-viewport::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--charcoal-500) 28%,transparent);border-radius:999px}.admin-scroll-viewport::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--charcoal-500) 45%,transparent)}.admin-sider-scroll{--admin-scroll-fade: var(--card)}.admin-sider-menu{padding-inline:14px}.admin-sider .ant-menu-item .ant-menu-item-icon,.admin-sider .ant-menu-submenu-title .ant-menu-item-icon{align-items:center;display:inline-flex!important;justify-content:center;min-width:16px}.admin-sider .ant-menu-item .ant-menu-item-icon>svg,.admin-sider .ant-menu-submenu-title .ant-menu-item-icon>svg{display:block}.admin-content-scroll{--admin-scroll-fade: var(--background)}.admin-content-scroll>.admin-scroll-viewport{padding:16px 16px 24px}.admin-sider .ant-menu{background:transparent!important;border-inline-end:none!important}.admin-sider .ant-menu-item,.admin-sider .ant-menu-submenu-title{border-radius:10px!important;color:var(--charcoal-500)!important;margin-inline:0!important;transition:background-color .16s ease,color .16s ease;width:100%!important}.admin-sider .ant-menu-item:not(.ant-menu-item-selected):hover,.admin-sider .ant-menu-submenu-title:hover{background:var(--surface-hover)!important;color:var(--text-primary)!important}.admin-sider .ant-menu-item-selected{background:linear-gradient(to right,color-mix(in srgb,var(--brand-blue-500) 9%,transparent),color-mix(in srgb,var(--brand-blue-500) 3%,transparent))!important;color:var(--brand-blue-600)!important;font-weight:500}.admin-sider .ant-menu-item-selected:hover{background:linear-gradient(to right,color-mix(in srgb,var(--brand-blue-500) 9%,transparent),color-mix(in srgb,var(--brand-blue-500) 3%,transparent))!important;color:color-mix(in srgb,var(--brand-blue-600) 72%,transparent)!important}.admin-sider .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--brand-blue-600)!important;font-weight:500}.admin-header,.admin-header.ant-layout-header{align-items:center;background:var(--card)!important;border-bottom:none;display:flex;flex-shrink:0;height:64px;justify-content:space-between;line-height:1;padding:0 28px;z-index:10}.admin-header-title{align-items:center;display:flex;min-width:0}.admin-header-breadcrumb.ant-breadcrumb{color:var(--text-secondary);font-size:14px;font-weight:500;line-height:22px;margin:0;padding:0}.admin-header-breadcrumb.ant-breadcrumb ol{align-items:center;display:flex;flex-wrap:nowrap;gap:0;line-height:inherit;list-style:none;margin:0;padding:0}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item,.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-separator{align-items:center;display:inline-flex;height:22px;line-height:22px;margin:0;padding:0}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-separator{color:var(--text-muted);font-size:12px;margin-inline:6px}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-separator>svg{display:block}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item a,.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item>span{align-items:center;color:inherit;display:inline-flex;height:22px;line-height:22px;margin:0!important;padding:0!important}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item a{color:var(--charcoal-500)}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item a:hover{background:transparent!important;color:var(--brand-blue-600)}.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item:last-child,.admin-header-breadcrumb.ant-breadcrumb .ant-breadcrumb-item:last-child>span{color:var(--text-primary);font-weight:550}.admin-tabs-bar{background:var(--card);border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:0 16px;z-index:9}.admin-tabs.ant-tabs{margin:0}.admin-tabs.ant-tabs>.ant-tabs-nav{margin:0!important}.admin-tabs.ant-tabs>.ant-tabs-nav:before{border-bottom:none!important}.admin-tabs.ant-tabs .ant-tabs-nav-wrap{overflow:hidden;padding:6px 0 1px}.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before,.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after{bottom:0;box-shadow:none!important;content:"";opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .2s ease;width:40px!important;z-index:2}.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:before{background:linear-gradient(to right,var(--card) 0%,color-mix(in srgb,var(--card) 72%,transparent) 42%,transparent 100%);left:0}.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap:after{background:linear-gradient(to left,var(--card) 0%,color-mix(in srgb,var(--card) 72%,transparent) 42%,transparent 100%);right:0}.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap-ping-left:before,.admin-tabs.ant-tabs-top>.ant-tabs-nav .ant-tabs-nav-wrap-ping-right:after{opacity:1}.admin-tabs.ant-tabs .ant-tabs-tab{background:var(--charcoal-100)!important;border:1px solid var(--border-subtle)!important;border-radius:8px 8px 0 0!important;color:var(--text-secondary)!important;font-size:13px;margin:0 2px -1px!important;padding:6px 12px!important;transition:background .15s ease,color .15s ease,border-color .15s ease}.admin-tabs.ant-tabs .ant-tabs-tab:hover{color:var(--brand-blue-600)!important}.admin-tabs.ant-tabs .ant-tabs-tab-active{background:linear-gradient(to bottom,color-mix(in srgb,var(--brand-blue-500) 6%,var(--background)),var(--background) 72%)!important;border-color:var(--border-subtle)!important;border-bottom-color:var(--background)!important;color:var(--text-primary)!important;font-weight:550;position:relative;z-index:1}.admin-tabs.ant-tabs .ant-tabs-tab-remove{align-items:center;background:transparent;border-radius:4px;color:var(--text-muted)!important;display:inline-flex!important;flex-shrink:0;font-size:10px;height:18px!important;justify-content:center;margin-inline-start:4px!important;padding:0!important;transition:background .15s ease,color .15s ease;width:18px!important}.admin-tabs.ant-tabs .ant-tabs-tab-remove>svg{display:block}.admin-tabs.ant-tabs .ant-tabs-tab-remove:hover{background:#2f54eb1f!important;color:var(--brand-blue-600)!important}.admin-tabs.ant-tabs .ant-tabs-ink-bar,.admin-tabs.ant-tabs .ant-tabs-content-holder{display:none}.admin-tabs-label{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.admin-tab-content{min-height:0}.admin-account-trigger{align-items:center;background:transparent;border:0;border-radius:999px;color:inherit;cursor:pointer;display:inline-flex;font:inherit;gap:8px;padding:4px 8px 4px 4px}.admin-account-trigger:hover{background:var(--surface-hover)}.admin-account-avatar.ant-avatar{background:var(--brand-blue-600);color:#fff;flex-shrink:0;font-size:13px;font-weight:650}.admin-account-name{color:var(--text-primary);font-size:14px;font-weight:550;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-account-profile{display:grid;gap:2px;min-width:180px;padding:2px 0}.admin-account-profile strong{color:var(--text-primary);font-size:13px}.admin-account-profile span{color:var(--charcoal-500);font-size:12px}.admin-content,.admin-content.ant-layout-content{background:var(--background)!important;display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden;padding:0}.admin-page.ant-pro-page-container,.admin-page .ant-pro-grid-content,.admin-page .ant-pro-grid-content-children,.admin-page .ant-pro-page-container-children-container{background:transparent}.admin-page .ant-pro-page-container-children-container{padding-block:0;padding-inline:0}.admin-content .ant-tabs,.admin-content .ant-tabs-content,.admin-content .ant-tabs-tabpane,.admin-content .ant-pro-table,.admin-content .admin-table{background:transparent}.admin-content .ant-pro-table>.ant-pro-card,.admin-content .admin-table>.ant-pro-card{background:var(--card);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:none;overflow:hidden}.admin-content .ant-pro-table>.ant-pro-card.ant-pro-table-search,.admin-content .admin-table>.ant-pro-card.ant-pro-table-search{margin-block-end:12px}.admin-content .ant-pro-card{background:var(--card)}.admin-content .ant-pro-table .ant-pro-card-body,.admin-content .admin-table .ant-pro-card-body{padding-block:0}.admin-content .ant-pro-table .ant-pro-table-list-toolbar,.admin-content .admin-table .ant-pro-table-list-toolbar{border-bottom:1px solid var(--border-subtle);padding:12px 16px}.admin-content .ant-pro-table .ant-pro-table-list-toolbar-container,.admin-content .admin-table .ant-pro-table-list-toolbar-container{padding-block:0}.admin-content .ant-pro-table .ant-pro-table-list-toolbar-extra-line,.admin-content .admin-table .ant-pro-table-list-toolbar-extra-line{margin-top:12px}.admin-content .ant-pro-table .ant-pro-table-list-toolbar-title,.admin-content .admin-table .ant-pro-table-list-toolbar-title{color:var(--text-primary);font-size:14px;font-weight:650}.admin-content .admin-table .row-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;background:transparent;color:var(--text-secondary);cursor:grab;opacity:0}.admin-content .admin-table .ant-table-row:hover .row-drag-handle,.admin-content .admin-table tr.is-row-dragging .row-drag-handle,.admin-content .admin-table .row-drag-handle:active{opacity:1}.admin-content .admin-table tr.is-row-dragging .row-drag-handle{cursor:grabbing}.admin-content .ant-pro-table .ant-pagination,.admin-content .admin-table .ant-pagination{margin:12px 16px 16px!important}.admin-table-host{--admin-table-scroll-fade: var(--card);min-width:0}.admin-table-host .ant-table-container{position:relative}.admin-table-host .ant-table-container:before,.admin-table-host .ant-table-container:after{content:"";opacity:0;pointer-events:none;position:absolute;top:0;bottom:0;width:32px;transition:opacity .16s ease;z-index:4}.admin-table-host .ant-table-container:before{background:linear-gradient(to right,var(--admin-table-scroll-fade) 0%,transparent 100%);left:0}.admin-table-host .ant-table-container:after{background:linear-gradient(to left,var(--admin-table-scroll-fade) 0%,transparent 100%);right:0}.admin-table-host.is-fade-x-left .ant-table-container:before,.admin-table-host.is-fade-x-right .ant-table-container:after{opacity:1}.admin-content .admin-table .ant-table-thead>tr>th.ant-table-cell-fix-start,.admin-content .admin-table .ant-table-thead>tr>th.ant-table-cell-fix-end,.admin-content .admin-table .ant-table-thead>tr>th.ant-table-cell-fix-left,.admin-content .admin-table .ant-table-thead>tr>th.ant-table-cell-fix-right{background:var(--charcoal-50)!important}.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-start,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-end,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-left,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-right{background:var(--card)!important}.admin-content .admin-table .ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-start,.admin-content .admin-table .ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-end,.admin-content .admin-table .ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-left,.admin-content .admin-table .ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-right,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-start.ant-table-cell-row-hover,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-end.ant-table-cell-row-hover,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-left.ant-table-cell-row-hover,.admin-content .admin-table .ant-table-tbody>tr>td.ant-table-cell-fix-right.ant-table-cell-row-hover{background:color-mix(in srgb,var(--text-primary) 4%,var(--card))!important}.admin-more-menu-trigger.ant-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center}.admin-more-menu-trigger.ant-btn .anticon,.admin-more-menu-trigger.ant-btn svg{display:block;font-size:16px;margin:0}.admin-more-menu-dropdown{animation:none!important;opacity:1!important;transform:none!important}.admin-more-menu-dropdown.ant-dropdown-hidden,.admin-more-menu-dropdown[class*=-leave]{display:none!important}.workbench{display:flex;flex-direction:column;gap:16px}.workbench-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.workbench-hello{margin:0;font-size:20px;font-weight:650;line-height:1.3;color:var(--text-primary)}.workbench-date{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.workbench-queues{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workbench-queue-card{appearance:none;width:100%;margin:0;padding:14px 16px;text-align:left;cursor:pointer;background:var(--card);border:1px solid var(--border);border-radius:8px;color:inherit;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.workbench-queue-card:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--border));box-shadow:0 1px color-mix(in srgb,var(--brand) 8%,transparent)}.workbench-queue-card:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.workbench-queue-card.is-warn{border-color:color-mix(in srgb,var(--warning) 50%,var(--border))}.workbench-queue-card.is-alert{border-color:color-mix(in srgb,#dc2626 42%,var(--border))}.workbench-queue-kicker{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary)}.workbench-queue-kicker-flag{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:12px}.workbench-queue-card.is-warn .workbench-queue-kicker-flag{color:var(--warning)}.workbench-queue-card.is-alert .workbench-queue-kicker-flag{color:#dc2626}.workbench-queue-value{margin:6px 0 2px;font-size:28px;font-weight:650;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--text-primary)}.workbench-queue-hint{margin:0;font-size:12px;color:var(--text-muted);line-height:1.4}.workbench-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:12px}.workbench-panel{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:16px;min-height:180px}.workbench-panel h2{margin:0 0 12px;font-size:14px;font-weight:650}.workbench-empty{margin:0;color:var(--text-muted);font-size:13px}.workbench-exception{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--border-subtle);background:transparent;cursor:pointer;font:inherit;color:inherit;text-align:left}.workbench-exception:last-child{border-bottom:0;padding-bottom:0}.workbench-exception:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.workbench-exception-title{font-size:13px;font-weight:550}.workbench-exception-meta{margin-top:2px;font-size:12px;color:var(--text-muted)}.workbench-exception-wait{flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.workbench-shortcuts{display:flex;flex-wrap:wrap;gap:8px}.workbench-today{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px 16px;font-size:13px}.workbench-today-label{color:var(--text-secondary);font-weight:550}.workbench-today-item{color:var(--text-primary);font-variant-numeric:tabular-nums}@media(max-width:1100px){.workbench-queues{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.workbench-queues,.workbench-split{grid-template-columns:1fr}.workbench-head{flex-direction:column}}.product-edit-page{display:flex;flex-direction:column;gap:16px;position:relative}.product-edit-header-bar{position:sticky;top:-16px;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 2px 10px #0000000a;gap:16px}.product-edit-header-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.product-edit-back-btn{display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.product-edit-back-btn:hover{color:var(--brand);background:var(--surface-hover)}.product-edit-header-title-wrap{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.product-edit-header-title{font-size:16px;font-weight:650;color:var(--text-primary);max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-edit-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.product-edit-side{position:sticky;top:60px;max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.product-edit-page .ant-card{box-shadow:0 1px 2px #00000005}.product-edit-page .ant-card-head{padding:0 20px;min-height:48px;border-bottom:1px solid var(--border-subtle)}.product-edit-page .ant-card-head-title{font-size:14px;font-weight:650}.product-edit-page .ant-card-body{padding:20px}.product-edit-page .ant-card .ant-form-item:last-child{margin-bottom:0}.product-spec-card .ant-card-body{padding:0!important}.product-spec-options-wrap{padding:16px 20px;background:var(--charcoal-50);border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:12px}.product-spec-option-item{background:#fff;border:1px solid var(--border);border-radius:8px;padding:14px 16px;transition:border-color .15s ease}.product-spec-option-item:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--border))}.product-sku-table-wrap{width:100%;overflow:hidden;border-radius:0 0 12px 12px}.product-sku-table-wrap .ant-table{background:transparent}.product-sku-table-wrap .ant-table-container{border-radius:0 0 12px 12px}.product-sku-table-wrap .ant-table-thead>tr>th{background:var(--charcoal-50)!important;font-weight:600;font-size:13px;color:var(--text-secondary);padding:10px 12px!important;border-bottom:1px solid var(--border-subtle)!important}.product-sku-table-wrap .ant-table-tbody>tr>td{padding:8px 12px!important;border-bottom:1px solid var(--border-subtle)!important}.product-sku-table-wrap .ant-table-tbody>tr:last-child>td{border-bottom:none!important}.product-sku-img-cell{position:relative;width:40px;height:40px;border-radius:6px;border:1px dashed var(--border);background:#fafaf9;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:all .15s ease;margin:0 auto;padding:0;color:inherit;font:inherit}.product-sku-img-cell:hover{border-color:var(--brand);background:#2f54eb0a}.product-sku-img-cell:hover .admin-media.is-empty{color:var(--brand)}.product-media-gallery{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.product-media-card{width:108px;display:flex;flex-direction:column;gap:6px}.product-media-item{width:108px;height:108px;position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--border-subtle);background:#fafaf9}.product-media-video,.file-card-video{width:100%;height:100%;object-fit:cover;display:block;background:#111}.product-media-badge{position:absolute;top:4px;left:4px;background:var(--brand);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.4;box-shadow:0 1px 4px #00000026}.product-media-badge.is-kind{left:auto;right:4px;background:#111}.product-media-actions{position:absolute;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .16s ease}.product-media-item:hover .product-media-actions{opacity:1}.product-media-btn{width:28px;height:28px;border-radius:6px;background:#fff;color:var(--text-primary);border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s ease}.product-media-btn:hover{background:#f0f0f0;transform:scale(1.06)}.product-media-btn.is-danger:hover{background:#fee2e2;color:#dc2626}.product-media-uploader{width:108px;height:108px;border:1px dashed var(--border);border-radius:8px;background:var(--charcoal-50);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--text-secondary);font-size:12px;font-family:inherit;padding:0;transition:all .15s ease}.product-media-uploader:hover{border-color:var(--brand);color:var(--brand);background:#2f54eb0a}.product-media-hint{margin-top:8px;font-size:12px;color:var(--text-muted)}.detail-html-editor{display:flex;flex-direction:column;height:408px;min-height:408px;max-height:850px;resize:vertical;overflow:hidden;border:1px solid var(--border-subtle);border-radius:12px;background:#fff;position:relative;transition:border-color .15s ease}.detail-html-editor:focus-within{border-color:color-mix(in srgb,var(--brand) 40%,var(--border-subtle))}.detail-html-editor .w-e-bar{flex-shrink:0;background:var(--charcoal-50);border-bottom:1px solid var(--border-subtle)}.detail-html-editor-body{flex:1 1 0%;min-height:0;display:flex;flex-direction:column;height:auto!important}.detail-html-editor .w-e-text-container{flex:1 1 0%!important;min-height:0!important;height:100%!important;background-color:transparent!important}.detail-html-editor .w-e-text-container .w-e-scroll{height:100%!important;overflow-y:auto!important}.detail-html-editor-resizer{flex-shrink:0;height:12px;background:var(--charcoal-50);border-top:1px solid var(--border-subtle);cursor:ns-resize;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.detail-html-editor-resizer:hover{background:color-mix(in srgb,var(--brand) 8%,var(--charcoal-100))}.detail-html-editor-resizer-line{width:36px;height:3px;border-radius:999px;background:var(--border);transition:background-color .15s ease,width .15s ease}.detail-html-editor-resizer:hover .detail-html-editor-resizer-line{background:var(--brand);width:48px}.detail-html-editor-skel{height:408px;min-height:408px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--card)}.file-library{display:flex;gap:16px;align-items:stretch;min-height:640px}.file-library-nav{width:168px;flex-shrink:0;display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--card);border:1px solid var(--border);border-radius:12px}.file-library-nav.is-collapsed{display:none}.file-library-nav button{border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:8px;color:var(--text-secondary);cursor:pointer}.file-library-nav button.is-active,.file-library-nav button:hover{background:var(--surface-hover);color:var(--text-primary)}.file-library-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px;padding-block:16px;background:var(--card);border:1px solid var(--border);border-radius:12px}.file-library-toolbar,.file-library-pager,.file-grid,.file-library-main>.ant-empty{padding-inline:16px}.file-library-main>.ant-table-wrapper{margin-inline:0;padding-inline:0}.file-library-toolbar,.file-library-pager{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.file-library-toolbar .ant-btn{display:inline-flex;align-items:center}.file-library-toolbar .ant-btn .ant-btn-icon{display:inline-flex;align-items:center;line-height:0}.file-library-toolbar .ant-btn .ant-btn-icon svg{display:block}.file-library-toolbar .file-view-segmented.ant-segmented{align-items:center}.file-library-toolbar .file-view-segmented .ant-segmented-item-label{position:relative;display:flex;align-items:center;justify-content:center;width:32px;min-height:28px;padding:0;line-height:0}.file-library-toolbar .file-view-segmented .ant-segmented-item-label>span:not(.ant-segmented-item-icon),.file-view-segmented-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-library-toolbar .file-view-segmented .ant-segmented-item-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-inline:0;line-height:0}.file-library-toolbar .file-view-segmented .ant-segmented-item-icon svg{display:block}.file-library-toolbar .file-view-segmented .ant-segmented-item-selected{color:var(--brand)}.file-upload-dialog{display:flex;flex-direction:column;gap:16px}.file-upload-dialog .ant-upload-drag svg{display:block;margin:0 auto 8px}.file-library-pager{justify-content:flex-end}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.file-grid.is-compact{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));max-height:280px;overflow:auto}.file-grid.is-compact .file-card-body{padding:6px 8px 8px}.file-grid.is-compact .file-card-body strong{font-size:12px}.image-source-drop{display:block;margin-bottom:16px}.image-source-drop .ant-upload-drag{border-radius:12px;background:var(--charcoal-50)}.image-source-drop-icon{display:flex;justify-content:center;margin-bottom:8px;color:var(--text-muted)}.image-source-drop-title{font-size:14px;color:var(--text-primary)}.image-source-drop-hint{margin-top:4px;font-size:12px;color:var(--text-muted)}.attachment-library-pending{min-height:160px}.image-source-library-label{margin-bottom:8px;font-size:13px;font-weight:600;color:var(--text-secondary)}.file-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}button.file-card{padding:0;text-align:left;cursor:pointer;font:inherit;color:inherit}button.file-card.is-selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 25%,transparent)}.file-card-thumb,.file-thumb{display:flex;align-items:center;justify-content:center;background:var(--charcoal-100);color:var(--text-muted);overflow:hidden}.file-card-thumb{aspect-ratio:1}.file-thumb{width:40px;height:40px;border-radius:6px;font-size:10px}.file-card-thumb img,.file-thumb img,.file-card-thumb video{width:100%;height:100%;object-fit:cover}.file-card-body{display:flex;flex-direction:column;gap:4px;padding:10px 12px 12px;font-size:12px;color:var(--text-secondary)}.file-card-body strong{color:var(--text-primary);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-media{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden;vertical-align:middle;flex:none;line-height:0;color:var(--text-muted);background:linear-gradient(180deg,#fafaf9,#f3f2f1)}.admin-media.is-framed{border:1px solid var(--border-subtle)}.admin-media-slot{position:relative}.admin-media-slot>.admin-media,.product-media-item>.admin-media,.product-sku-img-cell>.admin-media{position:absolute;inset:0;width:100%;height:100%}.admin-media.is-error{color:#c45c4a;background:#fff6f4}.admin-media.is-framed.is-error{border-style:dashed;border-color:#f0d0c8}.admin-media.is-shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.72) 50%,transparent 100%);animation:admin-media-shimmer 1.15s ease-in-out infinite;pointer-events:none}.admin-media-glyph{display:flex;width:clamp(12px,42%,28px);height:clamp(12px,42%,28px)}.admin-media-glyph svg{width:100%;height:100%}.admin-media>img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;opacity:0}.admin-media.is-ready>img{opacity:1}.admin-media.is-contain>img{object-fit:contain}.admin-media.is-previewable{cursor:zoom-in}.admin-media-mask{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000059;color:#fff;opacity:0;transition:opacity .15s ease;pointer-events:none}.admin-media.is-previewable:hover .admin-media-mask,.admin-media.is-previewable:focus-visible .admin-media-mask{opacity:1}@keyframes admin-media-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.admin-media.is-shimmer:after{animation:none}}
