/* 效期管理紧凑首屏：逻辑不变，少占竖向空间，多露商品卡 */
.expiry-heading,.expiry-meta,.expiry-imports,.expiry-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.expiry-heading{justify-content:space-between;margin:0 0 2px}
.expiry-heading strong{font-size:15px;line-height:1.3}
.expiry-tag{font-size:11px;color:var(--muted)}
.expiry-intro{margin:0 0 4px;font-size:12px;color:var(--muted)}
.expiry-intro>summary{cursor:pointer;list-style:none;line-height:1.35;padding:2px 0;color:var(--muted)}
.expiry-intro>summary::-webkit-details-marker{display:none}
.expiry-intro>summary::before{content:"▸ ";color:var(--costco-blue)}
.expiry-intro[open]>summary::before{content:"▾ "}
.expiry-intro .feature-note{margin:4px 0 0;font-size:12px;line-height:1.4}
.expiry-imports{margin:4px 0;gap:6px}
.expiry-imports .file-picker{flex:1;min-width:0;min-height:32px;padding:0;font-size:12px}
.expiry-imports .file-picker span{display:block;text-align:center;padding:6px 6px;line-height:1.25;min-height:32px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.expiry-settings,.expiry-preview{border:1px solid var(--line);border-radius:8px;padding:8px;margin:6px 0}
.expiry-settings summary,.expiry-preview summary,.expiry-inline summary{cursor:pointer;font-size:12px;line-height:1.35;min-height:0;padding:2px 0}
.expiry-settings .feature-note{margin:4px 0;font-size:12px;line-height:1.4}
.expiry-check{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;margin:8px 0}
.expiry-check input{width:auto;flex:0 0 auto;margin-top:3px}
.expiry-message{font-size:12px;line-height:1.4;padding:2px 0;margin:0;overflow-wrap:anywhere}
.expiry-message:empty{display:none;padding:0}
.expiry-preview-file{border-bottom:1px solid var(--line);padding:6px 0}
.expiry-preview-file p{margin:4px 0;overflow-wrap:anywhere}
.expiry-preview-file input{max-width:180px}
[data-expiry-root]>[data-expiry-source],
[data-expiry-root]>.feature-note[data-expiry-source]{margin:2px 0;font-size:11px;line-height:1.35;color:var(--muted)}
.expiry-toolbar{display:flex;gap:6px;margin:4px 0 2px}
.expiry-toolbar button{flex:1;font-size:12px;padding:5px 8px;min-height:32px}
.expiry-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;margin:2px 0 4px}
.expiry-filters input{grid-column:1/-1;min-height:34px;padding:5px 8px;font-size:14px}
.expiry-filters select{min-width:0;width:100%;min-height:34px;padding:4px 6px;font-size:13px}
.expiry-meta{font-size:12px;color:var(--muted);margin:4px 0;justify-content:space-between;gap:4px}
.expiry-inline{margin:6px 0}
.expiry-card{margin:6px 0;padding:10px}
.expiry-card strong{overflow-wrap:anywhere;font-size:14px;line-height:1.35}
.expiry-card .feature-note{margin:4px 0;font-size:12px;line-height:1.35}
.expiry-actions{gap:6px;margin:6px 0 0}
.expiry-actions button{font-size:12px;min-height:32px;padding:5px 8px}
.expiry-card .data-warning{font-size:12px;margin:4px 0}
[data-expiry-results]>.lookup-meta{margin:4px 0 2px;font-size:11px}
/* 效期页 panel 内首屏再收一点竖向空白（不影响导航格子） */
.panel:has([data-expiry-root]){padding-top:8px;padding-bottom:8px}
@media(max-width:700px){
  .expiry-imports .file-picker span{padding:5px 4px;font-size:12px}
  .expiry-toolbar button{padding:4px 6px}
  .expiry-card{padding:8px;margin:5px 0}
}

  .expiry-intro>summary::before{color:#7eb6ff}
}

/* 导出并入 Daily 行，去掉整行大按钮 */
.expiry-source-row{display:flex;align-items:center;gap:8px;margin:2px 0 4px;min-width:0}
.expiry-source-row>[data-expiry-source]{flex:1;min-width:0;margin:0!important;font-size:11px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.expiry-source-row .expiry-export-link{flex:0 0 auto;min-height:28px!important;height:28px;padding:0 8px!important;font-size:12px;font-weight:600;border-radius:6px}
.expiry-settings{padding:4px 8px;margin:4px 0}
.expiry-settings>summary{min-height:28px;align-content:center;font-size:12px}
.expiry-imports{margin:2px 0 4px}
[data-expiry-root] .expiry-imports .file-picker{min-height:30px!important;height:auto;padding:0!important}
[data-expiry-root] .expiry-imports .file-picker>span{min-height:30px;padding:4px 4px;font-size:12px;font-weight:600}
.expiry-message{font-size:11px;line-height:1.35;padding:0;margin:0 0 2px}
.expiry-filters{gap:5px;margin:0 0 2px}
.expiry-filters input{min-height:32px!important;padding:4px 8px;font-size:14px}
.expiry-filters select{min-height:32px!important;padding:3px 4px;font-size:12px}
.expiry-intro{margin:0 0 2px}
.expiry-heading{margin:0}
.panel:has([data-expiry-root]){padding:8px}
.expiry-toolbar{display:none} /* legacy */
@media(prefers-color-scheme:dark){
  .expiry-intro>summary::before{color:#7eb6ff}
}
/* 批次行：照参考站 w.zlorne.chatgpt.site（单行紧凑、数量+单位同行、标红只变色不加粗） */
.expiry-batch{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(55px,.65fr);gap:5px;align-items:center;padding:5px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.35}
.expiry-batch>*{min-width:0;font-weight:400}
.expiry-batch>:last-child{text-align:right}
.expiry-batch>span:first-child{white-space:nowrap}
.expiry-batch small{display:block;font-size:10px}
.expiry-batch>b{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}
.expiry-batch>b small{display:inline;font-size:10px;line-height:inherit;margin-left:2px;color:var(--muted);font-weight:600}
.expiry-batch-head{color:var(--muted);font-size:11px}
.expiry-batch:last-child{padding-bottom:3px}
.expiry-batch.is-expired,.expiry-batch.is-near{color:#cf2834}
.expiry-batch.is-expired>*,.expiry-batch.is-near>*{color:inherit}
.expiry-batch.is-expired>b small,.expiry-batch.is-near>b small{color:var(--muted)}
.lookup-card.expiry-card{padding:8px 10px}
@media(prefers-color-scheme:dark){.expiry-batch.is-expired,.expiry-batch.is-near{color:#ff6d78}}

/* 收起/展开视图 */
.expiry-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0}
.expiry-list-head .lookup-meta{margin:0;flex:1;min-width:0}
[data-expiry-root] .expiry-view-toggle{flex:0 0 auto;min-width:88px;min-height:44px;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--costco-blue,#005daa);font-size:13px;font-weight:700}
[data-expiry-root] .expiry-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:52px;height:auto;margin:5px 0;padding:7px 10px;text-align:left;background:inherit;color:inherit;font:inherit;font-weight:400;cursor:pointer;border:1px solid var(--line);border-radius:10px;box-sizing:border-box}
.expiry-row-main{display:flex;flex-direction:column;min-width:0;flex:1}
.expiry-row-main strong{font-size:13px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.expiry-row-main small{font-size:11px;color:var(--muted);line-height:1.35}
.expiry-row-main em{font-style:normal;color:#a12535}
.expiry-row-when{display:flex;flex-direction:column;align-items:flex-end;flex:0 0 auto;text-align:right;line-height:1.3;font-size:12px}
.expiry-row-when b{font-weight:600;font-variant-numeric:tabular-nums}
.expiry-row-when small{font-size:11px;color:var(--muted)}
.expiry-row-when.is-expired,.expiry-row-when.is-near,.expiry-row-when.is-expired small,.expiry-row-when.is-near small{color:#cf2834}
.expiry-row-none{font-size:11px;color:var(--muted)}
[data-expiry-root] .expiry-card-close{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;height:auto;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.expiry-card-close strong{min-width:0}
.expiry-card-close span{flex:0 0 auto;font-size:12px;color:var(--costco-blue,#005daa);font-weight:700}
@media(prefers-color-scheme:dark){.expiry-row-when.is-expired,.expiry-row-when.is-near,.expiry-row-when.is-expired small,.expiry-row-when.is-near small{color:#ff6d78}[data-expiry-root] .expiry-view-toggle{background:#111!important;color:#8fc3ff;border-color:#333}[data-expiry-root] .expiry-row{background:#000!important;color:#e6edf3}.expiry-card-close span,.expiry-row-main em{color:#8fc3ff}.expiry-row-main em{color:#ff8a9c}}

/* beat mobile `.panel button{height:var(--mobile-control-height)!important}` */
.panel [data-expiry-root] button.expiry-view-toggle.expiry-view-toggle{min-height:44px!important;height:44px!important;padding:0 12px!important;border-radius:8px!important}
.panel [data-expiry-root] button.expiry-row.expiry-row{min-height:52px!important;height:auto!important;padding:8px 10px!important;border-radius:10px!important}
.panel [data-expiry-root] button.expiry-card-close.expiry-card-close{min-height:44px!important;height:auto!important}

/* 操作区收起：数据库式查找，只留搜索+部门 */
[data-expiry-root].is-ops-collapsed [data-expiry-ops]{display:none}
.expiry-lookup-bar{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(88px,.85fr);gap:6px;margin:0 0 4px;align-items:center}
.expiry-lookup-bar input[type=search],.expiry-lookup-bar select{min-width:0;width:100%;min-height:36px;padding:5px 8px;font-size:14px;border-radius:6px;box-sizing:border-box}
.expiry-ops-filter{margin:4px 0 2px}
.expiry-ops-filter select{width:100%;min-height:32px;padding:4px 6px;font-size:13px}
.panel [data-expiry-root] button.expiry-view-toggle.expiry-view-toggle{min-width:104px}

/* 仅箭头：整段商品列表显隐（对齐展示品 hidden） */
[data-expiry-root] .expiry-list-arrow{flex:0 0 auto;min-width:44px;width:44px;min-height:44px;height:44px;padding:0;font-size:16px;font-weight:700;line-height:1;border-radius:8px}
.panel [data-expiry-root] button.expiry-list-arrow.expiry-list-arrow{min-height:44px!important;height:44px!important;width:44px!important;padding:0!important}
.expiry-list-section[hidden]{display:none!important}

/* 按部门分组（对齐截图：▶ 部门 + 右侧统计） */
[data-expiry-root] .expiry-dept-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:48px;margin:6px 0;padding:10px 12px;text-align:left;background:#fff;color:inherit;font:inherit;font-weight:400;cursor:pointer;border:1px solid var(--line,#d7dde5);border-radius:10px;box-sizing:border-box}
[data-expiry-root] .expiry-dept-main{display:flex;align-items:center;gap:8px;min-width:0}
[data-expiry-root] .expiry-dept-arrow{flex:0 0 auto;color:var(--costco-blue,#005daa);font-size:12px;line-height:1;width:1em}
[data-expiry-root] .expiry-dept-row strong{font-size:15px;font-weight:700;color:var(--text,#1a2b3c)}
[data-expiry-root] .expiry-dept-meta{flex:0 0 auto;font-size:12px;color:var(--muted,#6b7c8f);white-space:nowrap}
[data-expiry-root] .expiry-dept-body{padding:0 0 4px 4px;margin:0 0 8px}
[data-expiry-root] .expiry-dept-body .expiry-row,[data-expiry-root] .expiry-dept-body .expiry-card{margin-left:2px}
.panel [data-expiry-root] button.expiry-dept-row.expiry-dept-row{min-height:48px!important;height:auto!important;padding:10px 12px!important;border-radius:10px!important}
@media(prefers-color-scheme:dark){
 [data-expiry-root] .expiry-dept-row{background:#111;border-color:#333}
 [data-expiry-root] .expiry-dept-row strong{color:#e8eef5}
 [data-expiry-root] .expiry-dept-arrow{color:#8fc3ff}
 [data-expiry-root] .expiry-dept-meta{color:#9aabbc}
}

/* Daily 文件名行已移除：仅保留导出按钮（未导入时仍显示提示） */
[data-expiry-root] [data-expiry-source][hidden]{display:none!important}
.expiry-source-row.is-no-source{justify-content:flex-start}
