/* Shared admin list system. Keep business and storefront styles independent. */
.admin-page {
  --ink:#1f2329; --muted:#646a73; --line:#dee2e8; --paper:#f5f7fa;
  --store-primary:#e5483b; --store-primary-dark:#d63d32; --red:#e5483b;
  --admin-selected:#fff1ef; --admin-hover:#f7f8fa; --admin-placeholder:#8f959e;
  --admin-success:#167349; --admin-warning:#a25c08; --admin-danger:#c7352a;
  --admin-success-bg:#eaf6ee; --admin-warning-bg:#fff5e7;
  --admin-radius:8px; --admin-control-radius:6px; --admin-control-height:36px;
  --admin-gap-xs:4px; --admin-gap-sm:8px; --admin-gap:12px; --admin-space:16px; --admin-inset:24px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  font-size:14px; line-height:1.5; font-weight:400;
}
.admin-page .admin-shell {padding:0;max-width:none;}
.admin-page .admin-app {grid-template-columns:224px minmax(0,1fr);margin:0;min-height:100vh;background:var(--paper);}
.admin-page .admin-sidebar {box-shadow:none;}
.admin-page .admin-main {padding:0;min-width:0;}
.admin-page .admin-top {height:56px;min-height:56px;margin:0;padding:0 var(--admin-inset);}
.admin-page .admin-top h1 {font-size:16px;font-weight:600;}
.admin-page .tab-panel {padding:var(--admin-inset);min-width:0;}
.admin-page .admin-tabs button {height:44px;min-height:44px;font-weight:400;}
.admin-page .admin-tabs button.active {background:var(--store-primary);color:var(--white);}
.admin-page .admin-tab-icon {width:16px;height:16px;font-size:16px;}
.admin-page .admin-menu-toggle {display:none;}
.admin-page .admin-intro {display:flex;justify-content:space-between;gap:var(--admin-space);align-items:center;flex-wrap:wrap;margin:0 0 var(--admin-space);}
.admin-page .tab-panel .admin-intro h1 {font-size:24px;font-weight:600;margin:0;}
.admin-page .admin-intro p:not(.eyebrow) {font-size:14px;font-weight:400;margin-top:var(--admin-gap-sm);}
.admin-page :is([data-panel=products],[data-panel=orders],[data-panel=users],.category-modal,.admin-confirm-modal) :is(input,select,textarea,.button) {
  font:inherit;min-width:0;max-width:100%;border-radius:var(--admin-control-radius);box-shadow:none;
}
.admin-page :is([data-panel=products],[data-panel=orders],[data-panel=users],.category-modal,.admin-confirm-modal) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select) {
  height:var(--admin-control-height);min-height:var(--admin-control-height);padding:0 var(--admin-gap);border:1px solid var(--line);background:var(--white);color:var(--ink);width:100%;font-weight:400;
}
.admin-page :is([data-panel=products],[data-panel=orders],[data-panel=users],.category-modal,.admin-confirm-modal) textarea {padding:var(--admin-gap-sm) var(--admin-gap);border:1px solid var(--line);background:var(--white);color:var(--ink);font-weight:400;}
.admin-page input::placeholder,.admin-page textarea::placeholder {color:var(--admin-placeholder);}
.admin-page :is(input,select,textarea):hover {border-color:var(--muted);}
.admin-page :is(input,select,textarea,.button):focus-visible {outline:2px solid var(--admin-selected);outline-offset:1px;border-color:var(--store-primary);}
.admin-page :is([data-panel=products],[data-panel=orders],[data-panel=users],.category-modal,.admin-confirm-modal) .button {
  display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--admin-control-height);min-height:var(--admin-control-height);padding:0 var(--admin-space);font-weight:400;white-space:nowrap;border:1px solid var(--line);
}
.admin-page .button.primary {background:var(--store-primary);border-color:var(--store-primary);color:var(--white);}
.admin-page .button.primary:hover {background:var(--store-primary-dark);}
.admin-page .button.secondary {background:var(--white);color:var(--ink);border:1px solid var(--line);}
.admin-page :is(button,select,input):disabled {background:var(--admin-hover);color:var(--admin-placeholder);cursor:not-allowed;opacity:1;}
.admin-page .admin-filter-grid {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--admin-gap) var(--admin-space);align-items:end;
  height:auto;min-height:0;padding:var(--admin-space);margin:0 0 var(--admin-space);border:1px solid var(--line);border-radius:var(--admin-radius);background:var(--white);
}
.admin-page .admin-filter-grid :is(label,.admin-date-field) {display:grid;gap:6px;min-width:0;max-width:none;color:var(--muted);font-size:14px;font-weight:400;margin:0;}
.admin-page .admin-filter-grid input,.admin-page .admin-filter-grid select {width:100%;min-width:0;}
.admin-page .admin-date-field {grid-column:span 2;}
.admin-page .admin-date-range {display:flex;align-items:center;gap:var(--admin-gap-sm);min-width:0;}
.admin-page .admin-date-range input {flex:1;min-width:0;}
.admin-page [data-date-error] {color:var(--admin-danger);font-size:12px;}
.admin-page .admin-filter-actions {display:flex;gap:var(--admin-gap-sm);align-self:end;justify-content:flex-end;}
.admin-page .admin-pagination {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--admin-space);padding:var(--admin-space);margin:var(--admin-space) 0 0;border:0;border-top:1px solid var(--line);background:var(--white);font-size:14px;font-weight:400;color:var(--muted);}
.admin-page .admin-pagination-controls,.admin-page .admin-page-buttons {display:flex;align-items:center;gap:var(--admin-gap-sm);flex-wrap:wrap;}
.admin-page .admin-page-buttons {flex-wrap:nowrap;white-space:nowrap;}
.admin-page .admin-pagination label {display:flex;align-items:center;gap:var(--admin-gap-sm);font-weight:400;white-space:nowrap;}
.admin-page .admin-pagination select {width:auto;}
.admin-page .admin-list-feedback {display:flex;align-items:center;flex-wrap:wrap;gap:var(--admin-gap);color:var(--muted);}
.admin-page .admin-list-feedback:not(:empty) {padding:var(--admin-gap) 0;}
.admin-page .admin-list-feedback[role=alert] {color:var(--admin-danger);}
.admin-page :is(.admin-list,.admin-editor,.order-row,.user-row,.product-list-card,.category-modal section,.admin-confirm-modal section) {border:1px solid var(--line);border-radius:var(--admin-radius);padding:var(--admin-space);background:var(--white);box-shadow:none;min-width:0;}
.admin-page .admin-layout {grid-template-columns:288px minmax(0,1fr);gap:var(--admin-space);align-items:start;}
.admin-page :is(.category-list-item,.subcategory-list-item) {grid-template-columns:minmax(0,1fr) auto;gap:var(--admin-gap-sm);padding:var(--admin-gap);min-width:0;font:inherit;}
.admin-page .category-list-item > span {grid-column:1 / -1;}
.admin-page .subcategory-list-item > strong {grid-column:1 / -1;}
.admin-page :is(.category-list-item,.subcategory-list-item) strong {display:block;white-space:normal;overflow-wrap:anywhere;font-weight:600;}
.admin-page :is(.category-list-item small,.subcategory-list-item > span) {white-space:normal;font-weight:400;}
.admin-page :is(.category-list-item > i,.category-edit-action) {white-space:nowrap;font-weight:400;}
.admin-page .category-edit-action {justify-self:end;}
.admin-page .subcategory-admin {padding:var(--admin-gap);margin:var(--admin-space) 0 0;min-width:0;}
.admin-page .subcategory-admin .admin-list-head {flex-wrap:wrap;gap:var(--admin-gap-sm);}
.admin-page .subcategory-admin h2 {font-size:16px;overflow-wrap:anywhere;}
.admin-page .subcategory-list {scrollbar-gutter:stable;overflow-x:hidden;}
.admin-page :is(.orders-table,.users-table,.product-list) {display:grid;gap:var(--admin-gap);min-width:0;}
.admin-page :is(.order-row,.user-row) {gap:var(--admin-space);}
.admin-page :is(.order-row,.user-row,.product-list-card) :is(p,small,label,span) {font-weight:400;}
.admin-page :is(.order-row,.user-row,.product-list-card) strong {font-size:14px;font-weight:600;}
.admin-page :is(.order-row,.user-row) {overflow-wrap:anywhere;}
.admin-page :is(.order-actions,.balance-form) {min-width:0;}
.admin-page :is(.product-list-main,.product-list-title,.product-list-summary) {min-width:0;}
.admin-page .product-list-title {white-space:normal;overflow-wrap:anywhere;font-size:14px;font-weight:600;}
.admin-page :is(.product-list-price,.balance-value,.order-total) {font-variant-numeric:tabular-nums;font-weight:600;}
.admin-page .product-list-card.active {border-color:var(--store-primary);background:var(--admin-selected);}
.admin-page .product-list-card.active .button {background:var(--white);color:var(--ink);}
.admin-page :is(.category-list-item.active,.subcategory-list-item.active) {background:var(--admin-selected);color:var(--store-primary);border-color:var(--store-primary);}
.admin-page :is(.category-list-item.active,.subcategory-list-item.active) :is(strong,small,span,i) {color:inherit;}
.admin-page .product-list-card:hover {background:var(--admin-hover);}
.admin-page .status-pill {white-space:nowrap;font-weight:400;}
.admin-page :is(.status-pill.completed,.status-pill.paid,.status-pill.active) {background:var(--admin-success-bg);color:var(--admin-success);}
.admin-page :is(.status-pill.pending,.status-pill.confirmed,.status-pill.delivering) {background:var(--admin-warning-bg);color:var(--admin-warning);}
.admin-page .status-pill.failed {background:var(--admin-selected);color:var(--admin-danger);}
.admin-page .status-pill.cancelled {background:var(--admin-hover);color:var(--muted);}
.admin-page .balance-form label {font-size:14px;font-weight:400;}
.admin-page .product-form label {font-weight:400;}
.admin-page .product-form img {object-fit:contain;}
.admin-page .admin-record-title {display:flex;align-items:center;gap:var(--admin-gap-sm);margin-bottom:var(--admin-gap-sm);}
.admin-page .admin-record-title strong {margin:0;}
@media (max-width:1199px) {
  .admin-page .admin-filter-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-page .admin-layout {grid-template-columns:minmax(0,1fr);}
  .admin-page :is(.order-row,.user-row) {grid-template-columns:minmax(0,1fr);}
}
@media (max-width:767px) {
  .admin-page .admin-app {grid-template-columns:minmax(0,1fr);}
  .admin-page .admin-sidebar {position:static;height:auto;min-width:0;padding:var(--admin-space);}
  .admin-page .admin-sidebar-brand {margin:0 0 var(--admin-gap);min-height:36px;}
  .admin-page .admin-menu-toggle {display:inline-flex;margin-bottom:var(--admin-gap-sm);}
  .admin-page .admin-tabs {display:none;grid-auto-flow:row;overflow:visible;}
  .admin-page .menu-open .admin-tabs {display:grid;}
  .admin-page .admin-sidebar-logout {position:static;margin-top:var(--admin-gap-sm);}
  .admin-page .admin-top {padding:0 var(--admin-space);}
  .admin-page .tab-panel {padding:var(--admin-space);}
  .admin-page .admin-filter-grid {grid-template-columns:minmax(0,1fr);}
  .admin-page .admin-date-field {grid-column:span 1;}
  .admin-page .admin-filter-actions {justify-content:flex-start;}
  .admin-page .admin-date-range {flex-wrap:wrap;}
  .admin-page .admin-date-range input {flex-basis:100%;}
  .admin-page .admin-date-range > span {display:none;}
  .admin-page .product-toolbar {justify-content:flex-start;}
  .admin-page .admin-intro {align-items:flex-start;text-align:left;}
  .admin-page .balance-form,.admin-page .product-form {grid-template-columns:minmax(0,1fr);}
  .admin-page .product-form > * {grid-column:auto;}
  .admin-page .product-list-card {display:flex;flex-direction:column;align-items:stretch;}
  .admin-page .product-edit-button {position:static;align-self:flex-end;}
  .admin-page .product-list-main {padding-right:0;}
}

.admin-page .admin-password-modal section {display:block;}
.admin-page .admin-password-modal label {font-weight:400;}
