    /* ===== 商品管理 - 活体管理 ===== */
    #page-live-product.page.active { height: 100%; }
    .lp-page {
      height: 100%;
      padding: 16px;
      background: #f4f6fa;
      color: #303844;
      overflow: hidden;
    }
    .lp-svg-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
    .lp-shell {
      height: 100%;
      min-width: 1120px;
      display: grid;
      grid-template-columns: 238px minmax(0, 1fr);
      background: #fff;
      border: 1px solid #edf0f4;
      border-radius: 8px;
      box-shadow: 0 1px 4px rgba(24, 38, 66, .04);
      overflow: hidden;
    }
    .lp-category-panel {
      min-width: 0;
      display: flex;
      flex-direction: column;
      border-right: 1px solid #edf0f3;
      background: #fff;
    }
    .lp-category-actions {
      height: 80px;
      padding: 18px 14px;
      display: flex;
      align-items: center;
      gap: 10px;
      border-bottom: 1px solid #edf0f3;
      flex-shrink: 0;
    }
    .lp-btn {
      height: 38px;
      padding: 0 20px;
      border: 1px solid transparent;
      border-radius: 20px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      color: #5e6672;
      font-size: 14px;
      font-weight: 700;
      white-space: nowrap;
      cursor: pointer;
      transition: background .15s ease, border-color .15s ease, color .15s ease;
    }
    .lp-btn.primary { background: #69c292; color: #fff; box-shadow: 0 3px 10px rgba(76, 175, 130, .14); }
    .lp-btn.primary:hover { background: #58b984; }
    .lp-btn.outline { border-color: #dfe4ea; color: #949ca8; }
    .lp-btn.outline.dark { color: #303844; }
    .lp-btn.outline:hover { border-color: #6bc395; color: #45aa76; }
    .lp-category-list { padding: 22px 0; overflow: auto; }
    .lp-category-list button { width: 100%; border: 0; background: transparent; cursor: pointer; text-align: left; }
    .lp-category-all {
      height: 42px;
      padding: 0 30px;
      color: #626b77;
      font-size: 15px;
      font-weight: 700;
    }
    .lp-category-all.active { color: #49ae79; }
    .lp-category-item {
      height: 58px;
      padding: 0 30px;
      display: flex;
      align-items: center;
      gap: 12px;
      color: #414a56;
      font-size: 15px;
      font-weight: 700;
    }
    .lp-category-item:hover,
    .lp-category-item.active { background: #f2fbf6; color: #45aa76; }
    .lp-category-arrow { color: #505966; font-size: 22px; line-height: 1; }
    .lp-category-item.active .lp-category-arrow { color: #45aa76; }
    .lp-main { min-width: 0; display: flex; flex-direction: column; overflow: hidden; background: #fff; }
    .lp-toolbar {
      min-height: 80px;
      padding: 18px 16px;
      display: flex;
      align-items: center;
      gap: 14px;
      border-bottom: 1px solid #edf0f3;
      flex-shrink: 0;
    }
    .lp-search {
      width: 300px;
      height: 40px;
      padding: 0 15px;
      display: flex;
      align-items: center;
      gap: 8px;
      border: 1px solid #dfe4ea;
      border-radius: 21px;
      color: #5c6570;
      background: #fff;
      flex-shrink: 1;
    }
    .lp-search svg { width: 18px; height: 18px; flex-shrink: 0; }
    .lp-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: #374151; font-size: 14px; }
    .lp-search input::placeholder { color: #9199a5; }
    .lp-select-wrap { width: 176px; height: 40px; position: relative; flex-shrink: 1; }
    .lp-select-wrap select,
    .lp-status-select,
    .lp-page-size select {
      width: 100%;
      height: 100%;
      padding: 0 34px 0 15px;
      border: 1px solid #dfe4ea;
      border-radius: 21px;
      outline: 0;
      background: #fff;
      color: #858d99;
      font-size: 14px;
      cursor: pointer;
    }
    .lp-toolbar-spacer { flex: 1; min-width: 8px; }
    .lp-query { min-width: 88px; }
    .lp-add { min-width: 112px; }
    .lp-table-area { flex: 1; min-height: 0; display: flex; flex-direction: column; overflow: hidden; }
    .lp-table-scroll { flex: 1; min-height: 0; overflow-x: auto; overflow-y: auto; scrollbar-width: none; }
    .lp-table-scroll::-webkit-scrollbar { display: none; }
    .lp-table { width: 100%; min-width: 1320px; border-collapse: collapse; table-layout: fixed; font-size: 14px; }
    .lp-table col.select { width: 4%; }
    .lp-table col.picture { width: 8%; }
    .lp-table col.name { width: 15%; }
    .lp-table col.breed { width: 9%; }
    .lp-table col.sex { width: 8%; }
    .lp-table col.cost { width: 8%; }
    .lp-table col.price { width: 8%; }
    .lp-table col.status { width: 10%; }
    .lp-table col.package { width: 9%; }
    .lp-table col.actions { width: 21%; }
    .lp-table thead th {
      height: 58px;
      padding: 0 8px;
      background: #f4f6f9;
      border-bottom: 1px solid #edf0f3;
      color: #303844;
      font-size: 14px;
      font-weight: 800;
      text-align: center;
      white-space: nowrap;
    }
    .lp-table tbody tr { height: 112px; border-bottom: 1px solid #edf0f3; }
    .lp-table tbody tr:nth-child(even) { background: #f5f7fa; }
    .lp-table tbody tr:hover { background: #f0faf5; }
    .lp-table td { padding: 10px 8px; color: #4a535e; text-align: center; vertical-align: middle; }
    .lp-table .lp-text-left { text-align: left; }
    .lp-checkbox {
      appearance: none;
      width: 18px;
      height: 18px;
      margin: 0;
      border: 1px solid #d5dbe3;
      border-radius: 2px;
      background: #fff;
      cursor: pointer;
      vertical-align: middle;
      position: relative;
    }
    .lp-checkbox:checked,
    .lp-checkbox:indeterminate { border-color: #62bd8b; background: #62bd8b; }
    .lp-checkbox:checked::after {
      content: '';
      position: absolute;
      left: 5px;
      top: 2px;
      width: 5px;
      height: 9px;
      border: solid #fff;
      border-width: 0 2px 2px 0;
      transform: rotate(45deg);
    }
    .lp-checkbox:indeterminate::after { content: ''; position: absolute; left: 3px; right: 3px; top: 7px; height: 2px; background: #fff; }
    .lp-pet-avatar { width: 62px; height: 62px; display: block; margin: 0 auto; }
    .lp-name-link { border: 0; background: transparent; color: #5d8fff; font-size: 15px; font-weight: 700; cursor: pointer; }
    .lp-name-link:hover { color: #3d74ec; }
    .lp-status-select { width: 102px; height: 38px; padding-left: 16px; color: #414a55; font-weight: 700; }
    .lp-pill-action,
    .lp-row-actions button {
      height: 34px;
      padding: 0 14px;
      border: 1px solid #59b982;
      border-radius: 18px;
      background: #fff;
      color: #49aa76;
      font-size: 14px;
      font-weight: 700;
      white-space: nowrap;
      cursor: pointer;
    }
    .lp-pill-action:hover,
    .lp-row-actions button:hover { background: #f0faf5; }
    .lp-row-actions { display: flex; align-items: center; justify-content: center; gap: 8px; }
    .lp-row-actions button { height: 31px; padding: 0 12px; }
    .lp-row-actions button.delete { border-color: #dfe4ea; color: #4f5966; }
    .lp-row-actions button.delete:hover { background: #f7f8fa; }
    .lp-empty-row td { height: 220px; color: #9aa3af; background: #fff; }
    .lp-scrollbar { height: 42px; padding: 21px 16px 0; background: #fff; flex-shrink: 0; }
    .lp-scrollbar::before { content: ''; display: block; height: 10px; border-radius: 5px; background: #e6e8eb; }
    .lp-scrollbar span { display: block; width: 78%; height: 10px; margin-top: -10px; border-radius: 5px; background: #a8a8a8; }
    .lp-footer {
      min-height: 72px;
      padding: 0 16px;
      display: flex;
      align-items: center;
      gap: 12px;
      border-top: 1px solid #edf0f3;
      background: #fff;
      flex-shrink: 0;
    }
    .lp-check-label { display: flex; align-items: center; gap: 10px; color: #303844; font-size: 14px; white-space: nowrap; cursor: pointer; }
    .lp-selected { color: #9aa3af; font-size: 14px; white-space: nowrap; }
    .lp-batch {
      height: 36px;
      padding: 0 17px;
      border: 1px solid #dfe4ea;
      border-radius: 19px;
      background: #fff;
      color: #3e4752;
      font-size: 14px;
      font-weight: 700;
      cursor: pointer;
    }
    .lp-footer-spacer { flex: 1; }
    .lp-total { color: #4f5966; font-size: 14px; white-space: nowrap; }
    .lp-total strong { color: #303844; font-size: 16px; }
    .lp-page-btn,
    .lp-page-num,
    .lp-go-btn {
      width: 36px;
      height: 36px;
      border: 1px solid #dfe4ea;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      color: #a4abb4;
      font-size: 23px;
      line-height: 1;
      flex-shrink: 0;
    }
    .lp-page-num { color: #fff; font-size: 14px; }
    .lp-page-num.active { border-color: #69c292; background: #69c292; font-weight: 800; }
    .lp-page-size { width: 100px; height: 38px; }
    .lp-page-size select { padding: 0 12px; color: #4f5966; font-weight: 700; }
    .lp-go-text { color: #4f5966; font-size: 14px; white-space: nowrap; }
    .lp-go-input { width: 78px; height: 38px; border: 1px solid #dfe4ea; border-radius: 20px; outline: 0; text-align: center; color: #303844; font-size: 14px; }
    .lp-go-btn { width: 38px; color: #4faa77; font-size: 14px; font-weight: 800; cursor: pointer; }

    @media (max-width: 1500px) {
      .lp-toolbar { gap: 8px; }
      .lp-search { width: 245px; }
      .lp-select-wrap { width: 150px; }
      .lp-btn { padding: 0 15px; }
    }

    /* 活体管理：紧凑单屏布局 */
    .lp-page { padding: 12px; }
    .lp-shell {
      min-width: 0;
      grid-template-columns: 178px minmax(0, 1fr);
    }
    .lp-category-actions {
      height: 72px;
      padding: 14px 10px;
      gap: 6px;
    }
    .lp-btn {
      height: 34px;
      padding: 0 14px;
      font-size: 13px;
    }
    .lp-category-list { padding: 16px 0; }
    .lp-category-all {
      height: 38px;
      padding: 0 20px;
      font-size: 14px;
    }
    .lp-category-item {
      height: 50px;
      padding: 0 20px;
      font-size: 14px;
    }
    .lp-toolbar {
      min-height: 72px;
      padding: 14px 12px;
      gap: 8px;
    }
    .lp-search {
      width: clamp(190px, 24vw, 270px);
      height: 36px;
      padding: 0 12px;
    }
    .lp-search svg { width: 16px; height: 16px; }
    .lp-search input { font-size: 13px; }
    .lp-select-wrap {
      width: 148px;
      height: 36px;
      min-width: 124px;
      flex: 0 1 148px;
    }
    .lp-select-wrap select,
    .lp-status-select,
    .lp-page-size select {
      padding-left: 12px;
      padding-right: 28px;
      font-size: 13px;
    }
    .lp-toolbar-spacer { min-width: 2px; }
    .lp-query { min-width: 72px; }
    .lp-add { min-width: 96px; }
    .lp-table-scroll { overflow-x: hidden; }
    .lp-table {
      min-width: 0;
      font-size: 13px;
    }
    .lp-table col.select { width: 3.5%; }
    .lp-table col.picture { width: 7.5%; }
    .lp-table col.name { width: 15%; }
    .lp-table col.breed { width: 8.5%; }
    .lp-table col.sex { width: 6.5%; }
    .lp-table col.cost { width: 7.5%; }
    .lp-table col.price { width: 7.5%; }
    .lp-table col.status { width: 10%; }
    .lp-table col.package { width: 9%; }
    .lp-table col.actions { width: 25%; }
    .lp-table thead th {
      height: 52px;
      padding: 0 4px;
      font-size: 13px;
    }
    .lp-table tbody tr { height: 92px; }
    .lp-table td { padding: 8px 4px; }
    .lp-pet-avatar { width: 52px; height: 52px; }
    .lp-name-link { font-size: 13px; }
    .lp-status-select {
      width: 88px;
      height: 32px;
      padding-left: 11px;
      font-size: 12px;
    }
    .lp-pill-action,
    .lp-row-actions button {
      height: 30px;
      padding: 0 10px;
      font-size: 12px;
    }
    .lp-row-actions { gap: 4px; }
    .lp-row-actions button {
      height: 28px;
      padding: 0 7px;
    }
    .lp-scrollbar { display: none; }
    .lp-footer {
      min-height: 64px;
      padding: 0 12px;
      gap: 8px;
    }
    .lp-check-label {
      gap: 7px;
      font-size: 13px;
    }
    .lp-selected,
    .lp-total,
    .lp-go-text { font-size: 13px; }
    .lp-total strong { font-size: 14px; }
    .lp-batch {
      height: 32px;
      padding: 0 13px;
      font-size: 13px;
    }
    .lp-page-btn,
    .lp-page-num,
    .lp-go-btn {
      width: 32px;
      height: 32px;
    }
    .lp-page-size {
      width: 88px;
      height: 34px;
    }
    .lp-go-input {
      width: 64px;
      height: 34px;
      border-radius: 18px;
      font-size: 13px;
    }
    .lp-go-btn {
      width: 34px;
      font-size: 13px;
    }

    @media (max-width: 1500px) {
      .lp-shell { grid-template-columns: 164px minmax(0, 1fr); }
      .lp-toolbar { gap: 6px; }
      .lp-search { width: clamp(170px, 20vw, 220px); }
      .lp-select-wrap {
        width: 132px;
        min-width: 112px;
        flex-basis: 132px;
      }
      .lp-btn { padding: 0 11px; }
      .lp-table { font-size: 12px; }
      .lp-table col.name { width: 14%; }
      .lp-table col.actions { width: 26%; }
    }
    /* 品类设置交互样式见 web-pages-retail-live-category.css */
