
/* NICHU AUTO V7.15 · 租车今日运营中心 */
.rental-ops-center{margin:0 0 18px;padding:18px;border:1px solid #dfe2e6;border-radius:17px;background:linear-gradient(180deg,#fff,#fafbfc);box-shadow:0 10px 30px rgba(24,28,34,.045)}
.rental-ops-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.rental-ops-eyebrow{display:block;margin-bottom:5px;color:#a3202d;font-size:9px;font-weight:900;letter-spacing:.15em}
.rental-ops-head h2{margin:0;font-size:21px}.rental-ops-head p{margin:5px 0 0;color:#747980;font-size:11px}
.rental-ops-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.rental-ops-bridge-state{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#eef1f4;color:#626870;font-size:10px;font-weight:800}
.rental-ops-bridge-state.ok{background:#e9f7ef;color:#087144}.rental-ops-bridge-state.warn{background:#fff5df;color:#8c5b00}
.rental-ops-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:16px 0 12px}
.rental-ops-kpis button{border:1px solid #e2e5e8;border-radius:13px;background:#fff;padding:13px 14px;text-align:left;cursor:pointer;transition:.18s}
.rental-ops-kpis button:hover{border-color:#b7bcc2;transform:translateY(-1px)}
.rental-ops-kpis small,.rental-ops-kpis span{display:block}.rental-ops-kpis small{font-size:10px;color:#737981}.rental-ops-kpis strong{display:block;margin:4px 0 2px;font-size:27px;line-height:1}.rental-ops-kpis span{font-size:9px;color:#969ba2}
.rental-ops-tabs{display:flex;gap:7px;overflow:auto;padding:2px 0 11px;border-bottom:1px solid #eceef0}
.rental-ops-tabs button{white-space:nowrap;border:1px solid #e0e3e6;background:#fff;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:800;cursor:pointer}.rental-ops-tabs button.active{background:#191b1f;color:#fff;border-color:#191b1f}
.rental-ops-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:12px}
.rental-ops-card{position:relative;border:1px solid #e2e5e8;border-radius:14px;background:#fff;padding:14px;overflow:hidden}
.rental-ops-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#8ba4be}.rental-ops-card.pickup:before{background:#26835e}.rental-ops-card.return:before{background:#b97b24}.rental-ops-card.attention:before{background:#c32938}
.rental-ops-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rental-ops-card-time{font-size:22px;font-weight:900;line-height:1;color:#181a1e}.rental-ops-card-time small{display:block;margin-top:5px;font-size:9px;color:#868b92;font-weight:700}
.rental-ops-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef1f4;color:#5b626a;font-size:9px;font-weight:900}.rental-ops-status.extended{background:#fff0d8;color:#8a5700}.rental-ops-status.overdue{background:#ffe9ec;color:#aa1826}
.rental-ops-card h3{margin:11px 0 4px;font-size:15px}.rental-ops-order{font-size:10px;color:#737980}
.rental-ops-route{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin:12px 0;padding:10px;border-radius:10px;background:#f7f8f9}.rental-ops-route div small,.rental-ops-route div b{display:block}.rental-ops-route div small{font-size:8px;color:#90959b}.rental-ops-route div b{margin-top:3px;font-size:10px}.rental-ops-route i{font-style:normal;color:#aaa}
.rental-ops-extension{margin:9px 0;padding:9px 10px;border-radius:9px;background:#fff7e7;color:#7f580c;font-size:9px;line-height:1.55}
.rental-ops-progress{margin:9px 0;color:#626871;font-size:9px}
.rental-ops-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px;padding-top:11px;border-top:1px solid #eceef0}.rental-ops-card-actions button{font-size:10px}
.rental-ops-empty{grid-column:1/-1;padding:32px;text-align:center;color:#7e848b;border:1px dashed #d9dde1;border-radius:12px}
.rental-ops-conflict{margin-top:12px;padding:11px 13px;border-radius:10px;background:#fff0f1;border:1px solid #efc7cb;color:#9c1d29;font-size:10px;line-height:1.6}
.rental-extension-card{width:min(650px,calc(100vw - 30px))}
.rental-extension-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.rental-extension-summary>div{padding:12px;border-radius:11px;background:#f5f6f7}.rental-extension-summary small,.rental-extension-summary b{display:block}.rental-extension-summary small{font-size:9px;color:#80858c}.rental-extension-summary b{margin-top:4px;font-size:14px}
.rental-extension-conflict{margin:12px 0;padding:12px;border-radius:11px;background:#fff0f1;border:1px solid #efc3c7;color:#9d1826;font-size:11px;line-height:1.65}
.rental-extension-history-note{display:flex;gap:11px;margin-top:12px;padding:11px;border-radius:10px;background:#eef5ff;color:#3f556e;font-size:10px;line-height:1.55}.rental-extension-history-note b{white-space:nowrap;color:#234e7c}
@media(max-width:900px){.rental-ops-kpis{grid-template-columns:repeat(2,1fr)}.rental-ops-board{grid-template-columns:1fr}}
@media(max-width:650px){.rental-ops-center{padding:13px}.rental-ops-head{display:block}.rental-ops-actions{justify-content:flex-start;margin-top:12px}.rental-extension-summary{grid-template-columns:1fr}.rental-ops-card-actions button{flex:1}}


/* ===== V7.15.2 取/还车 + 门店双重分色 ===== */
.rental-ops-card.action-pickup{background:linear-gradient(180deg,#f7fbff 0,#fff 52%);border-color:#cfe2f6}
.rental-ops-card.action-return{background:linear-gradient(180deg,#fffaf2 0,#fff 52%);border-color:#ecd7b6}
.rental-ops-card.confirmed{opacity:.72;background:#f5f6f7!important;border-color:#dfe2e5!important}
.rental-ops-card.confirmed:before{background:#8c939a!important}
.rental-ops-card.store-nishi:before{background:#2e8b62}
.rental-ops-card.store-narita:before{background:#2977c9}
.rental-ops-card.store-haneda:before{background:#6656c7}
.rental-ops-card.store-osaka:before{background:#cf3e4c}
.rental-ops-card.store-shinagawa:before{background:#3b8794}
.rental-ops-card.store-shinjuku:before{background:#8b5b2c}
.rental-ops-card.store-other:before{background:#858b91}
.rental-ops-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.rental-action-badge,.rental-store-badge,.rental-offline-badge{display:inline-flex;align-items:center;min-height:22px;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:900;line-height:1}
.rental-action-badge.pickup{background:#dceefe;color:#155b9e}
.rental-action-badge.return{background:#ffebca;color:#8a5700}
.rental-store-badge.nishi{background:#e4f5ec;color:#176542}
.rental-store-badge.narita{background:#e2effd;color:#175fa6}
.rental-store-badge.haneda{background:#ece9ff;color:#5141a8}
.rental-store-badge.osaka{background:#ffe6e8;color:#a92130}
.rental-store-badge.shinagawa{background:#e3f4f6;color:#286e78}
.rental-store-badge.shinjuku{background:#f5eadf;color:#75451f}
.rental-store-badge.other{background:#eceeef;color:#61676d}
.rental-offline-badge{background:#222;color:#fff}
.rental-ops-status.done{background:#e7f5ec;color:#157044}
.quick-confirm-btn{border:1px solid transparent;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:900;cursor:pointer}
.quick-confirm-btn.pickup{background:#e3f2ff;border-color:#b9d9f5;color:#155e9d}
.quick-confirm-btn.return{background:#fff0d5;border-color:#ecd0a0;color:#875400}
.quick-confirm-btn:hover{filter:brightness(.97)}


/* V7.15.3 三固定门店今日速报 */
.rental-store-board{
  display:grid;
  gap:16px;
  padding-top:14px
}

.rental-fixed-store{
  border:1px solid #dfe3e7;
  border-radius:16px;
  background:#fff;
  overflow:hidden
}

.fixed-store-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  background:#f7f8f9;
  border-bottom:1px solid #e7eaed
}

.fixed-store-code{
  display:block;
  margin-bottom:4px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.16em;
  color:#a41f2d
}

.fixed-store-head h3{
  margin:0;
  font-size:17px
}

.fixed-store-head p{
  margin:4px 0 0;
  color:#838890;
  font-size:9px
}

.fixed-store-counts{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end
}

.fixed-store-counts span{
  display:inline-flex;
  padding:6px 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:900
}

.fixed-store-counts .pickup-count{
  background:#e2f1ff;
  color:#155d9d
}

.fixed-store-counts .return-count{
  background:#ffefd4;
  color:#865300
}

.fixed-store-counts .outside-count{
  background:#ffe8eb;
  color:#a31d2b
}

.fixed-store-groups{
  display:grid;
  grid-template-columns:1fr 1fr
}

.fixed-task-group{
  min-width:0;
  padding:13px
}

.fixed-task-group + .fixed-task-group{
  border-left:1px solid #edf0f2
}

.fixed-task-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:9px;
  padding:0 2px
}

.fixed-task-title b{
  font-size:11px
}

.fixed-task-title span{
  font-size:9px;
  color:#8a9097
}

.fixed-task-list{
  display:grid;
  gap:9px
}

.store-empty{
  min-height:76px;
  display:grid;
  place-items:center;
  border:1px dashed #dce0e4;
  border-radius:11px;
  color:#9aa0a7;
  font-size:10px;
  background:#fbfbfc
}

.fixed-task-group .rental-ops-card{
  margin:0
}

.rental-ops-card{
  position:relative
}

.rental-ops-card.action-pickup{
  background:#f7fbff!important
}

.rental-ops-card.action-return{
  background:#fffaf2!important
}

.rental-outside-badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:4px 8px;
  border-radius:999px;
  background:#ffe9eb;
  color:#a51e2c;
  font-size:9px;
  font-weight:900;
  line-height:1
}

.outside-corner{
  position:absolute;
  right:-27px;
  top:14px;
  z-index:3;
  width:105px;
  padding:5px 0;
  transform:rotate(38deg);
  background:#c62838;
  color:#fff;
  text-align:center;
  font-size:8px;
  font-weight:900;
  letter-spacing:.04em;
  box-shadow:0 2px 6px rgba(0,0,0,.12)
}

.store-section-nishi .fixed-store-head{
  border-left:5px solid #2e8b62
}

.store-section-narita .fixed-store-head{
  border-left:5px solid #2977c9
}

.store-section-osaka .fixed-store-head{
  border-left:5px solid #cf3e4c
}

@media(max-width:1050px){
  .fixed-store-groups{
    grid-template-columns:1fr
  }

  .fixed-task-group + .fixed-task-group{
    border-left:0;
    border-top:1px solid #edf0f2
  }
}

@media(max-width:650px){
  .fixed-store-head{
    display:block
  }

  .fixed-store-counts{
    justify-content:flex-start;
    margin-top:10px
  }

  .fixed-task-group{
    padding:10px
  }
}
