/* 只作用于内部订单；复用现有 c-page/c-card/c-field/c-btn/c-dialog。 */
.io-page { min-height:100%; font-size:14px; }
.io-page:not(.io-production-page) { width:100%; max-width:1220px; margin-inline:auto; }
.io-page .io-notice { padding:12px 16px; margin:0 0 20px; border:1px solid #dce6de; background:#f0f4ef; border-radius:8px; color:#526b47; line-height:1.6; }
.io-page .io-tabs { display:flex; gap:26px; overflow-x:auto; border-bottom:1px solid #dce6de; margin-bottom:20px; }
.io-page .io-tabs button { flex-shrink:0; padding:12px 2px; border:0; border-bottom:2px solid transparent; background:none; font:inherit; color:#718078; cursor:pointer; }
.io-page .io-tabs button.is-active { color:#355944; border-bottom-color:#355944; font-weight:600; }
.io-page .io-admin-topbar { display:flex; align-items:flex-start; gap:16px; margin-bottom:20px; }
.io-page .io-admin-topbar .io-tabs { flex:1 1 auto; min-width:0; margin-bottom:0; }
.io-page .io-admin-topbar > .c-btn { flex:0 0 auto; margin-top:3px; }
.io-page .io-admin-topbar > .io-tabs button.is-active {
  padding: 10px 14px;
  border-bottom-color: transparent;
  border-radius: 8px;
  background: #355944;
  color: #fff;
}
.io-page .io-admin-topbar > .c-btn,
.io-page .io-admin-orders [data-filter-form],
.io-page .io-admin-orders [data-filter-form] label,
.io-page .io-admin-orders [data-filter-form] input,
.io-page .io-admin-orders [data-filter-form] select,
.io-page .io-admin-orders [data-filter-form] button {
  font-size: 12px;
}
.io-page [data-panel] > .c-card > .c-toolbar,
.io-page [data-panel] > .c-card > .c-toolbar label,
.io-page [data-panel] > .c-card > .c-toolbar input,
.io-page [data-panel] > .c-card > .c-toolbar button,
.io-page [data-panel] > .c-card > .io-muted {
  font-size: 12px;
}
.io-page .io-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:12px; margin-bottom:20px; }
.io-page .io-summary .c-card { margin:0; padding:16px; }
.io-page .io-summary span { color:#718078; font-size:13px; }
.io-page .io-summary strong { display:block; margin-top:10px; font-size:24px; font-weight:600; }
.io-page .c-toolbar { align-items:flex-end; }
.io-page .c-toolbar .c-field { flex:1 1 145px; }
.io-page .c-field input,.io-page .c-field select { min-height:40px; padding:9px 11px; }
.io-page .io-actions,.io-page .io-card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.io-page .io-actions { margin-bottom:18px; }
.io-page .io-actions .c-toolbar { margin-bottom:0; }
.io-page .io-order-period-tabs { flex:1 1 auto; min-width:0; margin-bottom:0; }
.io-page .io-store-stats-header { margin-bottom:18px; }
.io-page .io-store-stats-periods { margin-bottom:12px; }
.io-page .io-store-stats-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:14px; }
.io-page .io-store-stats-controls span { color:#425248; }
.io-page .io-store-stats-table table { white-space:normal; }
.io-page .io-store-stats-table th,.io-page .io-store-stats-table td { width:25%; }
.io-page .io-card-head h2 { margin:0; font-size:18px; }
.io-page .io-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:16px; }
.io-page .io-cards .c-card { margin:0; }
.io-page .io-status { display:inline-block; padding:4px 8px; border-radius:6px; background:#f1f4f1; color:#68756d; white-space:nowrap; font-size:12px; }
.io-page .io-status-0 { background:#f5f1e9;color:#8b6840; }
.io-page .io-status-1 { background:#FFED8B;color:#526b47; }
.io-page .io-status-2 { background:#edf1f5;color:#536677; }
.io-page .io-status-3 { background:#edf3ef;color:#355f49; }
.io-page .io-status-voided { background:#f1f1ef;color:#777d78; }
.io-page .io-order-states { display:inline-flex; align-items:center; justify-content:flex-end; gap:6px; flex-wrap:wrap; }
.io-page .io-table-wrap { overflow-x:auto; width:100%; }
.io-page table { width:100%; border-collapse:collapse; white-space:nowrap; text-align:left; }
.io-page .io-admin-orders { padding:18px; }
.io-page .io-admin-orders table { table-layout:fixed; min-width:860px; }
.io-page .io-admin-orders th:nth-child(1) { width:17%; }
.io-page .io-admin-orders th:nth-child(2) { width:11%; }
.io-page .io-admin-orders th:nth-child(3) { width:25%; }
.io-page .io-admin-orders th:nth-child(4) { width:10%; }
.io-page .io-admin-orders th:nth-child(5) { width:9%; }
.io-page .io-admin-orders th:nth-child(6),.io-page .io-admin-orders th:nth-child(7) { width:14%; }
.io-page .io-admin-orders th:nth-child(7),.io-page .io-admin-orders td:nth-child(7) { border-left:1px solid #edf1ed; padding-left:16px; }
.io-page .io-admin-orders td:nth-child(6),.io-page .io-admin-orders td:nth-child(7) { font-size:12px; font-variant-numeric:tabular-nums; line-height:1.45; white-space:normal; }
.io-page .io-item-count { color:#718078; }
.io-page th { padding:10px 12px; border-bottom:1px solid #dce5de; color:#7e8a82; font-size:12px; font-weight:600; }
.io-page td { padding:13px 12px; border-bottom:1px solid #edf1ed; color:#425248; font-size:13px; line-height:1.7; }
.io-page tbody tr[data-detail] { cursor:pointer; }
.io-page tbody tr:hover { background:#fafcf9; }
.io-page td .c-btn { padding:0; border:0; background:none; color:#355944; font-size:13px; text-align:left; }
.io-page td .c-field { margin:0; }
.io-page td input { max-width:110px; }
.io-page .io-empty { padding:30px 16px; color:#718078; white-space:normal; text-align:center; }
.io-page .io-muted { color:#718078; }
.io-page .io-feedback { color:#355944; line-height:1.7; }
.io-page footer { margin-top:20px; }
.io-page .io-dialog { width:min(780px,calc(100vw - 32px)); max-width:780px; max-height:min(84vh,760px); padding:0; font:inherit; overflow:hidden; }
.io-page .io-dialog > header { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0; padding:18px 22px; border-bottom:1px solid #e5ebe7; background:#fff; }
.io-page .io-dialog > header h2 { margin:0; font-size:20px; }
.io-page .io-dialog-body { overflow-y:auto; max-height:calc(min(84vh,760px) - 132px); padding:20px 22px; overscroll-behavior:contain; }
.io-page .io-detail-dialog .io-dialog-body { max-height:calc(min(84vh,760px) - 65px); }
.io-page .io-dialog > .io-dialog-footer { display:flex; justify-content:flex-end; margin:0; padding:14px 22px; border-top:1px solid #e5ebe7; background:#fff; }
.io-page .io-product-line { display:grid; grid-template-columns:minmax(0,1fr) 90px auto; gap:10px; align-items:center; }
.io-page .io-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 28px; margin:0; line-height:1.5; }
.io-page .io-details > div { min-width:0; }
.io-page .io-details dt { color:#718078; }
.io-page .io-details dd { margin:0; overflow-wrap:anywhere; }
.io-page .io-detail-section + .io-detail-section { margin-top:24px; padding-top:20px; border-top:1px solid #edf1ed; }
.io-page .io-detail-section h3 { margin:0 0 14px; font-size:15px; }
.io-page .io-detail-products { display:grid; grid-template-columns:minmax(260px,320px) 64px minmax(0,1fr); column-gap:12px; border-top:1px solid #edf1ed; }
.io-page .io-detail-product { display:grid; grid-column:1/-1; grid-template-columns:subgrid; align-items:center; padding:11px 0; border-bottom:1px solid #edf1ed; }
.io-page .io-detail-product strong { min-width:0; max-width:none; overflow-wrap:anywhere; }
.io-page .io-detail-product .io-detail-qty { color:#718078; white-space:nowrap; text-align:center; }
.io-page .io-detail-product small { display:flex; align-items:flex-end; flex-direction:column; gap:5px; justify-self:end; color:#718078; white-space:nowrap; text-align:right; }
.io-page .io-detail-product.is-voided { opacity:.66; }
.io-page .io-detail-qty em { display:block; margin-top:2px; color:#8b9791; font-size:10px; font-style:normal; }
.io-page .io-detail-actions { display:flex; justify-content:flex-end; gap:6px; }
.io-page .io-detail-actions .c-btn { padding:3px 7px; font-size:11px; }
.io-page .io-detail-order-actions { display:flex; justify-content:flex-end; margin-top:14px; }
.io-page .io-detail-head-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; padding:0 0 14px; border-bottom:1px solid #edf1ee; }
.io-page .io-more-actions { position:relative; }
.io-page .io-more-actions summary { list-style:none; cursor:pointer; border:1px solid #d9e1d9; border-radius:8px; padding:9px 14px; color:#355944; font-size:14px; }
.io-page .io-more-actions summary::-webkit-details-marker { display:none; }
.io-page .io-more-actions[open] > .c-btn { position:absolute; z-index:2; right:0; top:calc(100% + 6px); min-width:112px; color:#914a47; background:#fff; box-shadow:0 8px 22px rgba(30,48,38,.14); }
.io-page .io-flow { list-style:none; padding:0; line-height:1.8; }
.io-page .io-flow li:not(:last-child)::after { content:'↓'; display:block; color:#718078; padding:4px 20px; }
.io-page .io-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.io-page button:focus-visible { outline:2px solid #6f9876; outline-offset:3px; }
@media(max-width:600px) {
  .io-page .io-store-stats-table { padding:10px; }
  .io-page .io-store-stats-table th,.io-page .io-store-stats-table td { padding:9px 5px; font-size:12px; overflow-wrap:anywhere; }
  .io-page .io-store-stats-controls { justify-content:flex-start; }
  .io-page .io-store-stats-controls span { order:-1; flex:0 0 100%; }
  .io-page .io-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .io-page .io-tabs { gap:20px; }
  .io-page .io-product-line { grid-template-columns:minmax(0,1fr) 70px; }
  .io-page .io-product-line > button { grid-column:1/-1; justify-self:end; }
  .io-page .io-card-head { align-items:flex-start; }
  .io-page .io-dialog { width:calc(100vw - 20px); }
  .io-page .io-dialog-body { padding:16px; }
  .io-page .io-details { grid-template-columns:1fr; }
  .io-page .io-detail-products { grid-template-columns:minmax(0,1fr) 56px; column-gap:8px; }
  .io-page .io-detail-product { grid-template-columns:subgrid; row-gap:5px; }
  .io-page .io-detail-product small { grid-column:1/-1; justify-self:start; }
  .io-page .io-detail-product small { white-space:normal; }
}

/* 生产执行卡片独享布局：整卡全宽，完整清单自然增高，不影响其他端。 */
.io-page.io-production-page { max-width:none; }
.io-page .io-production-cards { grid-template-columns:minmax(0,1fr); }
.io-page .io-production-card { min-width:0; }
.io-page .io-production-products { display:grid; grid-template-columns:minmax(0,1fr); width:100%; max-width:720px; margin:18px 0; padding:0; list-style:none; }
.io-page .io-production-product { display:grid; grid-template-columns:minmax(0,max-content) auto auto; justify-content:start; align-items:baseline; column-gap:16px; padding:14px 0; border-bottom:1px solid #e6eae4; min-width:0; }
.io-page .io-production-name { font-size:16px; font-weight:600; line-height:1.6; white-space:normal; overflow-wrap:anywhere; }
.io-page .io-production-qty { font-size:17px; font-weight:700; color:#25372f; white-space:nowrap; }
.io-page .io-production-product .c-btn { white-space:nowrap; }
.io-page .io-production-completed { color:#355944; font-weight:600; }
.io-page .io-production-product.is-voided { opacity:.58; }

/* 真实完成人/时间允许换行，仍与该产品保持同一信息组。 */
.io-page .io-production-product .io-status { white-space:normal; overflow-wrap:anywhere; max-width:220px; }
@media(max-width:600px) {
  .io-page .io-production-product .io-status { max-width:140px; }
}

/* Production internal-order list and delivery drawer. */
.io-production-page{padding:30px 32px 40px;background:#f6f7f3}
.io-production-page>.io-tabs{gap:20px;margin:0 0 28px;border:0}
.io-production-page>.io-tabs button{display:inline-flex;align-items:center;justify-content:center;min-width:98px;height:36px;padding:0 16px;border:1px solid #214D4C;border-radius:9px;background:#fff;color:#214D4C;font-size:12px}
.io-production-page>.io-tabs button.is-active{border-bottom-color:#214D4C;background:#214D4C;color:#fff;font-weight:500}
.io-production-page .io-production-orders{padding:20px 28px;border:1px solid #c9d9d6;border-radius:16px;box-shadow:none;background:#fff}
.io-production-page .io-production-orders table{min-width:920px;table-layout:fixed}
.io-production-page .io-production-orders th{padding:10px 12px;border-bottom:1px solid #d9dfdb;background:#fff;color:#515d57;font-size:12px;font-weight:600}
.io-production-page .io-production-orders th:nth-child(1){width:19%}.io-production-page .io-production-orders th:nth-child(2){width:15%}.io-production-page .io-production-orders th:nth-child(3){width:13%}.io-production-page .io-production-orders th:nth-child(4){width:11%}.io-production-page .io-production-orders th:nth-child(5){width:22%}.io-production-page .io-production-orders th:nth-child(6){width:10%}.io-production-page .io-production-orders th:nth-child(7){width:10%}
.io-production-page .io-production-orders td{height:54px;padding:8px 12px;border:0;color:#626d67;font-size:12px;font-weight:500;vertical-align:middle}
.io-production-page .io-production-orders td .c-btn{display:inline-flex;align-items:center;justify-content:center;min-width:68px;height:30px;padding:0 12px;border:1px solid #214D4C;border-radius:6px;background:#214D4C;color:#fff;font-size:12px}
.io-production-page .io-production-orders .io-order-states{justify-content:flex-start}.io-production-page .io-production-orders .io-status{min-width:68px;padding:5px 10px;text-align:center}
.io-page .io-dialog.io-delivery-drawer{position:fixed;inset:0 0 0 auto;display:flex;width:min(530px,calc(100vw - 36px));max-width:530px;height:100dvh;max-height:100dvh;margin:0;padding:0;flex-direction:column;border:0;border-radius:0;background:#fff;box-shadow:-18px 0 48px #17241a28;transform:none}
.io-page .io-delivery-drawer::backdrop{background:#17241a66}
.io-page .io-delivery-drawer>header{flex:0 0 72px;padding:0 46px;border-bottom:1px solid #e7ece8}.io-page .io-delivery-drawer>header h2{color:#214D4C;font-size:20px}.io-page .io-delivery-drawer>header [data-close]{min-width:32px;padding:0;border:0;background:transparent;color:#52635a;font-size:24px}
.io-page .io-delivery-drawer>.io-dialog-body{flex:1;max-height:none;padding:12px 46px 24px;overflow-y:auto}
.io-delivery-products{border-bottom:1px solid #e6ebe7}
.io-delivery-product{display:grid;grid-template-columns:minmax(0,1fr) 58px 92px;gap:12px;align-items:center;min-height:70px;color:#333}
.io-delivery-product strong{min-width:0;font-size:15px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.io-delivery-product>span{font-size:15px;white-space:nowrap}.io-delivery-product>em{color:#718078;font-size:12px;font-style:normal;text-align:right}
.io-delivery-product>.c-btn{justify-self:end;min-width:78px;height:32px;padding:0 12px;border:1px solid #214D4C;border-radius:6px;background:#214D4C;color:#fff;font-size:12px}.io-delivery-product.is-voided{opacity:.55}
.io-page .io-delivery-drawer>.io-delivery-footer{flex:0 0 86px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:0 46px;border-top:0;background:#fff}.io-delivery-footer p{margin:0;color:#ff735f;font-size:12px}.io-delivery-footer .c-btn{flex:0 0 auto;min-width:88px;height:38px;border-color:#214D4C;background:#214D4C;color:#fff;font-size:12px}
@media(max-width:700px){.io-production-page{padding:18px 14px 28px}.io-production-page .io-production-orders{padding:14px}.io-page .io-dialog.io-delivery-drawer{width:min(440px,100vw)}.io-page .io-delivery-drawer>header,.io-page .io-delivery-drawer>.io-dialog-body,.io-page .io-delivery-drawer>.io-delivery-footer{padding-left:20px;padding-right:20px}.io-delivery-product{grid-template-columns:minmax(0,1fr) 46px 76px}}

.io-page .io-dialog.io-deliver-quantity-dialog{width:min(440px,calc(100vw - 32px));max-width:440px;max-height:min(520px,calc(100dvh - 32px))}
.io-page .io-deliver-quantity-dialog>.io-dialog-body{max-height:320px;padding:20px 22px 10px}
.io-page .io-deliver-quantity-dialog>footer.io-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0;padding:14px 22px 20px;border-top:0}
.io-page .io-deliver-quantity-dialog>footer.io-actions .c-btn{min-width:68px;height:34px;padding:0 12px;font-size:12px}

/* 统计长产品名称保留横向阅读，窄屏只在表格容器内滚动。 */
.io-page .io-stats-table table { min-width:560px; }
.io-page .io-stats-table { padding:14px; }
.io-page .io-stats-table th { padding:8px 10px; }
.io-page .io-stats-table td { padding:8px 10px; line-height:1.4; }

/* 门店软删除操作与历史标记，仅限内部订单模块。 */
.io-page .io-status-deleted { background:#f1f1ef; color:#6d706c; }
.io-page .io-delete-button,.io-page [data-action="delete-order"] { color:#925b4d; border-color:#dfcec7; }
