/* ===== 球鞋库存 ERP 网页版 - 样式 ===== */
:root {
  --primary: #4f46e5;
  --primary-light: #eef2ff;
  --primary-dark: #3730a3;
  --sidebar-bg: #121426;
  --sidebar-text: #aab4c8;
  --sidebar-active: #1677ff;
  --bg: #f5f6fb;
  --card: #ffffff;
  --border: #e6e9f0;
  --text: #1f2733;
  --text-2: #5a6474;
  --text-3: #9aa3b2;
  --red: #e54d42;      /* 涨/盈利(中国习惯) */
  --green: #07c160;    /* 跌/亏损 */
  --blue: #1677ff;
  --orange: #fa8c16;
  --purple: #722ed1;
  --teal: #13c2c2;
  --radius: 14px;
  --shadow: 0 3px 12px rgba(30,35,90,.045), 0 16px 38px rgba(30,35,90,.045);
  --sidebar-w: 232px;
}

/* 心愿储蓄：年轻化的单目标进度与存入记录。 */
.wish-page{display:grid;gap:16px;max-width:1280px;margin:0 auto;padding-bottom:28px;color:#17243a}
.wish-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:210px;padding:34px 42px;overflow:hidden;border-radius:24px;color:#fff;background:linear-gradient(125deg,#111f37 0%,#263b69 56%,#6464dc 100%);box-shadow:0 20px 44px rgba(25,38,72,.16)}
.wish-hero:before,.wish-hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.wish-hero:before{width:330px;height:330px;right:-85px;top:-160px}.wish-hero:after{width:190px;height:190px;right:70px;bottom:-130px}
.wish-hero-copy{position:relative;z-index:1;max-width:700px}.wish-hero-copy small,.wish-card header small{display:block;margin-bottom:9px;color:#bfc7ff;font-size:11px;font-weight:800;letter-spacing:.2em}.wish-hero-copy h2{margin:0 0 12px;font-size:32px;letter-spacing:-.02em}.wish-hero-copy p{margin:0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.7}
.wish-ring{--wish-progress:0%;position:relative;z-index:1;display:grid;flex:0 0 132px;width:132px;height:132px;place-items:center;border-radius:50%;background:conic-gradient(#c8cbff var(--wish-progress),rgba(255,255,255,.14) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.wish-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#25365e}.wish-ring span{position:relative;display:grid;text-align:center}.wish-ring b{font-size:27px}.wish-ring small{color:#bdc6dc;font-size:11px}.wish-spark{position:absolute;color:#d9daff;font-style:normal;opacity:.55}.wish-spark-a{top:25px;right:205px;font-size:21px}.wish-spark-b{right:30%;bottom:25px;font-size:13px}
.wish-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #e3e8f2;border-radius:19px;background:#fff;box-shadow:0 10px 28px rgba(28,43,70,.05)}.wish-stats article{display:grid;gap:4px;padding:19px 24px;border-right:1px solid #e7ebf2}.wish-stats article:last-child{border:0}.wish-stats small,.wish-stats span{color:#8490a3;font-size:11px}.wish-stats strong{color:#192740;font-size:23px}
.wish-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}.wish-card{padding:22px!important;border:1px solid #e3e8f1!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 30px rgba(27,42,68,.05)!important}.wish-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.wish-card header small{margin-bottom:4px;color:#7079cf}.wish-card header h3{margin:0;color:#192740;font-size:19px}.wish-chip{padding:6px 10px;border-radius:999px;color:#575ec2;background:#f0f1ff;font-size:10px;font-weight:700}
.wish-amount>span,.wish-note>span,.wish-form label>span{display:block;margin-bottom:7px;color:#69758a;font-size:11px;font-weight:700}.wish-amount>div{display:flex;align-items:center;height:72px;padding:0 18px;border:1px solid #dbe1ec;border-radius:16px;background:#f8f9fc}.wish-amount i,.wish-input-affix i{color:#69758a;font-style:normal;font-weight:750}.wish-amount input{width:100%;border:0;outline:0;color:#17243a;background:transparent;font-size:29px;font-weight:800}.wish-quick{display:flex;gap:8px;margin:10px 0 16px}.wish-quick button{flex:1;padding:9px;border:0;border-radius:10px;color:#555ec3;background:#f0f1ff;font-weight:700;cursor:pointer}.wish-note input,.wish-form input{width:100%;height:44px;padding:0 13px;border:1px solid #dce2ec;border-radius:11px;outline:0;color:#17243a;background:#fff}.wish-note input:focus,.wish-form input:focus,.wish-amount>div:focus-within{border-color:#7479df;box-shadow:0 0 0 3px rgba(100,100,220,.11)}
.wish-primary,.wish-secondary{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:44px;margin-top:14px;border:0;border-radius:12px;color:#fff;background:#172b4a;font-weight:750;cursor:pointer}.wish-primary:disabled{cursor:not-allowed;opacity:.42}.wish-secondary{background:#6266d5}.wish-hint{margin:9px 0 0;text-align:center;color:#929bad;font-size:10px}
.wish-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.wish-form label.wide{grid-column:1/-1}.wish-input-affix{display:flex;align-items:center;height:44px;padding:0 13px;border:1px solid #dce2ec;border-radius:11px}.wish-input-affix input{height:40px;padding-left:7px;border:0}.wish-text-btn{border:0;color:#a35a67;background:transparent;font-size:11px;cursor:pointer}
.wish-history{padding-bottom:8px!important}.wish-record{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:13px 4px;border-top:1px solid #edf0f5}.wish-record-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#5b61cf;background:#f0f1ff;font-size:20px}.wish-record-copy{display:grid;min-width:0;gap:3px}.wish-record-copy b{font-size:13px}.wish-record-copy small{overflow:hidden;color:#8791a3;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.wish-record>button{padding:7px 10px;border:1px solid #e2e6ee;border-radius:9px;color:#7a8496;background:#fff;font-size:10px;cursor:pointer}.wish-empty{display:grid;justify-items:center;padding:25px 10px;color:#8b95a7;text-align:center}.wish-empty span{color:#696ed8;font-size:26px}.wish-empty b{margin-top:6px;color:#344158}.wish-empty p{margin:5px 0 0;font-size:11px}
.eye-mode .wish-stats,.eye-mode .wish-card{border-color:#28384e!important;background:#111c2b!important}.eye-mode .wish-page,.eye-mode .wish-card header h3,.eye-mode .wish-stats strong,.eye-mode .wish-amount input,.eye-mode .wish-form input,.eye-mode .wish-record-copy b{color:#edf3fb}.eye-mode .wish-stats article,.eye-mode .wish-record{border-color:#28384e}.eye-mode .wish-amount>div,.eye-mode .wish-note input,.eye-mode .wish-form input,.eye-mode .wish-input-affix{border-color:#33445b;background:#172437;color:#edf3fb}
@media(max-width:720px){
  .wish-page{gap:11px;padding:0 10px 100px}.wish-hero{min-height:168px;padding:24px 20px;border-radius:20px}.wish-hero-copy{max-width:65%}.wish-hero-copy h2{font-size:23px;line-height:1.25}.wish-hero-copy p{font-size:11px}.wish-ring{flex-basis:96px;width:96px;height:96px}.wish-ring:before{inset:8px}.wish-ring b{font-size:21px}.wish-spark{display:none}
  .wish-stats{grid-template-columns:repeat(3,1fr);border-radius:16px}.wish-stats article{padding:14px 10px}.wish-stats strong{font-size:17px}.wish-stats span{font-size:9px}.wish-layout{grid-template-columns:1fr}.wish-deposit-card{order:2}.wish-settings{order:1}.wish-card{padding:17px!important;border-radius:17px!important}.wish-form{grid-template-columns:1fr 1fr;gap:11px}.wish-form label:first-child,.wish-form label.wide{grid-column:1/-1}.wish-amount input{font-size:25px}.wish-note input,.wish-form input,.wish-input-affix input{font-size:16px}.wish-history{margin-bottom:8px}.wish-record{grid-template-columns:32px minmax(0,1fr) auto;gap:9px}.wish-record-mark{width:31px;height:31px}
}

/* ===== 带薪时间实验室 ===== */
.paid-break-page{display:grid;gap:16px;color:#172821}.paid-break-hero{display:flex;align-items:flex-end;justify-content:space-between;min-height:168px;padding:28px 30px;border:1px solid #cbded8;border-radius:25px;background:linear-gradient(135deg,#eef8f4,#faf4e8);position:relative;overflow:hidden}.paid-break-hero:after{content:"";position:absolute;right:10%;top:-110px;width:270px;height:270px;border:38px solid rgba(45,117,99,.07);border-radius:50%}.paid-break-hero>div,.pb-rate{position:relative;z-index:1}.paid-break-hero small,.pb-panel header small{font-size:10px;font-weight:800;letter-spacing:2px;color:#4c8578}.paid-break-hero h2{margin:12px 0 7px;font-size:30px}.paid-break-hero p{color:#6e817b}.pb-rate{display:grid;gap:4px;min-width:140px;padding:15px 18px;border:1px solid #d6e4df;border-radius:17px;background:rgba(255,255,255,.72)}.pb-rate i{font-style:normal;font-size:11px;color:#72847f}.pb-rate b{font-size:24px;color:#2e7565}.pb-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pb-panel{padding:22px}.pb-panel header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:17px}.pb-panel header h3{margin:5px 0 0;font-size:19px}.pb-panel header>em,.pb-panel header>button{padding:6px 10px;border:1px solid #dbe6e2;border-radius:99px;background:#f6f9f8;color:#789089;font:normal 10px inherit}.pb-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pb-field{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border:1px solid #e0e8e5;border-radius:15px;background:#fbfcfc}.pb-field>span{display:grid;gap:3px}.pb-field small{font-size:10px;color:#91a09b}.pb-field>div{display:flex;align-items:center;gap:4px}.pb-field input{width:88px;border:0;outline:0;background:transparent;text-align:right;font-size:16px;font-weight:750;color:#18372f}.pb-field i{font-style:normal;font-size:10px;color:#899994}.pb-shift{display:grid;grid-template-columns:1fr auto;gap:4px;margin-top:11px;padding:15px 17px;border-radius:15px;background:#edf5f2}.pb-shift b{font-size:18px}.pb-shift small{grid-column:1/-1;color:#81928c}.pb-quick{display:flex;align-items:center;gap:7px;margin:12px 0}.pb-quick span{margin-right:auto;font-size:11px;color:#7f918b}.pb-quick button{padding:6px 9px;border:1px solid #dce7e3;border-radius:9px;background:#fff;color:#4d746a}.pb-timer{display:flex;align-items:center;justify-content:space-between;padding:15px;border-radius:17px;background:#172b27;color:#fff}.pb-timer>div:first-child{display:grid;gap:2px}.pb-timer small{color:#92aaa3}.pb-timer strong{font-size:24px;font-variant-numeric:tabular-nums}.pb-timer em{font-style:normal;font-size:10px;color:#78d5bf}.pb-timer>div:last-child{display:flex;gap:7px}.pb-timer button{padding:9px 10px;border:1px solid #42605a;border-radius:10px;background:#243d37;color:#dcebe7}.pb-results{display:grid;grid-template-columns:.8fr 1.2fr;border:1px solid #cfdfda;border-radius:24px;background:#fff;overflow:hidden}.pb-total{padding:28px;background:linear-gradient(145deg,#17332d,#244b42);color:#fff}.pb-total small{letter-spacing:2px;color:#83d1bf}.pb-total span{display:block;margin:22px 0 5px;color:#bed0cb}.pb-total>strong{display:block;font-size:38px;color:#8de0cb}.pb-total p{margin-top:18px;color:#abc1bb}.pb-metrics{display:grid;grid-template-columns:1fr 1fr}.pb-metrics article{display:grid;gap:5px;padding:20px;border-bottom:1px solid #e7eeec;border-left:1px solid #e7eeec}.pb-metrics span,.pb-metrics small{color:#869791}.pb-metrics b{font-size:18px}.pb-insight{grid-column:1/-1;padding:16px 22px}.pb-insight>div:first-child{display:flex;justify-content:space-between}.pb-bar{height:7px;margin:8px 0 10px;border-radius:9px;background:#e4ece9;overflow:hidden}.pb-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#52b9a1,#d6ad5c)}.pb-insight p{color:#6e817a}.pb-insight strong{color:#2f7767}.pb-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;padding:12px 5px;border-top:1px solid #e8eeec}.pb-row span:first-child{display:grid}.pb-row small{color:#9aa6a2}.pb-row strong{color:#28725f}.pb-empty{padding:22px;text-align:center;color:#9aa8a3;background:#f7faf9;border-radius:14px}
html.eye-mode .paid-break-page{color:#dce9e5}html.eye-mode .paid-break-hero,html.eye-mode .pb-panel,html.eye-mode .pb-results{border-color:#29464a;background:#12262f}html.eye-mode .pb-field{border-color:#29434a;background:#10232b}html.eye-mode .pb-field input{color:#e5f0ed}html.eye-mode .pb-shift,html.eye-mode .pb-empty{background:#172f35}
.pb-catchup>p{margin:-5px 0 15px;color:#71847d;line-height:1.7}.pb-catchup>small{display:block;margin-top:9px;color:#91a09b}.pb-catchup-actions{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;gap:9px}.pb-catchup-actions input,.pb-catchup-actions button{height:42px;padding:0 13px;border:1px solid #d9e5e1;border-radius:11px;background:#fff;color:#315e53}.pb-catchup-actions button{cursor:pointer;font-weight:700}.pb-catchup-actions button.primary{color:#fff;background:#327767}.pb-catchup header em{color:#9a702e;background:#fff5df}html.eye-mode .pb-catchup-actions input,html.eye-mode .pb-catchup-actions button{color:#dcebe7;border-color:#2c4850;background:#10232b}html.eye-mode .pb-catchup-actions button.primary{background:#397f70}
@media(max-width:720px){.pb-catchup-actions{grid-template-columns:1fr 1fr}.pb-catchup-actions input{grid-column:1/-1;width:100%;font-size:16px}.pb-catchup-actions button{padding:0 7px;font-size:11px}}

.pb-catchup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.pb-catchup-grid label{display:grid;gap:6px;padding:11px;border:1px solid #dfe9e5;border-radius:12px;background:#f9fbfa}.pb-catchup-grid label>span{color:#71847d;font-size:10px}.pb-catchup-grid input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#18372f;font-size:15px;font-weight:700}.pb-catchup-grid label>div{display:flex;align-items:center;gap:4px}.pb-catchup-grid i{color:#8b9a95;font-size:9px;font-style:normal}.pb-catchup-foot{display:flex;align-items:center;gap:8px;margin-top:12px}.pb-catchup-foot>small{margin-right:auto;color:#899a94}.pb-catchup-foot button{height:38px;padding:0 13px;border:1px solid #d5e2dd;border-radius:10px;background:#fff;color:#527168;font-weight:700}.pb-catchup-foot button[data-custom-day]{color:#fff;border-color:#317767;background:#317767}.pb-catchup-foot button.secondary{color:#8a672d;background:#fff8ea}
html.eye-mode .pb-catchup-grid label{border-color:#29454c;background:#10242c}html.eye-mode .pb-catchup-grid input{color:#e0ece9}html.eye-mode .pb-catchup-foot button{border-color:#2c4950;background:#10242c;color:#bcd0ca}

/* Timer console refinement */
.pb-panel:has(.pb-work-clock){border-color:#c8ddd7;box-shadow:0 12px 30px rgba(31,73,61,.075)}.pb-panel:has(.pb-work-clock)>header{align-items:center;margin-bottom:13px;padding-bottom:12px;border-bottom:1px solid #e5ece9}.pb-panel:has(.pb-work-clock)>header>em{position:relative;padding-left:19px;color:#56796f;background:#f1f7f5}.pb-panel:has(.pb-work-clock)>header>em:before{content:"";position:absolute;left:8px;top:50%;width:6px;height:6px;border-radius:50%;background:#6aa895;transform:translateY(-50%)}.pb-live-summary{gap:0;margin:0 0 10px;border:1px solid #dfe9e5;border-radius:14px;overflow:hidden}.pb-live-summary>div{border:0!important;border-radius:0!important;background:#f8fbfa!important}.pb-live-summary>div+div{border-left:1px solid #dfe9e5!important}.pb-work-clock{position:relative;padding:20px;background:radial-gradient(circle at 50% 120%,rgba(114,206,183,.18),transparent 48%),linear-gradient(145deg,#17312b,#214a40);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.pb-work-clock strong{margin:2px 0;font-size:32px;letter-spacing:1px}.pb-clock-actions button{min-height:40px;transition:transform .15s ease,background .15s ease}.pb-clock-actions button:active{transform:scale(.97)}.pb-clock-actions .primary{box-shadow:0 5px 12px rgba(40,111,94,.17)}.pb-clock-tip{padding:9px 11px;border-radius:10px;background:#f5f8f7}.pb-manual{border-top:1px solid #e4ece9}
@media(max-width:720px){.pb-catchup-grid{grid-template-columns:1fr 1fr}.pb-catchup-grid label{padding:10px}.pb-catchup-grid input{font-size:16px}.pb-catchup-foot{display:grid;grid-template-columns:1fr 1fr}.pb-catchup-foot>small{grid-column:1/-1}.pb-catchup-foot button{padding:0 6px;font-size:10px}.pb-panel:has(.pb-work-clock){padding:15px}.pb-work-clock strong{font-size:30px}.pb-clock-actions{gap:8px}.pb-clock-actions button{min-height:42px}}
@media(max-width:720px){.paid-break-page{gap:12px;padding-bottom:96px}.paid-break-hero{min-height:183px;padding:21px 18px;align-items:flex-start}.paid-break-hero h2{font-size:26px}.paid-break-hero p{max-width:230px;font-size:11px}.pb-rate{position:absolute;right:16px;bottom:16px;min-width:108px;padding:10px 13px}.pb-rate b{font-size:19px}.pb-columns{grid-template-columns:1fr;gap:12px}.pb-panel{padding:17px 15px}.pb-form{grid-template-columns:1fr}.pb-field input{width:105px}.pb-timer{align-items:flex-end}.pb-timer>div:last-child{flex-direction:column}.pb-timer button{padding:8px}.pb-results{grid-template-columns:1fr;border-radius:21px}.pb-total{padding:23px}.pb-total span{margin-top:15px}.pb-total>strong{font-size:34px}.pb-metrics article{padding:16px 14px}.pb-insight{padding:15px}.pb-row{grid-template-columns:1fr auto}.pb-row>span:nth-child(2){display:none}}

.pb-pay-mode{display:flex;padding:4px;margin-bottom:11px;border-radius:12px;background:#edf3f1}.pb-pay-mode button{flex:1;padding:9px;border:0;border-radius:9px;background:transparent;color:#71847e;font-weight:700}.pb-pay-mode button.active{color:#fff;background:#2f7666;box-shadow:0 4px 12px rgba(40,105,89,.16)}.pb-live-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.pb-live-summary>div{display:grid;gap:4px;padding:13px;border:1px solid #e0e9e6;border-radius:14px;background:#f8fbfa}.pb-live-summary span{font-size:10px;color:#83958f}.pb-live-summary b{font-size:16px}.pb-work-clock{display:grid;place-items:center;padding:17px;border-radius:17px;color:#fff;background:linear-gradient(145deg,#17312b,#244a41)}.pb-work-clock small{color:#91aaa3}.pb-work-clock strong{font-size:28px;font-variant-numeric:tabular-nums}.pb-work-clock em{font-style:normal;font-size:10px;color:#81d8c4}.pb-clock-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.pb-clock-actions button{padding:9px 5px;border:1px solid #d8e5e1;border-radius:10px;background:#fff;color:#476c62;font-size:11px}.pb-clock-actions .primary{color:#fff;background:#2f7666}.pb-clock-actions .finish{color:#9a5a5a;background:#fff5f5}.pb-clock-tip{margin:10px 2px;color:#84958f;font-size:10px;line-height:1.6}.pb-manual{margin-top:8px}.pb-manual summary{padding:9px 0;color:#58776f;font-size:11px;cursor:pointer}.pb-manual .pb-form{margin-top:7px}
@media(max-width:720px){.topbar-control-deck{max-width:72%;gap:4px!important}.topbar .license-chip{max-width:none!important;min-width:104px;padding:4px 6px!important;overflow:visible}.license-chip small{display:none}.license-chip b{max-width:none!important;overflow:visible!important;text-overflow:clip!important;font-size:8px!important}.account-control{max-width:92px}.account-copy{min-width:36px!important}.account-copy small{display:none}.account-copy .name{max-width:42px!important;font-size:9px!important}.topbar .account-control .user{gap:4px!important;padding-right:3px!important}.topbar .account-control .avatar{width:24px!important;height:24px!important}.account-chevron{font-size:13px}.pb-clock-actions{grid-template-columns:1fr 1fr}.pb-live-summary b{font-size:14px}}

/* Mobile receiving v3: batch, review and payment are one continuous confirmation surface. */
@media(max-width:720px){
  .m-in-workbench .m-in-confirm-flow{margin:4px 10px 10px;padding:5px 3px 4px;border:1px solid #dce7e2;border-radius:17px;background:#f7faf8;overflow:hidden}
  html.light-mode .m-in-workbench .m-in-confirm-flow .m-in-size-title,
  html.light-mode .m-in-workbench .m-in-confirm-flow .m-in-review-head,
  html.eye-mode .m-in-workbench .m-in-confirm-flow .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-confirm-flow .m-in-review-head{min-height:0!important;margin:0 6px!important;padding:11px 8px 9px 31px!important;border:0!important;border-radius:0!important;background:transparent!important}
  .m-in-workbench .m-in-confirm-flow .m-in-size-title::before,.m-in-workbench .m-in-confirm-flow .m-in-review-head::before{left:9px!important;width:7px!important;height:7px!important;box-shadow:0 0 0 3px #e1eee9!important}
  .m-in-workbench .m-in-confirm-flow .m-inrow{width:calc(100% - 12px)!important;margin:1px 6px 6px!important;padding:10px!important;border-color:#dfe8e4!important;border-radius:12px!important;background:#fff!important}
  html.light-mode .m-in-workbench .m-in-confirm-flow .m-in-add-row,html.eye-mode .m-in-workbench .m-in-confirm-flow .m-in-add-row{width:calc(100% - 12px)!important;min-height:34px!important;margin:0 6px 5px!important;border:1px dashed #cfdcd6!important;border-radius:11px!important;background:transparent!important}
  .m-in-workbench .m-in-confirm-flow .m-in-review-head{margin-top:3px!important;border-top:1px solid #e1eae6!important}
  html.light-mode .m-in-workbench .m-in-confirm-flow .m-in-review-summary,html.eye-mode .m-in-workbench .m-in-confirm-flow .m-in-review-summary{width:calc(100% - 12px)!important;margin:0 6px 5px!important;padding:9px 4px!important;border:0!important;border-radius:11px!important;background:#edf4f1!important}
  .m-in-workbench .m-in-confirm-flow .in-payment-method{grid-template-columns:minmax(0,1fr) auto!important;margin:0 6px 3px!important;padding:10px!important;border:0!important;border-top:1px solid #e0e9e5!important;border-radius:0!important;background:transparent!important}
  .m-in-workbench .m-in-confirm-flow .in-payment-copy>span{width:30px;height:30px;border-radius:9px}.m-in-workbench .m-in-confirm-flow .in-payment-copy b{font-size:12px}.m-in-workbench .m-in-confirm-flow .in-payment-copy small{font-size:9px}.m-in-workbench .m-in-confirm-flow .in-payment-method select{height:40px!important}.m-in-workbench .m-in-confirm-flow .in-payment-method .btn{height:40px}
  html.eye-mode .m-in-workbench .m-in-confirm-flow{border-color:#29444b;background:#11252e}.m-in-workbench .m-in-confirm-flow .m-inrow{box-shadow:none!important}html.eye-mode .m-in-workbench .m-in-confirm-flow .m-inrow{border-color:#29434b!important;background:#142b33!important}html.eye-mode .m-in-workbench .m-in-confirm-flow .m-in-review-summary{background:#173139!important}html.eye-mode .m-in-workbench .m-in-confirm-flow .in-payment-method{border-top-color:#29434a!important;background:transparent!important}
}

/* 电脑库存筛选：浮层始终锚定按钮，避免缩放环境下 fixed 坐标漂移。 */
@media(min-width:721px){
  .inventory-list-card{overflow:visible!important}
  .inventory-list-card>.inventory-filter-toolbar{position:relative;z-index:120;overflow:visible}
  .inventory-list-card>.inventory-brand-toolbar{position:relative;z-index:1;overflow:visible}
  .inventory-filter-toolbar .stock-filter-picker{position:relative;z-index:2;width:128px}
  .inventory-filter-toolbar .stock-filter-picker.open{z-index:130}
  .inventory-filter-toolbar .stock-filter-picker-popover{position:absolute!important;top:calc(100% + 7px)!important;right:auto!important;left:0!important;width:max(100%,190px)!important;max-height:300px;overflow:auto;transform:none!important}
  .inventory-filter-toolbar .stock-filter-picker-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* 手机出库候选分页 */
@media(max-width:720px){
  .m-out-pick-card>.app-pager{margin:12px 0 1px;padding:9px;border-color:#dce6e2;border-radius:13px;background:#f5f8f7;box-shadow:none}
  .m-out-pick-card>.app-pager .app-pager-meta{font-size:9px}
  .m-out-pick-card>.app-pager button{height:32px;min-width:32px;padding:0 7px}
  .m-out-pick-card>.app-pager-single{min-height:34px;padding:7px}
  html.eye-mode .m-out-pick-card>.app-pager{border-color:#294650;background:#10242c}
}

/* 登录入口分段控件：弱化实心色块，融入私人经营舱。 */
.login-panel .login-tabs{gap:5px;padding:5px;border-color:rgba(139,172,166,.20);border-radius:13px;background:linear-gradient(180deg,rgba(7,18,26,.54),rgba(14,29,37,.72));box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 10px 24px rgba(0,0,0,.10)}
.login-panel .login-tabs button{height:36px;border:1px solid transparent;border-radius:9px;color:#849b9d;background:transparent;box-shadow:none;transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.login-panel .login-tabs button:hover{color:#c7d9d7;background:rgba(116,166,155,.07)}
.login-panel .login-tabs button.active{color:#f2f8f6;border-color:rgba(139,194,181,.24);background:linear-gradient(135deg,rgba(69,123,114,.72),rgba(64,96,91,.68));box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 5px 13px rgba(15,45,43,.22)}

/* 物料采购扣款账户：沿用入库账期卡片，但在宽表单中保持紧凑。 */
.supply-payment-method{margin:2px 0 0}
.supply-payment-label{display:block;margin-top:3px;color:#5f827b;font-size:11px;font-weight:600;line-height:1.2}
html[data-theme="dark"] .supply-payment-label{color:#77b8ac}

/* ===== 资金与账期中心 ===== */
.credit-center-page{display:grid;gap:18px;color:#152921}
.credit-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;overflow:hidden;padding:28px 30px;border:1px solid #c9ddd7;border-radius:24px;background:linear-gradient(135deg,#eef7f4 0%,#e2f1ec 58%,#e8edf6 100%);box-shadow:0 14px 32px rgba(40,78,67,.08)}
.credit-hero:after{position:absolute;right:8%;bottom:-90px;width:270px;height:270px;border:40px solid rgba(61,132,113,.075);border-radius:50%;pointer-events:none;content:""}
.credit-hero>div,.credit-month{position:relative;z-index:1}.credit-hero small,.credit-title-row small,.credit-section-head small,.credit-advice>small{color:#598176;font-size:10px;font-weight:800;letter-spacing:1.4px}.credit-hero h2{margin:7px 0 5px;font-size:27px;letter-spacing:-.7px}.credit-hero p{margin:0;color:#687d76;font-size:13px}
.credit-month{display:grid;gap:5px;padding:10px 12px;border:1px solid rgba(132,168,158,.34);border-radius:14px;background:rgba(255,255,255,.72)}.credit-month span{color:#789089;font-size:10px}.credit-month input,.credit-month select{min-width:170px;border:0;outline:0;color:#203b33;background-color:transparent;font-size:14px;font-weight:700;cursor:pointer}
.credit-kpis{display:grid;grid-template-columns:1.15fr repeat(4,1fr);overflow:hidden;border:1px solid #d8e3df;border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 10px 28px rgba(28,62,52,.055)}.credit-kpis article{position:relative;display:grid;gap:6px;min-width:0;padding:19px 20px}.credit-kpis article+article{border-left:1px solid #e0e8e5}.credit-kpis span{color:#738780;font-size:11px}.credit-kpis strong{overflow:hidden;color:#183a31;font-size:25px;font-variant-numeric:tabular-nums;letter-spacing:-.6px;text-overflow:ellipsis}.credit-kpis small{color:#94a39e;font-size:10px}.credit-kpis .primary:before,.credit-kpis .profit:before{position:absolute;top:0;right:16px;left:16px;height:2px;border-radius:2px;background:#337b69;content:""}.credit-kpis .profit:before{background:#7d739e}.credit-kpis .profit strong{color:#4d786c}
.credit-main-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr);gap:18px}.credit-warning.card,.credit-advice.card,.credit-history.card{border:1px solid #d7e3df;background:rgba(255,255,255,.84);box-shadow:0 10px 27px rgba(30,60,52,.055)}.credit-warning.card{padding:22px}.credit-section-head,.credit-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.credit-section-head h3,.credit-title-row h3,.credit-advice h3{margin:5px 0 0;font-size:18px}.credit-section-head>button,.credit-title-row>button{padding:9px 13px;border:1px solid #cfddd8;border-radius:11px;color:#315f53;background:#f7fbfa;font-size:12px}
.credit-warning-value{display:flex;align-items:flex-end;justify-content:space-between;margin-top:24px}.credit-warning-value span{display:block;color:#80938d;font-size:11px}.credit-warning-value strong{display:block;margin-top:4px;font-size:29px}.credit-warning-value em{padding:7px 10px;border-radius:999px;color:#2e7563;background:#e8f5f1;font-size:11px;font-style:normal;font-weight:700}.credit-warning.warn .credit-warning-value em{color:#8b6424;background:#fff4dd}.credit-warning.danger .credit-warning-value em{color:#a44d57;background:#fcebee}.credit-warning-track{height:7px;margin:16px 0 18px;overflow:hidden;border-radius:9px;background:#e3ebe8}.credit-warning-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4b9d88,#69c0a7);transition:width .45s ease}.credit-warning.warn .credit-warning-track i{background:linear-gradient(90deg,#d3a44b,#e7bb67)}.credit-warning.danger .credit-warning-track i{background:linear-gradient(90deg,#ce6874,#e48b92)}.credit-warning-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.credit-warning-meta span{display:grid;gap:4px;padding:12px;border:1px solid #e0e9e6;border-radius:12px;background:#f7faf9}.credit-warning-meta small{color:#889b95;font-size:10px}.credit-warning-meta b{font-size:14px;font-variant-numeric:tabular-nums}
.credit-advice.card{position:relative;overflow:hidden;padding:24px;background:linear-gradient(145deg,#f4f8f7,#edf4f1)}.credit-advice:after{position:absolute;right:-52px;bottom:-60px;width:150px;height:150px;border:25px solid rgba(70,129,113,.06);border-radius:50%;content:""}.credit-advice p{position:relative;z-index:1;margin:18px 0;color:#60766f;font-size:13px;line-height:1.75}.credit-advice>div{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid #d9e4e0}.credit-advice>div span{color:#7c9089;font-size:11px}.credit-advice>div b{font-size:16px}
.credit-accounts-wrap{display:grid;gap:14px}.credit-title-row{align-items:flex-end;padding:4px 4px 0}.credit-title-row p{margin:5px 0 0;color:#84958f;font-size:11px}.credit-accounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.credit-account{position:relative;overflow:hidden;padding:18px;border:1px solid #d7e3df;border-radius:20px;background:rgba(255,255,255,.87);box-shadow:0 10px 25px rgba(31,64,54,.055)}.credit-account:after{position:absolute;right:-35px;top:55px;width:105px;height:105px;border:18px solid rgba(55,129,109,.045);border-radius:50%;content:""}.credit-account.violet:after{border-color:rgba(106,91,150,.045)}.credit-account.amber:after{border-color:rgba(174,125,45,.05)}.credit-account-top{position:relative;z-index:1;display:flex;align-items:center;gap:10px}.credit-account-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#347967;background:#e9f5f1}.credit-account.violet .credit-account-icon{color:#6e6093;background:#f0edf7}.credit-account.amber .credit-account-icon{color:#a5772d;background:#fbf2e2}.credit-account-top h3{margin:0;font-size:15px}.credit-account-top small{color:#8a9994;font-size:10px}.credit-account-top button{margin-left:auto;padding:6px 8px;border:0;color:#657c75;background:transparent;font-size:11px}.credit-account-debt{position:relative;z-index:1;margin:20px 0 12px}.credit-account-debt span{display:block;color:#7e918a;font-size:10px}.credit-account-debt strong{display:block;margin-top:3px;font-size:25px}.credit-account-line{position:relative;z-index:1;height:4px;overflow:hidden;border-radius:5px;background:#e7edeb}.credit-account-line i{display:block;height:100%;border-radius:inherit;background:#4a9a84}.credit-account.violet .credit-account-line i{background:#8172a7}.credit-account.amber .credit-account-line i{background:#c1934b}.credit-account-meta{position:relative;z-index:1;display:flex;justify-content:space-between;gap:8px;margin-top:9px;color:#899a94;font-size:9px}.credit-account-actions{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.credit-account-actions button{padding:9px 6px;border:1px solid #d8e3df;border-radius:10px;color:#315f53;background:#f7faf9;font-size:11px}.credit-account-actions button:last-child{color:#fff;border-color:#3f7d6c;background:#3f7d6c}
.credit-history.card{padding:22px}.credit-section-head>span{color:#91a19c;font-size:10px}.credit-records{display:grid;margin-top:14px}.credit-record{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #e5ebe9}.credit-record-icon{display:grid;width:35px;height:35px;place-items:center;border-radius:11px;color:#9a7135;background:#fbf2e2}.credit-record-icon.repayment{color:#347967;background:#e8f4f0}.credit-record b,.credit-record small{display:block}.credit-record b{font-size:12px}.credit-record small{margin-top:3px;color:#8b9a95;font-size:10px}.credit-record>strong{color:#a87631;font-size:14px}.credit-record>strong.repayment{color:#3b806e}.credit-empty{display:grid;justify-items:center;gap:5px;padding:30px;color:#8ea09a}.credit-empty b{font-size:13px}.credit-empty small{font-size:10px;text-align:center}

html.eye-mode .credit-center-page{color:#dce9e5}html.eye-mode .credit-hero{border-color:#284a4c;background:linear-gradient(135deg,#122a31,#142d34 60%,#1a293a)}html.eye-mode .credit-hero p,html.eye-mode .credit-title-row p{color:#8fa6a0}html.eye-mode .credit-month,html.eye-mode .credit-kpis,html.eye-mode .credit-warning.card,html.eye-mode .credit-advice.card,html.eye-mode .credit-account,html.eye-mode .credit-history.card{border-color:#29454b;background:#12262f;box-shadow:none}html.eye-mode .credit-month input,html.eye-mode .credit-kpis strong,html.eye-mode .credit-warning-value strong,html.eye-mode .credit-account-debt strong{color:#e3eeeb}html.eye-mode .credit-kpis article+article{border-color:#284049}html.eye-mode .credit-warning-meta span,html.eye-mode .credit-account-actions button{border-color:#2b464c;background:#10232b;color:#b8cac5}html.eye-mode .credit-advice.card{background:linear-gradient(145deg,#132933,#10242c)}html.eye-mode .credit-account-line,html.eye-mode .credit-warning-track{background:#263b42}html.eye-mode .credit-record{border-color:#263f46}

@media(max-width:980px){.credit-kpis{grid-template-columns:repeat(3,1fr)}.credit-kpis article:nth-child(4){border-left:0;border-top:1px solid #e0e8e5}.credit-kpis article:nth-child(n+4){border-top:1px solid #e0e8e5}.credit-accounts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.credit-center-page{gap:15px}.credit-hero{align-items:flex-start;padding:20px;border-radius:20px}.credit-hero h2{font-size:23px}.credit-hero p{max-width:220px;font-size:11px}.credit-month{padding:8px;align-self:flex-start}.credit-month span{display:none}.credit-month input,.credit-month select{min-width:118px;width:118px;font-size:11px}.credit-kpis{grid-template-columns:repeat(2,1fr);border-radius:18px}.credit-kpis article{padding:16px 14px}.credit-kpis article:nth-child(3){border-left:0}.credit-kpis article:nth-child(n+3){border-top:1px solid #e0e8e5}.credit-kpis article:nth-child(4){border-left:1px solid #e0e8e5}.credit-kpis article:last-child{grid-column:1/-1}.credit-kpis strong{font-size:21px}.credit-main-grid{grid-template-columns:1fr;gap:12px}.credit-warning.card,.credit-history.card{padding:18px 16px}.credit-warning-meta{gap:7px}.credit-warning-meta span{padding:10px 8px}.credit-warning-meta b{font-size:12px}.credit-advice.card{padding:19px}.credit-title-row{align-items:center}.credit-title-row p{display:none}.credit-title-row>button{white-space:nowrap}.credit-accounts{grid-template-columns:1fr;gap:10px}.credit-account{padding:16px}.credit-account-meta{font-size:9px}.credit-history .credit-section-head>span{display:none}.credit-record{grid-template-columns:34px minmax(0,1fr) auto;gap:8px}.credit-record>strong{font-size:12px}}

/* 2026-08-31: desktop inventory asset card — one coherent work surface. */
.m-stock-section-label {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
}
.m-stock-section-label > div { min-width:0; }
.m-stock-section-label b {
  display:block;
  color:#1b3028;
  font-size:12px;
  font-weight:680;
  line-height:1.25;
}
.m-stock-section-label span {
  display:block;
  margin-top:2px;
  color:#8a9892;
  font-size:10px;
  font-weight:450;
}
.m-stock-section-label em {
  flex:0 0 auto;
  padding:4px 8px;
  border:1px solid #dce6e1;
  border-radius:999px;
  color:#637970;
  background:#fff;
  font-size:10px;
  font-style:normal;
}
.m-stock-days {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.m-stock-days span { color:#8a9892; font-size:10px; }
.m-stock-days b { color:#62766e; font-size:10px; font-weight:600; }

@media(min-width:721px) {
  .m-stock-product-card {
    position:relative;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(340px,390px);
    grid-template-areas:"product metrics" "details details";
    margin-bottom:12px !important;
    overflow:hidden !important;
    border:1px solid #dbe5e0 !important;
    border-left:3px solid #4f8172 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 9px 24px rgba(27,57,47,.065) !important;
  }
  html.light-mode .m-stock-product-card::before { display:none !important; }
  .m-stock-product-card:hover {
    border-color:#c7d8d1 !important;
    border-left-color:#3c7564 !important;
    box-shadow:0 13px 30px rgba(27,57,47,.095) !important;
  }
  .m-stock-product-card .m-stock-head {
    grid-area:product;
    min-width:0;
    min-height:84px;
    padding:15px 18px !important;
    gap:11px;
    background:linear-gradient(110deg,#fbfdfc 0%,#f5f9f7 72%,#f1f7f4 100%);
  }
  .m-stock-product-card .m-stock-thumb {
    width:44px;
    height:44px;
    border-radius:12px;
    background:#edf3f0;
  }
  .m-stock-product-card .brand-tag {
    min-width:42px;
    padding:7px 8px;
    border-radius:9px;
    text-align:center;
    letter-spacing:.25px;
  }
  .m-stock-product-card .m-stock-main { min-width:0; }
  .m-stock-product-card .m-stock-name {
    overflow:hidden;
    color:#17251f !important;
    font-size:15px !important;
    font-weight:650 !important;
    line-height:1.35;
    letter-spacing:-.1px;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-product-card .m-stock-code {
    display:flex;
    min-width:0;
    align-items:center;
    gap:5px;
    margin-top:6px;
    color:#71827b;
    font-size:10px;
    white-space:nowrap;
  }
  .m-stock-product-card .stock-code-copy {
    padding:3px 7px;
    border:1px solid #d7e3de;
    border-radius:7px;
    color:#527267;
    background:#fff;
  }
  .m-stock-product-card .m-stock-chev {
    display:grid;
    flex:0 0 auto;
    width:32px;
    height:32px;
    margin-left:auto;
    place-items:center;
    border:1px solid #d4e1dc;
    border-radius:10px;
    color:#4e7065;
    background:rgba(255,255,255,.8);
    transition:transform .2s ease,background .2s ease;
  }
  .m-stock-product-card .m-stock-chev.open { transform:rotate(180deg); background:#eaf3ef; }
  .m-stock-product-card .m-stock-stats {
    grid-area:metrics;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:stretch;
    gap:8px;
    padding:13px 15px !important;
    border-top:0 !important;
    border-left:1px solid #e2e9e6;
    background:#f8faf9 !important;
  }
  .m-stock-product-card .m-stock-stats .item {
    display:flex;
    min-width:0;
    flex-direction:column;
    justify-content:center;
    padding:9px 10px;
    border:1px solid #e1e8e5 !important;
    border-radius:11px;
    text-align:left;
    background:#fff;
  }
  .m-stock-product-card .m-stock-stats .item + .item { border-left:1px solid #e1e8e5 !important; }
  .m-stock-product-card .m-stock-stats .item .v {
    overflow:hidden;
    color:#182a23 !important;
    font-size:17px !important;
    font-weight:690;
    line-height:1.1;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-product-card .m-stock-stats .item .l {
    margin-top:5px;
    color:#829089;
    font-size:9px;
    letter-spacing:.1px;
  }
  .m-stock-product-card .m-stock-body {
    grid-area:details;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,auto);
    gap:14px 22px;
    align-items:start;
    padding:15px 18px 12px !important;
    border-top:1px solid #e2e9e5 !important;
    background:#fbfcfb !important;
  }
  .m-stock-product-card .m-stock-size-section,
  .m-stock-product-card .m-stock-action-section { min-width:0; }
  .m-stock-product-card .m-stock-body .size-grid {
    display:flex;
    min-width:0;
    flex-wrap:wrap;
    gap:8px;
    margin:0 !important;
  }
  .m-stock-product-card .size-cell {
    min-width:112px;
    padding:9px 11px;
    border-color:#dce6e1;
    border-radius:11px;
    text-align:left;
    background:#fff;
  }
  .m-stock-product-card .size-cell .sz { color:#243a31; font-size:12px; font-weight:680; }
  .m-stock-product-card .size-cell .qn { margin-top:2px; color:#657970; font-size:10px; }
  .m-stock-product-card .size-cell .pr { margin-top:3px; color:#91a099; font-size:9px; }
  .m-stock-product-card .m-stock-actions {
    display:flex !important;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:7px;
  }
  .m-stock-product-card .m-stock-actions .btn {
    width:auto !important;
    min-height:34px;
    padding:7px 11px;
    border-radius:9px;
    font-size:11px;
    box-shadow:none;
  }
  .m-stock-product-card .m-stock-actions .btn.primary {
    border-color:#28483e !important;
    color:#fff !important;
    background:#28483e !important;
  }
  .m-stock-product-card .m-stock-actions .btn.danger { color:#a94e55 !important; border-color:#ead4d5 !important; }
  .m-stock-product-card .m-stock-days {
    grid-column:1 / -1;
    margin:0;
    padding-top:9px;
    border-top:1px dashed #dfe7e3;
    text-align:initial;
  }
}

html.eye-mode .m-stock-section-label b { color:#e1efeb; }
html.eye-mode .m-stock-section-label span,
html.eye-mode .m-stock-days span { color:#718990; }
html.eye-mode .m-stock-section-label em { color:#8db2aa; border-color:#29434b; background:#10242c; }
html.eye-mode .m-stock-days b { color:#9ab0ac; }
@media(min-width:721px) {
  html.eye-mode .m-stock-product-card {
    border-color:#253f48 !important;
    border-left-color:#55a392 !important;
    background:#0f2029 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.24) !important;
  }
  html.eye-mode .m-stock-product-card .m-stock-head { background:linear-gradient(110deg,#12252e,#112a32); }
  html.eye-mode .m-stock-product-card .m-stock-name { color:#e5f0ed !important; }
  html.eye-mode .m-stock-product-card .m-stock-code { color:#789097; }
  html.eye-mode .m-stock-product-card .m-stock-chev,
  html.eye-mode .m-stock-product-card .stock-code-copy { color:#83b5aa; border-color:#2b4b52; background:#10262e; }
  html.eye-mode .m-stock-product-card .m-stock-stats { border-left-color:#28414a; background:#10232c !important; }
  html.eye-mode .m-stock-product-card .m-stock-stats .item { border-color:#29444c !important; background:#132832; }
  html.eye-mode .m-stock-product-card .m-stock-stats .item + .item { border-left-color:#29444c !important; }
  html.eye-mode .m-stock-product-card .m-stock-stats .item .v { color:#e3f0ed !important; }
  html.eye-mode .m-stock-product-card .m-stock-body { border-top-color:#284149 !important; background:#0e2028 !important; }
  html.eye-mode .m-stock-product-card .size-cell { border-color:#29444c; background:#132832; }
  html.eye-mode .m-stock-product-card .size-cell .sz { color:#d7e7e3; }
  html.eye-mode .m-stock-product-card .size-cell .qn { color:#91a6a2; }
  html.eye-mode .m-stock-product-card .m-stock-days { border-top-color:#294149; }
}

/* ===== 库存分页 2026-08-29：移动端十条一页 / 首末页快速跳转 ===== */
.app-pager-edge b { font-size:14px; font-weight:700; line-height:1; }
.app-pager.app-pager-single {
  min-height:38px;
  justify-content:center;
  padding:8px 12px;
  border-color:#e1e9ec;
  background:#f7faf9;
  box-shadow:none;
}
.app-pager-single .app-pager-meta { text-align:center; }

@media(max-width:720px) {
  .m-stock-card ~ .app-pager {
    position:relative;
    overflow:hidden;
    margin:16px 0 3px;
    padding:12px;
    border-color:#d8e3e8;
    border-radius:17px;
    background:
      radial-gradient(circle at 12% 0%,rgba(59,130,246,.08),transparent 34%),
      linear-gradient(145deg,rgba(255,255,255,.98),rgba(245,249,250,.96));
    box-shadow:0 10px 28px rgba(25,48,65,.08);
  }
  .m-stock-card ~ .app-pager-single {
    margin-top:11px;
    padding:8px 10px;
    border-radius:12px;
    background:#f7faf9;
    box-shadow:none;
  }
  .m-stock-card ~ .app-pager-single::before { display:none; }
  .m-stock-card ~ .app-pager::before {
    content:'';
    position:absolute;
    top:0; left:17px; right:17px;
    height:2px;
    background:linear-gradient(90deg,transparent,#5f7cff 35%,#51c7bf 70%,transparent);
    opacity:.7;
  }
  .m-stock-card ~ .app-pager .app-pager-meta {
    color:#718297;
    font-size:11px;
    letter-spacing:.15px;
  }
  .app-pager-controls { flex-wrap:wrap; }
  .app-pager-edge { padding:0 9px !important; }
  .app-pager-edge span { font-size:11px; }
  .app-pager-page.active { transform:translateY(-1px); }

  html.eye-mode .m-stock-card ~ .app-pager {
    border-color:rgba(91,218,205,.2);
    background:
      radial-gradient(circle at 12% 0%,rgba(91,218,205,.09),transparent 36%),
      linear-gradient(145deg,#101e2a,#122533);
    box-shadow:0 12px 30px rgba(0,0,0,.24);
  }
  html.eye-mode .m-stock-card ~ .app-pager .app-pager-meta { color:#78969f; }
  html.eye-mode .m-stock-card ~ .app-pager button {
    border-color:#294553;
    background:#0d1a25;
    color:#91aab2;
  }
  html.eye-mode .m-stock-card ~ .app-pager button.active {
    border-color:#65ddcf;
    background:linear-gradient(145deg,#194943,#17635b);
    color:#effffd;
    box-shadow:0 0 0 3px rgba(93,226,211,.08),0 7px 18px rgba(0,0,0,.24);
  }
}
.mobile-theme-toggle { display:none; }


/* ========================================================================
   Personal wallet — calm private finance studio, separate from store capital.
   ======================================================================== */
.wallet-page { padding-bottom:20px; }
.wallet-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
  align-items:center;
  gap:28px;
  overflow:hidden;
  min-height:182px;
  margin-bottom:13px;
  padding:27px 30px;
  border:1px solid #cadfdd;
  border-radius:22px;
  background:radial-gradient(circle at 82% 13%,rgba(255,255,255,.17),transparent 27%),linear-gradient(125deg,#17362f 0%,#28584c 58%,#568278 100%);
  box-shadow:0 16px 36px rgba(29,67,57,.14);
  color:#f8fcfa;
}
.wallet-hero::after { content:''; position:absolute; right:-72px; bottom:-128px; width:280px; height:280px; border:34px solid rgba(255,255,255,.055); border-radius:50%; }
.wallet-hero-copy,.wallet-balance { position:relative; z-index:1; }
.wallet-hero h2 { margin:5px 0 7px; color:#fff; font-size:29px; letter-spacing:-.7px; }
.wallet-hero p { margin:0; color:#bdd0ca; font-size:12px; }
.wallet-hero .section-kicker { color:#a9d7cb !important; }
.wallet-balance { padding:19px 21px; border:1px solid rgba(255,255,255,.15); border-radius:17px; background:rgba(7,24,20,.24); backdrop-filter:blur(10px); }
.wallet-balance span,.wallet-balance b,.wallet-balance small { display:block; }
.wallet-balance span { color:#bdd0ca; font-size:11px; }
.wallet-balance b { margin-top:6px; color:#fff; font-size:34px; line-height:1; letter-spacing:-1px; }
.wallet-balance b.neg { color:#ffd0c5; }
.wallet-balance small { margin-top:10px; color:#a9c2ba; font-size:10px; }

.wallet-period-bar { display:flex; min-height:56px; align-items:center; gap:14px; margin-bottom:13px; padding:7px 10px; border:1px solid #dce5e3; border-radius:16px; background:#fff; box-shadow:0 7px 18px rgba(40,66,60,.045); }
.wallet-period-tabs { display:flex; gap:4px; padding:4px; border-radius:11px; background:#f0f4f2; }
.wallet-period-tabs button,.wallet-period-nav button { min-height:34px; padding:0 13px; border:0; border-radius:8px; color:#74827d; background:transparent; cursor:pointer; }
.wallet-period-tabs button.active { color:#fff; background:#193b34; box-shadow:0 5px 11px rgba(25,59,52,.16); }
.wallet-period-nav { display:flex; align-items:center; gap:5px; }
.wallet-period-nav .input { width:150px; min-height:36px; padding:0 9px; }
.wallet-period-nav button { width:34px; padding:0; border:1px solid #dce4e2; background:#fafcfb; font-size:18px; }
.wallet-period-bar > strong { margin-left:auto; padding-right:7px; color:#435c55; font-size:12px; }

.wallet-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin-bottom:13px; }
.wallet-kpi { position:relative; overflow:hidden; min-height:112px; padding:16px; border:1px solid #dde5e3; border-radius:17px; background:linear-gradient(145deg,#fff,#f7faf9); box-shadow:0 8px 20px rgba(43,70,63,.045); }
.wallet-kpi::after { content:''; position:absolute; right:-29px; bottom:-36px; width:82px; height:82px; border:13px solid rgba(42,90,78,.035); border-radius:50%; }
.wallet-kpi span,.wallet-kpi b,.wallet-kpi small { position:relative; z-index:1; display:block; }
.wallet-kpi > span { display:flex; align-items:center; gap:6px; color:#74867f; font-size:11px; }
.wallet-kpi b { margin-top:13px; color:#19372f; font-size:23px; line-height:1; letter-spacing:-.4px; }
.wallet-kpi small { margin-top:6px; color:#91a09a; font-size:10px; }
.wallet-kpi.income { border-top:3px solid #65a99b; }
.wallet-kpi.expense { border-top:3px solid #c6956a; }
.wallet-kpi.business { border-top:3px solid #668a83; }
.wallet-kpi.balance { border-top:3px solid #314f47; }
.wallet-kpi.rate { border-top:3px solid #8a8d73; }
.wallet-kpi .pos { color:#267b68; }.wallet-kpi .neg { color:#bd6258; }

.wallet-main-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:13px; margin-bottom:13px; }
.wallet-entry-form,.wallet-rhythm-card,.wallet-trend-card,.wallet-history { padding:18px !important; }
.wallet-card-head { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:14px; }
.wallet-card-head h3 { margin:3px 0 0; color:#1d352f; font-size:16px; }
.wallet-card-head > span { color:#83928d; font-size:10px; }
.wallet-entry-form>.wallet-card-head>span{font-size:0}.wallet-entry-form>.wallet-card-head>span:after{content:'经营利润仅作参考';font-size:10px}
.wallet-type-tabs { display:grid; grid-template-columns:repeat(2,1fr); gap:5px; margin-bottom:13px; padding:5px; border-radius:12px; background:#f2f5f4; }
.wallet-type-tabs.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wallet-type-tabs button { min-height:38px; border:0; border-radius:9px; color:#778680; background:transparent; cursor:pointer; font-weight:700; }
.wallet-type-tabs button.active.expense { color:#fff; background:#8f5b43; box-shadow:0 5px 12px rgba(143,91,67,.18); }
.wallet-type-tabs button.active.income { color:#fff; background:#2d7667; box-shadow:0 5px 12px rgba(45,118,103,.18); }
.wallet-type-tabs button.active.business { color:#fff; background:#526b72; box-shadow:0 5px 12px rgba(50,73,80,.18); }
.wallet-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.wallet-form-grid label { min-width:0; }
.wallet-form-grid label > span { display:block; margin:0 0 5px 2px; color:#75857f; font-size:10px; }
.wallet-form-grid .full { grid-column:1/-1; }
.wallet-cost-field > span { display:block; margin:0 0 6px 2px; color:#75857f; font-size:10px; }
.wallet-cost-picker { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding:7px; border:1px solid #dfe7e4; border-radius:13px; background:#f4f7f6; }
.wallet-cost-picker button { display:flex; min-width:0; min-height:38px; align-items:center; justify-content:center; gap:6px; padding:0 8px; border:1px solid transparent; border-radius:9px; color:#6e7e78; background:transparent; cursor:pointer; font-size:10px; transition:border-color .18s,background .18s,color .18s,transform .18s; }
.wallet-cost-picker button:active { transform:scale(.97); }
.wallet-cost-picker button i { width:5px; height:5px; flex:0 0 auto; border-radius:50%; background:#a5b2ae; }
.wallet-cost-picker button.active { border-color:#bfd6d0; color:#244f45; background:#fff; box-shadow:0 5px 12px rgba(44,76,68,.08); font-weight:750; }
.wallet-cost-picker button.active i { background:#44a38d; box-shadow:0 0 0 3px rgba(68,163,141,.13); }
.wallet-submit { width:100%; min-height:43px; margin-top:13px; }
.wallet-auto-profit { display:grid; grid-template-columns:32px minmax(0,1fr) auto; align-items:center; gap:10px; margin-top:13px; padding:11px 12px; border:1px solid #d9e8e3; border-radius:13px; background:#f0f7f4; }
.wallet-auto-profit > span { display:grid; width:30px; height:30px; place-items:center; border-radius:9px; color:#366e60; background:#dceee8; }
.wallet-auto-profit p,.wallet-auto-profit b,.wallet-auto-profit small { display:block; margin:0; }
.wallet-auto-profit b { color:#34584e; font-size:10px; }.wallet-auto-profit small { margin-top:3px; color:#789087; font-size:9px; line-height:1.45; }
.wallet-auto-profit strong { font-size:13px; }.wallet-auto-profit strong.pos { color:#267b68; }.wallet-auto-profit strong.neg { color:#bd6258; }
.wallet-opening { display:grid; grid-template-columns:minmax(0,1fr) 135px auto; align-items:center; gap:9px; margin-top:14px; padding:12px; border:1px solid #e3e9e7; border-radius:12px; background:#f7f9f8; }
.wallet-opening b,.wallet-opening small { display:block; }
.wallet-opening b { color:#40564f; font-size:11px; }.wallet-opening small { margin-top:3px; color:#8a9893; font-size:9px; line-height:1.4; }
.wallet-opening{display:none}.wallet-balance-editor{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;align-items:center;gap:10px;margin:-3px 0 12px;padding:13px 15px;border:1px solid #dce5e2;border-radius:15px;background:#f8faf9}.wallet-balance-editor b,.wallet-balance-editor small{display:block}.wallet-balance-editor b{color:#29483f;font-size:12px}.wallet-balance-editor small{margin-top:3px;color:#82918c;font-size:9px;line-height:1.5}.wallet-balance-editor .input{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}
.wallet-amount-input { color:#19372f; font-size:19px; font-weight:800; letter-spacing:.2px; }

.wallet-rhythm-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.wallet-rhythm-grid > div { min-height:104px; padding:14px; border:1px solid #e0e8e5; border-radius:14px; background:linear-gradient(145deg,#fbfdfc,#f3f7f5); }
.wallet-rhythm-grid span,.wallet-rhythm-grid b,.wallet-rhythm-grid em { display:block; }
.wallet-rhythm-grid span { color:#778780; font-size:10px; }
.wallet-rhythm-grid b { margin-top:10px; color:#233f37; font-size:20px; line-height:1; font-style:normal; }
.wallet-rhythm-grid b small { color:#73837d; font-size:10px; font-weight:600; }
.wallet-rhythm-grid em { margin-top:8px; color:#94a19c; font-size:9px; font-style:normal; }
.wallet-rhythm-note { display:flex; align-items:flex-start; gap:10px; margin-top:10px; padding:12px; border:1px solid #dce9e5; border-radius:13px; color:#477267; background:#edf6f3; }
.wallet-rhythm-note > span { display:grid; width:28px; height:28px; flex:0 0 auto; place-items:center; border-radius:9px; background:#dceee9; }
.wallet-rhythm-note p,.wallet-rhythm-note b,.wallet-rhythm-note small { display:block; margin:0; }
.wallet-rhythm-note b { color:#315a50; font-size:10px; }.wallet-rhythm-note small { margin-top:4px; color:#718b83; font-size:9px; line-height:1.55; }

.wallet-category-row { display:grid; grid-template-columns:28px minmax(0,1fr); gap:10px; padding:11px 0; border-bottom:1px solid #edf0ef; }
.wallet-category-row:last-child { border-bottom:0; }
.wallet-category-rank { display:grid; width:27px; height:27px; place-items:center; border-radius:9px; color:#667a73; background:#edf3f1; font-size:10px; font-weight:800; }
.wallet-category-row:first-of-type .wallet-category-rank { color:#fff; background:#315d52; }
.wallet-category-row > div > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.wallet-category-row b { color:#334c45; font-size:11px; }.wallet-category-row strong { color:#29443c; font-size:11px; }
.wallet-category-track { overflow:hidden; height:5px; margin:7px 0 5px; border-radius:99px; background:#e6ecea; }
.wallet-category-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#47796e,#83b7aa); }
.wallet-category-row small { color:#8a9994; font-size:9px; }
.wallet-empty-mini { display:grid; min-height:210px; place-items:center; color:#95a29e; font-size:11px; }

.wallet-trend-card { margin-bottom:13px; }
.wallet-legend { display:flex; gap:10px; color:#7f8f89; font-size:9px; }
.wallet-legend span { display:flex; align-items:center; gap:4px; }
.wallet-legend i { width:7px; height:7px; border-radius:2px; }.wallet-legend i.income { background:#579487; }.wallet-legend i.expense { background:#c28c62; }
.wallet-trend-chart { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; height:174px; padding:8px 10px 0; border-top:1px solid #edf0ef; }
.wallet-trend-month { display:grid; grid-template-rows:1fr auto auto; min-width:0; gap:4px; text-align:center; }
.wallet-trend-bars { display:flex; height:112px; align-items:flex-end; justify-content:center; gap:5px; padding-top:9px; }
.wallet-trend-bars i { width:min(19px,34%); min-height:0; border-radius:5px 5px 2px 2px; animation:chart-bar-rise .75s ease both; }
.wallet-trend-bars i.income { background:linear-gradient(180deg,#75b7a8,#3b766a); }.wallet-trend-bars i.expense { background:linear-gradient(180deg,#dfb58d,#a66e4b); }
.wallet-trend-month > span { color:#7c8d87; font-size:9px; }.wallet-trend-month > small { overflow:hidden; color:#75847f; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }

.wallet-entry-list { border-top:1px solid #edf0ef; }
.wallet-entry { display:grid; grid-template-columns:38px minmax(0,1fr) auto 30px; align-items:center; gap:11px; min-height:68px; padding:10px 3px; border-bottom:1px solid #edf0ef; }
.wallet-entry-icon { display:grid; width:36px; height:36px; place-items:center; border-radius:11px; }
.wallet-entry-icon.income { color:#287361; background:#e5f3ef; }.wallet-entry-icon.expense { color:#9c6243; background:#f8ece4; }
.wallet-entry-icon.business { color:#476b74; background:#e7f0f2; }
.wallet-entry-main { min-width:0; }.wallet-entry-main > div { display:flex; align-items:baseline; gap:8px; }
.wallet-entry-main b { color:#2b433c; font-size:11px; }.wallet-entry-main span { color:#8b9994; font-size:9px; }
.wallet-entry-main small { display:block; overflow:hidden; margin-top:4px; color:#7d8d87; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.wallet-entry > strong { font-size:13px; }.wallet-entry > strong.income { color:#287b68; }.wallet-entry > strong.expense { color:#a45d4e; }
.wallet-entry-delete { display:grid; width:28px; height:28px; place-items:center; border:0; border-radius:8px; color:#9aa6a2; background:transparent; cursor:pointer; }
.wallet-entry-delete:hover { color:#bd6258; background:#f8eae7; }
.wallet-empty { display:flex; min-height:170px; align-items:center; justify-content:center; flex-direction:column; color:#879791; text-align:center; }
.wallet-empty > span { color:#a3b0ac; }.wallet-empty b { margin-top:8px; color:#50645e; font-size:12px; }.wallet-empty small { margin-top:5px; font-size:10px; }
.wallet-pager { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:13px; }
.wallet-pager button { min-height:32px; padding:0 12px; border:1px solid #dce4e1; border-radius:9px; color:#597069; background:#fafcfb; cursor:pointer; }
.wallet-pager button:disabled { opacity:.4; cursor:default; }.wallet-pager span { color:#81918b; font-size:10px; }

html.eye-mode .wallet-hero { border-color:#315148; background:radial-gradient(circle at 82% 13%,rgba(110,213,195,.08),transparent 27%),linear-gradient(125deg,#0e201d,#173b34 58%,#28564d); }
html.eye-mode .wallet-period-bar,html.eye-mode .wallet-kpi,html.eye-mode .wallet-entry-form,html.eye-mode .wallet-rhythm-card,html.eye-mode .wallet-trend-card,html.eye-mode .wallet-history { border-color:#293d39 !important; background:linear-gradient(145deg,#111d1b,#101917) !important; }
html.eye-mode .wallet-period-tabs,html.eye-mode .wallet-type-tabs { background:#0c1614; }
html.eye-mode .wallet-period-tabs button.active { color:#081714; background:#65cbb7; }
html.eye-mode .wallet-period-nav button { border-color:#31443f; color:#a9bdb6; background:#13201d; }
html.eye-mode .wallet-period-bar > strong,html.eye-mode .wallet-card-head h3,html.eye-mode .wallet-kpi b { color:#e8f3ef; }
html.eye-mode .wallet-kpi::after { border-color:rgba(103,205,184,.035); }
html.eye-mode .wallet-opening { border-color:#293c37; background:#0d1715; }
html.eye-mode .wallet-opening b { color:#b8cbc4; }
html.eye-mode .wallet-balance-editor{border-color:#29413c;background:#101c19}html.eye-mode .wallet-balance-editor b{color:#d8e9e4}html.eye-mode .wallet-balance-editor .input{color:#e8f4f1;border-color:#314a44;background:#14231f}
html.eye-mode .wallet-amount-input { color:#e7f3ef; }
html.eye-mode .wallet-cost-picker { border-color:#2a403a; background:#0d1916; }
html.eye-mode .wallet-cost-picker button { color:#78918a; }.eye-mode .wallet-cost-picker button i { background:#425b54; }
html.eye-mode .wallet-cost-picker button.active { border-color:#315f55; color:#bfe9de; background:#17332c; box-shadow:0 0 16px rgba(75,201,177,.08); }
html.eye-mode .wallet-cost-picker button.active i { background:#6ce0c7; box-shadow:0 0 0 3px rgba(108,224,199,.13),0 0 9px rgba(108,224,199,.4); }
html.eye-mode .wallet-auto-profit { border-color:#29433c; background:#142b25; }
html.eye-mode .wallet-auto-profit > span { color:#75d2bc; background:#1d3a33; }
html.eye-mode .wallet-auto-profit b { color:#c5e3db; }.eye-mode .wallet-auto-profit small { color:#82a39a; }
html.eye-mode .wallet-rhythm-grid > div { border-color:#293c37; background:linear-gradient(145deg,#14231f,#101b18); }
html.eye-mode .wallet-rhythm-grid b { color:#dcece7; }
html.eye-mode .wallet-rhythm-note { border-color:#29443d; color:#7cc5b4; background:#142a24; }
html.eye-mode .wallet-rhythm-note > span { background:#1c3932; }
html.eye-mode .wallet-rhythm-note b { color:#bde2d8; }.eye-mode .wallet-rhythm-note small { color:#7fa49a; }
html.eye-mode .wallet-category-row,html.eye-mode .wallet-entry-list,html.eye-mode .wallet-entry { border-color:#263733; }
html.eye-mode .wallet-category-rank { color:#97aaa4; background:#192824; }
html.eye-mode .wallet-category-row b,html.eye-mode .wallet-category-row strong,html.eye-mode .wallet-entry-main b { color:#d9e8e3; }
html.eye-mode .wallet-category-track { background:#263833; }
html.eye-mode .wallet-trend-chart { border-color:#263733; }
html.eye-mode .wallet-entry-icon.income { color:#75d2bc; background:#15342d; }.eye-mode .wallet-entry-icon.expense { color:#dc9f79; background:#34241c; }
html.eye-mode .wallet-entry-icon.business { color:#9ac7d1; background:#1a3036; }
html.eye-mode .wallet-entry-delete:hover { background:#341f1d; }
html.eye-mode .wallet-empty b { color:#b6c8c2; }

@media (max-width:980px) {
  .wallet-hero { grid-template-columns:1fr; }
  .wallet-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wallet-main-grid { grid-template-columns:1fr; }
}

@media (max-width:720px) {
  .wallet-page { padding:2px 9px 100px; }
  .topbar.secondary .license-chip { display:none; }
  .topbar.secondary .page-title { min-width:0; flex:1; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .wallet-hero { display:block; min-height:0; margin-bottom:10px; padding:18px 16px; border-radius:19px; }
  .wallet-hero h2 { font-size:22px; }.wallet-hero p { font-size:10px; }
  .wallet-balance { margin-top:17px; padding:14px; border-radius:14px; }
  .wallet-balance b { font-size:30px; }.wallet-balance small { font-size:9px; line-height:1.5; }
  .wallet-period-bar { display:grid; grid-template-columns:1fr auto; gap:8px; margin-bottom:10px; padding:8px; }
  .wallet-period-tabs { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); }
  .wallet-period-tabs button { padding:0 8px; }
  .wallet-period-nav { min-width:0; }.wallet-period-nav .input { width:128px; min-width:0; font-size:11px; }
  .wallet-period-bar > strong { overflow:hidden; margin:0; padding:0 4px; font-size:10px; text-align:right; text-overflow:ellipsis; white-space:nowrap; }
  .wallet-type-tabs.three button { padding:0 5px; font-size:10px; }
  .wallet-kpis { gap:8px; margin-bottom:10px; }
  .wallet-kpi { min-height:98px; padding:13px; border-radius:15px; }
  .wallet-kpi b { margin-top:11px; font-size:20px; }.wallet-kpi small { font-size:9px; }
  .wallet-main-grid { gap:10px; margin-bottom:10px; }
  .wallet-entry-form,.wallet-rhythm-card,.wallet-trend-card,.wallet-history { padding:14px !important; border-radius:17px !important; }
  .wallet-form-grid { grid-template-columns:1fr; gap:9px; }.wallet-form-grid .full { grid-column:auto; }
  .wallet-cost-field.full { grid-column:auto; }.wallet-cost-picker { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }.wallet-cost-picker button { min-height:41px; font-size:11px; }
  .wallet-auto-profit { grid-template-columns:30px minmax(0,1fr); }.wallet-auto-profit strong { grid-column:2; margin-top:-3px; }
  .wallet-opening { grid-template-columns:1fr auto; }.wallet-opening > div { grid-column:1/-1; }.wallet-opening .input { min-width:0; }
  .wallet-balance-editor{grid-template-columns:minmax(0,1fr) auto;padding:12px}.wallet-balance-editor>div{grid-column:1/-1}.wallet-balance-editor .input{min-width:0;width:100%;font-size:18px}
  .wallet-empty-mini { min-height:130px; }
  .wallet-rhythm-grid { gap:7px; }.wallet-rhythm-grid > div { min-height:96px; padding:12px; border-radius:13px; }.wallet-rhythm-grid b { font-size:18px; }
  .wallet-trend-chart { gap:5px; height:155px; padding:5px 0 0; }.wallet-trend-bars { height:96px; gap:3px; }.wallet-trend-bars i { width:12px; }
  .wallet-trend-month > small { font-size:7px; }
  .wallet-entry { grid-template-columns:34px minmax(0,1fr) auto; gap:8px; }.wallet-entry-icon { width:34px; height:34px; }.wallet-entry-delete { grid-column:3; grid-row:2; justify-self:end; margin-top:-20px; }
  .wallet-entry-main > div { display:block; }.wallet-entry-main span { display:block; margin-top:2px; }
  .wallet-entry > strong { align-self:start; padding-top:4px; font-size:12px; }
}

/* ===== Mobile stock intelligence dashboard ===== */
.pan-mobile-hero { display:none; }

@media (max-width:720px) {
  html.light-mode .pan-page { padding-top:9px !important; }
  html.light-mode .pan-page > .pan-breadcrumb,
  html.light-mode .pan-page > .pan-title { display:none; }

  html.light-mode .pan-mobile-hero {
    position:relative;
    display:block;
    overflow:hidden;
    margin-bottom:10px;
    padding:18px;
    border:1px solid rgba(40,86,104,.16);
    border-radius:22px;
    color:#18384d;
    background:linear-gradient(142deg,#f7fcfb 0%,#eaf5f4 58%,#e6f0f5 100%);
    box-shadow:0 13px 30px rgba(27,64,81,.09);
  }
  html.light-mode .pan-mobile-hero::after {
    content:'';
    position:absolute;
    right:-52px;
    top:-68px;
    width:160px;
    height:160px;
    border:22px solid rgba(46,132,133,.075);
    border-radius:50%;
    pointer-events:none;
  }
  .pan-mobile-hero-top {
    position:relative;
    z-index:1;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
  }
  .pan-mobile-hero-top h2 { margin:3px 0 3px; color:#16374c; font-size:21px; letter-spacing:-.35px; }
  .pan-mobile-hero-top p { margin:0; color:#718696; font-size:11px; }
  .pan-health-badge {
    flex:0 0 auto;
    padding:6px 9px;
    border-radius:99px;
    font-size:10px;
    font-weight:800;
  }
  .pan-health-badge.good { color:#1d7166; background:#dff3ed; }
  .pan-health-badge.warning { color:#966316; background:#fff0d5; }
  .pan-health-badge.danger { color:#a54343; background:#fde7e5; }
  .pan-mobile-hero-value { position:relative; z-index:1; display:grid; gap:3px; margin-top:20px; }
  .pan-mobile-hero-value > span { color:#607b8d; font-size:12px; }
  .pan-mobile-hero-value > b { color:#102f46; font-size:32px; line-height:1.12; letter-spacing:-1.1px; }
  .pan-mobile-hero-value > small { color:#6d8393; font-size:11px; }
  .pan-mobile-health {
    position:relative;
    z-index:1;
    margin-top:17px;
    padding-top:13px;
    border-top:1px solid rgba(80,119,134,.16);
  }
  .pan-mobile-health > div:first-child { display:flex; align-items:center; justify-content:space-between; color:#607888; font-size:11px; }
  .pan-mobile-health > div:first-child b { color:#17394e; font-size:13px; }
  .pan-mobile-health-track { overflow:hidden; height:6px; margin:8px 0 7px; border-radius:99px; background:rgba(109,142,151,.15); }
  .pan-mobile-health-track i { display:block; min-width:4px; height:100%; border-radius:inherit; background:#52a99a; transition:width .55s ease; }
  .pan-mobile-health-track i.warning { background:#d4a042; }
  .pan-mobile-health-track i.danger { background:#d66565; }
  .pan-mobile-health > small { color:#738897; font-size:10px; }

  /* Filters read as a compact control deck rather than another report card. */
  html.light-mode .pan-filter {
    margin-bottom:10px !important;
    padding:11px !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.92) !important;
  }
  .pan-filter .pan-row { gap:7px !important; }
  .pan-filter .input,
  .pan-filter .app-select-trigger { min-height:39px; border-radius:11px !important; font-size:11px; }
  .pan-filter .pan-sep { color:#91a0ac; }
  .pan-filter [data-act="pan-reset"] { min-height:39px; border-radius:11px; color:#526c7e; background:#eef4f6 !important; }

  html.light-mode .pan-kpi {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px !important;
    margin:0;
  }
  html.light-mode .pan-kpi-card {
    position:relative;
    min-height:104px;
    padding:13px !important;
    border-radius:16px !important;
    background:linear-gradient(150deg,#fff,#f4f9fa) !important;
    box-shadow:0 7px 17px rgba(25,58,76,.05) !important;
  }
  html.light-mode .pan-kpi-card .label { display:flex; align-items:center; gap:7px; color:#61788a; font-size:11px; }
  .pan-kpi-icon { display:grid; width:25px; height:25px; place-items:center; border-radius:8px; color:#356b7a; background:#e6f2f2; }
  html.light-mode .pan-kpi-card .value { margin-top:11px; color:#14344a !important; font-size:20px !important; letter-spacing:-.35px; }
  html.light-mode .pan-kpi-card .extra { margin-top:3px; font-size:10px; }
  html.light-mode .pan-kpi-4 { border-color:#eed9d5 !important; background:linear-gradient(150deg,#fff,#fdf4f1) !important; }
  html.light-mode .pan-kpi-4 .pan-kpi-icon { color:#a6574e; background:#f9e8e4; }

  html.light-mode .pan-mobile-summary { gap:13px !important; margin-top:13px; }
  html.light-mode .pan-mobile-card,
  html.light-mode .pan-mobile-products {
    min-height:0;
    padding:0 !important;
    overflow:hidden;
    border:1px solid #d8e5e9 !important;
    border-radius:19px !important;
    background:linear-gradient(145deg,#fff,#f5faf9) !important;
    box-shadow:0 9px 21px rgba(30,62,80,.055) !important;
  }
  .pan-mobile-head { padding:14px 14px 12px; }
  .pan-mobile-head > div { min-width:0; }
  .pan-mobile-head .section-kicker { display:block; margin-bottom:3px; font-size:8px; letter-spacing:1.05px; }
  .pan-mobile-head h3 { font-size:15px; }

  .pan-mobile-brand-row { display:grid; grid-template-columns:27px minmax(0,1fr); gap:10px; padding:12px 14px; border-top:1px solid #e8eff2; }
  .pan-mobile-rank { display:grid; width:27px; height:27px; place-items:center; border-radius:9px; color:#557286; background:#edf4f5; font-size:11px; font-weight:900; }
  .pan-mobile-brand-row:first-of-type .pan-mobile-rank { color:#fff; background:#214d66; }
  .pan-mobile-brand-main { min-width:0; }
  .pan-mobile-brand-main > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:8px; }
  html.light-mode .pan-mobile-brand-main b { overflow:hidden; color:#17364b; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
  .pan-mobile-brand-main strong { flex:0 0 auto; color:#17364b; font-size:12px; }
  .pan-mobile-progress { overflow:hidden; height:5px; margin:7px 0 5px; border-radius:99px; background:#e6eef1; }
  .pan-mobile-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2d7580,#68b8aa); }
  .pan-mobile-brand-main small { color:#7a8d9b; font-size:10px; }

  html.light-mode .pan-mobile-products { border:0 !important; background:transparent !important; box-shadow:none !important; }
  .pan-mobile-products > .pan-mobile-head { padding:4px 3px 10px; border:0; }
  .pan-mobile-product-list { display:grid; gap:9px; }
  html.light-mode .pan-mobile-product-card {
    padding:13px;
    border:1px solid #dbe6ea;
    border-radius:17px;
    background:linear-gradient(145deg,#fff,#f6fafb);
    box-shadow:0 7px 17px rgba(27,58,76,.045);
  }
  .pan-mobile-product-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .pan-mobile-brand,
  .pan-mobile-age { padding:4px 7px; border-radius:7px; color:#3e6978; background:#e8f3f3; font-size:9px; font-weight:800; }
  .pan-mobile-age { color:#667b8b; background:#edf2f5; }
  .pan-mobile-age.warning { color:#95651d; background:#fff0d8; }
  .pan-mobile-age.danger { color:#a64d48; background:#fbe6e3; }
  .pan-mobile-product-card h4 { overflow:hidden; margin:10px 0 5px; color:#152f45; font-size:14px; line-height:1.4; text-overflow:ellipsis; white-space:nowrap; }
  .pan-mobile-code { display:inline-flex; align-items:center; gap:4px; padding:0; border:0; color:#758a99; background:transparent; font-size:10px; }
  .pan-mobile-product-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:12px; padding-top:11px; border-top:1px solid #e6eef1; }
  .pan-mobile-product-metrics > span { min-width:0; padding:0 8px; border-right:1px solid #e6eef1; }
  .pan-mobile-product-metrics > span:first-child { padding-left:0; }
  .pan-mobile-product-metrics > span:last-child { padding-right:0; border-right:0; text-align:right; }
  .pan-mobile-product-metrics small,
  .pan-mobile-product-metrics b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .pan-mobile-product-metrics small { color:#81929f; font-size:9px; }
  html.light-mode .pan-mobile-product-metrics b { margin-top:3px; color:#17364b; font-size:12px; }
}

@media (max-width:720px) {
  html.light-mode .content { padding:8px 9px 18px !important; }
  html.light-mode .mobile-dashboard,html.light-mode .m-in,html.light-mode .mobile-inout-shell,
  html.light-mode .pan-page,html.light-mode .reconcile-page,html.light-mode .manage-page,
  html.light-mode .inventory-life-page,html.light-mode .me-page,html.light-mode .orders-page,
  html.light-mode .settings-page,html.light-mode .members-page {
    padding-left:0 !important; padding-right:0 !important;
  }
  html.light-mode .m-stock-mobile-header,html.light-mode .m-stat-2x2,html.light-mode .inventory-list-card {
    margin-left:0 !important; margin-right:0 !important;
  }
}

/* ===== 交互控件统一：明亮主题使用深海军蓝，不再出现蓝紫大色块 ===== */
html.light-mode .btn.primary,
html.light-mode .btn.main,
html.light-mode .stock-add {
  color:#fff !important;
  background:linear-gradient(135deg,#101b2e 0%,#1d314c 100%) !important;
  border-color:#1a2d46 !important;
  box-shadow:0 8px 18px rgba(17,34,57,.16) !important;
}
html.light-mode .btn.primary:hover,
html.light-mode .btn.main:hover,
html.light-mode .stock-add:hover { background:#243b59 !important; }
html.light-mode .chip.active,
html.light-mode .m-tab.active,
html.light-mode .dashboard-period-tabs button.active,
html.light-mode .sales-period-tabs button.active {
  color:#fff !important;
  background:#132238 !important;
  border-color:#132238 !important;
  box-shadow:0 4px 12px rgba(16,30,49,.16) !important;
}
html.light-mode .chip,
html.light-mode .m-tab,
html.light-mode .dashboard-period-tabs,
html.light-mode .sales-period-tabs {
  background:#fff !important;
  border-color:#d6e0ea !important;
  color:#62738a !important;
}
html.light-mode .chip:not(.active):hover,
html.light-mode .m-tab:not(.active):hover,
html.light-mode .dashboard-period-tabs button:not(.active):hover,
html.light-mode .sales-period-tabs button:not(.active):hover {
  color:#172942 !important;
  background:#f1f5f8 !important;
}

/* 下拉菜单不受库存卡片裁切，浮层与明亮页面保持同一套白色层级 */
html.light-mode .stock-filter-picker,
html.light-mode .app-select-picker { position:relative; z-index:20; }
html.light-mode .stock-filter-picker.open,
html.light-mode .app-select-picker.open { z-index:100001; }
html.light-mode .stock-filter-picker-popover,
html.light-mode .app-select-popover {
  z-index:100002 !important;
  color:#16253a !important;
  background:#fff !important;
  border:1px solid #cbd8e5 !important;
  border-radius:12px !important;
  box-shadow:0 16px 34px rgba(22,40,64,.18) !important;
}
html.light-mode .stock-filter-picker-popover button,
html.light-mode .app-select-popover button {
  color:#34465f !important;
  background:transparent !important;
}
html.light-mode .stock-filter-picker-popover button:hover,
html.light-mode .app-select-popover button:hover,
html.light-mode .stock-filter-picker-popover button.active,
html.light-mode .app-select-popover button.active {
  color:#fff !important;
  background:#132238 !important;
}
html.light-mode .inventory-list-card,
html.light-mode .stock-list-wrap,
html.light-mode .stock-filter-bar { overflow:visible !important; }

/* 瑕疵处置、已售罄：不使用抢眼色块，改为清晰的浅层卡片层级 */
html.light-mode .inventory-life-hero,
html.light-mode .soldout-hero {
  min-height:122px;
  background:linear-gradient(108deg,#ffffff 0%,#f5f9fb 72%,#edf7f6 100%) !important;
  border:1px solid #cedfea !important;
  border-left:4px solid #1a304b !important;
  box-shadow:0 12px 28px rgba(22,43,68,.08) !important;
}
html.light-mode .inventory-life-hero h2,
html.light-mode .soldout-hero h2 { color:#14243a !important; }
html.light-mode .inventory-life-hero p,
html.light-mode .soldout-hero p { color:#62758c !important; }
html.light-mode .inventory-life-summary {
  min-width:132px;
  padding:15px 19px !important;
  text-align:center;
  border:1px solid #d5e1e9 !important;
  border-left:1px solid #d5e1e9 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 6px 16px rgba(20,43,70,.06);
}
html.light-mode .inventory-life-summary b { color:#152842 !important; }
html.light-mode .inventory-life-content > .card,
html.light-mode .soldout-control,
html.light-mode .soldout-overview,
html.light-mode .soldout-list {
  background:rgba(255,255,255,.94) !important;
  border-color:#d5e1ea !important;
  box-shadow:0 10px 24px rgba(25,47,72,.06) !important;
}
html.light-mode .inventory-life-content .stat-card {
  background:#f9fbfc !important;
  border:1px solid #dbe5ed !important;
  box-shadow:none !important;
}

/* 深色模式同样去紫化，使用低饱和海军蓝保证按钮文字可读 */
html.eye-mode .btn.primary,
html.eye-mode .btn.main,
html.eye-mode .stock-add {
  color:#fff !important;
  background:#284365 !important;
  border-color:#3c618c !important;
}
html.eye-mode .chip.active,
html.eye-mode .m-tab.active,
html.eye-mode .dashboard-period-tabs button.active,
html.eye-mode .sales-period-tabs button.active {
  color:#fff !important;
  background:#314d70 !important;
  border-color:#5a7ba5 !important;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { height: 100%; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  background: var(--bg); color: var(--text); font-size: 14px;
  -webkit-font-smoothing: antialiased;
}
body::before { content: ''; position: fixed; z-index: -1; inset: 0; pointer-events: none; background: radial-gradient(circle at 88% 0%, rgba(99,102,241,.10), transparent 28%), radial-gradient(circle at 25% 100%, rgba(45,212,191,.06), transparent 30%); }
button { font-family: inherit; cursor: pointer; }
input, select, textarea { font-family: inherit; font-size: 14px; color: var(--text); }
a { color: var(--primary); text-decoration: none; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #c9d2e0; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #a6b3c9; }
::-webkit-scrollbar-track { background: transparent; }

/* 统一分页：轻量、克制，适用于库存、瑕疵、售罄和管理员资料库。 */
.app-pager {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  margin-top:16px; padding:12px 14px; border:1px solid #e2e8f1; border-radius:14px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(246,249,253,.94));
  box-shadow:0 7px 20px rgba(15,23,42,.045);
}
.app-pager-meta { color:#7b899d; font-size:12px; white-space:nowrap; }
.app-pager-controls { display:flex; align-items:center; gap:5px; }
.app-pager button {
  height:32px; min-width:32px; display:inline-flex; align-items:center; justify-content:center; gap:5px;
  padding:0 9px; border:1px solid #dce4ef; border-radius:9px; background:#fff; color:#52637b;
  font-size:12px; cursor:pointer; transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.app-pager button:hover:not(:disabled):not(.active) { transform:translateY(-1px); border-color:#aebed2; color:#17243a; box-shadow:0 4px 10px rgba(15,23,42,.07); }
.app-pager button.active { border-color:#17243a; background:#17243a; color:#fff; box-shadow:0 5px 12px rgba(23,36,58,.2); }
.app-pager button:disabled { opacity:.38; cursor:not-allowed; }
.app-pager-ellipsis { width:25px; color:#9aa7b8; text-align:center; letter-spacing:1px; font-size:10px; }
.shared-library-modal-pager { padding:0 26px 16px; }
.shared-library-modal-pager .app-pager { margin-top:0; }
html.eye-mode .app-pager { border-color:#30445f; background:linear-gradient(135deg,#152136,#182a3d); box-shadow:none; }
html.eye-mode .app-pager button { border-color:#344a66; background:#111d30; color:#aebed3; }
html.eye-mode .app-pager button.active { border-color:#dce9fb; background:#e7effb; color:#142037; }
@media(max-width:720px) {
  .app-pager { flex-direction:column; align-items:stretch; gap:9px; padding:10px; border-radius:12px; }
  .app-pager-meta { text-align:center; }
  .app-pager-controls { justify-content:center; }
  .app-pager-nav span { display:none; }
  .app-pager button { height:36px; min-width:36px; padding:0 8px; }
  .shared-library-modal-pager { padding:0 18px 12px; }
}
/* 永远为 html 预留滚动条轨道，避免页面切换时滚动条出现/消失造成内容区域抖动 */
html { scrollbar-gutter: stable; }

.hidden { display: none !important; }

/* ===== 登录页 ===== */
.login-wrap {
  min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #101c30 0%, #1b2f52 55%, #24437a 100%);
  padding: 20px;
}
.login-card {
  width: 400px; max-width: 100%; background: #fff; border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.35); padding: 40px 36px 32px;
}
.login-logo { text-align: center; margin-bottom: 24px; }
.login-logo .icon { font-size: 40px; }
.login-logo h1 { font-size: 22px; margin-top: 10px; color: #101c30; }
.login-logo p { color: var(--text-3); font-size: 13px; margin-top: 4px; }
.form-item { margin-bottom: 16px; }
.form-item label { display: block; font-size: 13px; color: var(--text-2); margin-bottom: 6px; }
.form-item input, .form-item select {
  width: 100%; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px;
  outline: none; transition: border-color .15s, box-shadow .15s; background: #fff;
}
.form-item input:focus, .form-item select:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(22,119,255,.12); }
.login-tip { margin-top: 14px; padding: 10px 12px; background: #f6f8fb; border-radius: 8px; font-size: 12px; color: var(--text-2); line-height: 1.7; }

/* ===== 主框架 ===== */
/* mobile-first：默认布局就是 mobile，使用 100vh 容器，sidebar 隐藏，bottom-nav 显示 */
.shell { display: flex; flex-direction: column; min-height: 100vh; }
.sidebar { display: none; }
.bottom-nav { display: flex; }
/* 命名说明：用 .page-main 取代 .main，避免与各视图卡片内部的 rank-item 等子元素里
   同样叫 class="main" 的 div 发生选择器冲突。例如 dashboard 的「成本价位分布」卡片
   里 5 个 rank-item 各自包含 .main，原本会被 .main { height: 100vh } 误伤，
   把每行强行拉到 viewport 高度，导致整张卡片被撑到 4600+ px。 */
.page-main { margin-left: 0; flex: 1; display: flex; flex-direction: column; min-width: 0; }

/* 大屏（≥721px）：恢复桌面布局 */
@media (min-width: 721px) {
  /* 桌面端：shell 锁定为 viewport 高度，主区域独立滚动，外层不再闪烁 */
  .shell { display: flex; flex-direction: row; height: 100vh; overflow: hidden; }
  .sidebar {
    display: flex; flex-direction: column; width: var(--sidebar-w);
    background: var(--sidebar-bg); color: var(--sidebar-text);
    position: sticky; top: 0; height: 100vh;
  }
  .sidebar .brand { padding: 24px 20px 20px; border-bottom: 1px solid rgba(255,255,255,.07); }
  .sidebar .brand-mark { display:flex; align-items:center; justify-content:space-between; }
  .sidebar .brand .logo { font-size: 26px; color:#a5b4fc; }
  .sidebar .brand em { font-style:normal; border:1px solid rgba(165,180,252,.35); color:#a5b4fc; border-radius:999px; padding:2px 7px; font-size:10px; font-weight:700; letter-spacing:1px; }
  .sidebar .brand h2 { color: #fff; font-size: 18px; margin-top: 12px; letter-spacing: .5px; }
  .sidebar .brand span { font-size: 10px; color: #707797; letter-spacing: .8px; }
  .sidebar nav { flex: 1; overflow-y: auto; padding: 10px 0; }
  .sidebar nav .nav-group { padding: 14px 18px 4px; font-size: 11px; color: #556179; letter-spacing: 1px; }
  .sidebar nav a {
    display: flex; align-items: center; gap: 10px; padding: 11px 18px; margin: 2px 10px; border-radius: 9px; color: var(--sidebar-text);
    text-decoration: none; font-size: 13.5px; transition: background .12s, color .12s, border-left-color .15s, padding-left .15s; border-left: 3px solid transparent;
  }
  .sidebar nav a .ic { width: 20px; text-align: center; font-size: 15px; }
  .sidebar nav a:hover { background: rgba(255,255,255,.05); color: #fff; }
  .sidebar nav a.active { background: linear-gradient(90deg, rgba(99,102,241,.35), rgba(99,102,241,.09)); color: #fff; border-left-color: #a5b4fc; }
  .sidebar .side-foot { padding: 12px 18px; border-top: 1px solid rgba(255,255,255,.07); font-size: 12px; color: #6b7690; }

  /* 主区域独立滚动：滚动条始终在 .page-main 右侧，不再因页面高度产生抖变。
   * 注意：.shell 是 flex row，page-main 已被 flex 推到 sidebar 右侧 */
  .page-main {
    flex: 1; display: flex; flex-direction: column;
    min-width: 0; height: 100vh; overflow-y: auto; overscroll-behavior: contain;
  }
  .page-main { scroll-behavior: smooth; }
  .bottom-nav { display: none; }
}
.topbar {
  height: 64px; background: rgba(255,255,255,.78); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(230,233,240,.85);
  display: flex; align-items: center; justify-content: space-between; padding: 0 20px;
  position: sticky; top: 0; z-index: 90;
}
.topbar .page-title { font-size: 17px; font-weight: 600; }
.topbar .right { display: flex; align-items: center; gap: 12px; }
.topbar .sync-btn { font-size: 12px; color: var(--text-2); display: flex; align-items: center; gap: 6px; cursor: pointer; }
.topbar .sync-btn:hover { color: var(--primary); }
.topbar .user { display: flex; align-items: center; gap: 8px; cursor: pointer; padding: 6px 10px; border-radius: 8px; }
.topbar .user:hover { background: var(--bg); }
.topbar .avatar { width: 30px; height: 30px; border-radius: 50%; background: var(--primary); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }
.topbar .user .name { font-size: 13px; font-weight: 500; }

.content { padding: 22px 24px 32px; flex: 1; max-width: 1680px; width: 100%; margin: 0 auto; }

/* ===== 月份对比卡片 ===== */
.cmp-card { padding: 18px 20px 20px; }
.cmp-picker {
  display: flex; align-items: center; gap: 10px;
  margin: 10px 0 14px; padding: 10px 12px;
  background: linear-gradient(135deg, #f0f6ff 0%, #f9faff 100%);
  border: 1px solid #dce8fa; border-radius: 10px;
}
.cmp-sel { flex: 1; min-width: 0; padding: 7px 10px; font-weight: 500; cursor: pointer; }
.cmp-sel:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(22,119,255,.12); }
.cmp-vs { color: var(--primary); font-weight: 700; font-size: 13px; padding: 0 2px; letter-spacing: 1px; }
.cmp-swap {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: 8px; cursor: pointer;
  background: #fff; border: 1px solid var(--border); color: var(--text-2);
  transition: all .15s;
}
.cmp-swap:hover { background: var(--primary); color: #fff; border-color: var(--primary); transform: scale(1.05); }
.cmp-table-wrap { overflow-x: auto; }
.cmp-table { width: 100%; }
.cmp-table th { font-size: 12.5px; font-weight: 600; padding: 9px 10px; }
.cmp-table th.hl { color: var(--primary); background: #f0f6ff; font-size: 13px; }
.cmp-table td { padding: 11px 10px; font-size: 13.5px; }
.cmp-table td.hl { background: #fafcff; }
.cmp-table td.hl b { font-size: 14.5px; color: var(--text); }
.cmp-table .m { color: var(--text-2); font-weight: 500; }
.cmp-bars-wrap { margin-top: 14px; padding-top: 14px; border-top: 1px dashed var(--border); }
.cmp-bars-wrap .chart-box { background: transparent; }
@media (max-width: 720px) {
  .cmp-swap { display: none; }
  .cmp-vs { font-size: 11px; padding: 0 1px; }
  .cmp-picker { padding: 8px 10px; gap: 6px; }
  .cmp-table th, .cmp-table td { padding: 8px 6px; font-size: 12.5px; }
}

/* 对账明细排序与订单批量处理 */
.rec-preview-sort{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:0 0 10px}.rec-preview-sort>span{color:var(--text-3);font-size:11px}.rec-preview-sort .input{width:190px;height:36px;font-size:12px}.rec-result-money small{display:block;margin-top:3px;color:var(--text-3);font-size:9px;font-weight:500}.order-check{display:grid;flex:0 0 24px;width:24px;height:24px;place-items:center;cursor:pointer}.order-check input{position:absolute;opacity:0;pointer-events:none}.order-check span{display:block;width:17px;height:17px;border:1.5px solid #bdc9d8;border-radius:5px;background:#fff}.order-check input:checked+span{border-color:#172944;background:#172944;box-shadow:inset 0 0 0 4px #172944}.order-check input:checked+span:after{display:block;margin:2px 0 0 5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);content:""}.order-check-spacer{flex:0 0 24px}.order-row.selected{border-color:#9aabc1;background:#f7f9fc}.order-batch-bar{display:flex;align-items:center;gap:10px;margin-top:10px;padding:9px 11px;border:1px solid #d9e2ec;border-radius:12px;background:#f6f8fb}.order-batch-bar>span{color:var(--text-2);font-size:11px}.order-batch-bar .btn:last-child{margin-left:auto}

@media(max-width:720px){
  .rec-preview-sort{justify-content:space-between;margin:2px 1px 9px}.rec-preview-sort .input{width:180px;max-width:65%;font-size:16px}
  .order-row .stock-head{align-items:flex-start}.order-check,.order-check-spacer{flex-basis:20px;width:20px}.order-batch-bar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:auto 1fr auto;padding:8px}.order-batch-bar>span{text-align:center}.order-batch-bar .btn:last-child{margin-left:0}
  .stat-insights-grid,.stat-insights-grid>.card{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden}
  .stat-rank-card{padding:14px 12px!important}.stat-rank-card h3{min-width:0;font-size:14px}.stat-rank-card h3 .sub{font-size:10px}
  .stat-rank-card .rank-item{min-width:0;gap:8px;padding:9px 0}.stat-rank-card .rank-item .idx{flex:0 0 24px}.stat-rank-card .rank-item .main{width:0;overflow:hidden}.stat-rank-card .rank-item .main .t{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-rank-card .rank-item .main .t .tag{display:none}.stat-rank-card .rank-item .main .s{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-rank-card .rank-item .val{flex:0 0 78px;min-width:0}.stat-rank-card .rank-item .val .v,.stat-rank-card .rank-item .val .r{white-space:nowrap}
  .cmp-card{min-width:0;width:100%;max-width:100%;padding:14px 11px 15px!important;overflow:hidden}.cmp-card h3{font-size:14px}.cmp-picker{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);width:100%;box-sizing:border-box}.cmp-picker .cmp-sel{width:100%;min-width:0;padding:7px 5px;font-size:16px}.cmp-table-wrap{width:100%;overflow:hidden}.cmp-table{width:100%;min-width:0;table-layout:fixed}.cmp-table th,.cmp-table td{padding:7px 3px!important;font-size:10px!important;line-height:1.3;white-space:normal;overflow-wrap:anywhere}.cmp-table th:first-child,.cmp-table td:first-child{width:16%}.cmp-table th:last-child,.cmp-table td:last-child{width:27%}.cmp-table .small{display:block;font-size:8px}.cmp-bars-wrap,.cmp-bars-wrap .chart-box,.cmp-bars-wrap svg{max-width:100%!important;overflow:hidden}
}

/* ===== 通用组件 ===== */
.card { background: rgba(255,255,255,.94); border: 1px solid rgba(229,231,245,.82); border-radius: var(--radius); box-shadow: var(--shadow); padding: 18px; margin-bottom: 16px; }
.card h3 { font-size: 15px; margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }
.card h3 .sub { font-size: 12px; color: var(--text-3); font-weight: 400; }
.grid { display: grid; gap: 14px; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1100px) { .grid-4 { grid-template-columns: repeat(2, 1fr); } .grid-3 { grid-template-columns: repeat(2, 1fr); } }
/* 移动端：统计卡网格 2×2 紧凑展示（3/4/5 列网格），2 列内容网格保持单列堆叠 */
@media (max-width: 720px) {
  .grid-2 { grid-template-columns: 1fr; }
  .grid-3, .grid-4, .grid-5 { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}

.stat-card { background: rgba(255,255,255,.94); border: 1px solid rgba(229,231,245,.82); border-radius: var(--radius); box-shadow: var(--shadow); padding: 16px 18px; }
.stat-card .label { font-size: 12.5px; color: var(--text-2); display: flex; align-items: center; gap: 6px; }
.stat-card .value { font-size: 24px; font-weight: 700; margin-top: 8px; font-variant-numeric: tabular-nums; }
.stat-card .value.sm { font-size: 20px; }
.stat-card .extra { font-size: 12px; color: var(--text-3); margin-top: 6px; }
.stat-card .icon-bg { width: 36px; height: 36px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: 18px; }
/* 紧凑型 stat-card（统计报表/货盘分析顶部使用）：更小的内边距和字号，整体高度从 ~92px 降至 ~62px，
   让首屏一次性展示更多内容；用横向 icon + 大数布局 */
.stat-card.compact { padding: 10px 14px; display: flex; align-items: center; gap: 10px; min-height: 60px; }
.stat-card.compact .label { font-size: 11.5px; color: var(--text-2); margin-bottom: 1px; }
.stat-card.compact .value { font-size: 18px; font-weight: 700; margin-top: 0; line-height: 1.1; }
.stat-card.compact .value.sm { font-size: 16px; }
.stat-card.compact .extra { font-size: 11px; color: var(--text-3); margin-top: 2px; }
.stat-card.compact .sc-icon { width: 32px; height: 32px; min-width: 32px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 15px; }
.stat-card.compact .sc-body { flex: 1; min-width: 0; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 8px 16px; border-radius: 8px; border: 1px solid var(--border); background: #fff;
  color: var(--text); font-size: 13.5px; transition: all .15s; white-space: nowrap;
}
.btn:hover { border-color: var(--primary); color: var(--primary); }
.btn.primary { background: var(--primary); border-color: var(--primary); color: #fff; }
.btn.primary:hover { background: var(--primary-dark); }
.btn.success { background: var(--green); border-color: var(--green); color: #fff; }
.btn.danger { background: #fff; border-color: #f0b9b5; color: var(--red); }
.btn.danger:hover { background: var(--red); border-color: var(--red); color: #fff; }
.btn.sm { padding: 4px 10px; font-size: 12.5px; border-radius: 6px; }
.btn.block { width: 100%; }
.btn:disabled { opacity: .55; cursor: not-allowed; }

.input, select.input, textarea.input {
  width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; outline: none; background: #fff;
  transition: border-color .15s, box-shadow .15s;
}
.input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(22,119,255,.12); }
textarea.input { resize: vertical; min-height: 60px; }

.toolbar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
.toolbar .spacer { flex: 1; }

.chip {
  display: inline-flex; align-items: center; gap: 4px; padding: 5px 12px; border-radius: 20px;
  background: #fff; border: 1px solid var(--border); font-size: 12.5px; color: var(--text-2); cursor: pointer;
  transition: all .13s; user-select: none;
}
.chip:hover { border-color: var(--primary); color: var(--primary); }
.chip.active { background: var(--primary); border-color: var(--primary); color: #fff; }
.chip .cnt { background: rgba(0,0,0,.08); border-radius: 10px; padding: 0 6px; font-size: 11px; }
.chip.active .cnt { background: rgba(255,255,255,.25); }

.tag { display: inline-block; padding: 2px 8px; border-radius: 6px; font-size: 11.5px; line-height: 1.6; }
.tag.blue { background: var(--primary-light); color: var(--primary); }
.tag.red { background: #fdeceb; color: var(--red); }
.tag.green { background: #e6f9ef; color: var(--green); }
.tag.orange { background: #fff3e6; color: var(--orange); }
.tag.purple { background: #f3eaff; color: var(--purple); }
.tag.gray { background: #f0f2f6; color: var(--text-2); }
.tag.teal { background: #e0faf7; color: var(--teal); }

.money { font-variant-numeric: tabular-nums; }
.pos { color: var(--red); }
.neg { color: var(--green); }
.muted { color: var(--text-3); }
.small { font-size: 12px; }

/* ===== 表格 ===== */
.table-wrap { overflow-x: auto; }
table.table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.table th {
  text-align: left; padding: 10px 12px; background: #f7f9fc; color: var(--text-2);
  font-weight: 500; font-size: 12.5px; border-bottom: 1px solid var(--border); white-space: nowrap;
}
.table td { padding: 10px 12px; border-bottom: 1px solid #f0f2f6; vertical-align: middle; }
.table tr:hover td { background: #fafcff; }
.table .num { text-align: right; font-variant-numeric: tabular-nums; }
.table th.num { text-align: right; }
.table .row-actions { white-space: nowrap; }
.table .row-actions .btn { margin-right: 6px; }

/* 商用后台的操作可预期性：键盘焦点与禁用态在所有页面保持一致。 */
:where(button, a, input, select, textarea, [tabindex]):focus-visible { outline:3px solid rgba(15,23,42,.24); outline-offset:2px; }
.btn:disabled, button:disabled { cursor:not-allowed; opacity:.48; box-shadow:none; }
html.eye-mode :where(button, a, input, select, textarea, [tabindex]):focus-visible { outline-color:rgba(226,232,240,.56); }

.empty { text-align: center; padding: 46px 20px; color: var(--text-3); }
.empty .ic { font-size: 40px; margin-bottom: 10px; }

/* ===== 库存列表 ===== */
.stock-row {
  border: 1px solid var(--border); border-radius: 10px; background: #fff; margin-bottom: 10px; overflow: hidden;
  transition: box-shadow .15s;
}
.stock-row:hover { box-shadow: var(--shadow); }
.stock-head { display: flex; align-items: center; gap: 14px; padding: 13px 16px; cursor: pointer; flex-wrap: wrap; }
.stock-head .brand-tag { font-weight: 700; color: #fff; background: var(--primary); border-radius: 6px; padding: 4px 8px; font-size: 12px; }
.stock-head .name { font-weight: 600; font-size: 14.5px; }
.stock-head .code { color: var(--text-3); font-size: 12.5px; }
.stock-head .info { display: flex; align-items: center; gap: 14px; margin-left: auto; flex-wrap: wrap; }
.stock-head .info .item { text-align: right; }
.stock-head .info .item .v { font-weight: 700; font-size: 15px; }
.stock-head .info .item .l { font-size: 11px; color: var(--text-3); }
.stock-body { padding: 12px 16px; border-top: 1px dashed var(--border); background: #fbfcfe; }
.size-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.size-cell {
  display: inline-flex; flex-direction: column; align-items: center; padding: 7px 12px; border-radius: 8px;
  background: #fff; border: 1px solid var(--border); cursor: pointer; transition: all .13s; min-width: 62px;
}
.size-cell:hover { border-color: var(--primary); box-shadow: 0 2px 8px rgba(22,119,255,.15); }
.size-cell .sz { font-weight: 600; font-size: 13px; }
.size-cell .qn { font-size: 11.5px; color: var(--text-2); }
.size-cell .pr { font-size: 10.5px; color: var(--text-3); }
.size-cell.low { border-color: #e54d42; background: #fff1f0; }
.size-cell.low .sz { color: #e54d42; }
.size-cell.low .qn { color: #e54d42; font-weight: 600; }
.tag.red { background: #e54d42; color: #fff; }
.stock-actions { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.stock-days { font-size: 11px; color: var(--text-3); }

/* ===== 货盘与作业台 ===== */
.inventory-workbench { display:flex; align-items:center; gap:22px; margin-bottom:18px; padding:21px 23px; border:1px solid #e1e4ff; border-radius:18px; background:linear-gradient(115deg, #f8f9ff 0%, #fff 58%, #eef6ff 100%); }
.inventory-intro { flex:1; min-width:230px; }
.inventory-intro h2, .operation-banner h2 { margin:4px 0 5px; color:#20234d; font-size:21px; letter-spacing:-.35px; }
.inventory-intro p, .operation-banner p { color:var(--text-3); font-size:12px; line-height:1.55; }
.inventory-metrics { display:flex; align-self:stretch; border-left:1px solid #e5e7f7; }
.inventory-metrics > div { display:flex; min-width:132px; flex-direction:column; justify-content:center; padding:0 18px; }
.inventory-metrics span { color:var(--text-3); font-size:11px; }
.inventory-metrics b { margin:4px 0 2px; color:#25275b; font-size:19px; font-variant-numeric:tabular-nums; }
.inventory-metrics small { color:#9096af; font-size:10.5px; white-space:nowrap; }
.inventory-metrics .warn b { color:#d97706; }
.inventory-actions { display:flex; gap:8px; }
.inventory-actions .btn { min-width:90px; border-radius:9px; font-weight:600; }
.inventory-actions .stock-add { color:#fff; border-color:var(--primary); background:var(--primary); }
.inventory-actions .stock-out { color:#c2410c; border-color:#fed7aa; background:#fff7ed; }
.inventory-list-card { padding:18px; }
.inventory-list-title { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:15px; }
.inventory-list-title h3 { margin:3px 0 0; font-size:16px; }
.inventory-list-card > .toolbar { position:relative; z-index:1; padding:11px; border:1px solid #eceef7; border-radius:12px; background:#fafbff; }
.inventory-list-card .stock-row { border-color:#e8eaf3; border-radius:12px; }
.inventory-list-card .stock-row:hover { border-color:#c7d2fe; box-shadow:0 10px 24px rgba(48,46,115,.08); }
.inventory-list-card .stock-head { padding:15px 16px; }
.inventory-list-card .stock-head .brand-tag { border-radius:9px; padding:6px 8px; }
.inventory-list-card .stock-head .info { gap:24px; }
.inventory-list-card .stock-head .info .item .v { color:#33355f; }
.operation-banner { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; padding:22px 24px; border-radius:18px; color:#fff; overflow:hidden; position:relative; }
.operation-banner::after { content:''; position:absolute; right:-50px; top:-110px; width:260px; height:260px; border:45px solid rgba(255,255,255,.10); border-radius:50%; }
.inbound-banner { background:linear-gradient(115deg, #164e63, #0f766e); }
.outbound-banner { background:linear-gradient(115deg, #4c1d95, #6d28d9); }
.operation-banner h2 { color:#fff; }
.operation-banner p { color:rgba(255,255,255,.76); max-width:680px; }
.operation-banner .section-kicker { color:#a7f3d0; }
.outbound-banner .section-kicker { color:#ddd6fe; }
.operation-banner-stat { position:relative; z-index:1; min-width:200px; padding:13px 16px; border:1px solid rgba(255,255,255,.18); border-radius:12px; background:rgba(4,20,28,.18); }
.operation-banner-stat span, .operation-banner-stat small { display:block; color:rgba(255,255,255,.7); font-size:11px; }
.operation-banner-stat b { display:block; margin:4px 0; color:#fff; font-size:22px; font-variant-numeric:tabular-nums; }
.operation-form-card, .operation-history-card { border-top:3px solid #c7d2fe; }
.operation-history-card { border-top-color:#bfdbfe; }
.operation-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:15px; }
.operation-card-head h3 { margin:3px 0 0; }

/* ===== 全模块工作台统一风格 ===== */
.module-hero { position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px; overflow:hidden; min-height:132px; margin-bottom:18px; padding:23px 25px; border-radius:18px; color:#fff; }
.module-hero::before { content:''; position:absolute; width:330px; height:330px; right:-86px; top:-190px; border:52px solid rgba(255,255,255,.075); border-radius:50%; }
.module-hero > * { position:relative; z-index:1; }
.module-hero h2 { margin:4px 0 5px; color:#fff; font-size:22px; letter-spacing:-.4px; }
.module-hero p { max-width:710px; color:rgba(255,255,255,.75); font-size:12.5px; line-height:1.65; }
.module-hero .section-kicker { color:rgba(255,255,255,.74); }
.orders-hero { background:linear-gradient(115deg, #7c2d12, #c2410c 55%, #ea580c); }
.report-hero { background:linear-gradient(115deg, #172554, #1d4ed8 58%, #2563eb); }
.settings-hero { background:linear-gradient(115deg, #183344, #0f766e 58%, #14b8a6); }
.manage-hero { background:linear-gradient(115deg, #3f1d4f, #7e22ce 58%, #a855f7); }
.module-hero-side { min-width:220px; padding:13px 16px; border:1px solid rgba(255,255,255,.19); border-radius:12px; background:rgba(0,0,0,.14); }
.module-hero-side span, .module-hero-side small { display:block; color:rgba(255,255,255,.72); font-size:11px; }
.module-hero-side b { display:block; max-width:270px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin:4px 0; color:#fff; font-size:21px; font-variant-numeric:tabular-nums; }
.order-list-card > .toolbar, .report-control > .toolbar, .reconcile-intro > .toolbar { padding:11px; border:1px solid #e8eaf4; border-radius:12px; background:rgba(248,249,253,.85); }
.order-list-card > .toolbar { margin-bottom:0; }
.order-list-card .stock-row { border-radius:12px; border-color:#ececf5; }
.order-list-card .stock-row:hover { border-color:#fed7aa; box-shadow:0 10px 24px rgba(194,65,12,.08); }
.order-list-card .stock-head { padding:15px 16px 10px; }
.order-list-card .stock-body { padding:0 16px 14px; background:#fff; border-top:0; }
.reconcile-intro { position:relative; overflow:hidden; }
.reconcile-intro::after { content:''; position:absolute; right:-32px; bottom:-100px; width:220px; height:220px; border:34px solid rgba(59,130,246,.08); border-radius:50%; }
.reconcile-intro > * { position:relative; z-index:1; }
.reconcile-intro h3 { font-size:18px !important; color:#1e3a8a; }
.reconcile-intro .btn.primary { border-color:#2563eb; background:#2563eb; }
.report-control { box-shadow:none; background:#fff; }
.stat-compact-row { margin-bottom:14px; }
.stat-compact-row .stat-card { border-radius:12px; border:1px solid #e9ebf5; }
.stat-compact-row .stat-card:hover { transform:translateY(-1px); box-shadow:0 8px 18px rgba(30,41,100,.08); }
.cmp-card, .pan-filter { border-top:3px solid #c7d2fe; }
.table-wrap { border-radius:10px; }
.table thead th { background:#f8f9fd; color:#69718a; font-weight:600; }
.table tbody tr { transition:background .14s; }
.table tbody tr:hover td { background:#f7f8ff; }
.chip { border-color:#e5e7f1; background:#fff; }
.chip.active { box-shadow:0 4px 10px rgba(79,70,229,.16); }
.btn { border-radius:9px; }
.btn.primary { box-shadow:0 4px 10px rgba(79,70,229,.17); }
.btn.primary:hover { transform:translateY(-1px); box-shadow:0 7px 16px rgba(79,70,229,.24); }
.input, select.input, textarea.input { border-color:#e1e4ef; border-radius:9px; background:#fdfdff; }
.input:hover, select.input:hover, textarea.input:hover { border-color:#c7cdf0; }
.input:focus { border-color:var(--primary); background:#fff; box-shadow:0 0 0 3px rgba(79,70,229,.11); }
.settings-hero + .grid .stat-card { overflow:hidden; position:relative; }
.settings-hero + .grid .stat-card::after { content:''; position:absolute; right:-18px; top:-18px; width:70px; height:70px; border-radius:50%; background:var(--primary-light); opacity:.75; }
.manage-tabs { padding:10px; border:1px solid #ebeaf5; border-radius:13px; background:rgba(255,255,255,.88); }
.manage-tabs + .grid .card, .manage-tabs + .card { border-top:3px solid #e9d5ff; }
@media (max-width: 720px) { .module-hero { display:none; } .order-list-card > .toolbar, .report-control > .toolbar, .reconcile-intro > .toolbar { padding:0; border:0; background:transparent; } .reconcile-intro h3 { font-size:16px !important; } }

/* ===== 深色专业后台主题 ===== */
:root {
  --primary: #7c83ff;
  --primary-light: rgba(124,131,255,.14);
  --primary-dark: #6366f1;
  --sidebar-bg: #090d18;
  --sidebar-text: #8992ab;
  --sidebar-active: #7c83ff;
  --bg: #0d1220;
  --card: #151b2d;
  --border: #283149;
  --text: #edf1fb;
  --text-2: #aab3c8;
  --text-3: #6f7a94;
  --shadow: 0 14px 34px rgba(0,0,0,.18);
}
body { background:var(--bg); color:var(--text); }
body::before { background:radial-gradient(circle at 88% 0%, rgba(91,94,255,.17), transparent 28%), radial-gradient(circle at 18% 100%, rgba(20,184,166,.07), transparent 30%); }
::-webkit-scrollbar-thumb { background:#37415c; }
::-webkit-scrollbar-thumb:hover { background:#505d7c; }
.sidebar { box-shadow:18px 0 40px rgba(0,0,0,.14); }
@media (min-width:721px) {
  .sidebar .brand { border-bottom-color:#1e263a; }
  .sidebar nav .nav-group { color:#515b75; }
  .sidebar nav a:hover { background:rgba(255,255,255,.045); }
  .sidebar nav a.active { background:linear-gradient(90deg, rgba(99,102,241,.32), rgba(99,102,241,.08)); }
  .sidebar .side-foot { border-top-color:#1e263a; color:#59637d; }
}
.topbar { background:rgba(13,18,32,.86); border-bottom-color:#252e46; }
.topbar .page-title { color:#f6f8ff; }
.topbar .user:hover { background:#1a2236; }
.topbar .avatar { background:linear-gradient(135deg, #818cf8, #6366f1); }
.topbar .sync-btn { color:#8791aa; }
.content { background:transparent; }
.card, .stat-card { background:rgba(21,27,45,.94); border-color:#283149; box-shadow:var(--shadow); }
.card h3, .inventory-list-title h3 { color:#eef2ff; }
.stat-card .label, .muted { color:var(--text-3); }
.stat-card .extra { color:#73809a; }
.stat-card .value { color:#f5f7ff; }
.btn { border-color:#343e59; background:#1a2135; color:#dbe2f3; }
.btn:hover { border-color:#7078ff; color:#aeb4ff; background:#202944; }
.btn.primary, .inventory-actions .stock-add { background:linear-gradient(135deg, #6366f1, #7c3aed); border-color:#7477ff; color:#fff; }
.btn.primary:hover { background:linear-gradient(135deg, #7477ff, #8b5cf6); color:#fff; }
.btn.danger { background:rgba(239,68,68,.08); border-color:rgba(248,113,113,.35); color:#fca5a5; }
.input, select.input, textarea.input, .form-item input, .form-item select { color:#e7ebf6; background:#101628; border-color:#303a56; }
.input:hover, select.input:hover, textarea.input:hover { border-color:#53617f; }
.input:focus, .form-item input:focus, .form-item select:focus { background:#111a31; box-shadow:0 0 0 3px rgba(124,131,255,.16); }
option { background:#151b2d; color:#edf1fb; }
.chip { color:#aab4c8; background:#151b2d; border-color:#303a56; }
.chip:hover { background:#1c2540; border-color:#6871f5; color:#c7ccff; }
.chip.active { background:#4f46e5; border-color:#696cff; color:#fff; }
.chip .cnt { background:rgba(255,255,255,.09); }
.table thead th { background:#101628; color:#9ca8c0; border-bottom-color:#2b3550; }
.table td { border-bottom-color:#242d45; color:#d9e0f0; }
.table tbody tr:hover td, .table tr:hover td { background:#1a2238; }
.stock-row, .m-stock-card, .m-stock-item { background:#151b2d; border-color:#2a344d; }
.dashboard-hero { background:linear-gradient(118deg, #151a34, #29265f 58%, #4544a4); box-shadow:0 16px 36px rgba(0,0,0,.25); }
.dashboard-hero-side { background:rgba(5,8,25,.28); }
.ops-todo { background:#151b2d; border-color:#2a344d; color:#edf1fb; box-shadow:0 10px 22px rgba(0,0,0,.16); }
.ops-todo:hover { border-color:#5964a5; background:#192137; box-shadow:0 12px 26px rgba(0,0,0,.24); }
.ops-todo small { color:#7e8aa5; }
.ops-todo.pending .ops-todo-icon { background:rgba(217,119,6,.13); color:#fbbf24; }
.ops-todo.replenish .ops-todo-icon { background:rgba(5,150,105,.13); color:#34d399; }
.ops-todo.aging .ops-todo-icon { background:rgba(220,38,38,.12); color:#fb7185; }
.stock-row:hover, .inventory-list-card .stock-row:hover { border-color:#5361a5; box-shadow:0 12px 26px rgba(0,0,0,.22); }
.stock-body, .m-stock-body, .m-stock-stats { background:#111729; border-color:#2a344d; }
.size-cell { background:#192136; border-color:#313d59; }
.size-cell:hover { background:#202a45; border-color:#7882ff; }
.size-cell.low { background:rgba(239,68,68,.09); border-color:#b95364; }
.inventory-workbench { border-color:#2a3552; background:linear-gradient(115deg, #141b30, #161d31 58%, #15263b); }
.inventory-intro h2 { color:#eff3ff; }
.inventory-metrics { border-left-color:#303a56; }
.inventory-metrics b, .inventory-list-card .stock-head .info .item .v { color:#e9edff; }
.inventory-list-card > .toolbar, .order-list-card > .toolbar, .report-control > .toolbar, .reconcile-intro > .toolbar { background:#101628; border-color:#2c3650; }
.inventory-list-card .stock-row { border-color:#2a344d; }
.inventory-list-card .stock-row:hover { border-color:#5664a7; }
.operation-banner { box-shadow:0 16px 34px rgba(0,0,0,.20); }
.inbound-banner { background:linear-gradient(115deg, #123d4d, #115e59); }
.outbound-banner { background:linear-gradient(115deg, #32155f, #5b21b6); }
.module-hero { box-shadow:0 16px 34px rgba(0,0,0,.22); }
.orders-hero { background:linear-gradient(115deg, #56220d, #9a3412 55%, #c2410c); }
.report-hero { background:linear-gradient(115deg, #172554, #1e40af 58%, #1d4ed8); }
.settings-hero { background:linear-gradient(115deg, #17313b, #115e59 58%, #0f766e); }
.manage-hero { background:linear-gradient(115deg, #341247, #6b21a8 58%, #7e22ce); }
.operation-form-card, .operation-history-card, .cmp-card, .pan-filter { border-top-color:#5865f2; }
.reconcile-intro { background:linear-gradient(135deg, #14223c 0%, #151b2d 100%) !important; border-color:#2f5594 !important; }
.reconcile-intro h3 { color:#b9c9ff; }
.reconcile-intro::after { border-color:rgba(96,165,250,.10); }
.reconcile-intro .btn.primary { background:#4664e8; border-color:#6682ff; }
.order-list-card .stock-row { border-color:#2a344d; }
.order-list-card .stock-row:hover { border-color:#945a3b; box-shadow:0 10px 24px rgba(0,0,0,.2); }
.order-list-card .stock-body { background:#151b2d; }
.manage-tabs { background:#151b2d; border-color:#2a344d; }
.manage-tabs + .grid .card, .manage-tabs + .card { border-top-color:#824bd4; }
.m-tabs, .bottom-nav { background:#111729; border-color:#29334d; box-shadow:0 -8px 26px rgba(0,0,0,.2); }
.m-tab { color:#9ca8c1; }
.m-tab.active { background:#4f46e5; }
.m-tcard, .m-inrow, .m-in-summary { background:#101628; border-color:#2b3550; }
.m-tcard .cell { background:#182036; }
.m-stock-stats { background:#111729; }
.m-stock-body { background:#101628; }
.m-list-item { border-bottom-color:#283149; }
.login-wrap { background:radial-gradient(circle at 18% 20%, #243b70 0%, transparent 30%), linear-gradient(135deg, #090d18, #141b31 58%, #1c2450); }
.login-card { color:#e9edff; background:#151b2d; border:1px solid #303a56; box-shadow:0 24px 70px rgba(0,0,0,.42); }
.login-logo h1 { color:#f2f5ff; }
.login-tip { background:#101628; color:#8f9ab2; }
@media (max-width:720px) { .topbar { background:#111729; border-bottom-color:#29334d; } .content { background:transparent; } }

/* 深色模式：修复旧组件中写死的浅底色 */
.theme-switch { display:flex; align-items:center; gap:5px; width:100%; margin-top:10px; padding:7px 8px; border:1px solid #28334e; border-radius:8px; background:#111729; color:#9ba7c1; font-size:11px; transition:.16s; }
.theme-switch:hover { color:#d3d8ff; border-color:#5964a5; background:#182039; }

/* 设置页：预警默认关闭，采用明确的开关而不是让用户猜 0 的含义。 */
.low-stock-setting { display:grid; gap:9px; align-content:start; }
.settings-check { display:flex; align-items:flex-start; gap:9px; min-height:40px; padding:9px 10px; border:1px solid var(--border); border-radius:10px; background:var(--surface-soft,#f8fafc); cursor:pointer; color:var(--text); }
.settings-check input { position:absolute; opacity:0; pointer-events:none; }
.settings-check-box { display:grid; flex:0 0 18px; width:18px; height:18px; place-items:center; margin-top:1px; border:1px solid #cbd5e1; border-radius:5px; background:#fff; color:transparent; font-size:12px; font-weight:800; transition:.16s; }
.settings-check input:checked + .settings-check-box { border-color:#111827; background:#111827; color:#fff; }
.settings-check b, .settings-check small { display:block; }
.settings-check b { font-size:13px; }
.settings-check small { margin-top:2px; color:var(--muted); font-size:12px; line-height:1.35; }
.low-stock-setting .input:disabled { cursor:not-allowed; opacity:.55; background:#f1f5f9; }
.cmp-picker { background:#101628; border-color:#303b59; }
.cmp-table th { background:#101628; color:#aab5ce; border-color:#2c3650; }
.cmp-table th.hl, .cmp-table td.hl { background:#1a2340; color:#bdc7ff; }
.cmp-table td { color:#d8e0f0; border-color:#283149; }
.cmp-table td.hl b { color:#f1f4ff; }
.scan-box { background:#151b2d; border-color:#3b4664; }
.scan-input { color:#eef2ff; background:transparent; }
.scan-input::placeholder { color:#5d6884; }
.scan-hint { color:#8d9ab6; }
.pan-table th { background:#101628; color:#9eabc5; border-bottom-color:#303a56; }
.pan-table td { color:#dce3f2; border-bottom-color:#29334d; }
.pan-table tr:hover td { background:#1a2238; }
.pan-tag { background:#202a4a; color:#b6c1ff; }
.pan-pct .bar { background:linear-gradient(90deg, #6366f1, #8b9cff); }
.alert-warn { background:rgba(217,119,6,.12); color:#fbbf24; border-color:rgba(251,191,36,.34); }

/* 护眼模式：低对比暖灰绿，不使用纯黑或刺眼白 */
.eye-mode {
  --primary: #3f8f82;
  --primary-light: rgba(63,143,130,.14);
  --primary-dark: #2f756a;
  --sidebar-bg: #1d2929;
  --sidebar-text: #a9b7ae;
  --bg: #26312f;
  --card: #303b38;
  --border: #46554f;
  --text: #eef1e8;
  --text-2: #c0c9c0;
  --text-3: #93a19a;
  --shadow: 0 10px 24px rgba(15,25,22,.15);
}
.eye-mode body::before { background:radial-gradient(circle at 88% 0%, rgba(119,174,139,.09), transparent 29%), radial-gradient(circle at 18% 100%, rgba(185,154,95,.06), transparent 32%); }
.eye-mode .topbar { background:rgba(35,45,43,.91); border-bottom-color:#46534d; }
.eye-mode .sidebar nav a.active { background:linear-gradient(90deg, rgba(63,143,130,.36), rgba(63,143,130,.08)); border-left-color:#8ac8b6; }
.eye-mode .card, .eye-mode .stat-card, .eye-mode .stock-row, .eye-mode .m-stock-card, .eye-mode .m-stock-item { background:#303b38; border-color:#48574f; }
.eye-mode .stock-body, .eye-mode .m-stock-body, .eye-mode .m-stock-stats, .eye-mode .m-tabs, .eye-mode .bottom-nav { background:#293431; border-color:#46554f; }
.eye-mode .btn { background:#35423e; border-color:#52635b; color:#e0e8df; }
.eye-mode .btn.primary, .eye-mode .inventory-actions .stock-add { background:linear-gradient(135deg, #347e72, #4b998a); border-color:#5cae9d; }
.eye-mode .input, .eye-mode select.input, .eye-mode textarea.input, .eye-mode .form-item input, .eye-mode .form-item select { background:#293431; border-color:#536259; color:#edf1e9; }
.eye-mode .table thead th, .eye-mode .cmp-table th, .eye-mode .pan-table th { background:#293431; color:#b9c6bd; }
.eye-mode .table tbody tr:hover td, .eye-mode .pan-table tr:hover td { background:#36433f; }
.eye-mode .dashboard-hero { background:linear-gradient(118deg, #293835, #34564e 58%, #46766a); }
.eye-mode .ops-todo { background:#303b38; border-color:#4a5b53; }
.eye-mode .inventory-workbench { background:linear-gradient(115deg, #303b38, #34413d 58%, #344840); border-color:#4a5a52; }
.eye-mode .inbound-banner { background:linear-gradient(115deg, #2a4e4b, #3e756a); }
.eye-mode .outbound-banner { background:linear-gradient(115deg, #4c3c43, #765e51); }
.eye-mode .orders-hero { background:linear-gradient(115deg, #594333, #7d654b); }
.eye-mode .report-hero { background:linear-gradient(115deg, #33434b, #44616d); }
.eye-mode .settings-hero { background:linear-gradient(115deg, #34443c, #52725f); }
.eye-mode .manage-hero { background:linear-gradient(115deg, #4a3d53, #6d5b76); }
.eye-mode .reconcile-intro { background:linear-gradient(135deg, #30413e 0%, #303b38 100%) !important; border-color:#567d70 !important; }
.eye-mode .cmp-picker, .eye-mode .report-control > .toolbar, .eye-mode .inventory-list-card > .toolbar, .eye-mode .order-list-card > .toolbar, .eye-mode .reconcile-intro > .toolbar, .eye-mode .m-tcard, .eye-mode .m-inrow, .eye-mode .m-in-summary { background:#293431; border-color:#4b5b53; }
.eye-mode .cmp-table th.hl, .eye-mode .cmp-table td.hl { background:#384840; color:#d1dfd6; }
.eye-mode .pan-tag { background:#3c5148; color:#cae3d6; }

/* 深色科技视觉系统：不再沿用护眼模式的灰绿配色，统一为深海蓝、蓝紫与青绿光效。
   这一段放在旧主题兼容规则之后，专门覆盖历史组件里写死的浅色与低对比颜色。 */
html.eye-mode {
  --primary:#7c83ff;
  --primary-light:rgba(124,131,255,.16);
  --primary-dark:#6168e8;
  --sidebar-bg:#0a1020;
  --sidebar-text:#9daccc;
  --bg:#0b1220;
  --card:#151f33;
  --border:#2a3b58;
  --text:#edf4ff;
  --text-2:#bdcbe1;
  --text-3:#8798b6;
  --shadow:0 16px 36px rgba(0,0,0,.24);
}
html.eye-mode body { background:#0b1220; color:#edf4ff; }
html.eye-mode body::before { background:radial-gradient(circle at 87% 0%, rgba(57,190,190,.13), transparent 29%), radial-gradient(circle at 17% 100%, rgba(100,111,255,.11), transparent 34%); }
html.eye-mode .topbar { background:rgba(10,16,32,.92); border-bottom-color:#263750; }
html.eye-mode .sidebar nav a.active { background:linear-gradient(90deg, rgba(101,111,255,.28), rgba(74,197,190,.08)); border-left-color:#818bff; }
html.eye-mode .card, html.eye-mode .stat-card, html.eye-mode .stock-row, html.eye-mode .m-stock-card, html.eye-mode .m-stock-item { background:linear-gradient(145deg,#151f33,#142039); border-color:#2a3b58; }
html.eye-mode .stock-body, html.eye-mode .m-stock-body, html.eye-mode .m-stock-stats, html.eye-mode .m-tabs, html.eye-mode .bottom-nav { background:#101a2d; border-color:#2a3b58; }
html.eye-mode .btn { background:#17243b; border-color:#364a6b; color:#dbe7fa; }
html.eye-mode .btn:hover { color:#fff; border-color:#7281ff; background:#213454; }
html.eye-mode .btn.primary, html.eye-mode .inventory-actions .stock-add { background:linear-gradient(135deg,#6674ff,#7b7ff2); border-color:#8b94ff; box-shadow:0 8px 18px rgba(89,102,255,.22); }
html.eye-mode .input, html.eye-mode select.input, html.eye-mode textarea.input, html.eye-mode .form-item input, html.eye-mode .form-item select { background:#0f192b; border-color:#344967; color:#edf4ff; }
html.eye-mode .input::placeholder, html.eye-mode textarea::placeholder { color:#71839f; }
html.eye-mode .input:focus, html.eye-mode .form-item input:focus, html.eye-mode .form-item select:focus { background:#111e34; border-color:#7784ff; box-shadow:0 0 0 3px rgba(120,131,255,.18); }
html.eye-mode option { background:#111c30; color:#edf4ff; }
html.eye-mode .low-stock-setting .input:disabled { opacity:.48; background:#0d1626; color:#6f819c; }
html.eye-mode .settings-check { background:linear-gradient(145deg,#131f34,#17243a); border-color:#344967; color:#e8f1ff; }
html.eye-mode .settings-check:hover { border-color:#6878ff; }
html.eye-mode .settings-check-box { border-color:#60728f; background:#0e1829; }
html.eye-mode .settings-check input:checked + .settings-check-box { border-color:#63ddd2; background:#2b978e; color:#06141d; }
html.eye-mode .settings-check small, html.eye-mode .hint { color:#91a5c2; }

html.eye-mode .module-hero { border:1px solid #38506b; box-shadow:0 18px 38px rgba(0,0,0,.25); }
html.eye-mode .orders-hero { background:linear-gradient(115deg,#15223a,#1d4650 56%,#32646d); }
html.eye-mode .report-hero { background:linear-gradient(115deg,#17233b,#284857 56%,#4a7581); }
html.eye-mode .settings-hero { background:linear-gradient(115deg,#15233b,#234b50 56%,#3d7170); }
html.eye-mode .manage-hero { background:linear-gradient(115deg,#17213a,#273c63 56%,#436477); }
html.eye-mode .module-hero-side { background:rgba(8,19,33,.38); border-color:rgba(183,219,233,.19); }
html.eye-mode .inventory-workbench { background:linear-gradient(115deg,#14243a,#183443 58%,#1f5153); border-color:#365469; }
html.eye-mode .inbound-banner { background:linear-gradient(115deg,#152b43,#1e5960); }
html.eye-mode .outbound-banner { background:linear-gradient(115deg,#1b2745,#31536b); }
html.eye-mode .inventory-list-card > .toolbar, html.eye-mode .order-list-card > .toolbar, html.eye-mode .report-control > .toolbar, html.eye-mode .reconcile-intro > .toolbar { background:linear-gradient(90deg,#15253a,#1b353b); border-color:#3a5661; }

html.eye-mode .reconcile-intro { background:linear-gradient(118deg,#14253d 0%,#19313d 58%,#255257 100%) !important; border-color:#3c6974 !important; box-shadow:0 14px 30px rgba(0,0,0,.18); }
html.eye-mode .reconcile-intro h3 { color:#eaf8ff !important; }
html.eye-mode .reconcile-intro .btn.primary { background:linear-gradient(135deg,#6575ff,#7d83f2); border-color:#98a1ff; }
html.eye-mode .du-upload-card { background:linear-gradient(145deg,#111d31,#14253b); border-color:#35506c; }
html.eye-mode .du-upload-card:hover, html.eye-mode .du-upload-card.du-dragover { background:#162b45; border-color:#6e82ff; }
html.eye-mode .du-upload-card p, html.eye-mode .du-step, html.eye-mode .du-step-line + .du-step { color:#a9bbd4; }
html.eye-mode .du-step.done { color:#63ddd2; }

html.eye-mode .scan-box { background:linear-gradient(135deg,#14243a,#203a3b); border-color:#3d6570; box-shadow:inset 0 1px rgba(255,255,255,.035); }
html.eye-mode .scan-box.focus { border-color:#6e82ff; box-shadow:0 0 0 4px rgba(110,130,255,.14); }
html.eye-mode .scan-input { color:#f0f6ff; border-bottom-color:#7c83ff; }
html.eye-mode .scan-input::placeholder { color:#7f91b0; }
html.eye-mode .scan-hint { color:#a8bad2; }
html.eye-mode .scan-cam-btn { background:#182b48; border-color:#496b91; color:#b7c3ff; }
html.eye-mode .scan-cam-btn:active { background:#6674ff; color:#fff; }

html.eye-mode .table thead th, html.eye-mode .cmp-table th, html.eye-mode .pan-table th { background:#101a2d; color:#a9bad2; border-color:#2d415f; }
html.eye-mode .table td, html.eye-mode .cmp-table td, html.eye-mode .pan-table td { color:#dce9fb; border-color:#263a56; }
html.eye-mode .table tbody tr:hover td, html.eye-mode .pan-table tr:hover td { background:#1a2b45; }
html.eye-mode .cmp-picker, html.eye-mode .m-tcard, html.eye-mode .m-inrow, html.eye-mode .m-in-summary { background:#111e33; border-color:#314966; }
html.eye-mode .cmp-table th.hl, html.eye-mode .cmp-table td.hl { background:#1d324f; color:#dce8ff; }
html.eye-mode .pan-tag { background:#1d3a53; color:#a9e6e0; }

html.eye-mode .chart-donut circle[stroke="#eef1f5"] { stroke:#2a3d59; }
html.eye-mode .chart-donut text { fill:#ecf4ff !important; }
html.eye-mode .chart-donut text + text { fill:#9eafc8 !important; }
html.eye-mode .chart-box svg line { stroke:#2b405d; }
html.eye-mode .chart-box svg text { fill:#9eb0ca; }

/* 清除旧版灰绿/棕色残留，让所有业务模块回到同一条深海科技色谱 */
html.eye-mode .report-control > .toolbar,
html.eye-mode .inventory-list-card > .toolbar,
html.eye-mode .reconcile-intro > .toolbar {
  background:linear-gradient(100deg, rgba(21,39,61,.96), rgba(20,53,67,.92)) !important;
  border-color:#2e5870 !important;
}
html.eye-mode .scan-box {
  background:linear-gradient(125deg, #14273d 0%, #173b4a 100%) !important;
  border-color:#42677b !important;
  box-shadow:inset 0 1px 0 rgba(147,220,255,.08), 0 10px 26px rgba(0,0,0,.16);
}
html.eye-mode .scan-box .scan-desc,
html.eye-mode .scan-box .scan-hint { color:#a9c4dc !important; }
html.eye-mode .scan-box .scan-input { color:#f4f8ff !important; border-bottom-color:#8792ff !important; }
html.eye-mode .scan-box .scan-input::placeholder { color:#8498b9 !important; }
html.eye-mode .scan-box .camera-btn { background:#1b2945 !important; border-color:#4d6591 !important; color:#e9efff !important; }
html.eye-mode .orders-hero,
html.eye-mode .outbound-banner {
  background:linear-gradient(118deg, #16243b 0%, #22415a 58%, #28576c 100%) !important;
}
html.eye-mode .inbound-banner {
  background:linear-gradient(118deg, #152c43 0%, #16465a 60%, #1d6371 100%) !important;
}
html.eye-mode .inventory-workbench {
  background:linear-gradient(118deg, #14253b 0%, #1b3548 58%, #205261 100%) !important;
}
html.eye-mode .reconcile-intro,
html.eye-mode .dewu-sync-intro {
  background:linear-gradient(118deg, #14253a 0%, #1e4052 64%, #245e67 100%) !important;
  border-color:#39677a !important;
}
html.eye-mode .du-upload-card {
  background:linear-gradient(135deg, #101b2d 0%, #142941 100%) !important;
  border-color:#345a73 !important;
}
html.eye-mode .du-upload-card::before { background:rgba(74,222,218,.08) !important; }
html.eye-mode .du-upload-card h3,
html.eye-mode .du-upload-card strong { color:#f2f7ff !important; }
html.eye-mode .du-upload-card p,
html.eye-mode .du-upload-card small { color:#a9c1d6 !important; }
html.eye-mode .allocation-head, html.eye-mode .allocation-row, html.eye-mode .chart-hbar .rank-item, html.eye-mode .chart-month-bars .rank-item { border-color:#2b405d; }
html.eye-mode .allocation-label, html.eye-mode .allocation-row b, html.eye-mode .chart-hbar .rank-item .t, html.eye-mode .chart-hbar .rank-item .v, html.eye-mode .chart-month-bars .rank-item .t { color:#dce9fb; }
html.eye-mode .allocation-head > b { background:#1a2c46; color:#c7d5ed; }
html.eye-mode .allocation-track { background:#293d59; }
@media (max-width: 1120px) and (min-width: 721px) { .inventory-workbench { flex-wrap:wrap; } .inventory-actions { margin-left:auto; } .inventory-metrics { order:3; width:100%; border-left:0; border-top:1px solid #e5e7f7; padding-top:12px; } .inventory-metrics > div { padding:0 18px 0 0; } }
@media (max-width: 720px) { .inventory-workbench, .operation-banner { display:none; } .inventory-list-title { display:none; } .inventory-list-card > .toolbar { padding:0; border:0; background:transparent; } }

/* ===== 弹窗 ===== */
.modal-mask {
  position: fixed; inset: 0; background: rgba(16,28,48,.45); z-index: 300000;
  display: flex; align-items: center; justify-content: center; padding: 20px;
  animation: fadeIn .15s ease;
}
.modal {
  background: #fff; border-radius: 14px; box-shadow: 0 24px 60px rgba(0,0,0,.25);
  width: 560px; max-width: 100%; max-height: 88vh; display: flex; flex-direction: column;
  animation: popIn .18s ease;
}
.modal.lg { width: 780px; }
.modal.sm { width: 420px; }
.modal.rec-upload-workbench { width:min(1180px,calc(100vw - 42px)); height:calc(100vh - 38px); max-height:calc(100vh - 38px); }
.modal.rec-upload-workbench .m-body { flex:1; min-height:0; }
.modal.rec-upload-workbench .rec-editor-wrap { max-height:calc(100vh - 390px); }
.modal .m-head { padding: 16px 20px; border-bottom: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; }
.modal .m-head h3 { font-size: 15.5px; margin: 0; }
.modal .m-close { border: none; background: none; font-size: 18px; color: var(--text-3); cursor: pointer; padding: 4px; }
.modal .m-close:hover { color: var(--text); }
.modal .m-body { padding: 18px 20px; overflow-y: auto; }
.modal .m-foot { padding: 14px 20px; border-top: 1px solid var(--border); display: flex; justify-content: flex-end; gap: 10px; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes popIn { from { opacity: 0; transform: scale(.96) translateY(8px); } to { opacity: 1; transform: scale(1) translateY(0); } }

/* ===== Toast ===== */
#toast-wrap { position:fixed; right:24px; bottom:24px; z-index:2000; display:flex; flex-direction:column; gap:8px; align-items:flex-end; pointer-events:none; }
.toast {
  background: rgba(16,28,48,.88); color: #fff; padding: 10px 18px; border-radius: 10px; font-size: 13.5px;
  box-shadow: 0 8px 24px rgba(0,0,0,.2); animation: popIn .2s ease; max-width: 80vw;
}
.toast.success { background: rgba(7,193,96,.92); }
.toast.error { background: rgba(229,77,66,.94); }
@media (max-width:720px) { #toast-wrap { right:12px; bottom:86px; align-items:flex-end; } .toast { max-width:calc(100vw - 24px); } }

/* 空库存：把提示转成可执行的首次录入入口。 */
.stock-empty-state { display:flex; min-height:190px; align-items:center; justify-content:center; flex-direction:column; padding:32px 20px; color:#718096; text-align:center; }
.stock-empty-state .ic { margin-bottom:9px; color:#93a0b4; }
.stock-empty-state b { color:#334155; font-size:14px; font-weight:650; }
.stock-empty-state > span { max-width:380px; margin-top:6px; color:#8a96a8; font-size:12px; line-height:1.6; }
.stock-empty-actions { display:flex; gap:8px; margin-top:14px; }
html.eye-mode .stock-empty-state b { color:#e2e8f0; }
html.eye-mode .stock-empty-state > span, html.eye-mode .stock-empty-state .ic { color:#94a3b8; }

/* ===== 图表 ===== */
.chart-box { width: 100%; }
.chart-box svg { width: 100%; height: auto; display: block; }

/* ===== 数据可视化入场动效 =====
   柱形由基线生长、曲线沿路径绘制、圆环从 0 环绕展开。 */
.number-motion { font-variant-numeric: tabular-nums; will-change: contents; }
.number-motion-done { animation: number-settle .32s ease-out both; }
@keyframes number-settle {
  0% { transform: translateY(3px); opacity: .82; }
  100% { transform: translateY(0); opacity: 1; }
}

.chart-bars rect,
.chart-business-trend rect,
.chart-sales-trend rect {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: chart-bar-rise .9s cubic-bezier(.22,.75,.24,1) both;
  will-change: transform, opacity;
}
.chart-business-trend rect:nth-of-type(2n),
.chart-sales-trend rect:nth-of-type(2n) { animation-delay: .07s; }
@keyframes chart-bar-rise {
  0% { transform: scaleY(0); opacity: .25; }
  100% { transform: scaleY(1); opacity: 1; }
}

.chart-motion-line {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation: chart-line-draw 1.35s cubic-bezier(.32,.05,.22,1) .18s forwards;
}
@keyframes chart-line-draw { to { stroke-dashoffset: 0; } }
.chart-business-trend circle,
.chart-sales-trend circle,
.chart-box.chart-line circle {
  transform-box: fill-box;
  transform-origin: center;
  animation: chart-point-pop .36s ease-out .92s both;
}
@keyframes chart-point-pop {
  0% { transform: scale(0); opacity: 0; }
  75% { transform: scale(1.2); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}

.chart-donut-segment {
  animation: chart-donut-reveal 1.15s cubic-bezier(.3,.02,.2,1) both;
  will-change: stroke-dashoffset, opacity;
}
.chart-donut-segment:nth-of-type(3) { animation-delay: .06s; }
.chart-donut-segment:nth-of-type(4) { animation-delay: .12s; }
.chart-donut-segment:nth-of-type(5) { animation-delay: .18s; }
.chart-donut-segment:nth-of-type(6) { animation-delay: .24s; }
@keyframes chart-donut-reveal {
  0% { stroke-dasharray: var(--donut-start); stroke-dashoffset: var(--donut-to); opacity: .28; }
  100% { stroke-dasharray: var(--donut-final); stroke-dashoffset: var(--donut-to); opacity: 1; }
}

.allocation-track i,
.chart-hbar .main > div > div,
.chart-month-bars .main > div > div,
.pan-pct .bar {
  transform-origin: left center;
  animation: chart-horizontal-grow .9s cubic-bezier(.22,.75,.24,1) both;
}
@keyframes chart-horizontal-grow {
  from { transform: scaleX(0); opacity: .35; }
  to { transform: scaleX(1); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .number-motion-done,
  .chart-bars rect,
  .chart-business-trend rect,
  .chart-sales-trend rect,
  .chart-motion-line,
  .chart-business-trend circle,
  .chart-sales-trend circle,
  .chart-box.chart-line circle,
  .chart-donut-segment,
  .allocation-track i,
  .chart-hbar .main > div > div,
  .chart-month-bars .main > div > div,
  .pan-pct .bar { animation: none !important; }
  .chart-motion-line { stroke-dashoffset: 0; }
}
.legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; font-size: 12px; color: var(--text-2); }
.legend .item { display: flex; align-items: center; gap: 5px; }
.legend .dot { width: 10px; height: 10px; border-radius: 3px; }

/* ===== 表单布局 ===== */
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.form-grid .full { grid-column: 1 / -1; }
@media (max-width: 720px) { .form-grid { grid-template-columns: 1fr; } }
.form-actions { display: flex; gap: 10px; margin-top: 16px; }
.form-grid .hint { font-size: 11px; color: var(--text-3); margin-top: 3px; }

/* ===== 扫码页 ===== */
.scan-box {
  background: #fff; border: 2px dashed var(--border); border-radius: 14px; padding: 30px; text-align: center; margin-bottom: 16px;
}
.scan-box.focus { border-color: var(--primary); box-shadow: 0 0 0 4px rgba(22,119,255,.12); }
.scan-input {
  font-size: 22px; padding: 14px 18px; border: none; outline: none; text-align: center;
  border-bottom: 2px solid var(--primary); width: 100%; background: transparent; letter-spacing: 1px;
}
.scan-hint { font-size: 12.5px; color: var(--text-3); margin-top: 10px; }

/* 扫码出库：同码多采购价时明确选择实际扣减批次 */
.scan-batch-head { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin:4px 0 7px; font-size:12px; color:var(--text-3); }
.scan-batch-head b { color:var(--text-1); font-size:13px; }
.scan-batch-list { display:flex; gap:7px; overflow-x:auto; padding:1px 1px 9px; scrollbar-width:thin; }
.scan-batch-choice { flex:0 0 auto; min-width:144px; text-align:left; border:1px solid #dbe2ec; border-radius:10px; background:#fff; padding:8px 10px; color:#334155; cursor:pointer; }
.scan-batch-choice b { display:block; color:#152036; font-size:13px; }
.scan-batch-choice span { display:block; margin-top:3px; color:#7b8799; font-size:11px; white-space:nowrap; }
.scan-batch-choice i { display:inline-block; margin-top:5px; font-style:normal; font-size:10px; color:#fff; background:#182338; border-radius:99px; padding:2px 6px; }
.scan-batch-choice.active { border-color:#182338; box-shadow:0 0 0 2px rgba(24,35,56,.08); background:#f6f8fb; }
@media (max-width:720px) {
  .scan-batch-head { display:block; line-height:1.55; }
  .scan-batch-head span { display:block; }
  .scan-batch-choice { min-width:158px; padding:10px; }
}

/* Mobile feature pages — reconcile, stock analysis, procurement and lifecycle. */
@media (max-width:720px) {
  html.light-mode .pan-page,
  html.light-mode .reconcile-page,
  html.light-mode .manage-page,
  html.light-mode .inventory-life-page {
    padding: 14px 13px 96px;
  }

  html.light-mode .pan-breadcrumb,
  html.light-mode .section-kicker { color:#397080; letter-spacing:.08em; }
  html.light-mode .pan-title { color:#17354c; font-size:25px; margin:4px 0 14px; }
  html.light-mode .pan-filter,
  html.light-mode .reconcile-intro,
  html.light-mode .supply-return-card,
  html.light-mode .inventory-life-content,
  html.light-mode .soldout-control,
  html.light-mode .soldout-list {
    border:1px solid #d7e5e9 !important;
    background:linear-gradient(145deg,#ffffff 0%,#f3f9fa 100%) !important;
    box-shadow:0 9px 22px rgba(30,65,82,.055);
  }

  /* All pill / segmented actions have one quiet, tactile treatment. */
  html.light-mode .toolbar,
  html.light-mode .choice-segment,
  html.light-mode .soldout-periods,
  html.light-mode .supply-return-brand-chips,
  html.light-mode .supply-period-segment {
    display:flex; align-items:center; gap:7px; flex-wrap:wrap;
    min-height:0; padding:0; background:transparent !important; border:0 !important;
  }
  html.light-mode .toolbar .chip,
  html.light-mode .choice-segment .chip,
  html.light-mode .choice-segment > button,
  html.light-mode .soldout-periods .chip,
  html.light-mode .supply-return-brand-chips > button,
  html.light-mode .supply-period-segment .chip {
    min-height:34px; padding:0 13px; border:1px solid #d1e0e6; border-radius:999px;
    color:#456277; background:#f8fbfc !important; box-shadow:none; font-size:12px; font-weight:700;
  }
  html.light-mode .toolbar .chip.active,
  html.light-mode .choice-segment .chip.active,
  html.light-mode .choice-segment > button.active,
  html.light-mode .soldout-periods .chip.active,
  html.light-mode .supply-return-brand-chips > button.active,
  html.light-mode .supply-period-segment .chip.active {
    color:#fff !important; border-color:#1a5267 !important;
    background:linear-gradient(135deg,#163c56,#287783) !important;
    box-shadow:0 5px 12px rgba(21,73,91,.16);
  }

  html.light-mode .pan-kpi { gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  html.light-mode .pan-kpi-card { min-height:92px; padding:13px; border-radius:15px; }
  html.light-mode .pan-kpi-val { color:#17384f !important; }
  html.light-mode .pan-mobile-summary { display:grid; grid-template-columns:1fr; gap:11px; margin-top:12px; }
  html.light-mode .pan-mobile-card {
    border:1px solid #d9e6ea; border-radius:17px; overflow:hidden;
    background:linear-gradient(145deg,#fff,#f4f9fa); box-shadow:0 8px 18px rgba(30,65,82,.055);
  }
  html.light-mode .pan-mobile-head { padding:13px 14px; color:#17384f; background:#edf6f6; border-bottom:1px solid #dce9eb; }
  html.light-mode .pan-mobile-row { padding:13px 14px; border-bottom:1px solid #e4eef0; }
  html.light-mode .pan-mobile-row:last-child { border-bottom:0; }
  html.light-mode .pan-mobile-row b { color:#17354c; }
  html.light-mode .pan-mobile-row span { color:#71889a; }

  /* Lifecycle centres: compact information hierarchy, no washed-out blue blocks. */
  html.light-mode .inventory-life-hero,
  html.light-mode .soldout-hero {
    padding:17px 16px; min-height:auto; border:1px solid #cfe1e6 !important; border-radius:19px;
    color:#143850 !important; background:linear-gradient(135deg,#eff9f8,#e8f3f7) !important;
  }
  html.light-mode .inventory-life-hero h2,
  html.light-mode .soldout-hero h2 { color:#15384e; font-size:24px; }
  html.light-mode .inventory-life-hero p,
  html.light-mode .soldout-hero p { color:#58748a; }
  html.light-mode .inventory-life-summary { background:rgba(255,255,255,.72) !important; border-color:#d7e5e8; }
  html.light-mode .soldout-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  html.light-mode .soldout-overview > div {
    min-height:92px; padding:13px; border:1px solid #d9e6ea; border-radius:15px;
    background:#fbfdfe !important;
  }
  html.light-mode .soldout-columns { display:none; }
  html.light-mode .soldout-insight-row {
    display:grid; grid-template-columns:34px 44px minmax(0,1fr) auto; gap:8px; align-items:center;
    padding:12px; border-bottom:1px solid #e1ecef;
  }
  html.light-mode .soldout-insight-row .soldout-kpi,
  html.light-mode .soldout-insight-row .soldout-profit,
  html.light-mode .soldout-insight-row .soldout-detail { display:none; }
  html.light-mode .soldout-cycle { padding:5px 7px; border-radius:9px; background:#eaf4f5; }

  /* Reconciliation and material purchase use the same shallow work cards. */
  html.light-mode .reconcile-tabs,
  html.light-mode .manage-tabs { margin:0 0 12px !important; }
  html.light-mode .reconcile-intro { padding:15px; border-radius:18px; }
  html.light-mode .reconcile-intro h2,
  html.light-mode .reconcile-intro h3 { color:#16364d; }
  html.light-mode .supply-return-card { padding:15px; border-radius:19px; }
  html.light-mode .supply-return-title h3 { color:#16364d; font-size:21px; }
  html.light-mode .supply-return-title p { color:#688095; line-height:1.55; }
  html.light-mode .supply-return-summary { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; background:transparent !important; }
  html.light-mode .supply-return-summary > div,
  html.light-mode .supply-brand-kpis > div {
    padding:12px; min-height:76px; border:1px solid #d9e7ea; border-radius:13px; background:#f8fbfc !important;
  }
  html.light-mode .supply-brand-grid { grid-template-columns:1fr; gap:10px; }
  html.light-mode .supply-brand-card { border-color:#d6e5e8; border-radius:16px; background:#fff !important; }
  html.light-mode .supply-brand-card-head { padding:12px; }
  html.light-mode .supply-brand-kpis { grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:0 12px 11px; }
  html.light-mode .supply-brand-kpis > div { padding:9px 8px; min-height:64px; }
  html.light-mode .supply-brand-note { margin:0 12px 12px; color:#6d8495; }

  /* Inputs on less common pages: readable, low-glare, and large enough for touch. */
  html.light-mode .pan-page .input,
  html.light-mode .reconcile-page .input,
  html.light-mode .manage-page .input,
  html.light-mode .inventory-life-content .input,
  html.light-mode .pan-page select,
  html.light-mode .reconcile-page select,
  html.light-mode .manage-page select {
    min-height:42px; color:#18364d !important; border-color:#cbdde4 !important;
    background:#fff !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
  }
  html.light-mode .stock-filter-picker-popover { z-index:1500; box-shadow:0 14px 30px rgba(24,54,73,.18); }
}

/* ===== 排名列表 ===== */
.rank-item { display: flex; align-items: center; gap: 12px; padding: 9px 4px; border-bottom: 1px solid #f0f2f6; }
.rank-item:last-child { border-bottom: none; }
.rank-item .idx { width: 22px; height: 22px; border-radius: 6px; background: #f0f2f6; color: var(--text-2); font-size: 12px; font-weight: 600; display: flex; align-items: center; justify-content: center; }
.rank-item .idx.top { background: #fff3e6; color: var(--orange); }
.rank-item .main { flex: 1; min-width: 0; }
.rank-item .main .t { font-size: 13px; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rank-item .main .s { font-size: 11.5px; color: var(--text-3); }
.rank-item .val { text-align: right; }
.rank-item .val .v { font-size: 13.5px; font-weight: 600; }
.rank-item .val .r { font-size: 11.5px; color: var(--text-3); }

/* ===== 快速操作卡片 ===== */
.action-card { cursor: pointer; transition: transform .12s, box-shadow .12s; text-align: center; padding: 20px 12px; }
.action-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(16,28,48,.1); border-color: var(--primary); }
.action-card .ic { font-size: 28px; margin-bottom: 8px; }
.action-card .t { font-size: 15px; font-weight: 600; color: var(--text); }
.action-card .s { font-size: 12px; color: var(--text-3); margin-top: 3px; }

/* ===== 经营驾驶舱 ===== */
.dashboard-hero {
  position: relative; overflow: hidden; display: flex; align-items: stretch; justify-content: space-between; gap: 28px;
  min-height: 164px; margin-bottom: 20px; padding:24px 30px; border-radius: 20px; color: #fff;
  background: linear-gradient(120deg, #171936 0%, #34328f 50%, #635bdb 100%);
  box-shadow: 0 18px 46px rgba(62, 58, 169, .24);
}
.dashboard-hero::before, .dashboard-hero::after { content: ''; position: absolute; pointer-events: none; border-radius: 50%; }
.dashboard-hero::before { width: 290px; height: 290px; right: 18%; top: -160px; border: 48px solid rgba(255,255,255,.06); }
.dashboard-hero::after { width: 180px; height: 180px; right: -60px; bottom: -98px; background: rgba(94,234,212,.13); }
.dashboard-hero-copy, .dashboard-hero-side { position: relative; z-index: 1; }
.dashboard-hero-copy { max-width:610px; }
.dashboard-eyebrow { display:flex; align-items:center; gap:8px; color:#c7d2fe; font-size:11px; font-weight:700; letter-spacing:1.2px; }
.dashboard-eyebrow span { width:7px; height:7px; border-radius:50%; background:#5eead4; box-shadow:0 0 0 4px rgba(94,234,212,.14); }
.dashboard-hero h1 { margin:13px 0 7px; font-size:29px; letter-spacing:-.6px; line-height:1.2; }
.dashboard-hero p { color:rgba(238,242,255,.76); font-size:13px; }
.dashboard-hero-focus { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:17px; color:#b8c4d6; font-size:11.5px; }
.dashboard-hero-focus span { color:#9eacc0; }
.dashboard-hero-focus b { color:#fff; font-size:12px; font-weight:650; }
.dashboard-hero-focus i { color:#66748a; font-style:normal; }
.dashboard-hero-focus small { color:#b8c4d6; font-size:11.5px; }
.dashboard-hero-actions { display:flex; gap:10px; margin-top:22px; }
.dashboard-hero .btn { border-radius:10px; padding:9px 15px; font-weight:600; }
.dashboard-hero .hero-primary { background:#fff; border-color:#fff; color:#3730a3; }
.dashboard-hero .hero-primary:hover { color:#312e81; transform:translateY(-1px); box-shadow:0 6px 16px rgba(0,0,0,.14); }
.dashboard-hero .hero-ghost { color:#fff; border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.10); }
.dashboard-hero .hero-ghost:hover { color:#fff; border-color:rgba(255,255,255,.75); background:rgba(255,255,255,.18); }
.dashboard-hero-side { width:300px; flex-shrink:0; align-self:center; padding:18px; border:1px solid rgba(255,255,255,.15); border-radius:14px; background:rgba(9,11,45,.20); backdrop-filter:blur(8px); }
.hero-side-label { color:#c7d2fe; font-size:12px; }
.hero-goal-value { margin-top:6px; font-size:25px; line-height:1.2; font-weight:700; font-variant-numeric:tabular-nums; }
.hero-goal-value span { color:#c7d2fe; font-size:12px; font-weight:400; }
.hero-progress { height:7px; margin:16px 0 8px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.16); }
.hero-progress i { display:block; height:100%; min-width:0; border-radius:inherit; background:linear-gradient(90deg, #5eead4, #a5f3fc); }
.hero-progress-meta { display:flex; justify-content:space-between; align-items:center; font-size:11px; color:#c7d2fe; }
.hero-progress-meta a { display:inline-flex; align-items:center; gap:3px; color:#fff; font-weight:600; }
html.eye-mode .dashboard-hero-focus span { color:#a5b8ad; }
html.eye-mode .dashboard-hero-focus small { color:#bfcec3; }
.dashboard-section-head { display:flex; justify-content:space-between; align-items:flex-end; margin:4px 2px 12px; }
.dashboard-section-head h2 { margin-top:3px; font-size:18px; letter-spacing:-.2px; }
.section-kicker { color:var(--primary); font-weight:700; font-size:11px; letter-spacing:.8px; }
.section-note { color:var(--text-3); font-size:12px; }
.dashboard-actions .action-card { position:relative; min-height:142px; overflow:hidden; border:1px solid rgba(229,231,245,.9); text-align:left; padding:19px 20px; box-shadow:0 9px 20px rgba(15,23,42,.055); transition:transform .16s,box-shadow .16s,border-color .16s; }
.dashboard-actions .action-card:hover { transform:translateY(-3px); border-color:#b9c7dc; box-shadow:0 14px 26px rgba(15,23,42,.1); }
.dashboard-actions .action-card::after { content:'→'; position:absolute; right:15px; bottom:13px; color:#c7d2fe; font-size:18px; transition:transform .15s; }
.dashboard-actions .action-card:hover::after { transform:translateX(4px); color:var(--primary); }
.dashboard-actions .action-card .ic { width:48px; height:48px; display:flex; align-items:center; justify-content:center; margin:0 0 15px; border-radius:13px; color:var(--primary); background:var(--primary-light); }
.dashboard-actions .action-card:nth-child(2) .ic { color:#d97706; background:#fff7ed; }
.dashboard-actions .action-card:nth-child(3) .ic { color:#059669; background:#ecfdf5; }
.dashboard-actions .action-card:nth-child(4) .ic { color:#7c3aed; background:#f5f3ff; }
.dashboard-actions .action-card .t { font-size:17px; font-weight:750; letter-spacing:-.2px; }.dashboard-actions .action-card .s { margin-top:5px; font-size:12px; }.dashboard-actions .action-card-major { border-top:3px solid #172033; background:linear-gradient(135deg,#fff,#f8fafc); }.dashboard-actions .action-card-major::after { display:none; }.action-hint { position:absolute; right:17px; bottom:16px; color:#64748b; font-size:11px; }.action-hint b { margin-left:4px; color:#172033; font-size:15px; }.dashboard-actions .action-card-major:first-child .ic { color:#fff; background:#172033; }.dashboard-actions .action-card-major:nth-child(2) { border-top-color:#d97706; }.dashboard-actions .action-card-major:nth-child(2) .action-hint b { color:#d97706; }
.dashboard-operating { margin:18px 0 24px; padding:18px 20px; border:1px solid #dfe6ef; border-radius:16px; background:linear-gradient(135deg,#fff 0%,#f6f8fc 100%); box-shadow:0 12px 28px rgba(15,23,42,.05); }
.dashboard-operating-head, .business-trend-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.dashboard-operating h2 { margin:2px 0 3px; font-size:20px; letter-spacing:-.35px; }
.dashboard-operating p, .business-trend-head span { margin:0; color:var(--text-3); font-size:12px; }
.dashboard-period-tabs { display:flex; padding:4px; gap:3px; border:1px solid #dce3ee; border-radius:10px; background:#fff; }
.dashboard-period-tabs button { min-width:54px; padding:6px 9px; border:0; border-radius:7px; background:transparent; color:#64748b; font-size:12px; cursor:pointer; transition:.16s; }
.dashboard-period-tabs button:hover { background:#f1f5f9; color:#172033; }
.dashboard-period-tabs button.active { background:#172033; color:#fff; box-shadow:0 2px 5px rgba(15,23,42,.16); }
.dashboard-operating-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:17px; overflow:hidden; border:1px solid #e7ebf1; border-radius:12px; background:#e7ebf1; }
.operating-kpi { min-height:112px; padding:17px 18px; background:#fff; position:relative; overflow:hidden; }
.operating-kpi:after { content:""; position:absolute; right:-24px; bottom:-28px; width:84px; height:84px; border-radius:50%; background:currentColor; opacity:.045; }
.operating-kpi span { display:block; color:#64748b; font-size:12px; font-weight:650; letter-spacing:.15px; }
.operating-kpi b { display:block; margin:7px 0 5px; color:#172033; font-size:30px; line-height:1; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
.operating-kpi small { color:#94a3b8; font-size:11px; }
.operating-kpi.revenue { border-top:3px solid #17243a; }.operating-kpi.cost { border-top:3px solid #8793a6; }.operating-kpi.profit { border-top:3px solid #172033; }.operating-kpi.margin { border-top:3px solid #68758a; }
.business-trend-card { padding:18px 18px 10px; }
.business-trend-head h3 { margin:0 0 4px; }
.business-trend-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:11px; color:#64748b; font-size:11px; }
.business-trend-legend span { display:flex; align-items:center; gap:5px; white-space:nowrap; }
.business-trend-legend i { width:8px; height:8px; border-radius:2px; background:#17243a; }.business-trend-legend i.cost { background:#8793a6; }.business-trend-legend i.margin { width:12px; height:2px; border-radius:2px; background:#4d596d; }
.chart-business-trend { margin-top:10px; }
.sales-trend-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }.sales-trend-head h3 { margin:0 0 3px; }.sales-trend-head > div > span { margin:0; color:var(--text-3); font-size:12px; }.sales-trend-controls { display:flex; align-items:center; gap:10px; }.sales-period-tabs { display:flex; padding:3px; border:1px solid #dce3ee; border-radius:9px; background:#fff; }.sales-period-tabs button { padding:5px 8px; border:0; border-radius:6px; background:transparent; color:#64748b; font-size:11px; cursor:pointer; }.sales-period-tabs button.active { background:#172033; color:#fff; }.chart-sales-trend { margin-top:10px; }.dashboard-activity-card { margin-top:14px; }.dashboard-activity-card h3 span { margin-left:7px; color:#94a3b8; font-size:11px; font-weight:400; }
.dashboard-rhythm-card { display:grid; grid-template-columns:minmax(240px,1.2fr) minmax(420px,2.1fr) auto; align-items:center; gap:17px; margin:0 0 14px; padding:15px 18px; border-color:#dbe3ee; background:linear-gradient(112deg,#fff 0%,#f4f7fb 100%); overflow:hidden; position:relative; }
.dashboard-rhythm-card:before { content:""; position:absolute; top:0; bottom:0; left:0; width:4px; background:#172033; }.rhythm-card-intro h3 { margin:3px 0 4px; color:#172033; font-size:16px; letter-spacing:-.3px; }.rhythm-card-intro p { margin:0; color:#718096; font-size:11px; line-height:1.5; }.rhythm-phases { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }.rhythm-phase { min-height:78px; padding:9px 10px; border:1px solid #dce4ee; border-radius:10px; background:linear-gradient(145deg,#fff,#f8fafc); box-shadow:0 3px 9px rgba(15,23,42,.03); transition:transform .16s,box-shadow .16s; }.rhythm-phase:hover { transform:translateY(-2px); box-shadow:0 7px 15px rgba(15,23,42,.07); }.rhythm-phase em { display:block; margin-bottom:5px; color:#7b8aa0; font-size:9px; font-style:normal; font-weight:750; letter-spacing:.3px; }.rhythm-phase b { display:block; margin-bottom:4px; color:#172033; font-size:14px; letter-spacing:-.2px; }.rhythm-phase span { display:block; color:#64748b; font-size:10px; line-height:1.4; }.rhythm-phase.seed { border-top:3px solid #78909c; }.rhythm-phase.seed em { color:#637482; }.rhythm-phase.growth { border-top:3px solid #315efb; }.rhythm-phase.growth em { color:#315efb; }.rhythm-phase.steady { border-top:3px solid #1f9d8b; }.rhythm-phase.steady em { color:#168575; }.rhythm-phase.adjust { border-top:3px solid #b7791f; }.rhythm-phase.adjust em { color:#a86d18; }.rhythm-more { flex:0 0 auto; padding:8px 10px; border:1px solid #d5dde8; border-radius:9px; color:#334155; background:#fff; white-space:nowrap; font-size:11px; cursor:pointer; transition:.16s; }.rhythm-more:hover { border-color:#172033; color:#172033; box-shadow:0 4px 12px rgba(15,23,42,.08); }.rhythm-more span { margin-left:3px; color:#315efb; }

/* 深色科技风：全站业务模块统一成海军蓝玻璃卡片，避免出现深色页面配白底卡片的割裂感。 */
html.eye-mode .dashboard-operating { border-color:#2a3954; background:linear-gradient(135deg, rgba(22,33,53,.98), rgba(22,48,57,.94)); box-shadow:0 16px 32px rgba(0,0,0,.2); }
html.eye-mode .dashboard-operating h2, html.eye-mode .operating-kpi b { color:#f4f7ff; }
html.eye-mode .dashboard-operating p, html.eye-mode .operating-kpi span, html.eye-mode .operating-kpi small { color:#9eafc8; }
html.eye-mode .dashboard-operating-grid { border-color:#2c3b57; background:#2c3b57; }
html.eye-mode .dashboard-period-tabs { border-color:#334663; background:#101b2f; box-shadow:inset 0 1px 0 rgba(255,255,255,.035); }
html.eye-mode .dashboard-period-tabs button { color:#aab8d0; }
html.eye-mode .dashboard-period-tabs button:hover { background:#1d2c47; color:#f2f7ff; }
html.eye-mode .dashboard-period-tabs button.active { background:linear-gradient(135deg,#616eff,#7c83ff); color:#fff; box-shadow:0 5px 12px rgba(86,96,255,.28); }
html.eye-mode .operating-kpi { background:linear-gradient(145deg, #151f34, #182943); }
html.eye-mode .operating-kpi.revenue { border-top-color:#7c83ff; }
html.eye-mode .operating-kpi.cost { border-top-color:#5eead4; }
html.eye-mode .operating-kpi.profit { border-top-color:#9aa8ff; }
html.eye-mode .operating-kpi.margin { border-top-color:#6da7a5; }
html.eye-mode .dashboard-rhythm-card { border-color:#2a3954; background:linear-gradient(112deg, #111b2e 0%, #132b38 100%); box-shadow:0 14px 28px rgba(0,0,0,.16); }
html.eye-mode .dashboard-rhythm-card:before { background:linear-gradient(#7c83ff, #5eead4); }
html.eye-mode .rhythm-card-intro h3, html.eye-mode .rhythm-phase b { color:#eff5ff; }
html.eye-mode .rhythm-card-intro p, html.eye-mode .rhythm-phase span { color:#98a9c0; }
html.eye-mode .rhythm-phase { border-color:#30405d; background:linear-gradient(145deg, #16233a, #142038); box-shadow:none; }
html.eye-mode .rhythm-phase:hover { border-color:#6373a1; box-shadow:0 9px 20px rgba(0,0,0,.22); }
html.eye-mode .rhythm-phase.seed { border-top-color:#7893b6; } html.eye-mode .rhythm-phase.seed em { color:#a5bad4; }
html.eye-mode .rhythm-phase.growth { border-top-color:#7c83ff; } html.eye-mode .rhythm-phase.growth em { color:#aab1ff; }
html.eye-mode .rhythm-phase.steady { border-top-color:#5eead4; } html.eye-mode .rhythm-phase.steady em { color:#7cf3df; }
html.eye-mode .rhythm-phase.adjust { border-top-color:#77a9ad; } html.eye-mode .rhythm-phase.adjust em { color:#9dd6d4; }
html.eye-mode .rhythm-more { border-color:#3a4a68; color:#cbd7ec; background:#17243a; } html.eye-mode .rhythm-more:hover { border-color:#7c83ff; color:#fff; } html.eye-mode .rhythm-more span { color:#7c83ff; }
html.eye-mode .dashboard-actions .action-card { border-color:#2a3954; background:linear-gradient(145deg, #151f34, #18243a); box-shadow:0 12px 25px rgba(0,0,0,.16); }
html.eye-mode .dashboard-actions .action-card:hover { border-color:#58668b; box-shadow:0 16px 30px rgba(0,0,0,.28); }
html.eye-mode .dashboard-actions .action-card-major { background:linear-gradient(145deg, #172640, #19313d); border-top-color:#7c83ff; }
html.eye-mode .dashboard-actions .action-card-major:nth-child(2) { border-top-color:#5eead4; }
html.eye-mode .dashboard-actions .action-card .t { color:#eef4ff; } html.eye-mode .dashboard-actions .action-card .s, html.eye-mode .action-hint { color:#91a1bb; }
html.eye-mode .dashboard-actions .action-card:nth-child(2) .ic { color:#83f3df; background:rgba(94,234,212,.12); }
html.eye-mode .dashboard-actions .action-card:nth-child(3) .ic { color:#82a3ff; background:rgba(124,131,255,.14); }
html.eye-mode .dashboard-actions .action-card:nth-child(4) .ic { color:#b7bcff; background:rgba(124,131,255,.12); }
.rhythm-modal-head h3 { margin:3px 0 0; }.rhythm-modal-body { padding-top:20px; }.rhythm-modal-lead { margin:0 0 8px; color:#172033; font-size:18px; font-weight:750; letter-spacing:-.25px; }.rhythm-modal-copy { margin:0 0 17px; color:#64748b; line-height:1.75; }.rhythm-modal-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.rhythm-modal-phase { min-height:114px; padding:15px; border:1px solid #e2e8f0; border-radius:12px; background:#f8fafc; }.rhythm-modal-phase span { color:#94a3b8; font-size:11px; font-weight:700; letter-spacing:.7px; }.rhythm-modal-phase h4 { margin:8px 0 5px; color:#172033; font-size:15px; }.rhythm-modal-phase p { margin:0; color:#64748b; font-size:12px; }.rhythm-modal-phase.seed { border-top:3px solid #78909c; }.rhythm-modal-phase.growth { border-top:3px solid #315efb; }.rhythm-modal-phase.steady { border-top:3px solid #1f9d8b; }.rhythm-modal-phase.adjust { border-top:3px solid #b7791f; }.rhythm-modal-note { margin-top:15px; padding:13px 14px; border-radius:10px; color:#475569; background:#f1f5f9; line-height:1.75; font-size:13px; }.rhythm-modal-note b { color:#172033; }.rhythm-modal-footer { margin:16px 0 0; color:#64748b; text-align:center; font-size:13px; }
.mobile-rhythm-card { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:16px 0 21px; padding:16px 17px; border-radius:16px; color:#fff; background:linear-gradient(120deg,#111827,#26364d); box-shadow:0 11px 22px rgba(15,23,42,.14); cursor:pointer; }.mobile-rhythm-card span { display:block; margin-bottom:7px; color:#a9b9d0; font-size:10px; font-weight:700; letter-spacing:.65px; }.mobile-rhythm-card b { display:block; font-size:15px; line-height:1.35; }.mobile-rhythm-card em { display:block; margin-top:6px; color:#bdc9da; font-size:11px; font-style:normal; }.mobile-rhythm-card > i { flex:0 0 auto; color:#dbeafe; font-size:23px; font-style:normal; }
@media (max-width:720px) { .dashboard-operating { padding:14px; border-radius:14px; }.dashboard-operating-grid { grid-template-columns:repeat(2,1fr); }.dashboard-operating-head { align-items:center; }.dashboard-operating h2 { font-size:18px; }.dashboard-period-tabs button { min-width:44px; padding:6px; }.operating-kpi { min-height:92px; padding:13px; }.operating-kpi b { font-size:24px; }.business-trend-head { align-items:flex-start; flex-direction:column; gap:8px; }.business-trend-legend { justify-content:flex-start; }.sales-trend-head { flex-direction:column; }.sales-trend-controls { width:100%; justify-content:space-between; }.dashboard-rhythm-card { grid-template-columns:1fr; gap:13px; padding:16px; }.rhythm-phases { grid-template-columns:repeat(2,1fr); }.rhythm-more { width:100%; }.rhythm-modal-grid { grid-template-columns:1fr; }.rhythm-modal-phase { min-height:auto; }.rhythm-modal-body { padding-top:15px; } }
.ops-brief { margin:0 0 24px; }
.ops-brief-title { display:flex; align-items:baseline; gap:10px; margin:0 2px 12px; }
.ops-brief-title h2 { font-size:18px; letter-spacing:-.2px; }
.ops-brief-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.ops-todo { display:flex; align-items:center; width:100%; min-width:0; gap:11px; padding:14px; text-align:left; color:var(--text); border:1px solid rgba(229,231,245,.82); border-radius:13px; background:rgba(255,255,255,.88); box-shadow:var(--shadow); transition:transform .15s, border-color .15s, box-shadow .15s; }
.ops-todo:hover { transform:translateY(-2px); border-color:#c7d2fe; box-shadow:0 10px 24px rgba(48,46,115,.09); }
.ops-todo-icon { display:flex; flex:0 0 auto; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; }
.ops-todo.pending .ops-todo-icon { background:#fff7ed; color:#d97706; }
.ops-todo.replenish .ops-todo-icon { background:#ecfdf5; color:#059669; }
.ops-todo.aging .ops-todo-icon { background:#fef2f2; color:#dc2626; }
.ops-todo span:nth-child(2) { min-width:0; flex:1; }
.ops-todo b, .ops-todo small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ops-todo b { font-size:13px; }
.ops-todo small { margin-top:4px; color:var(--text-3); font-size:11.5px; }
.ops-todo i { color:#a5b4fc; font-size:18px; font-style:normal; }
.qout-order-link { display:flex; align-items:center; gap:12px; margin:0 0 12px; padding:11px 12px; border:1px solid #dfe3ff; border-radius:11px; background:#f7f8ff; }
.qout-order-link > div { flex:1; }
.qout-order-link b, .qout-order-link span { display:block; }
.qout-order-link b { font-size:13px; color:#3730a3; }
.qout-order-link span { margin-top:2px; color:var(--text-3); font-size:11px; }
.qout-order-link input { width:220px; }

@media (max-width: 720px) {
  .content { padding:12px 14px 16px; }
  .topbar { height:50px; background:#fff; }
}

@media (max-width: 1080px) and (min-width: 721px) {
  .dashboard-hero { padding:24px; }
  .dashboard-hero-side { width:260px; }
}
@media (max-width: 980px) and (min-width: 721px) { .ops-brief-grid { grid-template-columns:1fr; } }
@media (max-width: 720px) { .qout-order-link { align-items:stretch; flex-direction:column; } .qout-order-link input { width:100%; } }

/* ===== 仪表盘品类库存卡（可点击跳转） ===== */
.stat-card.cat-card { transition: transform .12s, box-shadow .12s, border-color .12s; }
.stat-card.cat-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(22,119,255,.14); border-color: var(--primary); }
.stat-card.cat-card:hover .extra { color: var(--primary) !important; }

/* ===== 链接样式（订单号互链等可点击元素） ===== */
.link { color: inherit; cursor: pointer; }
a.link:hover { color: var(--primary) !important; text-decoration: underline !important; }

/* ===== 预警卡片 ===== */
.warn-card { cursor: pointer; transition: transform .12s, box-shadow .12s; }
.warn-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(16,28,48,.1); }
.warn-card h3 { display: flex; align-items: center; gap: 8px; }
.warn-card h3 .cnt { margin-left: auto; font-size: 13px; padding: 2px 10px; border-radius: 12px; background: rgba(0,0,0,.08); }
.warn-card.warn-orange h3 { color: var(--orange); }
.warn-card.warn-orange { border-top: 3px solid var(--orange); }
.warn-card.warn-red h3 { color: var(--red); }
.warn-card.warn-red { border-top: 3px solid var(--red); }
.warn-card.warn-green h3 { color: var(--green); }
.warn-card.warn-green { border-top: 3px solid var(--green); }
.warn-list { margin-top: 10px; }
.warn-item { display: flex; justify-content: space-between; font-size: 13px; padding: 5px 0; border-bottom: 1px solid #f0f2f6; }
.warn-item:last-child { border-bottom: none; }
.warn-item span { color: var(--text-3); }

/* ===== 时间轴/动态 ===== */
.feed { position: relative; padding-left: 18px; }
.feed::before { content: ''; position: absolute; left: 5px; top: 6px; bottom: 6px; width: 2px; background: var(--border); }
.feed-item { position: relative; padding: 7px 0 7px 12px; }
.feed-item::before {
  content: ''; position: absolute; left: -18px; top: 14px; width: 10px; height: 10px; border-radius: 50%;
  background: #fff; border: 2.5px solid var(--blue);
}
.feed-item.in::before,.feed-item.out::before,.feed-item.defect::before,.feed-item.supply::before { border-color:#17243a; }
.feed-item .t { font-size: 13px; }
.feed-item .d { font-size: 11.5px; color: var(--text-3); margin-top: 2px; }

/* ===== 设置页 ===== */
.setting-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 4px; border-bottom: 1px solid #f0f2f6; flex-wrap: wrap; }
.setting-row:last-child { border-bottom: none; }
.setting-row .l { flex: 1; min-width: 180px; }
.setting-row .l .t { font-size: 14px; font-weight: 500; }
.setting-row .l .d { font-size: 12px; color: var(--text-3); margin-top: 2px; }

.progress { height: 8px; border-radius: 4px; background: #eef1f6; overflow: hidden; }
.progress .bar { height: 100%; border-radius: 4px; background: linear-gradient(90deg, #1677ff, #69b1ff); transition: width .4s; }

.cat-donut { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }

/* ===== 待入库卡片（扫码录入） ===== */
.pending-card {
  background: #fff; border: 1px solid var(--border); border-radius: var(--radius);
  padding: 12px 14px; margin-bottom: 10px; box-shadow: var(--shadow);
}
.scan-profile-card { margin-top:14px; padding:15px; border:1px solid #b9ddd6; border-radius:18px; background:linear-gradient(145deg,#f8fcfb,#edf7f4); box-shadow:0 14px 34px rgba(30,87,77,.08); }
.scan-profile-head { display:flex; align-items:flex-start; gap:11px; margin-bottom:14px; }
.scan-profile-head > span { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:13px; color:#fff; background:#1d5d52; }
.scan-profile-head small { display:block; color:#55877e; font-size:9px; font-weight:800; letter-spacing:1.2px; }
.scan-profile-head b { display:block; margin:2px 0; color:#16332e; font-size:17px; }
.scan-profile-head p { margin:0; color:#71847f; font-size:11px; }
.scan-profile-head code { color:#276e62; font-weight:700; }
.scan-profile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.scan-profile-grid label > span { display:block; margin:0 0 5px 2px; color:#506b65; font-size:11px; font-weight:650; }
.scan-profile-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:14px; }
html.eye-mode .scan-profile-card { border-color:#284a51; background:linear-gradient(145deg,#13262e,#102128); }
html.eye-mode .scan-profile-head b { color:#e2f0ee; }
html.eye-mode .scan-profile-head p, html.eye-mode .scan-profile-grid label > span { color:#82999a; }
@media(max-width:720px) { .scan-profile-card { padding:13px; } .scan-profile-grid { grid-template-columns:1fr; gap:9px; } .scan-profile-actions .btn { flex:1; } }
.pending-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.pending-title { flex: 1; min-width: 0; }
.pending-name { font-size: 14px; font-weight: 600; color: var(--text); line-height: 1.35; }
.pending-code { font-size: 12px; color: var(--text-3); margin-top: 4px; word-break: break-all; }
.pending-edit { display: grid; grid-template-columns: 90px 1fr 1fr; gap: 10px; margin-top: 10px; align-items: end; }
.pending-edit label { display: block; margin-bottom: 4px; font-size: 12px; }
.pending-edit .static { font-size: 14px; padding: 8px 0; color: var(--text); font-weight: 500; }
.pending-edit input { width: 100%; min-height: 36px; padding: 7px 10px; font-size: 14px; }
.scan-product-photo { margin:10px 0 0; padding:8px 10px; border-style:solid; background:#fbfcfe; }
.scan-product-photo .product-photo-preview { width:44px; height:44px; border-radius:9px; }
.scan-product-photo .in-product-photo-copy b { font-size:12px; }
.scan-product-photo .in-product-photo-copy span { font-size:10.5px; }
html.eye-mode .scan-product-photo { background:#172235; border-color:#344158; }

/* ===== 设备专属显示控制 ===== */
.desktop-only { display: block; }
.mobile-only { display: none; }

/* ===== 底部 Tab 导航（手机端显示，inline flow 在 .shell 末尾） ===== */
.bottom-nav {
  flex-shrink: 0;
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
  height: 64px;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: saturate(160%) blur(12px);
  -webkit-backdrop-filter: saturate(160%) blur(12px);
  border-top: 1px solid var(--border);
  z-index: 50;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  box-shadow: 0 -4px 16px rgba(16, 28, 48, .08);
}
.bottom-nav-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  color: var(--text-3);
  text-decoration: none;
  font-size: 11px;
  transition: color .15s;
  padding: 6px 0;
}
.bottom-nav-item .ic { font-size: 22px; line-height: 1; }
.bottom-nav-item.active { color: var(--primary); }
.bottom-nav-item.center {
  position: relative;
  top: -14px;
  flex: 0 0 64px;
}
.bottom-nav-item.center .ic {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  box-shadow: 0 4px 14px rgba(22,119,255,.35);
  border: 3px solid #fff;
}
.bottom-nav-item.center .lb { display: none; }

/* ===== 移动端仪表盘 ===== */
.mobile-dashboard { padding-bottom: 20px; }
.mobile-greet {
  margin: -4px 0 14px;
}
.greet-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--text);
}
.greet-shop {
  font-size: 13px;
  color: var(--text-3);
  margin-top: 4px;
}
.mobile-metrics {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 8px;
  margin: 0 -4px 14px;
  scrollbar-width: none;
}
.mobile-metrics::-webkit-scrollbar { display: none; }
.mobile-metric {
  flex: 0 0 118px;
  background: var(--card);
  border-radius: 12px;
  padding: 12px 10px;
  box-shadow: var(--shadow);
  text-align: center;
  cursor: pointer;
}
.mobile-metric .m-icon { font-size: 22px; margin-bottom: 6px; }
.mobile-metric .m-value {
  font-size: 17px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  margin-bottom: 2px;
}
.mobile-metric .m-label { font-size: 12px; color: var(--text-2); }
.mobile-metric .m-sub { font-size: 11px; color: var(--text-3); margin-top: 2px; }
.mobile-order-banner {
  padding: 12px 14px;
  background: #fff7e6;
  border-color: #ffd591;
  cursor: pointer;
  margin-bottom: 14px;
}
.mobile-quick {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-bottom: 14px;
}
.mobile-quick-item {
  background: var(--card);
  border-radius: 12px;
  padding: 16px 14px;
  box-shadow: var(--shadow);
  cursor: pointer;
  transition: transform .12s;
}
.mobile-quick-item:active { transform: scale(.98); }
.mobile-quick-item .mq-icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  margin-bottom: 10px;
}
.mobile-quick-item .mq-title { font-size: 15px; font-weight: 600; }
.mobile-quick-item .mq-sub { font-size: 12px; color: var(--text-3); margin-top: 2px; }

/* ===== 我的页面 ===== */
.me-page { padding-bottom: 20px; }
.me-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: -4px 0 16px;
}
.me-avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 600;
}
.me-info { flex: 1; min-width: 0; }
.me-name { font-size: 17px; font-weight: 700; }
.me-shop { font-size: 13px; color: var(--text-3); margin-top: 4px; }
.me-group { margin-bottom: 14px; }
.me-group h3 { margin-bottom: 4px; }
.me-grid { display: flex; flex-direction: column; }
.me-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 0;
  border-bottom: 1px solid #f0f2f6;
  cursor: pointer;
}
.me-item:last-child { border-bottom: none; }
.me-item .me-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: var(--primary-light);
  color: var(--primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
}
.me-item .me-text { flex: 1; min-width: 0; }
.me-item .me-label { font-size: 14px; font-weight: 500; }
.me-item .me-desc { font-size: 12px; color: var(--text-3); margin-top: 1px; }
.me-item .me-arrow { font-size: 18px; color: var(--text-3); }
.me-footer {
  text-align: center;
  font-size: 11px;
  color: var(--text-3);
  padding: 20px 0 30px;
}

/* 移动端「我的」页：渐变头部卡 */
.me-hero {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 22px 18px;
  margin: 0 0 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, #2b5cff 0%, #1677ff 55%, #38b6ff 100%);
  box-shadow: 0 8px 24px rgba(22, 119, 255, .28);
  color: #fff;
}
.me-hero .me-avatar {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .22);
  border: 1px solid rgba(255, 255, 255, .35);
  font-size: 26px;
  flex-shrink: 0;
}
.me-hero .me-name { font-size: 19px; font-weight: 700; color: #fff; }
.me-hero .me-shop { font-size: 13px; color: rgba(255, 255, 255, .85); margin-top: 5px; }
.me-hero .me-badge {
  margin-left: auto;
  align-self: flex-start;
  font-size: 11px;
  color: rgba(255, 255, 255, .9);
  background: rgba(255, 255, 255, .18);
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 999px;
  padding: 3px 10px;
  white-space: nowrap;
}

/* 移动端「我的」页：业务管理宫格入口 */
.me-grid2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 6px;
}
.me-cell {
  background: #fbfcfe;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 14px 12px;
  cursor: pointer;
  transition: transform .12s;
}
.me-cell:active { transform: scale(.97); }
.me-cell .me-cell-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 8px;
}
.me-cell .me-cell-label { font-size: 14px; font-weight: 600; }
.me-cell .me-cell-desc { font-size: 11.5px; color: var(--text-3); margin-top: 2px; }

/* 我的页统计卡可点击（移动端） */
.m-stat-2x2 .stat-card[data-act] { cursor: pointer; }
.m-stat-2x2 .stat-card[data-act]:active { transform: scale(.97); }
.m-stat-2x2 .stat-card .extra { margin-top: 2px; }

/* ===== 移动端适配 ===== */
@media (max-width: 720px) {
  .desktop-only { display: none !important; }
  .mobile-only { display: block; }
  .content { padding: 12px 14px 16px; }
  .topbar { padding: 0 14px; height: 50px; }
  .topbar .sync-btn { display: none; }
  .topbar .user .name { display: none; }
  .topbar .right { gap: 8px; }
  .stock-head .info { margin-left: 0; width: 100%; justify-content: space-between; }
  /* 扫码页优化 */
  .scan-box { padding: 22px 14px; }
  .scan-input { font-size: 18px; padding: 16px 10px; }
  .scan-hint { font-size: 13px; }
  .chip { padding: 7px 12px; font-size: 13px; }
  .pending-card { padding: 12px; }
  .pending-edit { grid-template-columns: 1fr 1fr; }
  .pending-edit > div:first-child { grid-column: 1 / -1; }
  .pending-edit .static { padding: 4px 0; }
  .btn.block { padding: 14px 16px; font-size: 15px; }
  .btn.sm { padding: 7px 12px; font-size: 13px; }
  .card { padding: 14px; }
  .card h3 { font-size: 15px; }
  .stat-card { padding: 12px 14px; }
  .stat-card .value.sm { font-size: 18px; }
}

/* ===== 移动端 出入库/库存 新布局（手机 ERP 风格） ===== */
/* 等宽分段式 Tab */
.m-tabs {
  display: flex;
  background: #fff;
  border-radius: 12px;
  padding: 4px;
  gap: 4px;
  box-shadow: var(--shadow);
}
.m-tab {
  flex: 1;
  text-align: center;
  padding: 9px 4px;
  border-radius: 9px;
  font-size: 13.5px;
  color: var(--text-2);
  cursor: pointer;
  user-select: none;
  transition: all .15s;
  white-space: nowrap;
}
.m-tab.active { background: var(--primary); color: #fff; font-weight: 600; }

/* 横滑 chips */
.m-chips-scroll {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 2px 2px 6px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.m-chips-scroll::-webkit-scrollbar { display: none; }
.m-chips-scroll .chip { flex-shrink: 0; }

/* 入库：尺码明细行卡片 */
.m-inrow {
  background: #f8fafc;
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 8px;
}
.m-inrow-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.m-inrow-foot { display: flex; gap: 8px; margin-top: 8px; align-items: center; }
.m-inrow-foot select { flex: 1; }
.m-inrow-foot .m-inrow-del { flex-shrink: 0; }
.m-inrow input, .m-inrow select { min-height: 38px; font-size: 14px; }

/* 入库汇总条 */
.m-in-summary {
  display: flex;
  background: #f8fafc;
  border-radius: 10px;
  padding: 10px 4px;
  margin: 12px 0;
}
.m-in-summary > div { flex: 1; text-align: center; }
.m-in-summary b { font-size: 15px; display: block; margin-top: 2px; font-variant-numeric: tabular-nums; }

/* 全宽提交大按钮 */
.m-submit { padding: 14px 16px; font-size: 15.5px; border-radius: 10px; }

/* 2×2 统计 */
.m-stat-2x2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

/* 移动端顶栏返回按钮（仅二级页面显示） */
.m-back-btn {
  display: none;
  padding: 4px 12px;
  font-size: 13.5px;
  border-radius: 999px;
  flex-shrink: 0;
}
@media (max-width: 720px) {
  .m-back-btn { display: inline-flex; align-items: center; gap: 2px; }
}

/* 移动端按钮 2×2 网格（对账页顶部操作区） */
.m-btn-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-btn-grid2 .btn { margin: 0 !important; justify-content: center; }
.m-btn-grid2 .btn.block2 { grid-column: 1 / -1; }

/* 移动端横向滚动 Tab 栏（订单状态 / 管理页子模块） */
.m-tab-bar {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 2px 2px 6px;
  margin-bottom: 12px;
  -webkit-overflow-scrolling: touch;
}
.m-tab-bar::-webkit-scrollbar { display: none; }
.m-tab-bar .chip { flex-shrink: 0; }
.m-tab-bar .chip .cnt { font-size: 11px; opacity: .75; }

/* 移动端表格卡片化行（采购历史 / 搜索结果 / 热销榜等宽表格） */
.m-table-card { display: none; }
@media (max-width: 720px) {
  .m-table-card { display: block; }
  .m-table-card .table-wrap { display: none; }
}
.m-tcard {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px 14px;
  margin-bottom: 8px;
  box-shadow: var(--shadow);
}
.m-tcard .top { display: flex; align-items: center; gap: 8px; }
.m-tcard .top .t { flex: 1; min-width: 0; font-size: 14px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-tcard .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 10px; }
.m-tcard .grid.g2 { grid-template-columns: repeat(2, 1fr); }
.m-tcard .cell { background: #f7f9fc; border-radius: 8px; padding: 6px 10px; }
.m-tcard .cell .k { font-size: 11px; color: var(--text-3); }
.m-tcard .cell .v { font-size: 13.5px; font-weight: 600; margin-top: 1px; font-variant-numeric: tabular-nums; }
.m-tcard .acts { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.m-tcard .acts .btn { margin: 0; }

/* 通用列表行（入库历史 / 今日明细） */
.m-list-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 2px;
  border-bottom: 1px solid #f0f2f6;
}
.m-list-item:last-child { border-bottom: none; }
.m-li-main { flex: 1; min-width: 0; }
.m-li-title {
  font-size: 14px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-li-sub { font-size: 12px; color: var(--text-3); margin-top: 3px; }
.m-li-val { text-align: right; flex-shrink: 0; }
.m-li-val .v { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.m-li-val .r { font-size: 11.5px; color: var(--text-3); margin-top: 2px; }

/* 出库候选卡片 */
.m-stock-item {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px 14px;
  margin-bottom: 8px;
  cursor: pointer;
  box-shadow: var(--shadow);
  transition: transform .12s;
}
.m-stock-item:active { transform: scale(.98); }
.m-stock-main { flex: 1; min-width: 0; }
.m-stock-name {
  font-size: 14.5px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-stock-code { font-size: 12px; color: var(--text-3); margin-top: 3px; }
.stock-code-copy {
  margin: 0 5px; padding: 1px 7px; border: 1px solid rgba(59, 88, 135, .18);
  border-radius: 999px; background: rgba(236, 242, 250, .84); color: #405b7d;
  font: inherit; font-size: 11px; line-height: 18px; cursor: pointer; vertical-align: 1px;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}
.stock-code-copy:hover { background: #e3ebf7; color: #13243e; }
.stock-code-copy:active { transform: scale(.95); }
.m-stock-right { text-align: right; flex-shrink: 0; }
.m-stock-num { font-size: 13px; }
.m-stock-num b { font-size: 17px; }
.m-stock-val { font-size: 11.5px; color: var(--text-3); margin-top: 2px; }
.m-stock-out { font-size: 12px; color: var(--primary); margin-top: 4px; font-weight: 600; }

/* 库存管理卡片 */
.m-stock-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
  box-shadow: var(--shadow);
}
.m-stock-head { display: flex; align-items: center; gap: 10px; padding: 12px 14px; cursor: pointer; }
.m-stock-chev { color: var(--text-3); font-size: 10px; flex-shrink: 0; }
.m-stock-stats {
  display: flex;
  border-top: 1px dashed var(--border);
  padding: 10px 14px;
  background: #fbfcfe;
}
.m-stock-stats .item { flex: 1; text-align: center; }
.m-stock-stats .item .v { font-weight: 700; font-size: 15px; font-variant-numeric: tabular-nums; }
.m-stock-stats .item .l { font-size: 11px; color: var(--text-3); margin-top: 2px; }
.m-stock-body { padding: 12px 14px; border-top: 1px dashed var(--border); background: #fbfcfe; }
.m-stock-body, .stock-body {
  transform-origin: top center;
  animation: stock-detail-open .22s cubic-bezier(.22,.75,.24,1) both;
}
@keyframes stock-detail-open {
  from { opacity: 0; transform: translateY(-5px) scaleY(.97); }
  to { opacity: 1; transform: translateY(0) scaleY(1); }
}
.m-stock-body .size-grid { margin-bottom: 10px; }
.m-stock-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.m-stock-actions .btn { width: 100%; }
.m-stock-days { font-size: 11px; color: var(--text-3); margin-top: 10px; text-align: right; }

/* 移动端输入控件加大触控 */
@media (max-width: 720px) {
  .m-inrow input, .m-inrow select { min-height: 40px; }
  .m-in-summary b { font-size: 16px; }
  .m-stock-actions .btn { padding: 9px 6px; font-size: 13px; }
  .m-tab { padding: 10px 4px; font-size: 14px; }
}

/* ===== 摄像头扫码 ===== */
/* 输入框 + 摄像头按钮 并排 */
.scan-input-row { display: flex; align-items: stretch; gap: 8px; }
.scan-input-row .scan-input { flex: 1; }
.scan-cam-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 52px; padding: 0 14px;
  background: var(--primary-light); color: var(--primary);
  border: 2px solid var(--primary); border-radius: 10px;
  flex-shrink: 0; transition: background .15s;
}
.scan-cam-btn:active { background: var(--primary); color: #fff; }
.scan-cam-btn svg { display: block; }

/* 全屏扫码遮罩 */
.cam-mask {
  position: fixed; inset: 0; z-index: 9999;
  background: #000;
  display: flex; flex-direction: column;
  color: #fff;
}
.cam-bar {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 14px; border-bottom: 1px solid rgba(255,255,255,.08);
}
.cam-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; border: none; border-radius: 50%;
  background: rgba(255,255,255,.12); color: #fff;
  flex-shrink: 0;
}
.cam-btn:active { background: rgba(255,255,255,.22); }
.cam-title { flex: 1; font-size: 16px; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.cam-mode-switch { display:flex; padding:3px; border:1px solid rgba(255,255,255,.1); border-radius:999px; background:rgba(255,255,255,.06); }
.cam-mode-switch button { min-width:42px; padding:5px 8px; border:0; border-radius:999px; color:#8fa4a7; background:transparent; font-size:11px; }
.cam-mode-switch button.active { color:#09201d; background:#7ce3d5; box-shadow:0 4px 12px rgba(48,211,190,.22); }
.cam-cont {
  display: flex; align-items: center; gap: 6px;
  font-size: 13px; color: #cfd3dc; cursor: pointer;
  background: rgba(255,255,255,.08); padding: 6px 10px; border-radius: 20px;
  flex-shrink: 0;
}
.cam-cont input { width: 15px; height: 15px; accent-color: #1677ff; cursor: pointer; }
.cam-stage { position: relative; flex: 1; overflow: hidden; background: #0d0d0f; }
.cam-stage video { width: 100%; height: 100%; object-fit: cover; display: block; }
.cam-trigger {
  position:absolute; z-index:4; left:50%; bottom:22px;
  display:grid; grid-template-columns:42px auto; grid-template-rows:auto auto;
  align-items:center; column-gap:10px; min-width:178px; padding:10px 17px 10px 12px;
  border:1px solid rgba(146,241,226,.42); border-radius:999px;
  color:#eafffb; background:rgba(8,31,38,.78);
  box-shadow:0 12px 34px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.08);
  transform:translateX(-50%); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
}
.cam-trigger span { grid-row:1 / 3; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; color:#08231f; background:#79e5d5; }
.cam-trigger b { align-self:end; font-size:14px; line-height:1.2; text-align:left; }
.cam-trigger small { align-self:start; margin-top:3px; color:#9db7b5; font-size:10px; text-align:left; }
.cam-trigger.armed { border-color:#8cfff0; background:rgba(15,77,70,.9); box-shadow:0 0 0 5px rgba(103,232,215,.14),0 12px 34px rgba(0,0,0,.36); }
.cam-trigger:active { transform:translateX(-50%) scale(.97); }
.cam-trigger.hidden { display:none !important; }
.cam-frame {
  position: absolute; left: 50%; top: 50%;
  width: 78%; max-width: 460px; height: 34%;
  transform: translate(-50%, -50%);
  border: 1.5px dashed rgba(255,255,255,.35);
  border-radius: 14px;
  pointer-events: none;
}
.cam-corner {
  position: absolute; width: 26px; height: 26px;
  border: 3.5px solid #fff; border-radius: 3px;
  filter: drop-shadow(0 0 5px rgba(22,119,255,.9));
}
.cam-corner.tl { top: -2px; left: -2px; border-right: none; border-bottom: none; }
.cam-corner.tr { top: -2px; right: -2px; border-left: none; border-bottom: none; }
.cam-corner.bl { bottom: -2px; left: -2px; border-right: none; border-top: none; }
.cam-corner.br { bottom: -2px; right: -2px; border-left: none; border-top: none; }
.cam-msg {
  text-align: center; padding: 12px 18px; font-size: 14px; color: #8ab4f8;
  min-height: 20px; line-height: 1.6; word-break: break-all;
}
.cam-msg.err { color: #ff7875; white-space: pre-line; }
.cam-session {
  margin:0 14px 3px; padding:10px 12px 8px; border:1px solid rgba(126,225,211,.18);
  border-radius:16px; background:linear-gradient(145deg,rgba(18,41,48,.96),rgba(9,25,31,.96));
  box-shadow:0 10px 28px rgba(0,0,0,.22);
}
.cam-session-summary { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:8px; }
.cam-session-summary > span { display:flex; align-items:baseline; gap:4px; padding:8px 10px; border-radius:11px; background:rgba(255,255,255,.055); }
.cam-session-summary small { flex:1; color:#8fa8aa; font-size:11px; }
.cam-session-summary b { color:#7ce3d5; font-size:22px; line-height:1; }
.cam-session-summary i { color:#91a6a8; font-size:10px; font-style:normal; }
.cam-session-title { display:flex; align-items:center; justify-content:space-between; padding:1px 2px 6px; }
.cam-session-title b { color:#dcebea; font-size:12px; }
.cam-session-title small { color:#70878a; font-size:10px; }
.cam-session-list { max-height:116px; overflow:auto; }
.cam-session-list > p { margin:8px 0 10px; color:#61777a; font-size:11px; text-align:center; }
.cam-session-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:7px 3px; border-top:1px solid rgba(255,255,255,.06); }
.cam-session-row > span { min-width:0; overflow:hidden; color:#dce9e8; font-size:12px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }
.cam-session-row small { margin-left:8px; color:#7f9799; font-size:10px; font-weight:400; }
.cam-session-row > b { flex:0 0 auto; min-width:34px; color:#83e4d7; font-size:14px; text-align:right; }
.cam-hint { text-align: center; padding: 4px 16px 2px; font-size: 12.5px; color: #8f959e; }
.cam-foot { padding: 12px 16px 28px; display: flex; justify-content: center; }
.cam-foot .btn {
  min-width: 200px; padding: 12px; font-size: 15px;
  background: rgba(255,255,255,.12); color: #fff;
  border: 1px solid rgba(255,255,255,.22); border-radius: 12px;
}
.cam-foot .btn:active { background: rgba(255,255,255,.2); }

/* 手机端摄像头按钮加大 */
@media (max-width: 720px) {
  .scan-cam-btn { min-width: 58px; }
  .cam-cont { font-size: 14px; padding: 8px 12px; }
  .cam-foot { padding-bottom: 40px; }
  .cam-frame { height:30%; }
  .cam-trigger { bottom:18px; }
  .cam-msg { padding:8px 16px 6px; font-size:12px; }
  .cam-session { margin-inline:10px; }
}

/* ===== 得物库存同步页面 ===== */
.du-summary {
  font-size: 13px;
  color: var(--text-1);
  margin: 12px 0 10px;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.du-preview .form-actions { gap: 10px; }
.du-product-preview { display:flex; align-items:center; gap:9px; min-width:150px; }
.du-preview-thumb {
  width:38px; height:38px; flex:0 0 38px; display:inline-flex; align-items:center; justify-content:center;
  overflow:hidden; border:1px solid var(--border); border-radius:10px; background:var(--bg-2); color:var(--text-3);
}
.du-preview-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.du-preview .table-wrap{max-height:min(52vh,560px)!important;border-radius:14px!important;border-color:#dce8e5!important;background:#fff}
.du-preview .table{min-width:1080px}
.du-preview .table th{position:sticky;top:0;z-index:2;background:#edf5f3;color:#637a73;font-size:10px;letter-spacing:.35px}
.du-preview .table td{padding:7px 6px;vertical-align:middle}
.du-code-cell{min-width:0;flex:1}.du-cal-input{height:36px!important;min-width:0;padding:6px 9px!important;border-color:#d5e2df!important;border-radius:9px!important;background:#fbfdfc!important;font-size:11px!important}
.du-cal-input.code{width:170px;font-weight:750;color:#183b32}.du-cal-input.brand{width:158px}.du-cal-input.brand.is-auto{color:#167762;background:#eef9f6!important}.du-cal-input.name{width:260px}.du-cal-input.size{width:82px}.du-cal-input.qty{width:66px;text-align:center}.du-cal-input.cost{width:92px;text-align:right;font-weight:750}
.du-calibrate-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 8px;padding:0 2px}.du-calibrate-head>div{display:flex;align-items:center;gap:9px}.du-calibrate-head span,.du-calibrate-head em{color:#84938f;font-size:10px;font-style:normal}.du-calibrate-head b{color:#19372f;font-size:12px}
.du-row-actions{display:flex;gap:8px;margin-top:4px}.du-row-actions button{padding:0;border:0;background:transparent;color:#52756c;font-size:9px;cursor:pointer}.du-row-actions button.danger{color:#b65f64}
html.eye-mode .du-preview .table-wrap{border-color:#28434a!important;background:#0d1c25}html.eye-mode .du-preview .table th{background:#152b33;color:#8ca8a6}html.eye-mode .du-cal-input{border-color:#2b4650!important;color:#d9e9e6;background:#0c1d25!important}html.eye-mode .du-cal-input.brand.is-auto{color:#75dfc7;background:#12332f!important}html.eye-mode .du-calibrate-head b{color:#dcebe8}
@media(max-width:720px){.modal.rec-upload-workbench{width:calc(100vw - 16px);height:auto;max-height:92dvh}.modal.rec-upload-workbench .rec-editor-wrap{max-height:42dvh}.du-preview .table{min-width:1020px}.du-preview .table-wrap{max-height:48dvh!important}.du-calibrate-head{align-items:flex-start;flex-direction:column;gap:3px}.du-cal-input.code{width:145px}.du-cal-input.brand{width:130px}}
.brand-autocomplete-menu{position:fixed;z-index:2600;overflow:hidden;border:1px solid #cfded9;border-radius:13px;background:rgba(255,255,255,.98);box-shadow:0 18px 44px rgba(27,56,48,.18);backdrop-filter:blur(14px);animation:popIn .14s ease}.brand-autocomplete-head{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 11px;border-bottom:1px solid #e6eeeb;background:#f4f8f7}.brand-autocomplete-head b{color:#23463d;font-size:10px}.brand-autocomplete-head span{overflow:hidden;color:#84938e;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.brand-autocomplete-options{max-height:232px;overflow:auto;padding:5px}.brand-autocomplete-options button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:0;border-radius:8px;color:#182f29;background:transparent;font:inherit;font-size:11px;font-weight:720;text-align:left;cursor:pointer}.brand-autocomplete-options button:hover,.brand-autocomplete-options button:focus{outline:0;color:#126c58;background:#eaf6f2}.brand-autocomplete-options small{color:#91a19c;font-size:8px;font-weight:500}.brand-autocomplete-empty{padding:14px 10px;color:#7d8e88;font-size:10px;line-height:1.55}html.eye-mode .brand-autocomplete-menu{border-color:#2c4a4a;background:rgba(12,28,35,.98);box-shadow:0 20px 48px rgba(0,0,0,.42)}html.eye-mode .brand-autocomplete-head{border-color:#284244;background:#132c32}html.eye-mode .brand-autocomplete-head b{color:#cfe8e2}html.eye-mode .brand-autocomplete-options button{color:#c8dcda}html.eye-mode .brand-autocomplete-options button:hover{color:#79e0c8;background:#173b38}
@media(max-width:720px){.brand-autocomplete-menu{max-width:calc(100vw - 16px)}.brand-autocomplete-options button{min-height:42px;padding:11px 10px;font-size:12px}}
.brand-autocomplete-menu{z-index:9999}
.du-row-actions { display:flex; gap:8px; margin-top:3px; }
.du-row-actions button {
  padding:0; border:0; background:transparent; color:#536c8c; font-size:11px; cursor:pointer;
}
.du-row-actions button:hover { color:#13243e; text-decoration:underline; }
.du-row-actions button.danger { color:#b85f67; }

/* 步骤指示器 */
.du-steps {
  display: flex; align-items: center; gap: 6px;
  margin-top: 14px; font-size: 13px; color: var(--text-2);
}
.du-step { display: flex; align-items: center; gap: 6px; }
.du-step.active { color: var(--primary); font-weight: 600; }
.du-step.done { color: #52c41a; }
.du-step-num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 20px; height: 20px; border-radius: 50%;
  background: var(--bg-2); color: var(--text-2); font-size: 12px; font-style: normal;
}
.du-step.active .du-step-num { background: var(--primary); color: #fff; }
.du-step.done .du-step-num { background: #52c41a; color: #fff; }
.du-step-line { flex: 1; height: 1px; background: var(--border); min-width: 20px; }

/* 上传区大卡片 */
.du-upload-card {
  border: 2px dashed var(--border);
  border-radius: 12px;
  padding: 28px 20px;
  text-align: center;
  background: var(--card-bg);
  transition: border-color .15s, background .15s;
  cursor: pointer;
}
.du-upload-card:hover { border-color: var(--primary); background: #f5faff; }
.du-upload-card.du-dragover { border-color: var(--primary); background: #e6f4ff; border-style: solid; }
.du-upload-card .icon-wrap {
  width: 56px; height: 56px; margin: 0 auto 12px;
  background: var(--primary-light); color: var(--primary);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
}
.du-upload-card h4 { margin: 0 0 6px; font-size: 16px; }
.du-upload-card p { margin: 0 0 16px; color: var(--text-2); font-size: 13px; }

/* ===== 货盘分析（views_pan） ===== */
.pan-breadcrumb {
  font-size: 12px; color: var(--green); font-weight: 600;
  display: inline-flex; align-items: center; gap: 4px;
  margin-bottom: 4px;
}
.pan-title {
  font-size: 22px; font-weight: 700; margin-bottom: 14px; color: var(--text);
}
.pan-filter { padding: 16px 18px 14px; }
.pan-filter h3 { margin-bottom: 12px; }
.pan-filter .pan-row {
  display: flex; gap: 10px; align-items: flex-end; flex-wrap: wrap;
}
.pan-filter .pan-field { display: flex; flex-direction: column; gap: 4px; min-width: 110px; flex: 1; }
.pan-filter .pan-field label { font-size: 12px; color: var(--text-3); }
.pan-filter .pan-row > .input,
.pan-filter .pan-row > select.input { padding: 7px 10px; font-size: 13px; }
.pan-filter .pan-sep { color: var(--text-3); padding: 0 4px; align-self: center; }

.pan-kpi {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px;
  margin-bottom: 16px;
}
.pan-kpi-card { padding: 12px 14px; }
.pan-kpi-card .label { font-size: 12px; }
.pan-kpi-card .pan-kpi-val { font-size: 19px; font-weight: 700; margin-top: 6px; }
.pan-kpi-val.primary { color: var(--primary); }
.pan-kpi-val.orange  { color: var(--orange); }
.pan-kpi-val.green   { color: var(--green); }
.pan-kpi-val.purple  { color: var(--purple); }
.pan-kpi-val.red     { color: var(--red); }
.pan-kpi-val.cyan    { color: var(--teal); }
@media (max-width: 1100px) { .pan-kpi { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 720px)  { .pan-kpi { grid-template-columns: repeat(2, 1fr); gap: 8px; } }

.pan-grid {
  display: grid; grid-template-columns: 1fr 1.4fr; gap: 14px;
}
@media (max-width: 1100px) { .pan-grid { grid-template-columns: 1fr; } }

.pan-table-wrap { overflow-x: auto; margin: -2px; padding: 2px; }
.pan-table {
  width: 100%; border-collapse: collapse; font-size: 12.5px;
}
.pan-table th {
  text-align: left; padding: 8px 10px; font-weight: 600; color: var(--text-2);
  background: #fafbfd; border-bottom: 1px solid var(--border);
  font-size: 12px; white-space: nowrap;
}
.pan-table th.num { text-align: right; }
.pan-table td { padding: 8px 10px; border-bottom: 1px solid #f1f3f7; vertical-align: middle; }
.pan-table td.num { text-align: right; font-variant-numeric: tabular-nums; }
.pan-table tr:hover td { background: #fafcff; }
.pan-table .muted { color: var(--text-3); }
.pan-table .small { font-size: 11.5px; }

.pan-tag {
  display: inline-block; padding: 2px 8px; border-radius: 11px;
  background: #eef3ff; color: var(--primary); font-size: 11.5px;
  font-weight: 500; line-height: 1.5;
}

.pan-pct {
  display: flex; align-items: center; gap: 6px; min-width: 70px; justify-content: flex-end;
  position: relative;
}
.pan-pct .bar {
  height: 6px; border-radius: 3px;
  background: linear-gradient(90deg, var(--primary), #69b1ff);
  min-width: 2px;
}
.pan-pct span { font-variant-numeric: tabular-nums; }

.pan-table .aged-red    { color: var(--red); font-weight: 600; }
.pan-table .aged-orange { color: var(--orange); font-weight: 600; }
.pan-table .aged-yellow { color: #d48806; font-weight: 500; }

@media (max-width: 720px) {
  .pan-title { font-size: 18px; }
  .pan-filter { padding: 12px 12px 10px; }
  .pan-filter .pan-row { gap: 6px; }
  .pan-filter .pan-field { min-width: 0; }
  .pan-table th, .pan-table td { padding: 6px 6px; font-size: 12px; }
}

/* 提示条 */
.alert-warn {
  background: #fff7e6; color: #d46b08; border: 1px solid #ffd591;
  border-radius: 8px; padding: 10px 12px; font-size: 13px; line-height: 1.6;
}
.alert-warn svg { vertical-align: -2px; margin-right: 4px; }

/* 末尾覆盖：早期组件样式中使用了固定浅色，深色主题需以此为准 */
html:not(.eye-mode) .scan-box { background:#151b2d; border-color:#3b4664; }
html:not(.eye-mode) .scan-input { color:#eef2ff; }
html:not(.eye-mode) .scan-input::placeholder { color:#65718d; }
html:not(.eye-mode) .cmp-picker { background:#101628; border-color:#303b59; }
html:not(.eye-mode) .cmp-table th { background:#101628; color:#aab5ce; border-color:#2c3650; }
html:not(.eye-mode) .cmp-table th.hl, html:not(.eye-mode) .cmp-table td.hl { background:#1a2340; color:#bdc7ff; }
html:not(.eye-mode) .cmp-table td { color:#d8e0f0; border-color:#283149; }
html:not(.eye-mode) .cmp-table td.hl b { color:#f1f4ff; }
html:not(.eye-mode) .pan-table th { background:#101628; color:#9eabc5; border-bottom-color:#303a56; }
html:not(.eye-mode) .pan-table td { color:#dce3f2; border-bottom-color:#29334d; }
html:not(.eye-mode) .pan-table tr:hover td { background:#1a2238; }
html:not(.eye-mode) .pan-tag { background:#202a4a; color:#b6c1ff; }
html:not(.eye-mode) .alert-warn { background:rgba(217,119,6,.12); color:#fbbf24; border-color:rgba(251,191,36,.34); }
html.eye-mode .scan-box { background:#303b38; border-color:#52635b; }
html.eye-mode .scan-input { color:#eef1e8; }
html.eye-mode .cmp-picker { background:#293431; border-color:#4b5b53; }
html.eye-mode .cmp-table th, html.eye-mode .pan-table th { background:#293431; color:#b9c6bd; border-color:#4b5b53; }
html.eye-mode .cmp-table th.hl, html.eye-mode .cmp-table td.hl { background:#384840; color:#d1dfd6; }
html.eye-mode .cmp-table td, html.eye-mode .pan-table td { color:#e0e8df; border-color:#46554f; }
html.eye-mode .pan-table tr:hover td { background:#36433f; }
html.eye-mode .pan-tag { background:#3c5148; color:#cae3d6; }

/* 明亮专业模式（默认）：恢复高可读性的白色工作台 */
html.light-mode {
  --primary: #111827;
  --primary-light: #f1f3f5;
  --primary-dark: #030712;
  --sidebar-bg: #121426;
  --sidebar-text: #aab4c8;
  --sidebar-active: #7c83ff;
  --bg: #f5f6fb;
  --card: #ffffff;
  --border: #e4e7f0;
  --text: #1e293b;
  --text-2: #596579;
  --text-3: #8490a4;
  --shadow: 0 3px 12px rgba(30,35,90,.045), 0 16px 38px rgba(30,35,90,.045);
}
html.light-mode body { background:var(--bg); color:var(--text); }
html.light-mode body::before { background:linear-gradient(180deg, rgba(255,255,255,.7), transparent 220px); }
html.light-mode .topbar { background:rgba(255,255,255,.82); border-bottom-color:#e4e7f0; }
html.light-mode .topbar .page-title { color:#1e293b; }
html.light-mode .topbar .user:hover { background:#f4f6fb; }
html.light-mode .card, html.light-mode .stat-card, html.light-mode .stock-row, html.light-mode .m-stock-card, html.light-mode .m-stock-item { background:rgba(255,255,255,.96); border-color:#e4e7f0; box-shadow:var(--shadow); }
html.light-mode .card h3, html.light-mode .inventory-list-title h3, html.light-mode .stat-card .value { color:#1e293b; }
html.light-mode .stat-card .label { color:#596579; }
html.light-mode .stat-card .extra, html.light-mode .muted { color:#8490a4; }
html.light-mode .btn { background:#fff; border-color:#dce1ee; color:#344056; }
html.light-mode .btn:hover { color:#4f46e5; border-color:#a5b4fc; background:#f8f9ff; }
html.light-mode .btn:hover { color:#111827; border-color:#475569; background:#f6f7f8; }
html.light-mode .btn.primary, html.light-mode .inventory-actions .stock-add { color:#fff; background:#111827; border-color:#111827; box-shadow:none; }
html.light-mode .btn.primary:hover, html.light-mode .inventory-actions .stock-add:hover { color:#fff; background:#000; border-color:#000; }
html.light-mode .input, html.light-mode select.input, html.light-mode textarea.input, html.light-mode .form-item input, html.light-mode .form-item select { background:#fff; border-color:#dce1ee; color:#243047; }
html.light-mode .table thead th, html.light-mode .cmp-table th, html.light-mode .pan-table th { background:#f7f8fc; color:#66728a; border-color:#e4e7f0; }
html.light-mode .table td, html.light-mode .cmp-table td, html.light-mode .pan-table td { color:#344056; border-color:#edf0f5; }
html.light-mode .table tbody tr:hover td, html.light-mode .pan-table tr:hover td { background:#f8f9ff; }
html.light-mode .stock-body, html.light-mode .m-stock-body, html.light-mode .m-stock-stats, html.light-mode .m-tabs, html.light-mode .bottom-nav { background:#fbfcff; border-color:#e4e7f0; }
html.light-mode .size-cell { background:#fff; border-color:#dfe4ef; }
html.light-mode .inventory-workbench { background:#fff; border-color:#e4e7ec; }
html.light-mode .inventory-intro h2, html.light-mode .inventory-list-title h3 { color:#111827; }
html.light-mode .inventory-intro p { color:#64748b; }
html.light-mode .section-kicker { color:#475569; }
html.light-mode .inventory-metrics b, html.light-mode .inventory-list-card .stock-head .info .item .v { color:#25275b; }
html.light-mode .inventory-list-card > .toolbar, html.light-mode .order-list-card > .toolbar, html.light-mode .report-control > .toolbar, html.light-mode .reconcile-intro > .toolbar { background:#fafbff; border-color:#eceef7; }
html.light-mode .ops-todo { background:rgba(255,255,255,.95); border-color:#e4e7f0; color:#1e293b; box-shadow:var(--shadow); }
html.light-mode .ops-todo:hover { background:#fff; border-color:#94a3b8; }
html.light-mode .ops-todo small { color:#8490a4; }
html.light-mode .dashboard-hero { background:linear-gradient(118deg, #111827, #1f2937 58%, #334155); box-shadow:0 14px 30px rgba(15,23,42,.16); }
html.light-mode .cmp-picker { background:#f8fafc; border-color:#e2e8f0; }
html.light-mode .cmp-table th.hl, html.light-mode .cmp-table td.hl { background:#f1f5f9; color:#111827; }
html.light-mode .cmp-table td.hl b { color:#1e293b; }
html.light-mode .scan-box { background:#fff; border-color:#7381ff; }
html.light-mode .scan-input { color:#1e293b; }
html.light-mode .scan-input::placeholder { color:#c7cfdf; }
html.light-mode .pan-tag { background:#f1f5f9; color:#334155; }
html.light-mode .reconcile-intro { background:linear-gradient(135deg, #f0f5ff 0%, #fff 100%) !important; border-color:#b3d7ff !important; }
html.light-mode .reconcile-intro h3 { color:#1e3a8a; }
html.light-mode .theme-switch { background:#171d31; border-color:#323c58; color:#aab4c8; }
html.light-mode .theme-switch:hover { color:#fff; background:#202942; }
html.light-mode .chip.active { background:#111827; border-color:#111827; color:#fff; box-shadow:none; }
html.light-mode .chip:hover { color:#111827; border-color:#64748b; background:#f8fafc; }
html.light-mode .inventory-list-card > .toolbar, html.light-mode .order-list-card > .toolbar, html.light-mode .report-control > .toolbar, html.light-mode .reconcile-intro > .toolbar { background:#fafafa; border-color:#e5e7eb; }
html.light-mode .inventory-list-card .stock-row:hover { border-color:#94a3b8; box-shadow:0 8px 20px rgba(15,23,42,.06); }

/* 库存页：突出需要每日查看的库存总量、库存金额及单款水位 */
html.light-mode .inventory-metrics > div { min-width:152px; }
html.light-mode .inventory-metrics .inventory-primary-metric b { font-size:27px; line-height:1.05; letter-spacing:-.6px; color:#111827; }
html.light-mode .inventory-metrics .inventory-primary-metric b em { font-style:normal; font-size:13px; font-weight:600; color:#64748b; letter-spacing:0; }
html.light-mode .inventory-metrics .inventory-primary-metric span { font-size:12px; color:#64748b; }
html.light-mode .inventory-metrics .inventory-primary-metric small { margin-top:5px; font-size:11px; }
html.light-mode .inventory-list-card .stock-head .info { gap:34px; min-width:220px; }
html.light-mode .inventory-list-card .stock-head .info .item .v { font-size:20px; line-height:1.1; font-weight:750; color:#111827; }
html.light-mode .inventory-list-card .stock-head .info .item .l { margin-top:4px; font-size:11.5px; color:#64748b; }

/* 库存列表：品牌统一为中性标识，突出真正需要判断的货值与库龄 */
html.light-mode .inventory-list-card .stock-head .brand-tag,
html.light-mode .m-stock-head .brand-tag {
  min-width:46px; text-align:center; background:#111827; color:#fff;
  border-radius:8px; padding:6px 7px; font-size:11px; letter-spacing:.15px;
  box-shadow:none;
}
html.light-mode .inventory-list-card .stock-row { overflow:hidden; }
html.light-mode .inventory-list-card .stock-head { min-height:72px; }
html.light-mode .inventory-list-card .stock-head .name { color:#111827; font-weight:700; }
html.light-mode .inventory-list-card .stock-head .code { margin-top:4px; color:#748095; }
html.light-mode .inventory-list-card .stock-head .info .item { min-width:62px; }
html.light-mode .inventory-list-card .stock-head .info .item:not(:first-child) { border-left:1px solid #edf0f4; padding-left:20px; }
html.light-mode .inventory-list-card .stock-body { background:#fafbfc; border-top:1px solid #edf0f4; }
html.light-mode .inventory-list-card .size-cell { border-radius:9px; }
html.light-mode .inventory-list-card .size-cell:hover { border-color:#64748b; box-shadow:none; }
@media (max-width:720px) {
  html.light-mode .m-stock-head .brand-tag { min-width:40px; padding:5px 6px; border-radius:7px; }
}

/* 全站下拉选择：明亮模式统一使用系统浅色菜单，覆盖旧深色 option 残留 */
html.light-mode select,
html.light-mode select.input,
html.light-mode .form-item select {
  color-scheme:light;
  background-color:#fff;
  color:#1e293b;
  border-color:#d8dee8;
}
html.light-mode select:hover,
html.light-mode select.input:hover,
html.light-mode .form-item select:hover { border-color:#94a3b8; }
html.light-mode select:focus,
html.light-mode select.input:focus,
html.light-mode .form-item select:focus { border-color:#111827; box-shadow:0 0 0 3px rgba(15,23,42,.08); }
html.light-mode select option { background:#fff; color:#1e293b; }
html.light-mode select option:checked { background:#e9edf3; color:#111827; }

/* 原生 select 保持统一输入框外观；高频库存筛选则使用下方网页内选择器，避免手机系统弹窗风格跳脱。 */
html.light-mode select, html.light-mode select.input { appearance:none; -webkit-appearance:none; padding-right:32px; background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%); background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%; background-size:5px 5px,5px 5px; background-repeat:no-repeat; }
.stock-filter-row { display:flex; gap:8px; margin-bottom:10px; }
.stock-filter-picker { position:relative; width:120px; z-index:24; }
.stock-filter-picker.is-mobile { flex:1; width:auto; }
.stock-filter-picker-trigger { display:flex; width:100%; min-height:38px; align-items:center; justify-content:space-between; gap:8px; padding:0 11px; border:1px solid #d8dee8; border-radius:9px; background:#fff; color:#334155; font:inherit; font-size:13px; cursor:pointer; transition:.15s ease; }
.stock-filter-picker-trigger:hover, .stock-filter-picker.open .stock-filter-picker-trigger { border-color:#111827; box-shadow:0 0 0 3px rgba(15,23,42,.07); color:#111827; }
.stock-filter-picker-trigger i { color:#7c8798; font-size:15px; font-style:normal; line-height:1; }
.stock-filter-picker-popover { position:absolute; top:calc(100% + 7px); right:0; left:0; overflow:hidden; border:1px solid #dbe3ee; border-radius:12px; background:#fff; box-shadow:0 18px 36px rgba(15,23,42,.15); z-index:100; }
.stock-filter-picker-popover[hidden] { display:none; }
.stock-filter-picker-head { padding:10px 12px; border-bottom:1px solid #edf0f4; color:#7b8798; font-size:11px; font-weight:700; }
.stock-filter-picker-options { padding:6px; }
.stock-filter-picker-option { display:flex; width:100%; min-height:35px; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border:0; border-radius:8px; background:#fff; color:#334155; font:inherit; font-size:12px; text-align:left; cursor:pointer; }
.stock-filter-picker-option:hover { background:#f1f5f9; color:#111827; }.stock-filter-picker-option.active { background:#111827; color:#fff; }.stock-filter-picker-option i { font-style:normal; font-weight:700; }

/* 通用网页内选择器：用于货盘分析、物料采购等，避开手机系统原生下拉样式。 */
.app-select-picker { position:relative; z-index:24; min-width:0; }
.app-select-trigger { display:flex; width:100%; min-height:38px; align-items:center; justify-content:space-between; gap:8px; padding:0 11px; border:1px solid #d8dee8; border-radius:9px; background:#fff; color:#334155; font:inherit; font-size:13px; text-align:left; cursor:pointer; transition:.15s ease; }
.app-select-trigger span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.app-select-trigger i { color:#7c8798; font-size:15px; font-style:normal; }
.app-select-trigger:hover, .app-select-picker.open .app-select-trigger { border-color:#111827; box-shadow:0 0 0 3px rgba(15,23,42,.07); color:#111827; }
.app-select-popover { position:absolute; top:calc(100% + 7px); right:0; left:0; overflow:hidden; border:1px solid #dbe3ee; border-radius:12px; background:#fff; box-shadow:0 18px 36px rgba(15,23,42,.15); z-index:100; }
.app-select-popover[hidden] { display:none; }.app-select-head { padding:10px 12px; border-bottom:1px solid #edf0f4; color:#7b8798; font-size:11px; font-weight:700; }.app-select-options { max-height:244px; overflow:auto; padding:6px; }
.app-select-option { display:flex; width:100%; min-height:35px; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border:0; border-radius:8px; background:#fff; color:#334155; font:inherit; font-size:12px; text-align:left; cursor:pointer; }.app-select-option:hover { background:#f1f5f9; color:#111827; }.app-select-option.active { background:#111827; color:#fff; }.app-select-option i { font-style:normal; font-weight:700; }

/* 桌面侧栏与白色工作区统一：浅灰导航底 + 黑色当前项 */
@media (min-width:721px) {
  html.light-mode .sidebar { background:#f8fafc; color:#64748b; border-right:1px solid #e5e9ef; box-shadow:none; }
  html.light-mode .sidebar .brand { border-bottom-color:#e5e9ef; }
  html.light-mode .sidebar .brand .logo { color:#111827; }
  html.light-mode .sidebar .brand em { color:#64748b; border-color:#d7dde6; }
  html.light-mode .sidebar .brand h2 { color:#111827; }
  html.light-mode .sidebar .brand span, html.light-mode .sidebar nav .nav-group { color:#94a3b8; }
  html.light-mode .sidebar nav a { color:#586579; border-left:0; margin:2px 12px; padding:10px 12px; }
  html.light-mode .sidebar nav a:hover { background:#eef1f5; color:#111827; }
  html.light-mode .sidebar nav a.active { background:#111827; color:#fff; border-left:0; box-shadow:0 4px 10px rgba(15,23,42,.12); }
  html.light-mode .sidebar .side-foot { border-top-color:#e5e9ef; color:#8490a4; }
  html.light-mode .theme-switch { background:#fff; border-color:#d8dee8; color:#475569; }
  html.light-mode .theme-switch:hover { background:#111827; border-color:#111827; color:#fff; }
}

/* 深色模式：所有基础容器、文字、表单与表格同步切换，避免出现同色文字 */
html.eye-mode { --bg:#101522; --card:#161d2d; --border:#2a354a; --text:#eef2f8; --text-2:#b2bdcf; --text-3:#7f8ba0; --primary:#91a4ff; --sidebar-bg:#0d1220; --sidebar-text:#aeb9cc; }
html.eye-mode body { background:#101522; color:#eef2f8; }
html.eye-mode body::before { background:radial-gradient(circle at 90% 0%,rgba(100,116,255,.12),transparent 30%); }
html.eye-mode .topbar { background:rgba(16,21,34,.94); border-color:#2a354a; }
html.eye-mode .topbar .page-title, html.eye-mode .topbar .user .name { color:#f5f7fb; }
html.eye-mode .sidebar { background:#0d1220; border-right:1px solid #253047; box-shadow:none; }
html.eye-mode .sidebar .brand { border-bottom-color:#253047; }
html.eye-mode .sidebar .brand h2 { color:#f5f7fb; }
html.eye-mode .sidebar nav a:hover { background:#1a2436; color:#fff; }
html.eye-mode .sidebar nav a.active { background:#27324a; color:#fff; border-left-color:#91a4ff; }
html.eye-mode .card, html.eye-mode .stat-card, html.eye-mode .stock-row, html.eye-mode .m-stock-card, html.eye-mode .m-stock-item { background:#161d2d; border-color:#2a354a; box-shadow:none; }
html.eye-mode .card h3, html.eye-mode .stat-card .value, html.eye-mode .stock-head .name, html.eye-mode .m-stock-name { color:#f1f5f9; }
html.eye-mode .input, html.eye-mode select, html.eye-mode select.input, html.eye-mode textarea.input, html.eye-mode .form-item input, html.eye-mode .form-item select { background:#111827; color:#eef2f8; border-color:#344158; color-scheme:dark; }
html.eye-mode select option { background:#111827; color:#eef2f8; }
html.eye-mode .table thead th, html.eye-mode .table tbody td { background:#161d2d; color:#d7dfeb; border-color:#2a354a; }
html.eye-mode .table tbody tr:hover td { background:#202a3d; }
html.eye-mode .chip { background:#1b2435; color:#b9c5d8; border-color:#344158; }
html.eye-mode .chip.active, html.eye-mode .m-tab.active { background:#91a4ff; color:#101522; border-color:#91a4ff; }
html.eye-mode .m-tabs, html.eye-mode .bottom-nav, html.eye-mode .stock-body, html.eye-mode .m-stock-body, html.eye-mode .m-stock-stats { background:#131a29; border-color:#2a354a; }
html.eye-mode .btn { background:#202a3d; color:#eef2f8; border-color:#3a4860; }
html.eye-mode .btn.primary { background:#91a4ff; color:#101522; border-color:#91a4ff; }
/* 轻量操作标签：未选中项不再使用深色填充 */
html.light-mode .chip { background:#fff; color:#475569; border-color:#d8dee8; box-shadow:none; }
html.light-mode .chip .cnt { background:#eef1f5; color:#64748b; }
html.light-mode .chip.active .cnt { background:rgba(255,255,255,.16); color:#fff; }
html.light-mode .m-tabs { background:#fff; border:1px solid #e3e7ed; box-shadow:none; }
html.light-mode .m-tab { color:#64748b; }
html.light-mode .m-tab.active { background:#111827; color:#fff; }

/* 管理 / 报表 / 设置等模块头部改为低饱和信息条 */
html.light-mode .module-hero { min-height:96px; background:#fff; color:#1e293b; border:1px solid #e2e6ed; border-left:4px solid #111827; box-shadow:0 4px 14px rgba(15,23,42,.035); }
html.light-mode .module-hero::before { display:none; }
html.light-mode .module-hero h2 { color:#111827; font-size:20px; }
html.light-mode .module-hero p { color:#64748b; }
html.light-mode .module-hero .section-kicker { color:#64748b; }
html.light-mode .module-hero-side { background:#f8fafc; border-color:#e2e8f0; }
html.light-mode .module-hero-side span, html.light-mode .module-hero-side small { color:#64748b; }
html.light-mode .module-hero-side b { color:#111827; }
html.light-mode .operation-banner { min-height:104px; background:#fff; color:#1e293b; border:1px solid #e2e6ed; border-left:4px solid #111827; box-shadow:0 4px 14px rgba(15,23,42,.035); }
html.light-mode .operation-banner::after { display:none; }
html.light-mode .operation-banner h2 { color:#111827; }
html.light-mode .operation-banner p { color:#64748b; }
html.light-mode .operation-banner .section-kicker { color:#64748b; }
html.light-mode .operation-banner-stat { background:#f8fafc; border-color:#e2e8f0; }
html.light-mode .operation-banner-stat span, html.light-mode .operation-banner-stat small { color:#64748b; }
html.light-mode .operation-banner-stat b { color:#111827; }
html.light-mode .manage-tabs { background:#fff; border-color:#e2e6ed; }

/* 得物定价助手：以结果为主、输入为辅，保持商用后台的清晰层级 */
html.light-mode .pricing-grid { gap:14px; margin-bottom:14px; }
html.light-mode .pricing-form-card, html.light-mode .pricing-result-card, html.light-mode .pricing-rule-card { padding:20px 22px; }
html.light-mode .pricing-form-card h3, html.light-mode .pricing-result-card h3 { margin-bottom:16px; }
html.light-mode .pricing-tip { line-height:1.65; margin:14px 0; }
html.light-mode .pricing-result-card { border-top:3px solid #111827; }
html.light-mode .pricing-price { font-size:42px; line-height:1; letter-spacing:-1.4px; font-weight:780; color:#111827; margin:28px 0 6px; font-variant-numeric:tabular-nums; }
html.light-mode .pricing-caption { font-size:12px; color:#64748b; margin-bottom:20px; }
html.light-mode .pricing-breakdown { border-top:1px solid #e7ebf0; }
html.light-mode .pricing-breakdown > div { display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px solid #edf0f4; color:#64748b; font-size:13px; }
html.light-mode .pricing-breakdown b { color:#334155; font-variant-numeric:tabular-nums; }
html.light-mode .pricing-breakdown .profit { border-bottom:0; padding-top:14px; color:#111827; font-weight:650; }
html.light-mode .pricing-breakdown .profit b { color:#15803d; font-size:18px; }
html.light-mode .pricing-error { margin:34px 0; padding:14px; border-radius:10px; background:#fff7ed; color:#c2410c; font-size:13px; }
html.light-mode .pricing-rules { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:15px; }
html.light-mode .pricing-rules > div { padding:14px; background:#f8fafc; border:1px solid #e6ebf1; border-radius:10px; }
html.light-mode .pricing-rules b { display:block; color:#111827; margin-bottom:6px; font-size:13px; }
html.light-mode .pricing-rules span { color:#64748b; font-size:12px; line-height:1.65; display:block; }
@media (max-width:720px) { html.light-mode .pricing-rules { grid-template-columns:1fr; gap:8px; } html.light-mode .pricing-price { font-size:36px; } }

/* ===== 移动经营工作台：以单手操作与快速扫读为优先 ===== */
@media (max-width:720px) {
  html.light-mode body { background:#f4f6f9; }
  html.light-mode .shell { background:#f4f6f9; }
  html.light-mode .content { padding:12px 12px 94px; }
  html.light-mode .topbar { height:54px; padding:0 14px; background:rgba(255,255,255,.94); backdrop-filter:blur(14px); position:sticky; top:0; z-index:15; }
  html.light-mode .topbar .page-title { font-size:17px; font-weight:760; letter-spacing:-.25px; }
  html.light-mode .topbar .avatar { width:30px; height:30px; font-size:12px; }
  html.light-mode .bottom-nav { height:70px; padding:8px 10px calc(6px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.96); backdrop-filter:blur(18px); border-top:1px solid #e5e9ef; }
  html.light-mode .bottom-nav-item { font-size:10px; gap:3px; color:#7b8798; }
  html.light-mode .bottom-nav-item.active { color:#111827; font-weight:700; }
  html.light-mode .bottom-nav-item.center { transform:translateY(-8px); }
  html.light-mode .bottom-nav-item.center .ic { width:48px; height:48px; background:#111827; border:3px solid #f4f6f9; box-shadow:0 5px 14px rgba(15,23,42,.18); }
  html.light-mode .mobile-dashboard { padding-bottom:0; }
  html.light-mode .mobile-greet { padding:8px 2px 13px; }
  html.light-mode .mobile-greet .greet-title { font-size:22px; letter-spacing:-.55px; color:#111827; }
  html.light-mode .mobile-greet .greet-shop { color:#7b8798; margin-top:4px; }
  html.light-mode .mobile-metrics { margin:0 -12px 14px; padding:0 12px 4px; gap:10px; }
  html.light-mode .mobile-metric { min-width:126px; min-height:128px; padding:15px 14px; border-radius:15px; border:1px solid #e5e9ef; box-shadow:0 5px 14px rgba(15,23,42,.045); }
  html.light-mode .mobile-metric:first-child { background:#111827; border-color:#111827; }
  html.light-mode .mobile-metric:first-child .m-value, html.light-mode .mobile-metric:first-child .m-label, html.light-mode .mobile-metric:first-child .m-icon { color:#fff; }
  html.light-mode .mobile-metric:first-child .m-sub { color:#b7c0cf; }
  html.light-mode .mobile-metric .m-value { font-size:22px; letter-spacing:-.55px; color:#111827; }
  html.light-mode .mobile-metric .m-label { color:#5f6b7b; font-weight:650; }
  html.light-mode .mobile-quick { grid-template-columns:repeat(4,1fr); gap:8px; margin:0 0 14px; }
  html.light-mode .mobile-quick-item { padding:11px 4px 10px; border:1px solid #e5e9ef; border-radius:13px; box-shadow:0 3px 10px rgba(15,23,42,.035); text-align:center; }
  html.light-mode .mobile-quick-item .mq-icon { width:34px; height:34px; margin:0 auto 7px; border-radius:10px; }
  html.light-mode .mobile-quick-item .mq-title { font-size:12px; color:#1e293b; }
  html.light-mode .mobile-quick-item .mq-sub { display:none; }
  html.light-mode .mobile-order-banner { padding:13px 14px; border-left:3px solid #111827; border-radius:12px; background:#fff; margin-bottom:14px; }
  html.light-mode .mobile-dashboard > .card { border-radius:14px; margin-bottom:12px; box-shadow:0 4px 15px rgba(15,23,42,.04); }
  html.light-mode .mobile-feed-card h3 { margin-bottom:8px; }
  html.light-mode .mobile-feed-card .feed-item { padding:10px 0; }
  html.light-mode .m-tabs { position:sticky; top:62px; z-index:8; border-radius:12px; box-shadow:0 6px 16px rgba(15,23,42,.07); }
  html.light-mode .m-stock-item, html.light-mode .m-stock-card { border-radius:14px; box-shadow:0 4px 14px rgba(15,23,42,.04); }
  html.light-mode .m-stock-head { padding:14px; }
  html.light-mode .m-stock-stats { padding:10px 8px; }
  html.light-mode .m-stock-actions .btn { min-height:40px; }
  html.light-mode .m-tab-bar { padding:4px 0 8px; }
  html.light-mode .modal { width:calc(100vw - 20px); max-height:88vh; border-radius:18px; }
  html.light-mode .modal .m-head { padding:15px 16px; }
  html.light-mode .modal .m-body { padding:14px 16px; }
  html.light-mode .m-in-form-card { padding:0 0 14px; overflow:hidden; }
  html.light-mode .m-in-form-head { display:flex; gap:10px; align-items:center; padding:15px 14px; margin-bottom:12px; background:linear-gradient(135deg,#111827,#263247); color:#fff; }
  html.light-mode .m-in-form-head h3 { color:#fff; font-size:17px; margin:0; }
  html.light-mode .m-in-form-head p { margin:3px 0 0; color:#cbd5e1; font-size:11px; }
  html.light-mode .m-in-form-icon { width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:10px; background:rgba(255,255,255,.14); }
  html.light-mode .m-in-form-card .form-grid, html.light-mode .m-in-form-card .m-in-size-title, html.light-mode .m-in-form-card .m-inrow, html.light-mode .m-in-form-card .m-in-add-row, html.light-mode .m-in-form-card .m-in-summary, html.light-mode .m-in-form-card .m-submit { margin-left:14px; margin-right:14px; width:calc(100% - 28px) !important; }
  html.light-mode .m-in-main-input { min-height:48px; font-size:15px; background:#f8fafc; }
  html.light-mode .m-in-size-title { display:flex; flex-direction:column; gap:3px; margin-top:17px; margin-bottom:9px; }
  html.light-mode .m-in-size-title b { color:#111827; font-size:14px; }
  html.light-mode .m-in-size-title span { color:#8490a4; font-size:11px; }
  html.light-mode .m-inrow { background:#f8fafc; border-color:#e6ebf0; padding:10px; }
  html.light-mode .m-in-add-row { min-height:42px; border-style:dashed; border-color:#94a3b8; color:#334155; background:#fff; }
  html.light-mode .m-in-form-card .m-submit { margin-top:4px; }
  html.light-mode .rec-wechat-tip { margin-top:11px; padding:10px; border-radius:9px; background:#eef6ff; color:#486078; font-size:12px; line-height:1.55; }
  /* 我的页统一为移动工作台的中性色，去除蓝色渐变与多彩宫格 */
  html.light-mode .me-hero { padding:16px 15px; border-radius:14px; background:#111827; box-shadow:0 7px 18px rgba(15,23,42,.15); margin-bottom:12px; }
  html.light-mode .me-hero .me-avatar { width:46px; height:46px; border-radius:12px; background:#334155; border-color:#475569; font-size:20px; }
  html.light-mode .me-hero .me-name { font-size:17px; }
  html.light-mode .me-hero .me-shop { font-size:12px; color:#cbd5e1; }
  html.light-mode .me-hero .me-badge { color:#cbd5e1; background:rgba(255,255,255,.08); border-color:#475569; }
  html.light-mode .me-page .m-stat-2x2 { gap:8px; margin-bottom:12px !important; }
  html.light-mode .me-page .m-stat-2x2 .stat-card { padding:12px; min-height:90px; box-shadow:0 4px 12px rgba(15,23,42,.035); }
  html.light-mode .me-page .m-stat-2x2 .stat-card .value { color:#111827; font-size:22px; }
  html.light-mode .me-page .me-group { padding:14px; border-radius:14px; margin-bottom:12px; }
  html.light-mode .me-page .me-group h3 { font-size:15px; margin-bottom:10px; color:#111827; }
  html.light-mode .me-grid2 { grid-template-columns:repeat(2,1fr); gap:8px; }
  html.light-mode .me-cell { padding:12px; min-height:104px; border-radius:12px; border-color:#e4e9ef; background:#fff; }
  html.light-mode .me-cell .me-cell-icon { width:32px; height:32px; border-radius:9px; margin-bottom:7px; background:#f1f5f9 !important; color:#334155 !important; }
  html.light-mode .me-cell .me-cell-label { font-size:13px; color:#1e293b; }
  html.light-mode .me-cell .me-cell-desc { font-size:11px; line-height:1.4; }
  html.light-mode .du-wechat-tip { margin-top:10px; padding:10px; border-radius:9px; background:#eef6ff; color:#486078; font-size:12px; line-height:1.55; }
}

/* 统计报表：核心数字优先，趋势与明细压缩为更适合日常经营查看的密度 */
html.light-mode .report-control { margin-bottom:12px; }
html.light-mode .stat-compact-row { gap:12px; margin-bottom:12px; }
html.light-mode .stat-compact-row .stat-card.compact {
  min-height:94px; padding:15px 18px; gap:13px;
  border-color:#e1e6ee; box-shadow:0 5px 16px rgba(15,23,42,.045);
}
html.light-mode .stat-compact-row .stat-card.compact .sc-icon {
  width:42px; height:42px; min-width:42px; border-radius:11px;
}
html.light-mode .stat-compact-row .stat-card.compact .label { font-size:12px; margin-bottom:3px; }
html.light-mode .stat-compact-row .stat-card.compact .value,
html.light-mode .stat-compact-row .stat-card.compact .value.sm {
  margin-top:0; font-size:27px; line-height:1.02; letter-spacing:-.6px; color:#111827;
}
html.light-mode .stat-compact-row .stat-card.compact .extra { margin-top:5px; font-size:11.5px; }
.report-summary-card { margin-bottom:12px; padding:0; overflow:hidden; border-color:#dde4ec; box-shadow:0 7px 20px rgba(15,23,42,.045); }
.report-summary-head { display:flex; align-items:center; justify-content:space-between; min-height:52px; padding:0 18px; border-bottom:1px solid #edf0f4; background:linear-gradient(90deg,#f8fafc 0%,#fff 62%); }
.report-summary-head span { display:block; color:#94a3b8; font-size:9.5px; font-weight:750; letter-spacing:.8px; }
.report-summary-head h3 { margin:2px 0 0; color:#172033; font-size:14px; }
.report-summary-head > b { padding:5px 9px; border:1px solid #e2e8f0; border-radius:999px; color:#475569; background:#fff; font-size:11px; font-weight:650; }
.report-summary-body { display:grid; grid-template-columns:minmax(300px,1fr) 2.2fr; align-items:stretch; min-height:128px; }
.report-stock-value { display:flex; align-items:center; gap:14px; padding:22px 23px; border-right:1px solid #1e293b; background:#111827; }
.report-summary-icon { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:13px; color:#f8fafc; background:rgba(255,255,255,.12); }
.report-stock-value span, .report-stock-value strong, .report-stock-value small, .report-performance-grid span, .report-performance-grid b, .report-performance-grid small { display:block; }
.report-stock-value span { color:#cbd5e1; font-size:12px; }
.report-performance-grid span { color:#78869a; font-size:12px; }
.report-stock-value strong { margin-top:5px; color:#fff; font-size:34px; line-height:1; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
.report-stock-value small { margin-top:7px; color:#94a3b8; font-size:11px; }
.report-performance-grid small { margin-top:7px; color:#94a3b8; font-size:11px; }
.report-performance-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; }
.report-performance-grid.report-profit-breakdown{grid-template-columns:repeat(4,minmax(0,1fr))}.report-profit-breakdown>div{padding-right:17px;padding-left:17px}.report-profit-breakdown b{font-size:25px}
.report-performance-grid > div { min-width:0; padding:3px 25px; border-right:1px solid #edf0f4; }
.report-performance-grid > div:last-child { border-right:0; }
.report-performance-grid b { margin-top:7px; color:#172033; font-size:30px; line-height:1; letter-spacing:-.8px; font-variant-numeric:tabular-nums; }
.report-hero { display:grid; grid-template-columns:minmax(0,1fr) 270px; align-items:center; }
.report-hero > :first-child { min-width:0; }
.report-hero-kpi { box-sizing:border-box; flex:0 0 270px; min-width:270px; padding:17px 19px; }
.report-hero-kpi span { font-size:12px; font-weight:650; letter-spacing:.15px; }
.report-hero-kpi b { margin:5px 0 9px; font-size:34px; letter-spacing:-1px; }
.report-hero-kpi > div { display:flex; align-items:center; gap:7px; }
.report-hero-kpi em { padding:4px 7px; border-radius:6px; color:rgba(255,255,255,.84); background:rgba(255,255,255,.1); font-size:11px; font-style:normal; }
.report-hero-kpi em.positive { color:#bdf8df; background:rgba(52,211,153,.14); }
html.light-mode .report-hero-kpi em { color:#475569; background:#e9eef4; }
html.light-mode .report-hero-kpi em.positive { color:#087a52; background:#e7f7ef; }
@media (max-width:980px) { .report-hero { grid-template-columns:1fr; } .report-hero-kpi { width:100%; margin-top:12px; } }
html.eye-mode .report-summary-card { border-color:#2a354a; background:#151e2f; box-shadow:none; }
html.eye-mode .report-summary-head { border-color:#2a354a; background:linear-gradient(90deg,#182235,#151e2f 62%); }
html.eye-mode .report-summary-head h3, html.eye-mode .report-performance-grid b { color:#f1f5f9; }
html.eye-mode .report-summary-head > b { border-color:#344158; color:#cbd5e1; background:#1d293a; }
html.eye-mode .report-summary-body, html.eye-mode .report-stock-value, html.eye-mode .report-performance-grid > div { border-color:#2a354a; }
html.eye-mode .report-stock-value { background:#0f172a; }
html.eye-mode .report-summary-icon { color:#e2e8f0; background:#273247; }
html.light-mode .stat-trend-card { padding:15px 18px 13px; margin-bottom:12px; }
html.light-mode .stat-trend-card h3 { margin-bottom:7px; }
.trend-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.trend-card-head h3 { margin:0; color:#172033; font-size:15px; }
.trend-card-head p { margin:4px 0 0; color:#8a96a8; font-size:11.5px; }
.trend-period { padding:5px 9px; border:1px solid #e3e8ef; border-radius:999px; color:#64748b; background:#f8fafc; font-size:11px; white-space:nowrap; }
.trend-metrics { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:0; margin:16px 0 14px; padding:11px 0; border-top:1px solid #edf0f4; border-bottom:1px solid #edf0f4; }
.trend-metrics > div { min-width:0; padding:0 17px; border-right:1px solid #edf0f4; }
.trend-metrics > div:first-child { padding-left:0; }
.trend-metrics > div:last-child { padding-right:0; border-right:0; }
.trend-metrics span, .trend-metrics b, .trend-metrics em { display:block; }
.trend-metrics span { overflow:hidden; color:#8a96a8; font-size:11px; white-space:nowrap; text-overflow:ellipsis; }
.trend-metrics b { margin-top:4px; color:#111827; font-size:21px; line-height:1; letter-spacing:-.4px; font-variant-numeric:tabular-nums; }
.trend-metrics em { display:inline; margin-left:2px; color:#94a3b8; font-size:11px; font-style:normal; font-weight:500; letter-spacing:0; }
.chart-activity { padding-top:1px; }
.activity-bars { display:flex; align-items:flex-end; gap:4px; height:58px; padding:0 2px; }
.activity-day { display:flex; flex:1 1 0; align-items:flex-end; min-width:2px; height:100%; padding:0 0 1px; border-radius:3px; background:#eef2f6; overflow:hidden; }
.activity-day i { display:block; width:100%; height:7%; border-radius:3px; background:#cbd5e1; transition:height .18s ease; }
.activity-day.active { background:#e7edf4; }
.activity-day.active i { background:#111827; }
.activity-scale { display:flex; align-items:center; justify-content:space-between; margin-top:7px; color:#94a3b8; font-size:10px; }
.activity-scale span:nth-child(2) { color:#64748b; }
html.eye-mode .trend-card-head h3, html.eye-mode .trend-metrics b { color:#f1f5f9; }
html.eye-mode .trend-card-head p, html.eye-mode .trend-metrics span, html.eye-mode .activity-scale { color:#94a3b8; }
html.eye-mode .trend-period { border-color:#344158; color:#cbd5e1; background:#1d293a; }
html.eye-mode .trend-metrics, html.eye-mode .trend-metrics > div { border-color:#2a354a; }
html.eye-mode .activity-day { background:#263246; }
html.eye-mode .activity-day i { background:#506079; }
html.eye-mode .activity-day.active { background:#344158; }
html.eye-mode .activity-day.active i { background:#e2e8f0; }
@media (max-width:720px) {
  .report-summary-head { min-height:48px; padding:0 14px; }
  .report-summary-body { display:block; min-height:0; }
  .report-stock-value { padding:14px; border-right:0; border-bottom:1px solid #edf0f4; }
  .report-stock-value strong { font-size:29px; }
  .report-performance-grid > div { padding:13px 12px; }
  .report-performance-grid > div:first-child { padding-left:14px; }
  .report-performance-grid > div:last-child { padding-right:14px; }
  .report-performance-grid b { font-size:21px; }
  .report-performance-grid.report-profit-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.report-profit-breakdown>div{padding:12px!important;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.report-profit-breakdown>div:nth-child(2n){border-right:0}.report-profit-breakdown>div:nth-last-child(-n+2){border-bottom:0}.report-profit-breakdown b{font-size:19px}
  html.eye-mode .report-stock-value { border-color:#2a354a; }
  html.light-mode .stat-trend-card { padding:14px; }
  .trend-card-head h3 { font-size:14px; }
  .trend-card-head p { font-size:10.5px; }
  .trend-metrics { gap:9px 0; grid-template-columns:repeat(2, minmax(0,1fr)); margin:13px 0 12px; padding:10px 0; }
  .trend-metrics > div { padding:0 12px; }
  .trend-metrics > div:nth-child(2) { border-right:0; }
  .trend-metrics > div:nth-child(n+3) { padding-top:9px; border-top:1px solid #edf0f4; }
  .trend-metrics > div:nth-child(3) { padding-left:0; }
  .trend-metrics > div:nth-child(4) { padding-right:0; border-right:0; }
  html.eye-mode .trend-metrics > div:nth-child(n+3) { border-color:#2a354a; }
  .activity-bars { gap:3px; height:51px; }
}

/* 顶部用户入口：中性黑灰，不再使用蓝紫头像。 */
html.light-mode .topbar .user { gap:7px; padding:4px 8px 4px 4px; border:1px solid #e1e6ed; border-radius:9px; background:#fff; }
html.light-mode .topbar .user:hover { border-color:#cbd5e1; background:#f8fafc; }
html.light-mode .topbar .avatar { width:28px; height:28px; border-radius:8px; color:#fff; background:#111827; font-size:12px; }
html.light-mode .topbar .user .name { color:#334155; font-size:12.5px; font-weight:650; }
html.eye-mode .topbar .user { gap:7px; padding:4px 8px 4px 4px; border:1px solid #344158; border-radius:9px; background:#182235; }
html.eye-mode .topbar .user:hover { background:#202c40; }
html.eye-mode .topbar .avatar { width:28px; height:28px; border-radius:8px; color:#111827; background:#e2e8f0; font-size:12px; }
html.light-mode .stat-insights-grid, html.light-mode .stat-mix-grid { gap:12px; margin-bottom:12px; }
html.light-mode .stat-insights-grid .card, html.light-mode .stat-mix-grid .card { padding:16px 18px; }
html.light-mode .stat-rank-card .rank-item { padding:6px 4px; }
html.light-mode .stat-month-card { padding:16px 18px; margin-bottom:12px; }
html.light-mode .stat-month-card .rank-item { padding:6px 4px; }
html.light-mode .stat-flow-card { padding:16px 18px 13px; margin-bottom:12px; }
html.light-mode .stat-hot-card { padding:16px 18px; }
html.light-mode .cmp-card { border-top-color:#111827; }

/* ===== 得物卖家登录入口：产品介绍与账户入口一体化 ===== */
.login-landing { padding:28px; background:radial-gradient(circle at 18% 12%, rgba(124,131,255,.25), transparent 26%), radial-gradient(circle at 82% 88%, rgba(94,234,212,.10), transparent 30%), #080c15; }
.login-layout { width:min(1240px, 100%); min-height:710px; display:grid; grid-template-columns:1.16fr .84fr; overflow:hidden; border:1px solid #2a354d; border-radius:28px; background:#111828; box-shadow:0 34px 100px rgba(0,0,0,.48); }
.login-intro { position:relative; display:flex; flex-direction:column; min-width:0; padding:34px 42px 30px; color:#f8fafc; background:radial-gradient(circle at 82% 16%, rgba(94,234,212,.22), transparent 27%), radial-gradient(circle at 60% 58%, rgba(124,131,255,.22), transparent 36%), linear-gradient(135deg, #09101d 0%, #14263a 54%, #254f4b 100%); overflow:hidden; }
.login-intro::before { content:''; position:absolute; width:500px; height:500px; right:-145px; top:-245px; border:1px solid rgba(213,207,255,.13); border-radius:50%; box-shadow:0 0 0 54px rgba(255,255,255,.035), 0 0 0 112px rgba(137,114,255,.045); pointer-events:none; }
.login-intro::after { content:''; position:absolute; inset:auto -100px -210px auto; width:440px; height:350px; border-radius:48% 52% 40% 60%; background:radial-gradient(ellipse at 45% 34%, rgba(96,80,206,.54), rgba(30,26,62,.34) 44%, transparent 70%); filter:blur(4px); pointer-events:none; }
.login-brand, .login-product-stage, .login-intro-main, .login-capabilities, .login-intro-foot { position:relative; z-index:1; }
.login-product-stage { position:absolute; z-index:1; top:94px; right:18px; width:510px; height:260px; pointer-events:none; }
.login-stage-aura { position:absolute; inset:18px 34px 0 70px; border-radius:50%; background:radial-gradient(ellipse at center, rgba(94,234,212,.19), rgba(91,94,255,.15) 48%, transparent 72%); filter:blur(6px); }
.login-stage-rock { position:absolute; background:linear-gradient(145deg, #313d5a 0%, #0b1020 55%, #152a3b 100%); filter:drop-shadow(0 18px 18px rgba(0,0,0,.5)); }
.login-stage-rock::after { content:''; position:absolute; inset:10% 8%; background:linear-gradient(110deg, transparent 42%, rgba(124,131,255,.92) 47%, rgba(94,234,212,.12) 54%, transparent 61%); opacity:.72; transform:rotate(-9deg); }
.rock-a { left:72px; bottom:10px; width:305px; height:130px; clip-path:polygon(0 82%, 7% 46%, 23% 56%, 32% 12%, 49% 40%, 65% 3%, 81% 28%, 100% 4%, 92% 86%, 68% 100%, 39% 83%, 15% 100%); transform:rotate(-5deg); }
.rock-b { right:16px; top:42px; width:190px; height:112px; clip-path:polygon(0 76%, 12% 31%, 33% 51%, 43% 0, 69% 25%, 86% 5%, 100% 46%, 87% 95%, 51% 85%, 28% 100%); transform:rotate(9deg); opacity:.86; }
.login-stock-ticket { position:absolute; left:38px; top:28px; display:flex; flex-direction:column; gap:2px; min-width:124px; padding:13px 15px 12px; border:1px solid rgba(94,234,212,.46); background:linear-gradient(145deg, rgba(24,73,80,.96), rgba(13,27,43,.96)); box-shadow:0 14px 30px rgba(0,0,0,.36), 0 0 28px rgba(94,234,212,.12); transform:rotate(-4deg); }
.login-stock-ticket strong { color:#83f3df; font-family:Georgia,serif; font-size:43px; line-height:.9; font-weight:500; letter-spacing:-2px; }
.login-stock-ticket span { color:#b5e9e0; font-size:10px; letter-spacing:.5px; }
.login-stock-ticket i { width:86%; height:1px; margin-top:7px; background:linear-gradient(90deg,#5eead4,transparent); }
.login-stage-product { position:absolute; right:107px; top:62px; display:flex; flex-direction:column; align-items:center; justify-content:center; width:176px; height:114px; padding-left:38px; border:1px solid rgba(94,234,212,.52); border-radius:18px; color:#e9fffb; background:linear-gradient(145deg, rgba(38,83,92,.98) 0%, rgba(20,34,58,.98) 52%, rgba(35,39,97,.96) 100%); box-shadow:-15px 22px 30px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.12), 0 0 30px rgba(94,234,212,.14); transform:rotate(-10deg); overflow:hidden; }
.login-stage-product::before { content:''; position:absolute; width:92px; height:12px; bottom:12px; left:34px; border-radius:50%; background:rgba(94,234,212,.20); filter:blur(7px); }
.login-product-icon { position:absolute; left:18px; top:30px; color:#83f3df; transform:rotate(10deg); }
.login-stage-product b { position:relative; font-size:14px; letter-spacing:.8px; }
.login-stage-product small { position:relative; margin-top:5px; font-size:9px; color:#b2cbd7; white-space:nowrap; }
.login-stage-chip { position:absolute; right:22px; bottom:26px; padding:9px 11px; border-left:3px solid #5eead4; color:#dce8fa; background:rgba(13,18,32,.78); font-size:8px; line-height:1.45; letter-spacing:.9px; box-shadow:0 10px 22px rgba(0,0,0,.28); }
.login-stage-chip b { color:#9ea7ff; font-size:10px; letter-spacing:1px; }
.login-brand { display:flex; align-items:center; gap:10px; color:#fff; font-size:15px; font-weight:760; letter-spacing:.1px; }
.login-brand-mark { display:flex; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid rgba(255,255,255,.28); border-radius:10px; color:#b8c5ff; background:rgba(255,255,255,.08); }
.login-brand em { margin-left:4px; padding:4px 7px; border:1px solid rgba(255,255,255,.18); border-radius:99px; color:#aeb9ce; font-size:9px; font-style:normal; font-weight:700; letter-spacing:1px; }
.login-intro-main { margin-top:auto; max-width:535px; padding-top:72px; }
.login-eyebrow { display:flex; align-items:center; gap:7px; color:#c7d2fe; font-size:11px; font-weight:700; letter-spacing:.7px; }
.login-eyebrow i, .login-status i { display:inline-block; width:7px; height:7px; border-radius:50%; background:#5eead4; box-shadow:0 0 0 4px rgba(94,234,212,.12); }
.login-intro h1 { margin:16px 0 14px; color:#fff; font-size:39px; line-height:1.18; letter-spacing:-1.4px; }
.login-intro-main > p { max-width:470px; color:#b5c0d2; font-size:14px; line-height:1.8; }
.login-capabilities { display:grid; grid-template-columns:repeat(3, 1fr); gap:10px; margin-top:40px; }
.login-capabilities > div { min-height:108px; padding:14px; border:1px solid rgba(255,255,255,.13); border-radius:13px; background:rgba(255,255,255,.055); backdrop-filter:blur(6px); }
.login-cap-icon { display:flex; align-items:center; justify-content:center; width:30px; height:30px; margin-bottom:10px; border-radius:9px; background:rgba(255,255,255,.11); color:#c7d2fe; }
.login-capabilities b, .login-capabilities small { display:block; }
.login-capabilities b { color:#fff; font-size:13px; }
.login-capabilities small { margin-top:5px; color:#9eabc0; font-size:11px; line-height:1.45; }
.login-intro-foot { display:flex; align-items:center; gap:7px; margin-top:26px; color:#8390a7; font-size:11px; }
.login-intro-foot span { width:18px; height:1px; background:#64748b; }
.login-panel { display:flex; flex-direction:column; padding:34px 48px 26px; background:linear-gradient(180deg, #151c2d 0%, #101624 100%); border-left:1px solid rgba(255,255,255,.035); }
.login-panel-top { display:flex; justify-content:space-between; align-items:center; color:#94a4c4; font-size:10px; font-weight:750; letter-spacing:.7px; }
.login-status { display:flex; align-items:center; gap:6px; color:#9aa8c2; font-size:10px; letter-spacing:0; }
.login-status i { width:6px; height:6px; box-shadow:none; }
.login-panel .login-card { width:100%; max-width:370px; margin:auto; padding:0; color:#eaf0fb; border:0; border-radius:0; background:transparent; box-shadow:none; }
.login-panel .login-logo { margin:0 0 24px; text-align:left; }
.login-welcome { margin-bottom:9px; color:#9aa8c2; font-size:12px; font-weight:700; letter-spacing:.5px; }
.login-panel .login-logo h2 { margin:0; color:#f4f7ff; font-size:25px; line-height:1.25; letter-spacing:-.8px; }
.login-panel .login-logo p { margin-top:8px; color:#9ba9c1; font-size:13px; line-height:1.6; }
.login-tabs { display:grid; grid-template-columns:1fr 1fr; gap:4px; margin-bottom:22px; padding:4px; border:1px solid #2a354d; border-radius:10px; background:#0d1321; }
.login-tabs button { height:34px; border:0; border-radius:7px; background:transparent; color:#8f9db8; font-size:13px; font-weight:650; }
.login-tabs button.active { background:linear-gradient(135deg, #6871ee, #5660d6); color:#fff; box-shadow:0 4px 12px rgba(79,70,229,.28); }
.login-panel .form-item { margin-bottom:15px; }
.login-panel .form-item label { margin-bottom:7px; color:#b6c1d5; font-size:12px; font-weight:650; }
.login-panel .form-item input { height:44px; padding:10px 12px; border-color:#2d3954; border-radius:9px; color:#edf2ff; background:#0d1321; }
.login-panel .form-item input::placeholder { color:#71809a; }
.login-panel .form-item input:focus { border-color:#7c83ff; box-shadow:0 0 0 3px rgba(124,131,255,.15); }
.login-submit { display:flex !important; align-items:center; justify-content:center; gap:10px; min-height:46px; margin-top:5px; border-color:#747cff !important; border-radius:9px !important; background:linear-gradient(135deg, #7c83ff, #5964df) !important; color:#fff !important; font-weight:700; box-shadow:0 10px 22px rgba(79,70,229,.26); transition:transform .15s, background .15s !important; }
.login-submit:hover { background:linear-gradient(135deg, #8b91ff, #6570ef) !important; transform:translateY(-1px); }
.login-submit span { font-size:18px; line-height:1; }
.login-panel .login-tip { display:grid; grid-template-columns:auto 1fr; column-gap:8px; row-gap:3px; margin-top:18px; padding:12px 13px; border:1px solid #2a354d; border-radius:9px; background:rgba(124,131,255,.06); color:#95a4bf; font-size:11px; line-height:1.55; }
.login-panel .login-tip b { grid-row:span 2; color:#d6def1; font-size:11px; }
.login-panel .login-panel-foot { margin-top:auto; padding-top:18px; color:#71809a; font-size:10.5px; line-height:1.5; text-align:center; }

/* 登录区与深色后台共用同一套深蓝模块、靛蓝焦点和青绿状态色。 */
.login-panel .login-card .form-item input { background:#0d1321 !important; color:#edf2ff !important; border-color:#30405d !important; }
.login-panel .login-card .form-item input:focus { border-color:#7c83ff !important; box-shadow:0 0 0 3px rgba(124,131,255,.18) !important; }
.login-panel .login-card .login-submit { background:linear-gradient(135deg, #6875ec 0%, #4f63d4 62%, #3f7881 100%) !important; border-color:#7884ff !important; }
.login-panel .login-card .login-submit:hover { background:linear-gradient(135deg, #7d88ff 0%, #6070eb 62%, #488c91 100%) !important; }

html.eye-mode .login-landing { background:#0a0f1b; }
html.eye-mode .login-layout { border-color:#29354b; box-shadow:0 26px 80px rgba(0,0,0,.45); }
html.eye-mode .login-panel { background:#151d2c; }
html.eye-mode .login-panel-top, html.eye-mode .login-status { color:#93a0b5; }
html.eye-mode .login-panel .login-card { color:#edf2fa; }
html.eye-mode .login-panel .login-logo h2 { color:#f3f6fb; }
html.eye-mode .login-panel .login-logo p, html.eye-mode .login-welcome { color:#9ca9bd; }
html.eye-mode .login-tabs { background:#0f1625; }
html.eye-mode .login-tabs button { color:#8f9cb1; }
html.eye-mode .login-tabs button.active { color:#f4f6fb; background:#263149; box-shadow:none; }
html.eye-mode .login-panel .form-item label { color:#c0cada; }
html.eye-mode .login-panel .form-item input { background:#101827; color:#eef2f8; border-color:#344158; }
html.eye-mode .login-submit { background:#91a4ff !important; border-color:#91a4ff !important; color:#101522 !important; }
html.eye-mode .login-submit:hover { background:#b2beff !important; }
html.eye-mode .login-panel .login-tip { background:#101827; border-color:#2e3b53; color:#9ba9bd; }
html.eye-mode .login-panel .login-tip b { color:#d7dfeb; }

@media (max-width:720px) {
  .login-landing { display:block; min-height:100dvh; padding:0; background:#0b1020; }
  .login-layout { display:flex; flex-direction:column; min-height:100dvh; border:0; border-radius:0; box-shadow:none; }
  .login-intro { min-height:274px; padding:25px 22px 22px; border-radius:0 0 22px 22px; }
  .login-product-stage { display:none; }
  .login-intro::before { width:300px; height:300px; right:-125px; top:-130px; }
  .login-brand { font-size:14px; }
  .login-brand-mark { width:30px; height:30px; }
  .login-intro-main { margin-top:auto; padding-top:38px; }
  .login-intro h1 { margin:12px 0 7px; font-size:28px; line-height:1.2; letter-spacing:-.9px; }
  .login-intro-main > p { font-size:12px; line-height:1.65; }
  .login-capabilities { display:none; }
  .login-intro-foot { margin-top:16px; font-size:10px; }
  .login-panel { flex:1; padding:25px 23px calc(26px + env(safe-area-inset-bottom)); }
  .login-panel-top { display:none; }
  .login-panel .login-card { margin:0; max-width:none; }
  .login-panel .login-logo { margin-bottom:20px; }
  .login-panel .login-logo h2 { font-size:22px; }
  .login-tabs { margin-bottom:19px; }
  .login-panel .form-item input { height:46px; font-size:15px; }
  .login-submit { min-height:48px; }
  .login-panel .login-panel-foot { margin-top:20px; padding-top:0; }
}

/* 库存清单高密度模式：大量货号时以扫读、排序与展开批次为核心 */
@media (min-width:721px) {
  .stock-list-columns { display:grid; grid-template-columns:minmax(260px,1fr) 86px 108px 88px 48px; align-items:center; gap:10px; padding:0 16px 7px 78px; color:#94a3b8; font-size:10.5px; font-weight:650; letter-spacing:.35px; }
  .stock-list-columns span:not(:first-child) { text-align:right; }
  .stock-dense-row { margin-bottom:7px; border-radius:10px !important; }
  .inventory-list-card .stock-dense-row .stock-head { display:grid; grid-template-columns:46px minmax(260px,1fr) 302px 48px; gap:12px; min-height:62px; padding:10px 16px; flex-wrap:nowrap; }
  .inventory-list-card .stock-dense-row .brand-tag { display:flex; align-items:center; justify-content:center; width:42px; min-width:42px; height:28px; padding:0; border-radius:7px; font-size:10px; letter-spacing:.2px; }
  .stock-dense-row .stock-product { min-width:0; align-self:center; }
  .inventory-list-card .stock-dense-row .stock-head .name { overflow:hidden; color:#1f2937; font-size:13.5px; font-weight:620; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
  .inventory-list-card .stock-dense-row .stock-head .code { overflow:hidden; margin-top:3px; color:#8a96a8; font-size:11px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
  .inventory-list-card .stock-dense-row .stock-head .info { display:grid; grid-template-columns:86px 108px 88px; gap:0; min-width:0; margin:0; align-items:center; }
  .inventory-list-card .stock-dense-row .stock-head .info .item { min-width:0; padding:0 12px 0 0; text-align:right; }
  .inventory-list-card .stock-dense-row .stock-head .info .item:not(:first-child) { padding-left:12px; border-left:1px solid #eef1f4; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .v { color:#1f2937; font-size:15px; line-height:1.15; font-weight:650; font-variant-numeric:tabular-nums; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .l { margin-top:3px; color:#94a3b8; font-size:10px; line-height:1.1; }
  .stock-expand-mark { align-self:center; color:#94a3b8; font-size:10.5px; text-align:right; }
  .inventory-list-card .stock-dense-row:hover .stock-expand-mark { color:#334155; }
  .inventory-list-card .stock-dense-row .stock-body { padding:11px 16px 12px 74px; }
  .inventory-list-card .stock-dense-row .stock-actions { margin-top:10px; }
}
html.eye-mode .stock-list-columns { color:#77859a; }
html.eye-mode .inventory-list-card .stock-dense-row .stock-head .name,
html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item .v { color:#eef2f8; }
html.eye-mode .inventory-list-card .stock-dense-row .stock-head .code,
html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item .l,
html.eye-mode .stock-expand-mark { color:#8d9aae; }
html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item:not(:first-child) { border-left-color:#2b3750; }
html.eye-mode .inventory-list-card .stock-dense-row:hover .stock-expand-mark { color:#d8e0ed; }
@media (max-width:720px) { .stock-list-columns { display:none; } }

/* 商品图片档案：入库时按货号绑定；库存列表只展示统一缩略图，避免抢占商品信息的阅读空间 */
.in-product-photo { display:flex; align-items:center; gap:12px; margin-top:12px; padding:10px 12px; border:1px dashed #cbd5e1; border-radius:11px; background:#f8fafc; }
.product-photo-preview, .stock-thumb { display:flex; align-items:center; justify-content:center; overflow:hidden; flex:0 0 auto; background:#eef2f6; color:#718096; }
.product-photo-preview { width:52px; height:52px; border-radius:10px; border:1px solid #e2e8f0; }
.product-photo-preview img, .stock-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.in-product-photo-copy { min-width:0; flex:1; display:flex; flex-direction:column; gap:2px; }
.in-product-photo-copy b { color:#1e293b; font-size:13px; font-weight:650; }
.in-product-photo-copy span, .in-product-photo-copy small { color:#718096; font-size:11px; line-height:1.35; }
.in-product-photo-actions { display:flex; align-items:center; gap:7px; flex:0 0 auto; }
.in-product-photo-actions label { position:relative; overflow:hidden; cursor:pointer; }
.in-product-photo-actions input[type="file"] { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.stock-thumb { width:40px; height:40px; border-radius:8px; border:1px solid #e5e7eb; }
.stock-thumb:not(.has-image) svg { width:17px; height:17px; }
.out-product-thumb { flex:0 0 auto; width:42px; height:42px; border-radius:10px; background:#f1f5f9; color:#64748b; }
.m-out-list-hint { margin:-1px 0 9px; color:#8a96a8; font-size:11px; }
.m-out-load-more { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:10px; padding:10px 2px 2px; border-top:1px dashed #e2e8f0; color:#8490a4; font-size:11px; }
.m-out-list-status { margin-top:10px; color:#94a3b8; font-size:11px; text-align:center; }
html.eye-mode .m-out-load-more { border-color:#344158; color:#94a3b8; }
.out-product-thumb.has-image { border:1px solid #e2e8f0; }
.brand-record { display:flex; align-items:center; gap:13px; min-height:68px; padding:11px 14px; border-bottom:1px solid #edf0f4; background:#fff; }
.brand-record:last-child { border-bottom:0; }
.brand-record:hover { background:#fbfcfd; }
.brand-monogram { display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:0 0 36px; border:1px solid #dce3eb; border-radius:10px; color:#1e293b; background:linear-gradient(135deg,#fff,#eef2f6); font-size:10px; font-weight:800; letter-spacing:.35px; }
.brand-record-main { display:flex; min-width:0; flex:1; flex-direction:column; gap:3px; }
.brand-record-main b { overflow:hidden; color:#1e293b; font-size:13px; font-weight:700; white-space:nowrap; text-overflow:ellipsis; }
.brand-record-main span { color:#8a96a8; font-size:11px; }
.brand-record-count { min-width:90px; color:#64748b; font-size:11.5px; text-align:right; white-space:nowrap; }
.brand-record-count strong { margin-right:3px; color:#111827; font-size:16px; font-variant-numeric:tabular-nums; }
.brand-record-actions { display:flex; gap:7px; padding-left:8px; border-left:1px solid #edf0f4; }
.brand-record-actions .danger { color:#b45309; border-color:#fde68a; background:#fffbeb; }
.brand-record-edit { gap:9px; }
html.eye-mode .out-product-thumb { background:#202a3d; color:#94a3b8; border-color:#344158; }
html.eye-mode .brand-record { border-color:#2a354a; background:#161d2d; }
html.eye-mode .brand-record:hover { background:#1b2639; }
html.eye-mode .brand-monogram { border-color:#344158; color:#e2e8f0; background:linear-gradient(135deg,#243047,#1b2639); }
html.eye-mode .brand-record-main b, html.eye-mode .brand-record-count strong { color:#f1f5f9; }
html.eye-mode .brand-record-main span, html.eye-mode .brand-record-count { color:#94a3b8; }
html.eye-mode .brand-record-actions { border-color:#2a354a; }
html.eye-mode .brand-record-actions .danger { color:#fbbf24; border-color:#654f1d; background:#2d281a; }
@media (min-width:721px) {
  .stock-list-columns { padding-left:130px; }
  .inventory-list-card .stock-dense-row .stock-head { grid-template-columns:40px 46px minmax(260px,1fr) 302px 48px; gap:10px; }
  .inventory-list-card .stock-dense-row .stock-body { padding-left:126px; }
}
@media (max-width:720px) {
  .m-in-product-photo { margin-top:0; }
  .m-in-product-photo .in-product-photo-copy small { display:none; }
  .m-stock-thumb { width:38px; height:38px; border-radius:8px; }
  .out-product-thumb { width:38px; height:38px; }
  .brand-record { gap:10px; min-height:62px; padding:10px 12px; }
  .brand-monogram { width:33px; height:33px; flex-basis:33px; border-radius:9px; }
  .brand-record-main span { display:none; }
  .brand-record-count { min-width:auto; font-size:10.5px; }
  .brand-record-count strong { font-size:14px; }
  .brand-record-actions { gap:5px; padding-left:7px; }
  .brand-record-actions .btn { padding:5px 7px; font-size:11px; }
}
html.eye-mode .in-product-photo { background:#111827; border-color:#344158; }
html.eye-mode .product-photo-preview, html.eye-mode .stock-thumb { background:#1f2937; border-color:#344158; color:#94a3b8; }
html.eye-mode .in-product-photo-copy b { color:#e5e7eb; }
html.eye-mode .in-product-photo-copy span, html.eye-mode .in-product-photo-copy small { color:#94a3b8; }

/* 经营图表：降低装饰色占比，用层级、留白与有限状态色增强可读性 */
.chart-box { position:relative; }
.chart-donut { filter:drop-shadow(0 5px 8px rgba(15,23,42,.05)); }
.chart-donut svg { overflow:visible; }
.chart-bars, .chart-line { padding:3px 0 0; }
.chart-hbar .rank-item { padding:9px 0; border-bottom:1px solid #edf0f4; }
.chart-hbar .rank-item:last-child, .chart-month-bars .rank-item:last-child { border-bottom:0; }
.chart-hbar .rank-item .t { color:#334155; font-size:13px; font-weight:650; }
.chart-hbar .rank-item .v { color:#111827; font-size:13px; font-variant-numeric:tabular-nums; }
.chart-month-bars .rank-item { padding:9px 0; border-bottom:1px solid #edf0f4; }
.chart-month-bars .rank-item .t { color:#64748b; font-size:12px; }
.dashboard-allocation-card { padding:18px 20px; }
.allocation-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:13px; border-bottom:1px solid #edf0f4; }
.allocation-head h3 { margin:0; }
.allocation-head span { display:block; margin-top:4px; color:#8a96a8; font-size:11px; }
.allocation-head > b { padding:5px 8px; border-radius:999px; color:#334155; background:#f1f5f9; font-size:11px; font-weight:650; white-space:nowrap; }
.dashboard-allocation-body { display:flex; align-items:center; gap:24px; padding-top:14px; }
.dashboard-allocation-body .chart-donut { flex:0 0 158px; }
.allocation-legend { flex:1; min-width:260px; }
.allocation-row { display:grid; grid-template-columns:8px 76px minmax(54px,1fr) 26px 34px; align-items:center; gap:8px; min-height:29px; border-bottom:1px solid #f0f2f5; color:#64748b; font-size:11.5px; }
.allocation-row:last-child { border-bottom:0; }
.allocation-dot { width:7px; height:7px; border-radius:50%; }
.allocation-label { color:#475569; white-space:nowrap; }
.allocation-track { height:5px; overflow:hidden; border-radius:99px; background:#edf1f5; }
.allocation-track i { display:block; height:100%; min-width:0; border-radius:99px; }
.allocation-row b { color:#1e293b; font-size:12px; text-align:right; font-variant-numeric:tabular-nums; }
.allocation-row em { color:#94a3b8; font-size:10.5px; font-style:normal; text-align:right; }
html.eye-mode .chart-hbar .rank-item, html.eye-mode .chart-month-bars .rank-item, html.eye-mode .allocation-head, html.eye-mode .allocation-row { border-color:#2a354a; }
html.eye-mode .chart-hbar .rank-item .t, html.eye-mode .chart-hbar .rank-item .v, html.eye-mode .chart-month-bars .rank-item .t, html.eye-mode .allocation-label, html.eye-mode .allocation-row b { color:#e2e8f0; }
html.eye-mode .allocation-head > b { color:#cbd5e1; background:#202b3d; }
html.eye-mode .allocation-track { background:#263246; }
@media (max-width:720px) {
  .dashboard-allocation-card { padding:14px; }
  .dashboard-allocation-body { gap:10px; align-items:flex-start; }
  .dashboard-allocation-body .chart-donut { flex-basis:126px; max-width:126px !important; }
  .allocation-legend { min-width:0; }
  .allocation-row { grid-template-columns:7px 1fr 23px 28px; gap:6px; min-height:27px; }
  .allocation-track { display:none; }
  .allocation-label { overflow:hidden; text-overflow:ellipsis; }
}

/* 商品图查看器：所有商品缩略图均可点击放大，避免在库存列表中加载大图破坏阅读密度 */
.stock-thumb, .product-photo-open { border:0; padding:0; cursor:default; }
.stock-thumb.has-image, .product-photo-open { cursor:zoom-in; }
.product-photo-open { position:relative; width:100%; height:100%; overflow:hidden; color:#fff; background:transparent; }
.product-photo-open img { width:100%; height:100%; object-fit:cover; display:block; }
.product-photo-open i { position:absolute; inset:auto 0 0; padding:3px 0; background:rgba(15,23,42,.6); color:#fff; font-size:9px; line-height:1; font-style:normal; opacity:0; transition:opacity .15s; }
.product-photo-open:hover i { opacity:1; }
.modal.image-preview { width:min(860px, 94vw); max-height:94vh; border-radius:16px; overflow:hidden; background:#0b1120; }
.modal-mask.image-preview-mask { z-index:200000 !important; isolation:isolate; }
.modal-mask.image-preview-mask .modal.image-preview { position:relative; z-index:1; }

/* 2026-09-07：移动库存页紧凑化，减少总览占高并将搜索与筛选收进同一行。 */
@media(max-width:720px) {
  .m-stock-workbench { gap:9px !important; }
  .m-stock-overview-hero {
    padding:11px 12px 12px !important;
    border-radius:17px !important;
  }
  .m-stock-overview-hero::after { top:18px !important; width:132px !important; height:132px !important; }
  .m-stock-overview-top button { min-height:28px !important; padding:0 9px !important; }
  .m-stock-overview-main { margin-top:9px !important; }
  .m-stock-overview-main strong { margin-top:2px !important; font-size:25px !important; letter-spacing:-.7px !important; }
  .m-stock-overview-main > div > span { display:none !important; }
  .m-stock-overview-icon { width:42px !important; height:42px !important; flex-basis:42px !important; border-radius:13px !important; }
  .m-stock-tech-signal {
    min-height:0 !important;
    margin-top:9px !important;
    padding:8px 10px !important;
    border-radius:11px !important;
  }
  .m-stock-tech-signal em { font-size:7.5px !important; }
  .m-stock-overview-metrics { margin-top:9px !important; padding:8px 2px !important; border-radius:11px !important; }
  .m-stock-overview-metrics > div { padding:0 6px !important; }
  .m-stock-overview-metrics b { margin-top:2px !important; font-size:14px !important; }

  .m-stock-catalog-card { padding:10px 10px 12px !important; border-radius:17px !important; }
  .m-stock-catalog-head { display:none !important; }
  .m-stock-catalog-count {
    display:flex;
    align-items:baseline;
    justify-content:flex-end;
    gap:3px;
    min-height:20px;
    margin:0 2px 7px;
    color:#778981;
    font-size:9px;
  }
  .m-stock-catalog-count b { color:#27483e; font-size:14px; font-weight:750; }
  .m-stock-filter-line {
    position:relative;
    z-index:120;
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(78px,.72fr) minmax(88px,.82fr);
    align-items:start;
    gap:6px;
    margin-bottom:8px;
  }
  .m-stock-filter-line .m-stock-search { width:auto !important; margin:0 !important; }
  .m-stock-filter-line .m-stock-search > svg { left:9px !important; width:13px; height:13px; }
  .m-stock-filter-line .m-stock-search .input {
    min-width:0 !important;
    min-height:38px !important;
    height:38px !important;
    padding:0 7px 0 28px !important;
    border-radius:10px !important;
    font-size:11px !important;
  }
  .m-stock-filter-line .stock-filter-row {
    display:contents !important;
    width:auto !important;
    margin:0 !important;
  }
  .m-stock-filter-line .stock-filter-picker.is-mobile { width:auto !important; min-width:0 !important; }
  .m-stock-filter-line .stock-filter-picker-trigger {
    min-width:0 !important;
    min-height:38px !important;
    height:38px !important;
    gap:4px !important;
    padding:0 8px !important;
    border-radius:10px !important;
    font-size:10px !important;
  }
  .m-stock-filter-line .stock-filter-picker-trigger span {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  html.eye-mode .m-stock-catalog-count { color:#829994; }
  html.eye-mode .m-stock-catalog-count b { color:#b9d8d2; }
}
.image-viewer { display:flex; flex-direction:column; min-height:0; height:min(820px, 90vh); background:#0b1120; color:#e2e8f0; }
.image-viewer-head { display:flex; align-items:center; justify-content:space-between; min-height:52px; padding:0 16px; color:#cbd5e1; font-size:13px; }
.image-viewer-head .m-close { color:#e2e8f0; }
.image-viewer-stage { flex:1; min-height:0; display:flex; align-items:center; justify-content:center; padding:0 14px; }
.image-viewer-stage img { max-width:100%; max-height:100%; object-fit:contain; border-radius:5px; }
.image-viewer-tip { padding:11px 16px 14px; color:#94a3b8; font-size:11px; text-align:center; }

/* 手机端重新布局：经营信息前置、操作可单手触达、内容卡片维持克制的黑白秩序 */
@media (max-width:720px) {
  html.light-mode .mobile-dashboard { display:flex; flex-direction:column; gap:0; }
  html.light-mode .mobile-workspace-hero { position:relative; overflow:hidden; margin:0 0 11px; padding:15px 15px 14px; border-radius:18px; background:#111827; color:#fff; box-shadow:0 12px 26px rgba(15,23,42,.16); cursor:pointer; }
  html.light-mode .mobile-workspace-hero::after { content:''; position:absolute; width:150px; height:150px; right:-62px; top:-72px; border:28px solid rgba(255,255,255,.06); border-radius:50%; }
  html.light-mode .m-hero-eyebrow, html.light-mode .m-hero-greet, html.light-mode .m-hero-value, html.light-mode .m-hero-split { position:relative; z-index:1; }
  html.light-mode .m-hero-eyebrow { display:flex; justify-content:space-between; color:#9eacc0; font-size:9.5px; font-weight:700; letter-spacing:.65px; }
  html.light-mode .m-hero-eyebrow span:first-child { display:flex; align-items:center; gap:5px; color:#c7d2fe; }
  html.light-mode .m-hero-eyebrow i { width:6px; height:6px; border-radius:50%; background:#5eead4; box-shadow:0 0 0 3px rgba(94,234,212,.12); }
  html.light-mode .m-hero-greet { display:flex; align-items:center; justify-content:space-between; margin-top:13px; }
  html.light-mode .m-hero-greet h2 { margin:0; color:#fff; font-size:21px; line-height:1.2; letter-spacing:-.55px; }
  html.light-mode .m-hero-greet p { margin:4px 0 0; color:#9eacc0; font-size:11px; }
  html.light-mode .m-hero-arrow { display:flex; align-items:center; justify-content:center; width:28px; height:28px; border:1px solid #42516a; border-radius:50%; color:#e2e8f0; font-size:22px; }
  html.light-mode .m-hero-value { margin-top:18px; }
  html.light-mode .m-hero-value span { display:block; color:#9eacc0; font-size:11px; }
  html.light-mode .m-hero-value b { display:block; margin-top:2px; color:#fff; font-size:30px; line-height:1.08; letter-spacing:-1.1px; font-variant-numeric:tabular-nums; }
  html.light-mode .m-hero-split { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; padding-top:11px; border-top:1px solid rgba(255,255,255,.1); }
  html.light-mode .m-hero-split > div + div { padding-left:12px; border-left:1px solid rgba(255,255,255,.1); }
  html.light-mode .m-hero-split b, html.light-mode .m-hero-split span { display:block; }
  html.light-mode .m-hero-split b { color:#fff; font-size:17px; font-variant-numeric:tabular-nums; }
  html.light-mode .m-hero-split span { margin-top:2px; color:#9eacc0; font-size:10px; }
  html.light-mode .mobile-action-rail { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; margin:0 0 18px; }
  html.light-mode .mobile-action { display:flex; flex-direction:column; align-items:center; gap:6px; min-height:69px; padding:8px 2px; border:1px solid #e4e9ef; border-radius:13px; color:#3b4758; background:#fff; font-size:10px; font-weight:650; box-shadow:0 3px 10px rgba(15,23,42,.035); }
  html.light-mode .mobile-action:active { transform:scale(.97); background:#f8fafc; }
  html.light-mode .mobile-action .ma-icon { display:flex; align-items:center; justify-content:center; width:29px; height:29px; border-radius:9px; background:#f1f5f9; color:#111827; }
  html.light-mode .mobile-section-title { display:flex; align-items:flex-end; justify-content:space-between; margin:0 1px 8px; }
  html.light-mode .mobile-section-title > div { display:flex; flex-direction:column; gap:1px; }
  html.light-mode .mobile-section-title span { color:#94a3b8; font-size:10px; font-weight:650; letter-spacing:.35px; }
  html.light-mode .mobile-section-title b { color:#111827; font-size:15px; letter-spacing:-.2px; }
  html.light-mode .mobile-section-title button { border:0; padding:2px 0; color:#64748b; background:transparent; font-size:11px; }
  html.light-mode .mobile-kpi-grid { display:grid; grid-template-columns:repeat(3,1fr); overflow:visible; gap:8px; margin:0 0 13px; padding:0; }
  html.light-mode .mobile-kpi-grid .mobile-metric { min-width:0; min-height:98px; padding:11px 10px; border-radius:13px; text-align:left; box-shadow:0 3px 12px rgba(15,23,42,.04); }
  html.light-mode .mobile-kpi-grid .mobile-metric:first-child { color:inherit; border-color:#e5e9ef; background:#fff; }
  html.light-mode .mobile-kpi-grid .mobile-metric:first-child .m-value, html.light-mode .mobile-kpi-grid .mobile-metric:first-child .m-label, html.light-mode .mobile-kpi-grid .mobile-metric:first-child .m-icon { color:inherit; }
  html.light-mode .m-kpi-head { display:flex; align-items:center; gap:4px; color:#718096; font-size:10px; white-space:nowrap; }
  html.light-mode .m-kpi-head .m-icon { display:flex; align-items:center; color:#64748b; }
  html.light-mode .mobile-kpi-grid .m-value { margin-top:12px; color:#111827; font-size:19px; letter-spacing:-.55px; white-space:nowrap; }
  html.light-mode .mobile-kpi-grid .m-sub { overflow:hidden; margin-top:4px; color:#94a3b8; font-size:9.5px; text-overflow:ellipsis; white-space:nowrap; }
  html.light-mode .mobile-dashboard .mobile-order-banner { margin:0 0 18px; }
  html.light-mode .mobile-dashboard .age-list { margin-top:2px; }
  html.light-mode .mobile-dashboard > .card { margin-bottom:18px; padding:13px 14px; }
  html.light-mode .mobile-feed-card .feed-item:first-child { padding-top:3px; }
  html.light-mode .stock-thumb.has-image { cursor:zoom-in; }
  html.light-mode .product-photo-open i { opacity:1; }
  html.light-mode .modal.image-preview { width:100vw; max-width:100vw; max-height:100dvh; border-radius:0; }
  html.light-mode .image-viewer { height:100dvh; }
}
html.eye-mode .modal.image-preview, html.eye-mode .image-viewer { background:#070b13; }
@media (max-width:720px) {
  html.eye-mode .mobile-workspace-hero { background:#121b2a; border:1px solid #2a354a; }
  html.eye-mode .mobile-action, html.eye-mode .mobile-kpi-grid .mobile-metric, html.eye-mode .mobile-dashboard > .card { background:#161d2d; border-color:#2a354a; box-shadow:none; }
  html.eye-mode .mobile-action { color:#d5deeb; }
  html.eye-mode .mobile-action .ma-icon { background:#222d40; color:#e5e7eb; }
  html.eye-mode .mobile-section-title b { color:#edf2f7; }
  html.eye-mode .mobile-section-title button, html.eye-mode .mobile-section-title span, html.eye-mode .m-kpi-head, html.eye-mode .mobile-kpi-grid .m-sub { color:#8fa0b7; }
  html.eye-mode .mobile-kpi-grid .mobile-metric:first-child { background:#161d2d; border-color:#2a354a; }
  html.eye-mode .mobile-kpi-grid .mobile-metric:first-child .m-value, html.eye-mode .mobile-kpi-grid .mobile-metric:first-child .m-label, html.eye-mode .mobile-kpi-grid .mobile-metric:first-child .m-icon, html.eye-mode .mobile-kpi-grid .m-value { color:#f1f5f9; }
}

/* 会员授权：商用版账号审批与周期订阅后台 */
.license-chip { display:flex; align-items:center; gap:5px; padding:5px 8px; border:1px solid #dce3eb; border-radius:7px; color:#536174; background:#fff; font-size:11px; font-variant-numeric:tabular-nums; }
.license-chip.soon { color:#b45309; border-color:#f6d7a8; background:#fffaf0; }
.license-chip.permanent { color:#334155; }
.side-license { display:inline-block; margin-top:2px; color:#748093; font-size:10px; }
.side-license.soon { color:#b45309; }
.member-hero { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:118px; margin-bottom:13px; padding:22px 26px; border:1px solid #e0e5ec; border-left:4px solid #111827; border-radius:15px; background:#fff; }
.member-hero h2 { margin:4px 0 5px; color:#111827; font-size:21px; letter-spacing:-.45px; }
.member-hero p { color:#64748b; font-size:13px; }
.member-hero-note { display:flex; flex-direction:column; align-items:flex-end; padding:8px 0 8px 25px; border-left:1px solid #e6eaf0; }
.member-hero-note b { color:#111827; font-size:28px; line-height:1; font-variant-numeric:tabular-nums; }
.member-hero-note span { margin-top:5px; color:#64748b; font-size:11px; white-space:nowrap; }
.member-warning { display:flex; align-items:flex-start; gap:10px; margin-bottom:13px; padding:11px 13px; border:1px solid #f1dfbb; border-radius:11px; background:#fffaf0; color:#8a5d17; }
.member-warning svg { flex:none; margin-top:1px; }
.member-warning b, .member-warning span { display:block; }
.member-warning b { font-size:12px; }
.member-warning span { margin-top:3px; color:#9a7844; font-size:11.5px; line-height:1.55; }
.member-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:13px; }
.member-summary > div { min-height:84px; padding:14px 16px; border:1px solid #e1e6ed; border-radius:12px; background:#fff; }
.member-summary span { display:block; color:#64748b; font-size:12px; }
.member-summary b { display:block; margin-top:7px; color:#111827; font-size:24px; line-height:1; font-variant-numeric:tabular-nums; }
.member-list { padding:18px; }
.member-list-head { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:15px; }
.member-list-head h3 { margin-top:3px; color:#1f2937; font-size:16px; }
.member-filter { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.member-filter .chip { cursor:pointer; }
.member-columns, .member-row { display:grid; grid-template-columns:minmax(190px,1.15fr) 80px 90px 150px minmax(245px,1fr); align-items:center; gap:12px; }
.member-columns { padding:0 12px 8px; color:#94a3b8; font-size:10.5px; font-weight:700; letter-spacing:.35px; }
.member-row { min-height:70px; padding:10px 12px; border-top:1px solid #edf0f4; }
.member-row:hover { background:#fafbfd; }
.member-user { display:flex; align-items:center; min-width:0; gap:10px; }
.member-avatar { display:flex; flex:none; align-items:center; justify-content:center; width:31px; height:31px; border-radius:9px; color:#fff; background:#111827; font-size:12px; font-weight:700; }
.member-user b, .member-user span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.member-user b { color:#273244; font-size:13px; font-weight:650; }
.member-user span { margin-top:3px; color:#94a0b1; font-size:10.5px; }
.member-role { color:#64748b; font-size:12px; }
.member-status { display:inline-flex; padding:4px 7px; border-radius:99px; background:#f1f5f9; color:#526174; font-size:10.5px; font-weight:700; }
.member-status.pending { background:#fff7e6; color:#b45309; }
.member-status.active, .member-status.permanent { background:#ecfdf5; color:#047857; }
.member-status.soon { background:#fff7ed; color:#c2410c; }
.member-status.expired, .member-status.disabled, .member-status.rejected { background:#fef2f2; color:#b91c1c; }
.member-expiry { color:#475569; font-size:11.5px; font-variant-numeric:tabular-nums; }
.member-expiry small { display:block; margin-top:3px; color:#c2410c; font-size:10px; }
.member-actions { display:flex; align-items:center; justify-content:flex-end; gap:6px; }
.member-actions .member-duration { width:72px; min-height:30px; padding:4px 5px; font-size:11px; }
.member-actions .btn { min-width:48px; }
.member-actions .member-supply-btn { min-width:62px; color:#64748b; }
.member-actions .member-supply-btn.enabled { border-color:#86b9a0; color:#16734a; background:#f0fdf5; }
.member-permanent { color:#94a3b8; font-size:11px; text-align:right; }
.member-empty { padding:42px; color:#94a3b8; text-align:center; font-size:13px; }
html.eye-mode .license-chip { color:#b9c5d8; border-color:#344158; background:#161d2d; }
html.eye-mode .license-chip.soon { color:#f5be77; border-color:#785622; background:#2e2619; }
html.eye-mode .side-license { color:#8d9aae; }
html.eye-mode .member-hero, html.eye-mode .member-summary > div, html.eye-mode .member-list { background:#161d2d; border-color:#2a354a; }
html.eye-mode .member-hero { border-left-color:#91a4ff; }
html.eye-mode .member-hero h2, html.eye-mode .member-hero-note b, html.eye-mode .member-summary b, html.eye-mode .member-list-head h3, html.eye-mode .member-user b { color:#f1f5f9; }
html.eye-mode .member-hero p, html.eye-mode .member-summary span, html.eye-mode .member-role, html.eye-mode .member-expiry { color:#aeb9cc; }
html.eye-mode .member-hero-note, html.eye-mode .member-row { border-color:#2a354a; }
html.eye-mode .member-row:hover { background:#1c2638; }
html.eye-mode .member-warning { border-color:#684e22; background:#292416; color:#f4c675; }
html.eye-mode .member-warning span { color:#c5a66a; }
html.eye-mode .member-avatar { background:#334155; }
html.eye-mode .member-columns, html.eye-mode .member-user span, html.eye-mode .member-permanent { color:#8190a6; }
html.eye-mode .member-actions .member-supply-btn.enabled { border-color:#397356; color:#8ee2b4; background:#173326; }

/* 独立库存处置页：从库存导航进入，避免和品牌/采购混在管理中心。 */
.inventory-life-hero { display:flex; align-items:center; justify-content:space-between; min-height:136px; margin-bottom:16px; padding:24px 28px; overflow:hidden; border:1px solid #dbe1ea; border-left:4px solid #111827; border-radius:16px; background:linear-gradient(115deg,#ffffff 0%,#f8fafc 68%,#eef2f6 100%); }
.inventory-life-hero h2 { margin:5px 0 6px; color:#111827; font-size:25px; letter-spacing:-.7px; }
.inventory-life-hero p { margin:0; color:#64748b; font-size:13px; }
.inventory-life-summary { display:flex; min-width:132px; flex-direction:column; align-items:flex-end; padding-left:25px; border-left:1px solid #dbe1ea; }
.inventory-life-summary b { color:#111827; font-size:36px; font-variant-numeric:tabular-nums; line-height:1; }
.inventory-life-summary span { margin-top:7px; color:#64748b; font-size:12px; }
.inventory-life-content .grid { gap:12px; }
.inventory-life-content .stat-card { min-height:112px; padding:18px 20px; border-color:#e2e8f0; box-shadow:none; }
.inventory-life-content .stat-card .value.sm { margin-top:8px; font-size:26px; font-variant-numeric:tabular-nums; }
.inventory-life-content.is-defect .stat-card:first-child { border-top:3px solid #f59e0b; }
.inventory-life-content.is-defect .stat-card:last-child { border-top:3px solid #ef4444; }
.inventory-life-content.is-soldout .stat-card:first-child { border-top:3px solid #0f172a; }
.inventory-life-content.is-soldout .stat-card:nth-child(2) { border-top:3px solid #2563eb; }
.inventory-life-content.is-soldout .stat-card:last-child { border-top:3px solid #10b981; }
.inventory-life-content > .card { padding:18px; border-color:#e2e8f0; }
.inventory-life-content > .card > h3 { margin:0 0 14px; }
.inventory-life-content .toolbar { padding:11px; border:1px solid #edf0f4; border-radius:12px; background:#fafbfc; }
.inventory-life-content .stock-row { overflow:hidden; border-color:#e2e8f0; border-radius:12px; }
.inventory-life-content .stock-row:hover { border-color:#94a3b8; box-shadow:0 8px 20px rgba(15,23,42,.06); }
.soldout-record { display:grid; grid-template-columns:34px 44px minmax(220px,1fr) minmax(220px,.7fr); gap:12px; align-items:center; min-height:78px; padding:12px 10px; border-bottom:1px solid #edf0f4; }
.soldout-record:last-child { border-bottom:0; }
.soldout-record .idx { margin:0; }
.soldout-thumb { width:40px; height:40px; }
.soldout-code { margin-top:3px; color:#94a3b8; font-size:11px; }
.soldout-record .main .t { font-weight:650; }
.soldout-record .main .s { margin-top:4px; color:#64748b; font-size:12px; }
.soldout-record .val { text-align:right; }
html.eye-mode .inventory-life-hero, html.eye-mode .inventory-life-content > .card, html.eye-mode .inventory-life-content .stat-card { border-color:#2c3850; background:#161d2d; }
html.eye-mode .inventory-life-hero { border-left-color:#aebcff; background:linear-gradient(115deg,#171f31,#161d2d 70%,#1b2b3b); }
html.eye-mode .inventory-life-hero h2, html.eye-mode .inventory-life-summary b { color:#eef2f8; }
html.eye-mode .inventory-life-hero p, html.eye-mode .inventory-life-summary span, html.eye-mode .soldout-code, html.eye-mode .soldout-record .main .s { color:#9aa9bd; }
html.eye-mode .inventory-life-summary, html.eye-mode .soldout-record { border-color:#2c3850; }
html.eye-mode .inventory-life-content .toolbar { border-color:#2c3850; background:#111827; }
html.eye-mode .inventory-life-content .stock-row { border-color:#2c3850; background:#161d2d; }
html.eye-mode .inventory-life-content .stock-row:hover { border-color:#5b6b88; box-shadow:none; }
html.eye-mode .soldout-record .main .t { color:#edf2f8; }
.soldout-control { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:13px; background:#fff; }
.soldout-periods { display:flex; gap:7px; flex-wrap:wrap; }
.soldout-custom { display:flex; align-items:center; gap:7px; color:#94a3b8; font-size:12px; }
.soldout-custom .input { width:145px; height:34px; }
.soldout-overview { display:grid; grid-template-columns:repeat(4,1fr); margin-bottom:14px; overflow:hidden; border:1px solid #e2e8f0; border-radius:15px; background:#fff; }
.soldout-overview > div { min-height:112px; padding:18px 22px; border-right:1px solid #edf0f4; }
.soldout-overview > div:last-child { border-right:0; }
.soldout-overview span, .soldout-overview small { display:block; color:#7b8798; font-size:12px; }
.soldout-overview b { display:block; margin:6px 0 5px; color:#111827; font-size:25px; font-variant-numeric:tabular-nums; letter-spacing:-.5px; }
.soldout-overview small { font-size:11px; }
.soldout-list { overflow:hidden; border:1px solid #e2e8f0; border-radius:15px; background:#fff; }
.soldout-list-head { display:flex; align-items:flex-end; justify-content:space-between; padding:17px 20px; border-bottom:1px solid #edf0f4; }
.soldout-list-head h3 { margin:4px 0 0; color:#111827; font-size:17px; }
.soldout-list-head > span { color:#94a3b8; font-size:11px; }
.soldout-columns, .soldout-insight-row { display:grid; grid-template-columns:30px 46px minmax(210px,1fr) 100px 78px 118px 128px 54px; gap:12px; align-items:center; }
.soldout-columns { padding:10px 20px; color:#94a3b8; font-size:11px; background:#fafbfc; }
.soldout-columns span:first-child { grid-column:1 / 4; }
.soldout-insight-row { position:relative; min-height:78px; padding:10px 20px; border-top:1px solid #edf0f4; }
.soldout-insight-row:hover { background:#fafbfc; }
.soldout-rank { color:#94a3b8; font-size:11px; font-variant-numeric:tabular-nums; }
.soldout-insight-thumb { width:42px; height:42px; }
.soldout-insight-product { min-width:0; }
.soldout-insight-product b { display:block; overflow:hidden; color:#1f2937; font-size:13px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }
.soldout-insight-product span { display:block; overflow:hidden; margin-top:4px; color:#8a96a8; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.soldout-cycle b, .soldout-kpi b, .soldout-profit b { display:block; color:#1f2937; font-size:14px; font-variant-numeric:tabular-nums; }
.soldout-cycle span, .soldout-kpi span, .soldout-profit span { display:block; margin-top:3px; color:#94a3b8; font-size:10px; }
.soldout-cycle.fast b { color:#059669; }.soldout-cycle.slow b { color:#d97706; }.soldout-profit b.pos { color:#059669; }.soldout-profit b.neg { color:#dc2626; }
.soldout-detail { justify-self:end; }
html.eye-mode .soldout-control, html.eye-mode .soldout-overview, html.eye-mode .soldout-list { border-color:#2c3850; background:#161d2d; }
html.eye-mode .soldout-overview > div, html.eye-mode .soldout-list-head, html.eye-mode .soldout-insight-row { border-color:#2c3850; }
html.eye-mode .soldout-columns { background:#111827; }.eye-mode .soldout-insight-row:hover { background:#1b2638; }
html.eye-mode .soldout-overview b, html.eye-mode .soldout-list-head h3, html.eye-mode .soldout-insight-product b, html.eye-mode .soldout-cycle b, html.eye-mode .soldout-kpi b { color:#edf2f8; }
html.eye-mode .soldout-overview span, html.eye-mode .soldout-overview small, html.eye-mode .soldout-list-head > span, html.eye-mode .soldout-columns, html.eye-mode .soldout-insight-product span, html.eye-mode .soldout-cycle span, html.eye-mode .soldout-kpi span, html.eye-mode .soldout-profit span { color:#9aa9bd; }
.store-profile-card { margin-bottom:14px; padding:18px 20px; border-color:#e2e8f0; }
.store-profile-title { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.store-profile-title h3 { margin:5px 0 6px; color:#111827; font-size:17px; }.store-profile-title p { margin:0; color:#718096; font-size:12px; }
.store-profile-form { display:flex; gap:9px; max-width:620px; margin-top:15px; }.store-profile-form .input { flex:1; }
html.eye-mode .store-profile-card { border-color:#2c3850; background:#161d2d; }html.eye-mode .store-profile-title h3 { color:#edf2f8; }html.eye-mode .store-profile-title p { color:#9aa9bd; }

/* 入库品牌选择：统一可搜索控件，避免原生下拉在浏览器和手机 WebView 中样式失控或不响应。 */
.brand-picker { position:relative; z-index:30; }
.brand-picker-input-wrap { position:relative; }
.brand-picker-input-wrap .input { padding-right:42px; }
.brand-picker-toggle { position:absolute; top:50%; right:6px; display:flex; width:30px; height:30px; align-items:center; justify-content:center; transform:translateY(-50%); border:0; border-radius:8px; background:transparent; color:#64748b; font-size:20px; line-height:1; cursor:pointer; transition:.16s ease; }
.brand-picker-toggle:hover, .brand-picker.open .brand-picker-toggle { background:#f1f5f9; color:#111827; }
.brand-picker-popover { position:absolute; top:calc(100% + 7px); right:0; left:0; overflow:hidden; border:1px solid #dbe3ee; border-radius:13px; background:#fff; box-shadow:0 18px 36px rgba(15,23,42,.16); z-index:100; }
.brand-picker-popover[hidden] { display:none; }
.brand-picker-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border-bottom:1px solid #edf0f4; color:#64748b; font-size:11px; }
.brand-picker-head span:first-child { color:#273244; font-size:12px; font-weight:700; }
.brand-picker-options { max-height:244px; overflow:auto; padding:6px; }
.brand-picker-option { display:flex; width:100%; align-items:center; justify-content:space-between; gap:12px; padding:10px 11px; border:0; border-radius:9px; background:#fff; color:#172033; font-size:13px; font-weight:650; text-align:left; cursor:pointer; transition:.14s ease; }
.brand-picker-option:hover { background:#f1f5f9; color:#111827; }
.brand-picker-option small { color:#94a3b8; font-size:10px; font-weight:500; }
.brand-picker-empty { padding:15px 12px; color:#7b8798; font-size:12px; line-height:1.55; }
html.eye-mode .brand-picker-toggle:hover, html.eye-mode .brand-picker.open .brand-picker-toggle { background:#29354a; color:#f1f5f9; }
html.eye-mode .brand-picker-popover { border-color:#344158; background:#161d2d; box-shadow:0 18px 36px rgba(0,0,0,.34); }
html.eye-mode .brand-picker-head { border-color:#2a354a; color:#9aa9bd; }.eye-mode .brand-picker-head span:first-child { color:#edf2f8; }
html.eye-mode .brand-picker-option { background:#161d2d; color:#e8edf6; }.eye-mode .brand-picker-option:hover { background:#243149; color:#fff; }.eye-mode .brand-picker-option small { color:#8f9db3; }.eye-mode .brand-picker-empty { color:#aab5c7; }
html.eye-mode .stock-filter-picker-trigger { border-color:#344158; background:#111827; color:#dbe4f2; }.eye-mode .stock-filter-picker-trigger:hover, .eye-mode .stock-filter-picker.open .stock-filter-picker-trigger { border-color:#91a4ff; background:#172136; color:#fff; }.eye-mode .stock-filter-picker-popover { border-color:#344158; background:#161d2d; }.eye-mode .stock-filter-picker-head { border-color:#2a354a; color:#9aa9bd; }.eye-mode .stock-filter-picker-option { background:#161d2d; color:#dbe4f2; }.eye-mode .stock-filter-picker-option:hover { background:#243149; color:#fff; }.eye-mode .stock-filter-picker-option.active { background:#91a4ff; color:#101522; }
html.eye-mode .app-select-trigger { border-color:#344158; background:#111827; color:#dbe4f2; }.eye-mode .app-select-trigger:hover, .eye-mode .app-select-picker.open .app-select-trigger { border-color:#91a4ff; background:#172136; color:#fff; }.eye-mode .app-select-popover { border-color:#344158; background:#161d2d; }.eye-mode .app-select-head { border-color:#2a354a; color:#9aa9bd; }.eye-mode .app-select-option { background:#161d2d; color:#dbe4f2; }.eye-mode .app-select-option:hover { background:#243149; color:#fff; }.eye-mode .app-select-option.active { background:#91a4ff; color:#101522; }
@media (max-width:720px) {
  .inventory-life-hero { min-height:108px; margin:0 0 12px; padding:18px 16px; border-radius:13px; }
  .inventory-life-hero h2 { font-size:20px; }
  .inventory-life-hero p { max-width:230px; font-size:11px; line-height:1.55; }
  .inventory-life-summary { min-width:72px; padding-left:12px; }
  .inventory-life-summary b { font-size:27px; }
  .inventory-life-summary span { font-size:10px; white-space:nowrap; }
  .inventory-life-content .grid { grid-template-columns:repeat(2,1fr); gap:8px; }
  .inventory-life-content .stat-card { min-height:88px; padding:13px; }
  .inventory-life-content .stat-card .value.sm { font-size:21px; }
  .inventory-life-content > .card { padding:12px; }
  .inventory-life-content .toolbar { padding:8px; }
  .soldout-record { grid-template-columns:28px 38px minmax(0,1fr); gap:8px; min-height:74px; padding:10px 2px; }
  .soldout-record .val { grid-column:3; text-align:left; }
  .soldout-thumb { width:36px; height:36px; }
  .soldout-control { display:block; padding:9px; }.soldout-periods { flex-wrap:nowrap; overflow:auto; padding-bottom:2px; }.soldout-periods .chip { flex:none; }
  .soldout-custom { margin-top:9px; }.soldout-custom .input { min-width:0; flex:1; width:auto; }
  .soldout-overview { grid-template-columns:repeat(2,1fr); }.soldout-overview > div { min-height:86px; padding:13px; border-bottom:1px solid #edf0f4; }.soldout-overview > div:nth-child(2) { border-right:0; }.soldout-overview b { font-size:21px; }
  .soldout-list-head { display:block; padding:14px; }.soldout-list-head > span { display:block; margin-top:5px; }.soldout-columns { display:none; }
  .soldout-insight-row { grid-template-columns:24px 42px minmax(0,1fr) auto; gap:8px; min-height:92px; padding:11px 12px; }.soldout-insight-thumb { margin:0; }.soldout-insight-product { margin:0; padding:0; }.soldout-cycle { text-align:right; }
  .soldout-kpi, .soldout-profit { grid-row:2; }.soldout-kpi:nth-of-type(5) { grid-column:3; }.soldout-kpi:nth-of-type(6) { grid-column:3; grid-row:3; }.soldout-profit { grid-column:4; text-align:right; }.soldout-detail { display:none; }
  .store-profile-card { padding:14px; }.store-profile-title { display:block; }.store-profile-title .tag { display:inline-flex; margin-top:9px; }.store-profile-form { margin-top:12px; }
  .license-chip { max-width:106px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .member-hero { min-height:104px; margin:-1px -2px 12px; padding:18px 16px; border-radius:13px; }
  .member-hero h2 { font-size:19px; }
  .member-hero p { font-size:11px; line-height:1.55; }
  .member-hero-note { padding-left:12px; }
  .member-hero-note b { font-size:24px; }
  .member-hero-note span { font-size:10px; }
  .member-warning { margin-bottom:10px; padding:10px; }
  .member-summary { grid-template-columns:repeat(2,1fr); gap:8px; margin-bottom:10px; }
  .member-summary > div { min-height:70px; padding:12px; }
  .member-summary b { font-size:21px; }
  .member-list { padding:12px; }
  .member-list-head { display:block; margin-bottom:10px; }
  .member-filter { margin-top:10px; justify-content:flex-start; overflow:auto; flex-wrap:nowrap; padding-bottom:2px; }
  .member-filter .chip { flex:none; }
  .member-columns { display:none; }
  .member-row { grid-template-columns:1fr auto; gap:8px; padding:12px 2px; }
  .member-row > .member-role { display:none; }
  .member-row > .member-status { grid-column:2; grid-row:1; }
  .member-expiry { grid-column:1; grid-row:2; margin-left:41px; }
  .member-actions, .member-permanent { grid-column:1 / -1; grid-row:3; justify-content:flex-start; margin-left:41px; }
  .brand-picker.is-mobile { z-index:80; }
  .brand-picker.is-mobile .brand-picker-popover { position:fixed; right:12px; bottom:84px; left:12px; top:auto; max-height:54vh; border-radius:16px; box-shadow:0 18px 44px rgba(15,23,42,.24); }
  .brand-picker.is-mobile .brand-picker-options { max-height:calc(54vh - 47px); padding:8px; }
  .brand-picker.is-mobile .brand-picker-option { padding:13px 12px; font-size:14px; }
  .brand-picker-custom { display:flex; width:calc(100% - 16px); min-height:42px; align-items:center; justify-content:center; margin:4px 8px 8px; border:1px solid #d8dee8; border-radius:10px; background:#f8fafc; color:#334155; font:inherit; font-size:13px; font-weight:700; }
  .brand-picker-manual { display:flex; gap:7px; padding:0 8px 9px; }
  .brand-picker-manual .input { min-width:0; flex:1; min-height:40px; font-size:13px; }
  .brand-picker-manual button { flex:none; min-height:40px; padding:0 12px; border:0; border-radius:9px; background:#111827; color:#fff; font:inherit; font-size:12px; font-weight:700; }
  html.eye-mode .brand-picker-custom { border-color:#344158; background:#1f2a3c; color:#e8edf6; }
  html.eye-mode .brand-picker-manual button { background:#91a4ff; color:#101522; }
  .stock-filter-picker.is-mobile .stock-filter-picker-popover { position:fixed; right:12px; bottom:82px; left:12px; top:auto; border-radius:16px; box-shadow:0 18px 46px rgba(15,23,42,.25); }
  .stock-filter-picker.is-mobile .stock-filter-picker-head { padding:13px 15px; font-size:12px; }
  .stock-filter-picker.is-mobile .stock-filter-picker-options { padding:8px; }
  .stock-filter-picker.is-mobile .stock-filter-picker-option { min-height:45px; padding:11px 12px; font-size:14px; }
  .app-select-picker.is-mobile { flex:1; }.app-select-picker.is-mobile .app-select-popover { position:fixed; right:12px; bottom:82px; left:12px; top:auto; border-radius:16px; box-shadow:0 18px 46px rgba(15,23,42,.25); }.app-select-picker.is-mobile .app-select-head { padding:13px 15px; font-size:12px; }.app-select-picker.is-mobile .app-select-options { padding:8px; }.app-select-picker.is-mobile .app-select-option { min-height:45px; padding:11px 12px; font-size:14px; }
}

/* ===== 手机视觉层级 2.0：让经营、操作、录入三类信息一眼区分 ===== */
@media (max-width:720px) {
  html.light-mode body,
  html.light-mode .shell { background:
    radial-gradient(110% 46% at 100% 0%, rgba(48,65,91,.11), transparent 55%),
    linear-gradient(180deg,#f7f8fa 0%,#edf0f4 54%,#f5f6f8 100%); }
  html.light-mode .topbar { border-bottom-color:rgba(203,213,225,.72); box-shadow:0 3px 13px rgba(15,23,42,.035); }
  html.light-mode .topbar .page-title { color:#172033; }

  /* 仪表盘：用深色经营主卡 + 四个低饱和业务入口拉开层次。 */
  html.light-mode .mobile-workspace-hero { background:linear-gradient(135deg,#111827 0%,#1e293b 62%,#263650 100%); box-shadow:0 14px 30px rgba(15,23,42,.20); }
  html.light-mode .mobile-action-rail { gap:9px; margin-bottom:20px; }
  html.light-mode .mobile-action { min-height:76px; border-width:1px; box-shadow:0 7px 16px rgba(15,23,42,.055); font-size:10.5px; }
  html.light-mode .mobile-action .ma-icon { width:32px; height:32px; }
  html.light-mode .mobile-action { color:#344155; }
  html.light-mode .mobile-action:nth-child(1) { background:#f7f9fc; border-color:#dbe2ea; }
  html.light-mode .mobile-action:nth-child(1) .ma-icon { background:#e8edf4; color:#25344b; }
  html.light-mode .mobile-action:nth-child(2) { background:#f2f5f9; border-color:#d6dee8; }
  html.light-mode .mobile-action:nth-child(2) .ma-icon { background:#dde5ef; color:#31425b; }
  html.light-mode .mobile-action:nth-child(3) { background:#f7f9fc; border-color:#dbe2ea; }
  html.light-mode .mobile-action:nth-child(3) .ma-icon { background:#e8edf4; color:#25344b; }
  html.light-mode .mobile-action:nth-child(4) { background:#eef2f6; border-color:#d2dbe6; }
  html.light-mode .mobile-action:nth-child(4) .ma-icon { background:#dce5ee; color:#31425b; }
  html.light-mode .mobile-section-title { margin:3px 2px 10px; }
  html.light-mode .mobile-section-title b { font-size:17px; }
  html.light-mode .mobile-section-title button { padding:5px 8px; border-radius:999px; background:rgba(255,255,255,.7); color:#556274; }
  html.light-mode .mobile-kpi-grid { gap:9px; margin-bottom:18px; }
  html.light-mode .mobile-kpi-grid .mobile-metric { min-height:104px; border:1px solid #dce3eb; border-top:3px solid #475569; box-shadow:0 8px 18px rgba(15,23,42,.06); }
  html.light-mode .mobile-kpi-grid .mobile-metric:nth-child(1) { background:linear-gradient(155deg,#fff 20%,#f1f4f8); border-top-color:#25344b; }
  html.light-mode .mobile-kpi-grid .mobile-metric:nth-child(2) { background:linear-gradient(155deg,#fff 20%,#f4f6f8); border-top-color:#52627a; }
  html.light-mode .mobile-kpi-grid .mobile-metric:nth-child(3) { background:linear-gradient(155deg,#fff 20%,#eef1f5); border-top-color:#718096; }
  html.light-mode .m-kpi-head { color:#64748b; font-weight:700; }
  html.light-mode .mobile-kpi-grid .m-value { font-size:21px; }
  html.light-mode .mobile-dashboard > .card { border:1px solid rgba(219,226,235,.92); border-radius:17px; box-shadow:0 10px 22px rgba(15,23,42,.055); }
  html.light-mode .mobile-dashboard > .card h3 { padding-bottom:10px; border-bottom:1px solid #edf0f4; }
  html.light-mode .mobile-dashboard .age-list > div:nth-child(1) { background:#f1f3f6; border-left-color:#26364e; }
  html.light-mode .mobile-dashboard .age-list > div:nth-child(2) { background:#f5f6f8; border-left-color:#52627a; }
  html.light-mode .mobile-dashboard .age-list > div:nth-child(3) { background:#f8f9fb; border-left-color:#718096; }
  html.light-mode .mobile-dashboard .age-list > div:nth-child(4) { background:#fbfcfd; border-left-color:#94a3b8; }
  html.light-mode .mobile-dashboard .age-list > div { margin:6px 0; padding:9px 10px; border:0; border-left:3px solid transparent; border-radius:10px; }

  /* 入库表单：输入区、图片区、尺码区分别采用独立的浅色工作面。 */
  html.light-mode .m-tabs { position:relative; top:auto; margin-bottom:12px !important; border:1px solid #e3e8ef; box-shadow:0 8px 20px rgba(15,23,42,.07); }
  html.light-mode .m-tab.active { background:linear-gradient(135deg,#111827,#25324a); box-shadow:0 4px 10px rgba(15,23,42,.16); }
  html.light-mode .m-in-form-card { border:0; border-radius:18px; box-shadow:0 13px 28px rgba(15,23,42,.075); }
  html.light-mode .m-in-form-head { padding:18px 16px 17px; background:linear-gradient(135deg,#172033 0%,#253a5b 100%); }
  html.light-mode .m-in-form-card .form-grid { padding-top:2px; }
  html.light-mode .m-in-form-card label.small { color:#64748b; font-weight:700; letter-spacing:.1px; }
  html.light-mode .m-in-form-card .input { min-height:46px; border-color:#dce3ec; background:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
  html.light-mode .m-in-form-card .input:focus { border-color:#6366f1; box-shadow:0 0 0 3px rgba(99,102,241,.12); }
  html.light-mode .m-in-product-photo { padding:12px; border-color:#cfd9eb; border-radius:14px; background:linear-gradient(135deg,#f2f5ff,#f8fafc); }
  html.light-mode .m-in-product-photo .product-photo-preview { background:#e6edff; border-color:#d8e2fb; color:#52617b; }
  html.light-mode .m-in-product-photo .in-product-photo-actions .btn { border-color:#cdd8ec; background:#fff; color:#26364e; }
  html.light-mode .m-inrow { border:1px solid #dfe6ee; border-left:3px solid #40506a; border-radius:13px; background:#f8fafc; box-shadow:0 4px 10px rgba(15,23,42,.025); }
  html.light-mode .m-inrow:nth-of-type(even) { border-left-color:#718096; }
  html.light-mode .m-in-summary { padding:12px 5px; border:1px solid #e1e7ee; border-radius:13px; background:linear-gradient(135deg,#f5f7fb,#eef3f9); }
  html.light-mode .m-in-summary > div + div { border-left:1px solid #dce3eb; }
  html.light-mode .m-in-summary b { color:#172033; font-size:18px; }
  html.light-mode .m-in-add-row { border-color:#9aa8ba; color:#334155; background:#f3f5f8; }
  html.light-mode .m-submit { min-height:50px; border:0; background:linear-gradient(135deg,#111827,#334155); box-shadow:0 10px 18px rgba(15,23,42,.18); }

  /* 库存和历史列表：将“商品”与“金额 / 数量”拆成两层阅读。 */
  html.light-mode .m-stock-item,
  html.light-mode .m-stock-card,
  html.light-mode .m-tcard { border:1px solid #e0e6ed; box-shadow:0 7px 16px rgba(15,23,42,.045); }
  html.light-mode .m-stock-item { border-left:3px solid #94a3b8; }
  html.light-mode .m-stock-item:has(.has-image) { border-left-color:#6366f1; }
  html.light-mode .m-stock-stats { background:#f3f6fa; }
  html.light-mode .m-stock-stats .item + .item { border-left:1px solid #dfe5ed; }
  html.light-mode .m-tcard .cell { background:#f2f5f9; }
}

/* ===== 深色科技感 3.0：用空间层次替代生硬的深色矩形 ===== */
html.eye-mode body {
  background:
    radial-gradient(900px 520px at 88% -8%, rgba(57,189,207,.15), transparent 63%),
    radial-gradient(720px 480px at 5% 110%, rgba(98,91,255,.13), transparent 68%),
    #09111f;
}
html.eye-mode body::before {
  z-index:0;
  opacity:1;
  background:
    linear-gradient(rgba(132,168,211,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(132,168,211,.025) 1px, transparent 1px),
    radial-gradient(circle at 84% 3%, rgba(81,229,216,.10), transparent 24%),
    radial-gradient(circle at 8% 88%, rgba(111,105,255,.10), transparent 25%);
  background-size:38px 38px, 38px 38px, auto, auto;
}
html.eye-mode .shell,
html.eye-mode .page-main { position:relative; background:transparent; }
html.eye-mode .page-main::before {
  content:''; position:fixed; z-index:-1; inset:64px 0 0 var(--sidebar-w); pointer-events:none;
  background:linear-gradient(115deg, rgba(10,19,34,.54), rgba(10,19,34,.12) 46%, rgba(14,35,49,.28));
}
html.eye-mode .content { position:relative; }
html.eye-mode .content::after {
  content:''; position:absolute; z-index:-1; top:12px; right:8%; width:260px; height:260px;
  border:1px solid rgba(113,222,230,.07); border-radius:50%; box-shadow:0 0 0 42px rgba(113,222,230,.025), 0 0 0 84px rgba(113,222,230,.015);
  pointer-events:none;
}
html.eye-mode .topbar {
  background:rgba(10,18,32,.78) !important;
  border-bottom-color:rgba(103,135,174,.22) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.14);
}
html.eye-mode .sidebar {
  background:linear-gradient(180deg, #080f1e 0%, #0b1426 55%, #09101d 100%) !important;
  border-right:1px solid rgba(109,142,183,.18);
}
html.eye-mode .sidebar .brand,
html.eye-mode .sidebar .side-foot { border-color:rgba(103,136,177,.18); }
html.eye-mode .sidebar nav a { border-left-width:2px; }
html.eye-mode .sidebar nav a:hover { background:rgba(99,213,228,.075); }
html.eye-mode .sidebar nav a.active {
  background:linear-gradient(90deg, rgba(111,119,255,.28), rgba(62,205,211,.08)) !important;
  box-shadow:inset 0 0 18px rgba(106,123,255,.05), 0 6px 16px rgba(0,0,0,.12);
  border-left-color:#8b98ff !important;
}
html.eye-mode .card,
html.eye-mode .stat-card,
html.eye-mode .metric-card,
html.eye-mode .stock-row,
html.eye-mode .stock-item {
  background:linear-gradient(135deg, rgba(23,34,55,.92), rgba(18,29,48,.86)) !important;
  border-color:rgba(88,123,163,.35) !important;
  box-shadow:inset 0 1px 0 rgba(200,231,255,.035), 0 12px 28px rgba(0,0,0,.13);
}
html.eye-mode .card { backdrop-filter:blur(14px); }
html.eye-mode .card h3,
html.eye-mode .card h2 { letter-spacing:.08px; }
html.eye-mode .card:not(.no-hover):hover {
  border-color:rgba(110,165,211,.52) !important;
  box-shadow:inset 0 1px 0 rgba(210,240,255,.06), 0 16px 34px rgba(0,0,0,.20);
}
html.eye-mode .btn.primary,
html.eye-mode .btn.main,
html.eye-mode .stock-add {
  background:linear-gradient(135deg, #7784ff 0%, #6f72f2 56%, #5e62d5 100%) !important;
  border-color:#8d98ff !important;
  color:#fff !important;
  box-shadow:0 8px 18px rgba(90,101,236,.24);
}
html.eye-mode .btn.primary:hover,
html.eye-mode .btn.main:hover,
html.eye-mode .stock-add:hover { filter:brightness(1.1); transform:translateY(-1px); }
html.eye-mode .btn:not(.primary):not(.main),
html.eye-mode .chip:not(.active) {
  background:rgba(18,31,52,.82) !important;
  border-color:rgba(90,124,164,.46) !important;
}
html.eye-mode .chip.active {
  background:linear-gradient(135deg, #7f8dff, #6e73e8) !important;
  border-color:#9ba4ff !important;
  color:#fff !important;
  box-shadow:0 5px 14px rgba(100,112,255,.20);
}
html.eye-mode .input,
html.eye-mode select.input,
html.eye-mode textarea.input {
  background:rgba(10,20,37,.88) !important;
  border-color:rgba(78,116,158,.55) !important;
  box-shadow:inset 0 1px 0 rgba(194,226,255,.025);
}
html.eye-mode .input:focus,
html.eye-mode select.input:focus,
html.eye-mode textarea.input:focus {
  border-color:#8693ff !important;
  box-shadow:0 0 0 3px rgba(118,132,255,.16), inset 0 1px 0 rgba(194,226,255,.05) !important;
}
html.eye-mode .table thead th { background:rgba(17,31,52,.88) !important; }
html.eye-mode .table tbody tr:hover td { background:rgba(54,94,128,.16) !important; }
html.eye-mode .tag { border:1px solid rgba(128,159,197,.18); }

/* ===== 明亮科技工作台：柔和空间感，不使用生硬的大白卡 ===== */
html.light-mode {
  --primary:#5868e8;
  --primary-dark:#4353cf;
  --primary-light:#e8ebff;
  --bg:#edf3fa;
  --card:#ffffff;
  --border:#d9e3f0;
  --text:#17243a;
  --text-2:#52637a;
  --text-3:#8392a7;
  --sidebar-bg:#f6f9fd;
  --sidebar-text:#52637a;
  --sidebar-active:#4558dc;
  --shadow:0 18px 44px rgba(38,64,102,.09), 0 3px 12px rgba(38,64,102,.035);
}
html.light-mode body {
  background:
    radial-gradient(820px 470px at 98% -5%, rgba(81,209,211,.17), transparent 62%),
    radial-gradient(760px 460px at 4% 106%, rgba(106,112,245,.12), transparent 66%),
    linear-gradient(135deg,#f5f8fc 0%,#edf3fa 48%,#f7f9fc 100%);
}
html.light-mode body::before {
  z-index:-1;
  opacity:1;
  background:
    linear-gradient(rgba(82,112,150,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82,112,150,.045) 1px, transparent 1px),
    radial-gradient(circle at 84% 8%, rgba(92,219,213,.14), transparent 23%),
    radial-gradient(circle at 9% 88%, rgba(116,122,242,.11), transparent 26%);
  background-size:42px 42px,42px 42px,auto,auto;
}
html.light-mode .page-main { background:rgba(244,248,252,.35); }
html.light-mode .page-main::before {
  content:''; position:fixed; pointer-events:none; z-index:-1; inset:64px 0 0 var(--sidebar-w);
  background:linear-gradient(115deg,rgba(255,255,255,.20),rgba(239,246,252,.04) 46%,rgba(211,244,242,.16));
}
html.light-mode .topbar {
  background:rgba(250,252,255,.72) !important;
  border-bottom-color:rgba(198,212,229,.76) !important;
  box-shadow:0 8px 28px rgba(35,58,91,.06);
}
html.light-mode .topbar .page-title { color:#16243a; }
html.light-mode .topbar .user { border:1px solid rgba(205,216,230,.78); background:rgba(255,255,255,.54); }
html.light-mode .topbar .user:hover { background:#fff; border-color:#b7c8df; }
html.light-mode .topbar .avatar { background:linear-gradient(135deg,#5f73ef,#5862ce); box-shadow:0 5px 12px rgba(81,100,224,.22); }
@media (min-width:721px) {
  html.light-mode .sidebar {
    background:linear-gradient(180deg,rgba(250,252,255,.94),rgba(240,246,252,.94)) !important;
    border-right:1px solid rgba(197,211,230,.78); box-shadow:16px 0 38px rgba(39,63,98,.05);
  }
  html.light-mode .sidebar .brand, html.light-mode .sidebar .side-foot { border-color:rgba(205,216,231,.78); }
  html.light-mode .sidebar .brand h2 { color:#18273f; }
  html.light-mode .sidebar .brand span, html.light-mode .sidebar .side-foot { color:#8492a7; }
  html.light-mode .sidebar .brand .logo, html.light-mode .sidebar .brand em { color:#5669de; }
  html.light-mode .sidebar .brand em { border-color:#c6d0fc; background:#f0f2ff; }
  html.light-mode .sidebar nav .nav-group { color:#8b99ad; }
  html.light-mode .sidebar nav a { color:#52637a; }
  html.light-mode .sidebar nav a:hover { background:rgba(88,104,232,.075); color:#263b56; }
  html.light-mode .sidebar nav a.active {
    color:#283a79; background:linear-gradient(90deg,rgba(101,114,238,.18),rgba(79,210,205,.075));
    border-left-color:#6271ed; box-shadow:inset 0 1px rgba(255,255,255,.85),0 7px 16px rgba(62,79,170,.07);
  }
}
html.light-mode .card,
html.light-mode .stat-card,
html.light-mode .metric-card,
html.light-mode .stock-row,
html.light-mode .stock-item {
  background:linear-gradient(135deg,rgba(255,255,255,.93),rgba(246,250,255,.84)) !important;
  border-color:rgba(209,222,238,.88) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92), var(--shadow);
}
html.light-mode .card { backdrop-filter:blur(14px); }
html.light-mode .card:not(.no-hover):hover,
html.light-mode .stock-row:hover {
  transform:translateY(-1px); border-color:rgba(112,140,205,.64) !important;
  box-shadow:inset 0 1px 0 #fff,0 20px 40px rgba(38,64,102,.12);
}
html.light-mode .btn {
  background:rgba(255,255,255,.78); border-color:#cbd8e8; color:#334862;
  box-shadow:0 3px 8px rgba(41,62,96,.035);
}
html.light-mode .btn:hover { background:#fff; border-color:#8fa7cf; color:#3348a8; }
html.light-mode .btn.primary,
html.light-mode .btn.main,
html.light-mode .stock-add {
  background:linear-gradient(135deg,#6676ef,#5561d7 60%,#4c57bd) !important;
  border-color:#6b79f2 !important; color:#fff !important;
  box-shadow:0 10px 20px rgba(79,96,215,.22);
}
html.light-mode .btn.primary:hover,
html.light-mode .btn.main:hover,
html.light-mode .stock-add:hover { filter:brightness(1.05); transform:translateY(-1px); }
html.light-mode .input,
html.light-mode select.input,
html.light-mode textarea.input,
html.light-mode .form-item input,
html.light-mode .form-item select {
  background:rgba(255,255,255,.80) !important; border-color:#cbd9e9 !important; color:#1d2d46 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92);
}
html.light-mode .input:focus,
html.light-mode select.input:focus,
html.light-mode textarea.input:focus,
html.light-mode .form-item input:focus,
html.light-mode .form-item select:focus {
  border-color:#6c7cf0 !important; background:#fff !important;
  box-shadow:0 0 0 3px rgba(99,112,238,.13),inset 0 1px 0 #fff !important;
}
html.light-mode .chip:not(.active) { background:rgba(255,255,255,.72); border-color:#cfdaea; color:#4b607b; }
html.light-mode .chip.active { background:linear-gradient(135deg,#6878ee,#5966d9); border-color:#7080f2; color:#fff; box-shadow:0 6px 14px rgba(85,99,218,.18); }
html.light-mode .table thead th { background:rgba(232,240,249,.78); color:#566984; border-color:#dce6f1; }
html.light-mode .table td { border-color:#e0e8f2; color:#273a54; }
html.light-mode .table tbody tr:hover td { background:rgba(223,237,250,.48); }

/* 横幅为业务中的“数据舱”，采用同一套蓝青渐变而不是色块拼贴。 */
html.light-mode .dashboard-hero,
html.light-mode .module-hero,
html.light-mode .inventory-workbench,
html.light-mode .inbound-banner,
html.light-mode .outbound-banner {
  border-color:#263957 !important;
  background:radial-gradient(circle at 78% -28%,rgba(99,112,238,.30),transparent 39%),radial-gradient(circle at 102% 118%,rgba(66,190,206,.15),transparent 33%),linear-gradient(112deg,#0a1222 0%,#111d34 55%,#0c1729 100%) !important;
  box-shadow:0 18px 38px rgba(10,20,40,.24),inset 0 1px rgba(255,255,255,.08) !important;
}
html.light-mode .orders-hero,
html.light-mode .report-hero,
html.light-mode .settings-hero,
html.light-mode .manage-hero {
  border-color:#263957 !important;
  background:radial-gradient(circle at 82% -30%,rgba(99,112,238,.28),transparent 42%),linear-gradient(112deg,#0a1222,#111d34 58%,#0c1729) !important;
}
html.light-mode .dashboard-hero *,
html.light-mode .module-hero:not(.no-light-hero) *,
html.light-mode .inventory-workbench *,
html.light-mode .inbound-banner *,
html.light-mode .outbound-banner * { text-shadow:0 1px 1px rgba(0,0,0,.14); }
html.light-mode .dashboard-hero h1,
html.light-mode .dashboard-hero h2,
html.light-mode .module-hero h2,
html.light-mode .inventory-workbench h2,
html.light-mode .inbound-banner h2,
html.light-mode .outbound-banner h2 { color:#fff !important; }
/* 横幅内的说明和数据不沿用明亮页面的深色文字，保证渐变数据舱内的可读性。 */
html.light-mode .dashboard-hero .section-kicker,
html.light-mode .dashboard-hero p,
html.light-mode .module-hero .section-kicker,
html.light-mode .module-hero p,
html.light-mode .module-hero .hero-subtitle,
html.light-mode .inventory-workbench .section-kicker,
html.light-mode .inventory-workbench p,
html.light-mode .inbound-banner .section-kicker,
html.light-mode .inbound-banner p,
html.light-mode .outbound-banner .section-kicker,
html.light-mode .outbound-banner p { color:rgba(236,249,252,.82) !important; }
html.light-mode .module-hero .hero-stat,
html.light-mode .module-hero .hero-stat strong,
html.light-mode .module-hero .hero-stat b,
html.light-mode .module-hero .hero-stat span,
html.light-mode .module-hero-side b,
html.light-mode .module-hero-side strong,
html.light-mode .inventory-workbench .inventory-stat,
html.light-mode .inventory-workbench .inventory-stat b,
html.light-mode .inventory-workbench .inventory-stat strong,
html.light-mode .inventory-workbench .inventory-stat span { color:#f7feff !important; }
html.light-mode .module-hero-side span,
html.light-mode .module-hero-side small { color:rgba(236,249,252,.78) !important; }
html.light-mode .module-hero-side,
html.light-mode .dashboard-hero-side { background:rgba(5,13,29,.42); border-color:rgba(168,190,235,.19); }
/* 库存总览的数字必须在任何渐变背景上保持第一眼可读。 */
html.light-mode .inventory-workbench .inventory-metrics {
  gap:8px;
  padding:8px;
  border-left-color:rgba(220,250,250,.24);
}
html.light-mode .inventory-workbench .inventory-metrics > div {
  min-width:142px;
  padding:10px 14px;
  border:1px solid rgba(222,250,250,.18);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(8,17,36,.58),rgba(17,32,57,.36));
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
html.light-mode .inventory-workbench .inventory-metrics span,
html.light-mode .inventory-workbench .inventory-metrics small { color:rgba(237,252,255,.76) !important; }
html.light-mode .inventory-workbench .inventory-metrics b,
html.light-mode .inventory-workbench .inventory-metrics b em { color:#fff !important; text-shadow:0 2px 10px rgba(0,0,0,.24); }
html.light-mode .inventory-workbench .inventory-metrics .warn b { color:#ffe3a4 !important; }

/* 库存筛选：弹层需越过下方品牌标签，避免被后续工具条覆盖或截断。 */
html.light-mode .inventory-list-card > .toolbar { z-index:60; overflow:visible; }
html.light-mode .stock-filter-picker { z-index:61; }
html.light-mode .stock-filter-picker.open { z-index:70; }
html.light-mode .stock-filter-picker-trigger {
  min-height:40px;
  border-color:#bfd1e4;
  border-radius:10px;
  background:linear-gradient(145deg,#ffffff,#f3f8fc);
  color:#263b54;
  box-shadow:inset 0 1px rgba(255,255,255,.9);
}
html.light-mode .stock-filter-picker.open .stock-filter-picker-trigger {
  border-color:#5e71df;
  background:#fff;
  box-shadow:0 0 0 3px rgba(88,104,232,.13),0 7px 18px rgba(49,76,113,.10);
}
html.light-mode .stock-filter-picker-popover {
  min-width:172px;
  border-color:#bcd1e3;
  border-radius:13px;
  background:rgba(253,255,255,.98);
  box-shadow:0 18px 38px rgba(35,71,105,.20),0 0 0 1px rgba(255,255,255,.85) inset;
}
html.light-mode .stock-filter-picker-head {
  padding:10px 12px;
  border-color:#dbe9f3;
  background:linear-gradient(90deg,#edf7fc,#f7fbff);
  color:#54708c;
}
html.light-mode .stock-filter-picker-option { color:#29405b; }
html.light-mode .stock-filter-picker-option:hover { background:#eaf5fb; color:#2538a5; }
html.light-mode .stock-filter-picker-option.active { background:linear-gradient(100deg,#5e70e7,#7684ef); color:#fff; box-shadow:0 5px 12px rgba(76,93,213,.22); }

/* 登录输入区始终保持暗色玻璃舱：避免明亮主题覆盖后出现白底浅字。 */
html.light-mode .login-panel .login-card .form-item input,
html.eye-mode .login-panel .login-card .form-item input {
  background:#0c1526 !important;
  color:#f4f8ff !important;
  -webkit-text-fill-color:#f4f8ff;
  border-color:#415474 !important;
  caret-color:#7bf1dc;
}
html.light-mode .login-panel .login-card .form-item input::placeholder,
html.eye-mode .login-panel .login-card .form-item input::placeholder {
  color:#91a3bf !important;
  -webkit-text-fill-color:#91a3bf;
  opacity:1;
}
html.light-mode .login-panel .login-card .form-item input:focus,
html.eye-mode .login-panel .login-card .form-item input:focus {
  background:#101d33 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff;
  border-color:#74ead8 !important;
  box-shadow:0 0 0 3px rgba(94,234,212,.15), 0 10px 22px rgba(4,18,36,.22) !important;
}
.login-panel .login-card .form-item input:-webkit-autofill,
.login-panel .login-card .form-item input:-webkit-autofill:hover,
.login-panel .login-card .form-item input:-webkit-autofill:focus {
  -webkit-text-fill-color:#f4f8ff !important;
  -webkit-box-shadow:0 0 0 1000px #0c1526 inset !important;
  transition:background-color 9999s ease-out 0s;
}

/* 物料采购：从单纯耗材记账升级为按品牌核算的投入回报看板。 */
.supply-overview-card{margin-bottom:14px;padding:20px;border:1px solid #dbe4ec;border-radius:19px;background:linear-gradient(145deg,#fff,#f5f8fb);box-shadow:0 10px 28px rgba(15,30,48,.055)}.supply-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.supply-overview-head h3{margin:5px 0 4px;color:#172944;font-size:22px}.supply-overview-head p{margin:0;color:#738198;font-size:11px}.supply-filter-label{padding:7px 10px;border:1px solid #d8e2ed;border-radius:999px;color:#53657b;background:#fff;font-size:10px;white-space:nowrap}.supply-overview-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:17px 0 14px;overflow:hidden;border:1px solid #e0e7ef;border-radius:14px;background:#fff}.supply-overview-kpis>div{min-width:0;padding:15px 16px;border-right:1px solid #e7ecf2}.supply-overview-kpis>div:last-child{border-right:0}.supply-overview-kpis span,.supply-overview-kpis b,.supply-overview-kpis small{display:block}.supply-overview-kpis span{color:#8290a3;font-size:10px}.supply-overview-kpis b{overflow:hidden;margin-top:6px;color:#15263f;font-size:22px;text-overflow:ellipsis;white-space:nowrap}.supply-overview-kpis small{margin-top:4px;color:#9ba7b6;font-size:9px}.supply-brand-filter{display:flex;gap:7px;margin-bottom:14px;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.supply-brand-filter::-webkit-scrollbar{display:none}.supply-brand-filter button{display:flex;flex:0 0 auto;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid #d9e2ec;border-radius:999px;color:#64748b;background:#fff;font-size:10px;font-weight:700;cursor:pointer}.supply-brand-filter button em{color:#97a4b4;font-size:9px;font-style:normal}.supply-brand-filter button.active{color:#fff;border-color:#172944;background:#172944}.supply-brand-filter button.active em{color:#b9c8db}.supply-share-panel{padding:15px;border:1px solid #e1e7ee;border-radius:15px;background:#fff}.supply-share-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.supply-share-title b{color:#25354c;font-size:12px}.supply-share-title span{color:#96a2b2;font-size:9px}.supply-share-list>button{display:grid;width:100%;grid-template-columns:26px minmax(110px,.65fr) minmax(140px,1fr) 105px;align-items:center;gap:10px;padding:10px 4px;border:0;border-bottom:1px solid #edf1f5;color:inherit;background:transparent;text-align:left;cursor:pointer}.supply-share-list>button:last-child{border-bottom:0}.supply-share-rank{display:grid;width:24px;height:24px;place-items:center;border-radius:8px;color:#64748b;background:#eef2f6;font-size:10px;font-weight:800}.supply-share-name b,.supply-share-name small,.supply-share-list>button>strong,.supply-share-list>button>strong small{display:block}.supply-share-name b{overflow:hidden;color:#26374e;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.supply-share-name small{margin-top:3px;color:#96a2b1;font-size:9px}.supply-share-bar{height:7px;overflow:hidden;border-radius:99px;background:#edf1f5}.supply-share-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#172944,#4b7891)}.supply-share-list>button>strong{color:#1f314a;font-size:12px;text-align:right}.supply-share-list>button>strong small{margin-top:2px;color:#78889d;font-size:9px}.supply-return-card { margin-bottom:14px; padding:18px; border:1px solid #2b3d5d; border-radius:16px; background:radial-gradient(circle at 96% -12%,rgba(104,116,255,.24),transparent 34%),radial-gradient(circle at 2% 104%,rgba(53,190,199,.10),transparent 32%),linear-gradient(125deg,#0d1425 0%,#121d34 56%,#0d172a 100%); box-shadow:0 14px 32px rgba(5,12,28,.28),inset 0 1px rgba(255,255,255,.06); color:#edf5ff; overflow:hidden; }
.supply-return-title { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.supply-return-title .section-kicker { color:#74ead8; }
.supply-return-title h3 { margin:5px 0 6px; color:#fff; font-size:19px; }
.supply-return-title p { margin:0; color:#a8bad1; font-size:12px; line-height:1.65; }
.supply-admin-mark { flex:0 0 auto; padding:7px 10px; border:1px solid rgba(116,234,216,.28); border-radius:99px; background:rgba(94,234,212,.09); color:#aaf4e6; font-size:11px; }
.supply-return-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:16px 0 14px; border:1px solid rgba(164,193,228,.18); border-radius:12px; overflow:hidden; background:rgba(164,193,228,.16); }
.supply-return-summary > div { min-width:0; padding:12px 14px; background:rgba(8,20,38,.36); }
.supply-return-summary span, .supply-brand-kpis span { display:block; color:#9db0c9; font-size:11px; }
.supply-return-summary b { display:block; margin-top:4px; color:#fff; font-size:20px; font-variant-numeric:tabular-nums; }
.supply-return-summary b em { color:#9db0c9; font-size:12px; font-style:normal; font-weight:500; }
.supply-return-summary .pos, .supply-brand-card .pos { color:#72e6bf; }.supply-return-summary .neg, .supply-brand-card .neg { color:#ff9d9d; }
.supply-return-filter { display:flex; align-items:center; gap:10px; margin:15px 0 0; color:#91a6c5; font-size:11px; }
.supply-return-brand-chips { display:flex; min-width:0; gap:7px; overflow:auto; padding:2px; scrollbar-width:none; }.supply-return-brand-chips::-webkit-scrollbar { display:none; }
.supply-return-brand-chips button { flex:0 0 auto; padding:6px 10px; border:1px solid rgba(149,174,218,.22); border-radius:99px; background:rgba(9,18,35,.43); color:#b7c7df; font:inherit; font-size:11px; cursor:pointer; transition:.16s ease; }
.supply-return-brand-chips button:hover { border-color:rgba(133,148,255,.72); color:#fff; }.supply-return-brand-chips button.active { border-color:#8794ff; background:linear-gradient(135deg,#6776f4,#5362d8); color:#fff; box-shadow:0 5px 13px rgba(81,97,219,.22); }
.supply-brand-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:10px; }
.supply-brand-card { padding:13px; border:1px solid rgba(171,201,231,.18); border-radius:12px; background:rgba(7,18,34,.34); }
.supply-brand-card-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:9px; }
.supply-brand-card-head .brand-tag { padding:6px 7px; border-radius:7px; background:#0a1729; color:#d8e7fb; font-size:10px; }
.supply-brand-card-head b, .supply-brand-card-head small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.supply-brand-card-head b { color:#f4f8ff; font-size:13px; }.supply-brand-card-head small { margin-top:3px; color:#8fa4be; font-size:10px; }
.supply-brand-card-head > strong { font-size:13px; font-variant-numeric:tabular-nums; }
.supply-brand-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:13px; }
.supply-brand-kpis div { min-width:0; padding:8px; border-radius:8px; background:rgba(152,181,216,.08); }
.supply-brand-kpis b { display:block; overflow:hidden; margin-top:4px; color:#fff; font-size:13px; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }
.supply-brand-kpis .risk-high { color:#ff9f9f; }.supply-brand-kpis .risk-mid { color:#ffd394; }.supply-brand-kpis .risk-low { color:#7de4bd; }
.supply-return-bar { height:5px; margin-top:12px; overflow:hidden; border-radius:99px; background:rgba(167,194,228,.17); }.supply-return-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#6478ff,#5eead4); box-shadow:0 0 12px rgba(94,234,212,.45); }
.supply-brand-note { margin-top:8px; color:#93a6bd; font-size:10.5px; }
.supply-return-empty { padding:20px; border:1px dashed rgba(164,193,228,.28); border-radius:11px; color:#a8bad1; font-size:12px; text-align:center; }
html.eye-mode .supply-overview-card,html.eye-mode .supply-share-panel,html.eye-mode .supply-overview-kpis{border-color:#2c4050;background:#12232d;box-shadow:none}html.eye-mode .supply-overview-head h3,html.eye-mode .supply-overview-kpis b,html.eye-mode .supply-share-title b,html.eye-mode .supply-share-name b,html.eye-mode .supply-share-list>button>strong{color:#dceaf2}html.eye-mode .supply-filter-label,html.eye-mode .supply-brand-filter button{color:#a8bdc8;border-color:#304856;background:#10202a}html.eye-mode .supply-brand-filter button.active{color:#0c2128;border-color:#75cfca;background:#75cfca}html.eye-mode .supply-overview-kpis>div,html.eye-mode .supply-share-list>button{border-color:#2a3d49}html.eye-mode .supply-share-bar{background:#263a46}html.eye-mode .supply-share-bar i{background:linear-gradient(90deg,#71cfc7,#5c8dac)}
@media(max-width:720px){.supply-overview-card{padding:15px;border-radius:18px}.supply-overview-head h3{font-size:19px}.supply-overview-head p{max-width:230px;line-height:1.5}.supply-filter-label{display:none}.supply-overview-kpis{grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0 12px}.supply-overview-kpis>div{padding:12px;border-bottom:1px solid #e7ecf2}.supply-overview-kpis>div:nth-child(2n){border-right:0}.supply-overview-kpis>div:nth-last-child(-n+2){border-bottom:0}.supply-overview-kpis b{font-size:19px}.supply-brand-filter{margin:0 -2px 11px}.supply-brand-filter button{min-height:36px}.supply-share-panel{padding:12px 10px}.supply-share-list>button{grid-template-columns:24px minmax(0,1fr) 82px;gap:8px;padding:10px 1px}.supply-share-bar{grid-column:2/-1;grid-row:2;height:5px;margin-top:-4px}.supply-share-name b{font-size:11px}.supply-share-list>button>strong{font-size:11px}}
html.light-mode .supply-return-card { border-color:#2b3d5d; background:radial-gradient(circle at 96% -12%,rgba(104,116,255,.24),transparent 34%),radial-gradient(circle at 2% 104%,rgba(53,190,199,.10),transparent 32%),linear-gradient(125deg,#0d1425,#121d34 56%,#0d172a); box-shadow:0 16px 30px rgba(5,12,28,.25); }
html.light-mode .supply-return-summary > div, html.light-mode .supply-brand-card { background:rgba(7,15,31,.44); }
@media (max-width:720px) {
  .supply-return-card { padding:15px; border-radius:14px; }.supply-return-title { display:block; }.supply-admin-mark { display:inline-block; margin-top:9px; }
  .supply-return-summary { grid-template-columns:repeat(2,1fr); }.supply-return-summary b { font-size:18px; }.supply-brand-grid { grid-template-columns:1fr; }.supply-return-filter { display:block; }.supply-return-brand-chips { margin-top:7px; }
}
html.light-mode .dashboard-operating { background:linear-gradient(132deg,rgba(255,255,255,.94),rgba(238,247,250,.86)); border-color:#cbdce9; }
html.light-mode .operating-kpi { background:linear-gradient(145deg,#fff,#f2f7fb); }
html.light-mode .dashboard-rhythm-card { background:linear-gradient(112deg,#f7fbff,#edf8f7); border-color:#cadce9; }
html.light-mode .rhythm-phase { background:rgba(255,255,255,.72); border-color:#d2dfec; }
html.light-mode .dashboard-actions .action-card { background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(241,247,252,.88)); border-color:#cedbea; }
html.light-mode .dashboard-actions .action-card-major { border-top-color:#6676ef; }
html.light-mode .dashboard-actions .action-card-major:nth-child(2) { border-top-color:#38bdbb; }
html.light-mode .report-control > .toolbar,
html.light-mode .inventory-list-card > .toolbar,
html.light-mode .order-list-card > .toolbar,
html.light-mode .reconcile-intro > .toolbar { background:linear-gradient(100deg,rgba(236,246,251,.95),rgba(232,247,245,.92)); border-color:#c9dfe3; }
html.light-mode .scan-box { background:linear-gradient(135deg,#edf7fc,#e8f4f2); border-color:#8dbac4; box-shadow:inset 0 1px rgba(255,255,255,.9); }
html.light-mode .scan-input { color:#20354d; border-bottom-color:#6879e9; }
html.light-mode .scan-input::placeholder { color:#8aa0b5; }
html.light-mode .scan-cam-btn, html.light-mode .camera-btn { background:#fff !important; border-color:#a9c4d8 !important; color:#38536d !important; }
@media (max-width:720px) {
  html.light-mode .page-main::before { inset:54px 0 0; }
  html.light-mode .bottom-nav { background:rgba(249,252,255,.93); border-color:#d6e1ed; box-shadow:0 -10px 28px rgba(41,65,99,.08); }
  html.light-mode .m-stock-card,
  html.light-mode .m-stock-item,
  html.light-mode .m-tcard,
  html.light-mode .m-in-form-card { background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(241,247,252,.92)) !important; }
}

/* 手机主导航：深色悬浮 Dock，中间扫一扫独立悬浮，不再像普通表格页脚。 */
@media (max-width:720px) {
  .bottom-nav,
  html.light-mode .bottom-nav,
  html.eye-mode .bottom-nav {
    position:sticky;
    bottom:8px;
    left:12px;
    right:12px;
    width:auto;
    height:70px;
    margin:8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
    padding:0 6px;
    overflow:visible;
    border:1px solid rgba(134,151,228,.30);
    border-radius:24px;
    background:linear-gradient(112deg,rgba(7,10,28,.98),rgba(18,18,55,.98)) !important;
    box-shadow:0 16px 34px rgba(4,8,23,.44),inset 0 1px rgba(255,255,255,.07);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  .bottom-nav::before {
    content:'';
    position:absolute;
    z-index:0;
    top:-25px;
    left:50%;
    width:94px;
    height:52px;
    transform:translateX(-50%);
    border:1px solid rgba(134,151,228,.30);
    border-bottom:0;
    border-radius:52px 52px 0 0;
    background:linear-gradient(180deg,#0a0c26,#111139);
    box-shadow:0 -8px 22px rgba(5,8,25,.30);
  }
  .bottom-nav-item,
  html.light-mode .bottom-nav-item { position:relative; z-index:1; gap:4px; padding:8px 0 5px; color:#97a5c2; font-size:10px; }
  .bottom-nav-item .ic { font-size:21px; }
  .bottom-nav-item.active,
  html.light-mode .bottom-nav-item.active { color:#f7f8ff; font-weight:760; text-shadow:0 0 12px rgba(129,113,255,.55); }
  .bottom-nav-item.center,
  html.light-mode .bottom-nav-item.center { top:-29px; transform:none; flex:0 0 70px; }
  .bottom-nav-item.center .ic,
  html.light-mode .bottom-nav-item.center .ic {
    width:58px;
    height:58px;
    border:3px solid #0b0d28;
    background:radial-gradient(circle at 30% 24%,#b28cff 0,#8053ee 39%,#4826b5 100%);
    color:#fff;
    box-shadow:0 0 0 1px rgba(205,188,255,.42),0 12px 24px rgba(77,43,205,.52),0 0 24px rgba(141,90,255,.36);
    font-size:25px;
  }
  .bottom-nav-item.center .lb { display:none; }
  .bottom-nav-item.center::after {
    content:'扫一扫';
    position:absolute;
    top:41px;
    left:50%;
    transform:translateX(-50%);
    color:#e8e9ff;
    font-size:9px;
    font-weight:700;
    white-space:nowrap;
    letter-spacing:.04em;
    text-shadow:0 1px 8px rgba(82,52,218,.7);
  }
  .page-main { padding-bottom:8px; }
}
@media (max-width:720px) {
  html.eye-mode .page-main::before { inset:54px 0 0; }
  html.eye-mode .content::after { top:90px; right:-80px; width:180px; height:180px; }
  html.eye-mode .mobile-dashboard > .card,
  html.eye-mode .m-in-form-card,
  html.eye-mode .m-stock-card,
  html.eye-mode .m-tcard {
    background:linear-gradient(135deg, rgba(22,34,55,.96), rgba(14,25,42,.95)) !important;
    border-color:rgba(90,124,165,.36) !important;
    box-shadow:0 12px 26px rgba(0,0,0,.18), inset 0 1px 0 rgba(207,236,255,.035);
  }
}

/* ===== 统一明亮主题：冷灰蓝画布 + 轻玻璃层级 =====
   仪表盘主横幅保留深色识别，其余业务页不再出现深色大色块或纯白断层。 */
html.light-mode body {
  background:
    radial-gradient(circle at 88% -12%, rgba(78,186,194,.13), transparent 29%),
    linear-gradient(135deg,#f3f7fa 0%,#edf3f7 55%,#e7f1f3 100%) !important;
  color:#172740;
}
html.light-mode .page-main,
html.light-mode .content {
  background:transparent !important;
}
html.light-mode .content::before {
  opacity:0;
  background-image:none;
}
html.light-mode .card,
html.light-mode .stat-card,
html.light-mode .toolbar,
html.light-mode .table-wrap,
html.light-mode .list-card,
html.light-mode .inventory-list-card,
html.light-mode .order-list-card,
html.light-mode .report-control,
html.light-mode .reconcile-intro {
  background:linear-gradient(138deg,rgba(255,255,255,.86),rgba(239,247,250,.88)) !important;
  border-color:#cddde7 !important;
  box-shadow:0 10px 26px rgba(35,61,87,.07),inset 0 1px rgba(255,255,255,.8);
}

/* 除仪表盘头部外，所有业务横幅使用同一套浅色数据舱。 */
html.light-mode .module-hero,
html.light-mode .inventory-workbench,
html.light-mode .inbound-banner,
html.light-mode .outbound-banner,
html.light-mode .orders-hero,
html.light-mode .report-hero,
html.light-mode .settings-hero,
html.light-mode .manage-hero,
html.light-mode .inventory-life-hero,
html.light-mode .member-hero {
  border-color:#bed4df !important;
  background:
    radial-gradient(circle at 96% 10%,rgba(83,185,191,.17),transparent 25%),
    linear-gradient(118deg,#f8fcfd 0%,#eef7f8 58%,#e2f1f2 100%) !important;
  box-shadow:0 14px 30px rgba(39,73,96,.10),inset 0 1px rgba(255,255,255,.92) !important;
}
html.light-mode .module-hero *,
html.light-mode .inventory-workbench *,
html.light-mode .inbound-banner *,
html.light-mode .outbound-banner * {
  text-shadow:none !important;
}
html.light-mode .module-hero h2,
html.light-mode .inventory-workbench h2,
html.light-mode .inbound-banner h2,
html.light-mode .outbound-banner h2,
html.light-mode .orders-hero h2,
html.light-mode .report-hero h2,
html.light-mode .settings-hero h2,
html.light-mode .manage-hero h2,
html.light-mode .inventory-life-hero h2,
html.light-mode .member-hero h2 {
  color:#172740 !important;
}
html.light-mode .module-hero .section-kicker,
html.light-mode .module-hero p,
html.light-mode .module-hero .hero-subtitle,
html.light-mode .inventory-workbench .section-kicker,
html.light-mode .inventory-workbench p,
html.light-mode .inbound-banner .section-kicker,
html.light-mode .inbound-banner p,
html.light-mode .outbound-banner .section-kicker,
html.light-mode .outbound-banner p,
html.light-mode .inventory-life-hero p,
html.light-mode .inventory-life-summary span,
html.light-mode .member-hero p,
html.light-mode .member-hero-note span {
  color:#58718b !important;
}
html.light-mode .module-hero .hero-stat,
html.light-mode .module-hero .hero-stat strong,
html.light-mode .module-hero .hero-stat b,
html.light-mode .module-hero .hero-stat span,
html.light-mode .module-hero-side b,
html.light-mode .module-hero-side strong,
html.light-mode .inventory-workbench .inventory-stat,
html.light-mode .inventory-workbench .inventory-stat b,
html.light-mode .inventory-workbench .inventory-stat strong,
html.light-mode .inventory-workbench .inventory-stat span {
  color:#172740 !important;
}
html.light-mode .module-hero-side,
html.light-mode .dashboard-hero-side {
  border-color:rgba(157,184,200,.45);
}
html.light-mode .module-hero-side { background:rgba(255,255,255,.52); }
html.light-mode .operation-banner-stat,
html.light-mode .inventory-life-summary,
html.light-mode .member-hero-note {
  border-color:#c9dce5 !important;
  background:rgba(255,255,255,.42) !important;
}
html.light-mode .operation-banner-stat span,
html.light-mode .operation-banner-stat small,
html.light-mode .inventory-life-summary span,
html.light-mode .member-hero-note span { color:#617a91 !important; }
html.light-mode .operation-banner-stat b,
html.light-mode .inventory-life-summary b,
html.light-mode .member-hero-note b { color:#172740 !important; }
html.light-mode .dashboard-hero {
  border-color:#263957 !important;
  background:linear-gradient(118deg,#111827,#1f2937 58%,#334155) !important;
}
html.light-mode .inventory-workbench .inventory-metrics {
  border-left-color:#c7dce5;
}
html.light-mode .inventory-workbench .inventory-metrics > div {
  border-color:#d3e2e9;
  background:rgba(255,255,255,.55);
  box-shadow:inset 0 1px rgba(255,255,255,.9);
}
html.light-mode .inventory-workbench .inventory-metrics span,
html.light-mode .inventory-workbench .inventory-metrics small { color:#658097 !important; }
html.light-mode .inventory-workbench .inventory-metrics b,
html.light-mode .inventory-workbench .inventory-metrics b em { color:#172740 !important; text-shadow:none; }
html.light-mode .inventory-workbench .inventory-metrics .warn b { color:#bd6a12 !important; }

/* 采购回报也归入浅色经营模块，避免单页突然变成高饱和深色。 */
html.light-mode .supply-return-card {
  border-color:#bdd5df;
  background:linear-gradient(132deg,#f8fcfd,#edf7f8 62%,#e3f1f2);
  box-shadow:0 14px 28px rgba(37,69,92,.10),inset 0 1px rgba(255,255,255,.88);
  color:#172740;
}
html.light-mode .supply-return-title .section-kicker { color:#347d8a; }
html.light-mode .supply-return-title h3 { color:#172740; }
html.light-mode .supply-return-title p,
html.light-mode .supply-return-filter,
html.light-mode .supply-return-summary span,
html.light-mode .supply-brand-kpis span,
html.light-mode .supply-brand-note { color:#617a91; }
html.light-mode .supply-admin-mark { border-color:#a8d5d3; background:#e6f7f4; color:#287769; }
html.light-mode .supply-return-summary { border-color:#c9dde5; background:#c9dde5; }
html.light-mode .supply-return-summary > div,
html.light-mode .supply-brand-card { background:rgba(255,255,255,.63); }
html.light-mode .supply-return-summary b,
html.light-mode .supply-brand-card-head b,
html.light-mode .supply-brand-kpis b { color:#172740; }
html.light-mode .supply-brand-card { border-color:#cddfe7; }
html.light-mode .supply-brand-card-head .brand-tag { background:#172740; color:#effbff; }
html.light-mode .supply-brand-card-head small { color:#647e95; }
html.light-mode .supply-brand-kpis div { background:#edf5f7; }
html.light-mode .supply-return-brand-chips button { border-color:#bfd4df; background:#f8fcfd; color:#48647c; }
html.light-mode .supply-return-brand-chips button:hover { color:#1d6573; border-color:#77b7bd; }
html.light-mode .supply-return-bar { background:#d4e5e9; }
html.light-mode .supply-return-empty { border-color:#b9d2dc; color:#617a91; }

/* 手机端采用浅色悬浮 Dock，中心扫一扫保留上浮形态但不再压成深紫导航。 */
@media (max-width:720px) {
  html.light-mode .bottom-nav {
    border-color:#cbdce7 !important;
    background:linear-gradient(115deg,rgba(251,254,255,.96),rgba(235,246,249,.96)) !important;
    box-shadow:0 15px 30px rgba(38,66,94,.14),inset 0 1px rgba(255,255,255,.95);
  }
  html.light-mode .bottom-nav::before {
    border-color:#cbdce7;
    background:linear-gradient(180deg,#f7fcfd,#e9f3f7);
    box-shadow:0 -7px 19px rgba(44,74,105,.12);
  }
  html.light-mode .bottom-nav-item { color:#718198; text-shadow:none; }
  html.light-mode .bottom-nav-item.active { color:#1a2c47; text-shadow:none; }
  html.light-mode .bottom-nav-item.center .ic {
    border-color:#f5fbfd;
    background:radial-gradient(circle at 30% 25%,#a2b7ff 0,#7380ec 43%,#5162c8 100%);
    box-shadow:0 0 0 1px rgba(96,119,221,.24),0 11px 22px rgba(79,96,192,.30),0 0 18px rgba(96,119,221,.18);
  }
  html.light-mode .bottom-nav-item.center::after { color:#344865; text-shadow:none; }
  html.light-mode .mobile-rhythm-card {
    color:#1b304b;
    border:1px solid #c6dae4;
    background:linear-gradient(122deg,#f8fcfd,#eaf5f7);
    box-shadow:0 12px 24px rgba(42,72,97,.10);
  }
  html.light-mode .mobile-rhythm-card span,
  html.light-mode .mobile-rhythm-card em { color:#668198; }
  html.light-mode .mobile-rhythm-card > i { color:#35798a; }
}

/* ===== 最终交互规范：置于文件末尾，覆盖旧版紫蓝主题 ===== */
html.light-mode .btn.primary,
html.light-mode .btn.main,
html.light-mode .stock-add {
  color:#fff !important;
  background:linear-gradient(135deg,#101b2e 0%,#1d314c 100%) !important;
  border-color:#1a2d46 !important;
  box-shadow:0 8px 18px rgba(17,34,57,.16) !important;
}
html.light-mode .btn.primary:hover,
html.light-mode .btn.main:hover,
html.light-mode .stock-add:hover { background:#243b59 !important; }
html.light-mode .chip.active,
html.light-mode .m-tab.active,
html.light-mode .dashboard-period-tabs button.active,
html.light-mode .sales-period-tabs button.active {
  color:#fff !important;
  background:#132238 !important;
  border-color:#132238 !important;
  box-shadow:0 4px 12px rgba(16,30,49,.16) !important;
}
html.light-mode .chip,
html.light-mode .m-tab,
html.light-mode .dashboard-period-tabs,
html.light-mode .sales-period-tabs {
  background:#fff !important;
  border-color:#d6e0ea !important;
  color:#62738a !important;
}
html.light-mode .chip:not(.active):hover,
html.light-mode .m-tab:not(.active):hover,
html.light-mode .dashboard-period-tabs button:not(.active):hover,
html.light-mode .sales-period-tabs button:not(.active):hover {
  color:#172942 !important;
  background:#f1f5f8 !important;
}
html.light-mode .stock-filter-picker,
html.light-mode .app-select-picker { position:relative; z-index:20; }
html.light-mode .stock-filter-picker.open,
html.light-mode .app-select-picker.open { z-index:100001; }
html.light-mode .stock-filter-picker-popover,
html.light-mode .app-select-popover {
  z-index:100002 !important;
  color:#16253a !important;
  background:#fff !important;
  border:1px solid #cbd8e5 !important;
  border-radius:12px !important;
  box-shadow:0 16px 34px rgba(22,40,64,.18) !important;
}
html.light-mode .stock-filter-picker-popover button,
html.light-mode .app-select-popover button { color:#34465f !important; background:transparent !important; }
html.light-mode .stock-filter-picker-popover button:hover,
html.light-mode .app-select-popover button:hover,
html.light-mode .stock-filter-picker-popover button.active,
html.light-mode .app-select-popover button.active { color:#fff !important; background:#132238 !important; }
html.light-mode .inventory-list-card,
html.light-mode .stock-list-wrap,
html.light-mode .stock-filter-bar { overflow:visible !important; }
html.light-mode .inventory-life-hero,
html.light-mode .soldout-hero {
  min-height:122px;
  background:linear-gradient(108deg,#ffffff 0%,#f5f9fb 72%,#edf7f6 100%) !important;
  border:1px solid #cedfea !important;
  border-left:4px solid #1a304b !important;
  box-shadow:0 12px 28px rgba(22,43,68,.08) !important;
}
html.light-mode .inventory-life-hero h2,
html.light-mode .soldout-hero h2 { color:#14243a !important; }
html.light-mode .inventory-life-hero p,
html.light-mode .soldout-hero p { color:#62758c !important; }
html.light-mode .inventory-life-summary {
  min-width:132px; padding:15px 19px !important; text-align:center;
  border:1px solid #d5e1e9 !important; border-left:1px solid #d5e1e9 !important;
  border-radius:12px !important; background:#fff !important;
  box-shadow:0 6px 16px rgba(20,43,70,.06);
}
html.light-mode .inventory-life-summary b { color:#152842 !important; }
html.light-mode .inventory-life-content > .card,
html.light-mode .soldout-control,
html.light-mode .soldout-overview,
html.light-mode .soldout-list {
  background:rgba(255,255,255,.94) !important;
  border-color:#d5e1ea !important;
  box-shadow:0 10px 24px rgba(25,47,72,.06) !important;
}
html.light-mode .inventory-life-content .stat-card {
  background:#f9fbfc !important; border:1px solid #dbe5ed !important; box-shadow:none !important;
}
html.eye-mode .btn.primary,
html.eye-mode .btn.main,
html.eye-mode .stock-add { color:#fff !important; background:#284365 !important; border-color:#3c618c !important; }
html.eye-mode .chip.active,
html.eye-mode .m-tab.active,
html.eye-mode .dashboard-period-tabs button.active,
html.eye-mode .sales-period-tabs button.active { color:#fff !important; background:#314d70 !important; border-color:#5a7ba5 !important; }

/* ===== 导航滚动与统一选择控件：避免系统滚动条和高饱和蓝色破坏界面节奏 ===== */
@media (min-width:721px) {
  .sidebar nav,
  .page-main { scrollbar-width:thin; scrollbar-color:#9ab2c0 transparent; }
  .sidebar nav::-webkit-scrollbar,
  .page-main::-webkit-scrollbar { width:8px; height:8px; }
  .sidebar nav::-webkit-scrollbar-track,
  .page-main::-webkit-scrollbar-track { background:transparent; margin:12px 0; }
  .sidebar nav::-webkit-scrollbar-thumb,
  .page-main::-webkit-scrollbar-thumb {
    background:linear-gradient(180deg,#b7c9d3,#87a2b2); border:2px solid transparent;
    background-clip:padding-box; border-radius:999px;
  }
  .sidebar nav::-webkit-scrollbar-thumb:hover,
  .page-main::-webkit-scrollbar-thumb:hover { background:linear-gradient(180deg,#8faab9,#628195); border:2px solid transparent; background-clip:padding-box; }
  html.eye-mode .sidebar nav,
  html.eye-mode .page-main { scrollbar-color:#405675 transparent; }
  html.eye-mode .sidebar nav::-webkit-scrollbar-thumb,
  html.eye-mode .page-main::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#4a6387,#293d5c); border:2px solid transparent; background-clip:padding-box; }
}

.choice-segment {
  display:inline-flex; align-items:center; gap:3px; min-height:38px; padding:3px;
  border:1px solid #d7e2e9; border-radius:12px; background:linear-gradient(180deg,#fff,#f3f8fa);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 3px 10px rgba(32,67,88,.04);
}
.choice-segment .chip,
.choice-segment .m-tab {
  display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:30px; margin:0 !important;
  padding:0 13px !important; border:0 !important; border-radius:8px !important;
  background:transparent !important; color:#60758a !important; box-shadow:none !important;
}
.choice-segment .chip:hover,
.choice-segment .m-tab:hover { background:#eaf2f6 !important; color:#213a50 !important; }
.choice-segment .chip.active,
.choice-segment .m-tab.active {
  color:#fff !important; background:linear-gradient(135deg,#172b45,#0d1d30) !important;
  box-shadow:0 4px 10px rgba(12,29,48,.18) !important;
}
.reconcile-tabs { margin-left:0; }
.supply-type-segment { flex-wrap:wrap; }
.supply-history-toolbar { align-items:center; }
html.eye-mode .choice-segment { border-color:#31445f; background:#131e31; box-shadow:none; }
html.eye-mode .choice-segment .chip,
html.eye-mode .choice-segment .m-tab { color:#9db1c9 !important; }
html.eye-mode .choice-segment .chip:hover,
html.eye-mode .choice-segment .m-tab:hover { color:#e4f6ff !important; background:#21324a !important; }
html.eye-mode .choice-segment .chip.active,
html.eye-mode .choice-segment .m-tab.active { background:linear-gradient(135deg,#31577c,#203b5d) !important; box-shadow:none !important; }

/* 库存页将核心信息从横向小字改为清晰的经营数据卡，保留顶部快速操作。 */
html.light-mode .inventory-workbench { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px 22px; }
html.light-mode .inventory-workbench .inventory-intro { min-width:0; }
html.light-mode .inventory-workbench .inventory-actions { margin-left:auto; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent {
  grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px;
  width:100%; padding:0; border:0; background:transparent;
}
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent > div {
  min-width:0; min-height:102px; padding:16px 18px; border:1px solid #c8dbe5;
  border-top:3px solid #244a69; border-radius:13px; background:rgba(255,255,255,.78);
  box-shadow:0 8px 18px rgba(25,63,84,.07),inset 0 1px rgba(255,255,255,.94);
}
html.light-mode .inventory-workbench .inventory-metrics .inventory-value { border-top-color:#1d8f91 !important; }
html.light-mode .inventory-workbench .inventory-metrics .inventory-age { border-top-color:#5a7899 !important; }
html.light-mode .inventory-workbench .inventory-metrics .inventory-alert { border-top-color:#d88927 !important; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent span { font-size:12px; font-weight:600; color:#5b758a !important; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent b { margin:7px 0 2px; font-size:27px; letter-spacing:-.7px; color:#13283f !important; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent b em { font-size:13px; color:#668096 !important; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent small { color:#7790a2 !important; font-size:11px; }
html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent .warn b { color:#bd6a12 !important; }
html.eye-mode .inventory-workbench { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px 22px; }
html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent { grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; width:100%; padding:0; border:0; }
html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent > div { min-width:0; padding:16px 18px; border:1px solid #304766; border-top:3px solid #5b9bc1; border-radius:13px; background:rgba(11,23,42,.55); }
html.eye-mode .inventory-workbench .inventory-metrics .inventory-alert { border-top-color:#dca34c !important; }

@media (max-width:1120px) and (min-width:721px) {
  html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent,
  html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
  .choice-segment { min-height:42px; border-radius:13px; }
  .choice-segment .chip,
  .choice-segment .m-tab { min-height:34px; flex:1; padding:0 12px !important; }
  .supply-history-toolbar { display:flex; align-items:stretch; }
  .supply-history-toolbar .choice-segment { width:100%; }
}

/* 全局溢出保护：页面内容只能在纵向滚动，避免桌面与手机出现可横向滑到空白区域。 */
html,
body,
#app {
  width:100%;
  max-width:100%;
  overflow-x:clip;
}
.shell,
.page-main,
.content,
#view-root {
  min-width:0;
  max-width:100%;
}

/* 轻量路由转场：保留数据操作的即时感，同时消除页面切换的生硬闪动。 */
@media (prefers-reduced-motion:no-preference) {
  #view-root.route-enter { opacity:0; transform:translateY(5px); }
  #view-root.route-enter.route-enter-active {
    opacity:1;
    transform:translateY(0);
    transition:opacity .16s ease-out,transform .2s cubic-bezier(.2,.75,.25,1);
  }
  @media (min-width:721px) {
    .sidebar a,
    .topbar button,
    .content button,
    .content .btn,
    .content [data-act] {
      transition:transform .14s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease;
    }
    .content button:active,
    .content .btn:active,
    .content [data-act]:active { transform:translateY(1px) scale(.985); }
  }
}

/* 手机端优先保证滚动性能，并统一底栏为浅色导航；中间扫一扫只保留图标。 */
@media (max-width:720px) {
  html,
  body { overflow-x:hidden; overscroll-behavior-x:none; }
  .shell,
  .page-main,
  .content,
  #view-root { width:100%; max-width:100vw; min-width:0; overflow-x:clip; }
  .page-main,
  .content { -webkit-overflow-scrolling:touch; scroll-behavior:auto !important; touch-action:pan-y; }
  .topbar,
  .bottom-nav { -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
  .bottom-nav,
  html.light-mode .bottom-nav,
  html.eye-mode .bottom-nav {
    max-width:calc(100vw - 24px);
    box-sizing:border-box;
  }
  .bottom-nav-item.center,
  html.light-mode .bottom-nav-item.center,
  html.eye-mode .bottom-nav-item.center { top:-22px; flex:0 0 58px; }
  .bottom-nav-item.center .ic,
  html.light-mode .bottom-nav-item.center .ic,
  html.eye-mode .bottom-nav-item.center .ic {
    width:50px;
    height:50px;
    border:1px solid #c7d8e3;
    color:#17324d;
    background:linear-gradient(145deg,#ffffff 0%,#e6f1f6 100%);
    box-shadow:0 9px 20px rgba(24,55,82,.18),inset 0 1px 0 rgba(255,255,255,.96);
    font-size:23px;
  }
  .bottom-nav-item.center .lb,
  .bottom-nav-item.center::after,
  html.light-mode .bottom-nav-item.center::after,
  html.eye-mode .bottom-nav-item.center::after { display:none !important; content:none !important; }
}

/* 最终明亮画布：移除旧版网格伪元素，保留极轻的冷色空间感。 */
html.light-mode body {
  background:radial-gradient(900px 430px at 100% -10%,rgba(76,186,190,.10),transparent 66%),radial-gradient(720px 400px at -10% 22%,rgba(114,130,236,.06),transparent 66%),#f4f7f9 !important;
}
html.light-mode .page-main,
html.light-mode .content { background-image:none !important; }
html.light-mode .page-main::before,
html.light-mode .content::before,
html.light-mode .content::after { background-image:none !important; opacity:0 !important; }
html.light-mode body::before,
html.light-mode body::after {
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
}

/* 货盘分析：移动端改为简短摘要，避免两张宽表在小屏上横向截断。 */
.pan-mobile-summary { display:none; }
@media (max-width:720px) {
  .pan-page .pan-grid { display:none; }
  .pan-mobile-summary { display:grid; gap:12px; margin-top:12px; }
  .pan-mobile-card {
    overflow:hidden; border:1px solid #d8e4eb; border-radius:18px;
    background:rgba(255,255,255,.92); box-shadow:0 10px 24px rgba(35,61,87,.07);
  }
  .pan-mobile-head { display:flex; align-items:center; justify-content:space-between; padding:14px 15px 11px; border-bottom:1px solid #e6eef3; }
  .pan-mobile-head h3 { display:flex; align-items:center; gap:7px; margin:0; color:#17253a; font-size:15px; }
  .pan-mobile-head span { color:#748399; font-size:12px; }
  .pan-mobile-row { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:58px; padding:11px 15px; border-bottom:1px solid #edf2f5; }
  .pan-mobile-row:last-child { border-bottom:0; }
  .pan-mobile-row > div:first-child { min-width:0; display:grid; gap:4px; }
  .pan-mobile-row b { overflow:hidden; color:#1a293d; font-size:14px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
  .pan-mobile-row span { overflow:hidden; color:#78879a; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
  .pan-mobile-num { flex:0 0 auto; display:grid; gap:4px; text-align:right; }
  .pan-mobile-num b { color:#132b46; }
  .pan-mobile-empty { padding:28px 15px; color:#8796a9; text-align:center; font-size:13px; }
}

/* 出入库顶部分段操作：从底图中独立出来，强化入口而不产生厚重色块。 */
html.light-mode .inout-page-tabs.toolbar {
  display:inline-flex; align-items:center; width:auto; gap:5px; padding:6px;
  border:1px solid #d5e2e8 !important; border-radius:14px;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 9px 20px rgba(35,61,87,.08),inset 0 1px rgba(255,255,255,.92);
}
html.light-mode .inout-page-tabs.toolbar .chip { min-height:34px; padding:0 14px; border-color:transparent !important; color:#50627a; background:transparent !important; }
html.light-mode .inout-page-tabs.toolbar .chip:hover { color:#16253b; background:#eef5f7 !important; }
html.light-mode .inout-page-tabs.toolbar .chip.active { color:#fff; border-color:#16283e !important; background:linear-gradient(135deg,#15283d,#244863) !important; box-shadow:0 5px 12px rgba(22,40,61,.18); }
@media (max-width:720px) {
  html.light-mode .inout-page-tabs.m-tabs { padding:6px; border:1px solid #d7e4ea; border-radius:16px; background:rgba(255,255,255,.90) !important; box-shadow:0 8px 18px rgba(35,61,87,.07); }
  html.light-mode .inout-page-tabs .m-tab { min-height:42px; color:#64748b; background:transparent !important; }
  html.light-mode .inout-page-tabs .m-tab.active { color:#fff !important; background:linear-gradient(135deg,#14263a,#284b66) !important; box-shadow:0 5px 12px rgba(22,40,61,.16); }
}

/* ========================================================================
   Mobile experience refresh — one calm, layered mobile system.
   This intentionally reconciles the old mobile variants kept for compatibility.
   ======================================================================== */
@media (max-width:720px) {
  html.light-mode, html.light-mode body { background:#f3f6f8 !important; background-image:none !important; }
  html.light-mode body::before, html.light-mode body::after { display:none !important; }
  html.light-mode #app, html.light-mode .app-main, html.light-mode .page-main,
  html.light-mode .page-content, html.light-mode main, html.light-mode .main-content,
  html.light-mode .content-wrap, html.light-mode .mobile-page { background:transparent !important; background-image:none !important; }

  /* Keep touch scrolling smooth and prevent wide surfaces from producing blank space. */
  html, body { overscroll-behavior-x:none; }
  body { -webkit-overflow-scrolling:touch; }
  .page, .page-content, .main-content { min-width:0; overflow-x:clip; }
  .card, .m-stock-card, .m-stock-item, .mobile-action, .mobile-metric { transform:translateZ(0); }
  .card, .m-stock-card, .m-stock-item { transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
  .card:active, .m-stock-card:active, .m-stock-item:active { transform:scale(.992); }

  /* Shared surfaces: pale technical layers, with no grids or checkerboard texture. */
  html.light-mode .mobile-dashboard, html.light-mode .m-in, html.light-mode .stock-page,
  html.light-mode .inout-page, html.light-mode .pan-page, html.light-mode .me-page {
    padding-left:13px; padding-right:13px; padding-bottom:96px;
  }
  html.light-mode .card, html.light-mode .m-stock-card, html.light-mode .m-stock-item,
  html.light-mode .mobile-dashboard > .card {
    border:1px solid #dce5ec;
    background:linear-gradient(145deg,#ffffff 0%,#f8fbfd 100%) !important;
    box-shadow:0 8px 20px rgba(31,59,79,.055);
  }

  /* Dashboard: one strong workspace context, then calmer operational layers. */
  html.light-mode .mobile-workspace-hero {
    padding:17px 17px 15px; border:1px solid rgba(34,68,95,.16); border-radius:20px;
    background:linear-gradient(135deg,#143451 0%,#1e4a63 57%,#397b83 100%) !important;
    box-shadow:0 14px 30px rgba(23,56,75,.16);
  }
  html.light-mode .mobile-workspace-hero::before { content:''; position:absolute; inset:auto -35px -72px auto; width:190px; height:190px; border:25px solid rgba(130,239,226,.1); border-radius:50%; pointer-events:none; }
  html.light-mode .mobile-workspace-hero h2 { font-size:23px; letter-spacing:-.45px; }
  html.light-mode .mobile-workspace-hero .m-hero-value b { font-size:31px; }
  html.light-mode .mobile-workspace-hero .m-hero-split { border-top-color:rgba(255,255,255,.16); }
  html.light-mode .mobile-action-rail { gap:8px; margin:13px 0 21px; }
  html.light-mode .mobile-action {
    min-height:78px; border-radius:16px; color:#27445b; background:linear-gradient(160deg,#fff,#f1f7f8) !important;
    border:1px solid #d8e5e8; box-shadow:0 7px 16px rgba(31,59,79,.06);
  }
  html.light-mode .mobile-action .ma-icon { width:33px; height:33px; border-radius:11px; color:#1f5666; background:#e2f1f1 !important; }
  html.light-mode .mobile-action:nth-child(2) .ma-icon { color:#ad6512; background:#fff0dc !important; }
  html.light-mode .mobile-action:nth-child(3) .ma-icon { color:#2d7094; background:#e1f1fa !important; }
  html.light-mode .mobile-action:nth-child(4) .ma-icon { color:#4b5ab1; background:#eceeff !important; }
  html.light-mode .mobile-section-title { margin-top:19px; }
  html.light-mode .mobile-section-title h2, html.light-mode .mobile-section-title h3 { color:#173147; letter-spacing:-.2px; }
  html.light-mode .mobile-kpi-grid { gap:9px; }
  html.light-mode .mobile-kpi-grid .mobile-metric, html.light-mode .m-stat-2x2 .stat-card {
    min-height:108px; padding:14px; border:1px solid #dce7ed; border-radius:16px;
    background:linear-gradient(150deg,#ffffff,#f3f8f9) !important; box-shadow:0 7px 16px rgba(31,59,79,.045);
  }
  html.light-mode .mobile-kpi-grid .mobile-metric b, html.light-mode .m-stat-2x2 .stat-card .value { color:#132d45; font-size:25px; }
  html.light-mode .mobile-rhythm-card {
    border:1px solid #cbe2e2; border-radius:18px; color:#163a4b;
    background:linear-gradient(135deg,#eff9f7,#e8f2f8) !important; box-shadow:0 8px 20px rgba(32,91,96,.06);
  }
  html.light-mode .mobile-rhythm-card span { color:#397a83; }
  html.light-mode .mobile-rhythm-card em { color:#5f7e8a; }
  html.light-mode .mobile-rhythm-card > i { color:#22717b; }

  /* Inventory: quantity and value stay compact but much easier to scan. */
  html.light-mode .m-stock-card, html.light-mode .m-stock-item { border-radius:17px; overflow:hidden; }
  html.light-mode .m-stock-head, html.light-mode .m-stock-item { padding:14px 13px; }
  html.light-mode .m-stock-name { font-size:14px; line-height:1.35; color:#152d43; }
  html.light-mode .m-stock-code { color:#72859a; }
  html.light-mode .m-stock-stats { padding:11px 6px; background:#edf5f6 !important; border-top:1px solid #d9e7e9; }
  html.light-mode .m-stock-stats .item .v { color:#17364c; font-size:17px; }
  html.light-mode .m-stock-stats .item .l { color:#71859a; }
  html.light-mode .m-stock-body { background:#fbfdfe !important; border-top-color:#d8e4e8; }
  html.light-mode .m-stock-actions .btn { min-height:42px; border-radius:11px; }
  html.light-mode .m-stock-thumb { background:#eaf1f5; border-color:#dce7ec; }

  /* In/out: a focused workflow surface, instead of several disconnected panels. */
  html.light-mode .m-tabs, html.light-mode .inout-page-tabs {
    margin:10px 0 14px; padding:5px; border-radius:16px; background:#fff !important;
    border:1px solid #d8e4e9; box-shadow:0 7px 17px rgba(31,59,79,.055);
  }
  html.light-mode .m-tabs .m-tab, html.light-mode .inout-page-tabs .m-tab { min-height:42px; border-radius:11px; color:#5f7389; font-weight:700; }
  html.light-mode .m-tabs .m-tab.active, html.light-mode .inout-page-tabs .m-tab.active { color:#fff; background:linear-gradient(135deg,#143451,#245773) !important; box-shadow:0 6px 14px rgba(20,52,81,.16); }
  html.light-mode .m-in-form-card { border-radius:19px; box-shadow:0 12px 26px rgba(31,59,79,.08); }
  html.light-mode .m-in-form-head { background:linear-gradient(135deg,#143451,#28617a) !important; }
  html.light-mode .m-in-product-photo { border-color:#cddfe4; background:linear-gradient(135deg,#f5fbfb,#e9f3f5); }
  html.light-mode .m-in-summary { border-radius:14px; background:#edf6f6; border:1px solid #d9e8e8; }
  html.light-mode .m-submit, html.light-mode .m-in-form-card .primary { border-radius:12px; background:linear-gradient(135deg,#173c57,#2e7983) !important; box-shadow:0 8px 17px rgba(26,70,85,.17); }
  html.light-mode .m-out-load-more { border-radius:13px; background:#eef6f7; border-color:#d5e7e8; color:#28606e; }

  /* Sheets / pickers sit above navigation and remain legible. */
  html.light-mode .modal-overlay, html.light-mode .sheet-mask { padding-bottom:78px; }
  html.light-mode .modal, html.light-mode .sheet, html.light-mode .mobile-picker, html.light-mode .brand-picker-sheet {
    background:#fbfdfe !important; border:1px solid #d7e4e9; border-radius:22px 22px 16px 16px; box-shadow:0 -12px 32px rgba(18,47,67,.18);
  }
  html.light-mode .mobile-picker .option, html.light-mode .brand-picker-sheet .brand-option { min-height:48px; border-bottom-color:#e6eef1; color:#18364a; }
  html.light-mode .mobile-picker .option.active, html.light-mode .brand-picker-sheet .brand-option.active { color:#176878; background:#e7f5f4; }

  /* Light, quiet navigation: the scan control is an icon, not a second CTA. */
  html.light-mode .bottom-nav {
    height:68px; padding:7px 10px calc(5px + env(safe-area-inset-bottom)); border-top:1px solid #d8e4e9;
    background:rgba(250,253,254,.98) !important; box-shadow:0 -8px 24px rgba(26,63,81,.1);
  }
  html.light-mode .bottom-nav::before { background:transparent !important; }
  html.light-mode .bottom-nav-item { color:#8091a2; }
  html.light-mode .bottom-nav-item.active { color:#1e5668; text-shadow:none; }
  html.light-mode .bottom-nav-item.center { top:-20px; flex-basis:58px; }
  html.light-mode .bottom-nav-item.center .ic { width:48px; height:48px; color:#316476; background:#edf6f6 !important; border:3px solid #f7fbfc; border-radius:17px; box-shadow:0 7px 15px rgba(30,86,104,.16); }
  html.light-mode .bottom-nav-item.center .lb, html.light-mode .bottom-nav-item.center::after { display:none !important; }
}

/* Final mobile feature-page layer: all newer modules share one quiet, tactile language. */
@media (max-width:720px) {
  html.light-mode .pan-page, html.light-mode .reconcile-page, html.light-mode .manage-page,
  html.light-mode .inventory-life-page { padding:14px 13px 96px; }

  html.light-mode .pan-title, html.light-mode .inventory-life-title, html.light-mode .supply-return-title { color:#17354c; }
  html.light-mode .pan-breadcrumb, html.light-mode .section-kicker, html.light-mode .inventory-life-desc { color:#54758a; }

  html.light-mode .pan-filter, html.light-mode .reconcile-intro, html.light-mode .supply-return-card,
  html.light-mode .inventory-life-content, html.light-mode .soldout-control, html.light-mode .soldout-list,
  html.light-mode .supply-brand-card, html.light-mode .reconcile-summary-card {
    border:1px solid #d8e5e9 !important;
    border-radius:18px !important;
    background:linear-gradient(145deg,#ffffff,#f4faf9) !important;
    box-shadow:0 9px 21px rgba(30,62,80,.055) !important;
  }

  html.light-mode .toolbar, html.light-mode .choice-segment, html.light-mode .soldout-periods,
  html.light-mode .supply-return-brand-chips, html.light-mode .supply-period-segment {
    display:flex; align-items:center; gap:7px; flex-wrap:wrap;
    padding:6px !important; border:1px solid #d9e5ea; border-radius:15px;
    background:#f8fbfc !important;
  }
  html.light-mode .toolbar .btn, html.light-mode .choice-segment .btn, html.light-mode .soldout-periods .btn,
  html.light-mode .supply-return-brand-chips .btn, html.light-mode .supply-period-segment .btn {
    min-height:34px; padding:0 12px; border:1px solid #d9e4e9; border-radius:10px;
    color:#557087; background:#fff !important; box-shadow:none !important;
  }
  html.light-mode .toolbar .btn.active, html.light-mode .choice-segment .btn.active,
  html.light-mode .soldout-periods .btn.active, html.light-mode .supply-return-brand-chips .btn.active,
  html.light-mode .supply-period-segment .btn.active {
    color:#fff !important; border-color:transparent !important;
    background:linear-gradient(135deg,#153b57,#286e78) !important;
    box-shadow:0 5px 12px rgba(24,77,88,.16) !important;
  }

  /* Stock analysis: promote the decisive metrics, not a crowded desktop table. */
  html.light-mode .pan-kpi, html.light-mode .pan-mobile-summary { gap:9px; }
  html.light-mode .pan-kpi-card, html.light-mode .pan-mobile-card {
    min-height:100px; padding:14px !important; border:1px solid #d8e5e9 !important;
    border-radius:16px !important; background:linear-gradient(145deg,#fff,#eef7f7) !important;
  }
  html.light-mode .pan-kpi-card .value, html.light-mode .pan-mobile-card b { color:#163a52; font-size:24px; }
  html.light-mode .pan-mobile-product { color:#17354c; }

  /* Inventory lifecycle pages remain operational rather than looking like a different product. */
  html.light-mode .inventory-life-hero, html.light-mode .inventory-life-hero.soldout-hero {
    padding:17px 18px; border:1px solid #c7e0e2; border-radius:19px;
    background:linear-gradient(135deg,#edf8f7,#e5f2f7) !important;
    box-shadow:0 9px 22px rgba(38,98,105,.07);
  }
  html.light-mode .inventory-life-hero h2, html.light-mode .inventory-life-hero .value { color:#173950 !important; }
  html.light-mode .soldout-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  html.light-mode .soldout-kpi { min-height:92px; border:1px solid #d8e5e9; border-radius:15px; background:#f7fbfb !important; }
  html.light-mode .soldout-insight-row { grid-template-columns:42px minmax(0,1fr) auto; gap:10px; padding:12px 0; }
  html.light-mode .soldout-insight-thumb { width:42px; height:42px; border-radius:12px; }
  html.light-mode .soldout-columns { display:none; }
  html.light-mode .soldout-cycle { color:#1d6870; font-weight:800; }

  /* Reconciliation and material ROI turn into short decision surfaces on phone. */
  html.light-mode .reconcile-intro { padding:16px !important; }
  html.light-mode .reconcile-intro h2, html.light-mode .supply-return-title { font-size:20px; }
  html.light-mode .reconcile-summary-grid, html.light-mode .supply-brand-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  html.light-mode .reconcile-summary-card, html.light-mode .supply-brand-kpis > * {
    min-height:86px; padding:12px !important; border-radius:14px; background:#f5faf9 !important;
  }
  html.light-mode .supply-brand-card-head { padding-bottom:11px; border-bottom:1px solid #dce9ea; }
  html.light-mode .supply-return-bar { height:8px; border-radius:99px; background:#dcebed !important; }
  html.light-mode .supply-return-bar > i { background:linear-gradient(90deg,#1f7480,#56b7ad) !important; }

  /* Mobile controls always sit above list content and retain legible contrast. */
  html.light-mode .stock-filter-picker-popover, html.light-mode .stock-filter-picker.is-mobile .stock-filter-picker-popover {
    z-index:1600 !important; overflow:hidden; border:1px solid #d1e2e7; border-radius:15px;
    background:#fbfdfe !important; box-shadow:0 15px 32px rgba(24,54,75,.16);
  }
  html.light-mode .stock-filter-picker-option { min-height:44px; color:#23455b; background:#fff !important; }
  html.light-mode .stock-filter-picker-option.active { color:#fff !important; background:linear-gradient(135deg,#173c57,#286d77) !important; }
  html.light-mode input, html.light-mode select, html.light-mode textarea { color:#18364d !important; background:#fff !important; border-color:#cfdfe6 !important; }
}

/* Mobile width pass: information should use the screen, while each card keeps its own inner padding. */
@media (max-width:720px) {
  html.light-mode .app-main,
  html.light-mode .page-main,
  html.light-mode .page-content,
  html.light-mode .main-content,
  html.light-mode .content-wrap,
  html.light-mode .mobile-page {
    padding-left:0 !important;
    padding-right:0 !important;
  }

  html.light-mode .mobile-dashboard,
  html.light-mode .m-in,
  html.light-mode .stock-page,
  html.light-mode .inout-page,
  html.light-mode .pan-page,
  html.light-mode .reconcile-page,
  html.light-mode .manage-page,
  html.light-mode .inventory-life-page,
  html.light-mode .me-page {
    padding-left:9px !important;
    padding-right:9px !important;
  }

  html.light-mode .mobile-dashboard > .card,
  html.light-mode .m-stock-card,
  html.light-mode .m-stock-item,
  html.light-mode .pan-filter,
  html.light-mode .reconcile-intro,
  html.light-mode .supply-return-card,
  html.light-mode .inventory-life-content,
  html.light-mode .soldout-control,
  html.light-mode .soldout-list {
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

@media (max-width:390px) {
  html.light-mode .mobile-dashboard,
  html.light-mode .m-in,
  html.light-mode .stock-page,
  html.light-mode .inout-page,
  html.light-mode .pan-page,
  html.light-mode .reconcile-page,
  html.light-mode .manage-page,
  html.light-mode .inventory-life-page,
  html.light-mode .me-page {
    padding-left:7px !important;
    padding-right:7px !important;
  }
}

/* ===== 公用商品资料库 ===== */
.shared-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.shared-library-head h3{margin:0 0 6px}.shared-library-head p{margin:0;max-width:780px;line-height:1.65}.shared-library-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.shared-library-stat{padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:#fff}.shared-library-stat span{display:block;color:var(--text-3);font-size:12px;margin-bottom:4px}.shared-library-stat b{font-size:22px;color:var(--text)}.shared-library-tip,.shared-library-empty{padding:12px 14px;border:1px dashed var(--border);border-radius:12px;background:#f8fbff;color:var(--text-2);font-size:13px;line-height:1.65}.shared-library-list{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#fff}.shared-library-row{display:grid;grid-template-columns:160px minmax(240px,1fr) minmax(140px,.55fr) 80px;align-items:center;gap:14px;padding:12px 14px;border-bottom:1px solid var(--border);font-size:13px}.shared-library-row:last-child{border-bottom:0}.shared-library-row code{color:var(--primary);font-weight:700;white-space:nowrap}.shared-library-name{min-width:0}.shared-library-name b,.shared-library-name span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-library-name span{margin-top:3px;font-size:12px;color:var(--text-3)}.shared-library-sizes,.shared-library-barcode{color:var(--text-2)}html.dark-mode .shared-library-stat,html.dark-mode .shared-library-list{background:#151d2e;border-color:#293852}html.dark-mode .shared-library-tip,html.dark-mode .shared-library-empty{background:#182335;border-color:#31435f;color:#aebbd0}@media(max-width:700px){.shared-library-head{flex-direction:column}.shared-library-head .btn{width:100%}.shared-library-stats{gap:8px}.shared-library-stat{padding:10px}.shared-library-stat b{font-size:20px}.shared-library-row{grid-template-columns:1fr auto;gap:8px;padding:11px 12px}.shared-library-row .shared-library-sizes{grid-column:1/-1}.shared-library-row code{font-size:12px}.shared-library-name b{font-size:13px}}

/* 管理员公用商品资料库：在独立检索弹窗中浏览，避免设置页展开过长 */
.shared-library-admin-card{position:relative;overflow:hidden}.shared-library-admin-card .shared-library-tip{margin-top:2px;border-style:solid;background:#f4f7ff}.shared-library-modal-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(10,20,38,.48);backdrop-filter:blur(8px);animation:shared-library-fade .18s ease}.shared-library-modal{width:min(100%,1020px);max-height:min(780px,calc(100vh - 56px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--card);box-shadow:0 30px 80px rgba(13,27,52,.28);animation:shared-library-enter .22s cubic-bezier(.2,.8,.2,1)}.shared-library-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 26px 18px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f2f6ff,#fff)}.shared-library-modal-head h2{margin:5px 0 6px;font-size:22px}.shared-library-modal-head p{margin:0;color:var(--text-2);font-size:13px;line-height:1.65}.shared-library-close{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text-2);font-size:28px;line-height:1;cursor:pointer;transition:.18s ease}.shared-library-close:hover{background:#f2f5fa;color:var(--text)}.shared-library-modal-tools{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;padding:16px 26px 10px}.shared-library-search{display:flex;align-items:center;gap:9px;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:11px;background:#f7f9fd;color:var(--text-3)}.shared-library-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(95,111,235,.12)}.shared-library-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.shared-library-modal-tools select{height:42px;padding:0 32px 0 12px;border:1px solid var(--border);border-radius:11px;background:#f7f9fd;color:var(--text);font:inherit}.shared-library-modal-count{padding:0 26px 10px;color:var(--text-3);font-size:12px}.shared-library-modal-list{min-height:180px;overflow:auto;margin:0 26px 18px;border:1px solid var(--border);border-radius:13px;background:var(--card)}.shared-library-modal-row{display:grid;grid-template-columns:180px minmax(220px,1fr) minmax(180px,.7fr);gap:18px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}.shared-library-modal-row:last-child{border-bottom:0}.shared-library-code code{display:block;color:var(--primary);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-library-code span,.shared-library-product span,.shared-library-meta small{display:block;margin-top:4px;color:var(--text-3);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-library-product b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-library-meta{min-width:0}.shared-library-meta>span{display:block;color:var(--text-2);font-size:12px}.shared-library-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 26px;border-top:1px solid var(--border);color:var(--text-3);font-size:12px;line-height:1.55}@keyframes shared-library-fade{from{opacity:0}to{opacity:1}}@keyframes shared-library-enter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1}}html.dark-mode .shared-library-admin-card .shared-library-tip{background:#172435;border-color:#2c4660;color:#b7c7dc}html.dark-mode .shared-library-modal{background:#111a2b;border-color:#2b3c55;box-shadow:0 30px 80px rgba(0,0,0,.5)}html.dark-mode .shared-library-modal-head{background:linear-gradient(135deg,#172b3d,#111a2b)}html.dark-mode .shared-library-search,html.dark-mode .shared-library-modal-tools select,html.dark-mode .shared-library-modal-list{background:#131e31;border-color:#2b3c55;color:#e9f1ff}html.dark-mode .shared-library-close:hover{background:#1d2b40;color:#fff}@media(max-width:700px){.shared-library-modal-overlay{align-items:flex-end;padding:12px}.shared-library-modal{max-height:calc(100dvh - 24px);border-radius:18px}.shared-library-modal-head{padding:20px 18px 15px}.shared-library-modal-head h2{font-size:19px}.shared-library-modal-tools{grid-template-columns:1fr;padding:13px 18px 8px}.shared-library-modal-count{padding:0 18px 8px}.shared-library-modal-list{margin:0 18px 12px}.shared-library-modal-row{grid-template-columns:1fr;gap:5px;padding:12px}.shared-library-meta{padding-top:6px;border-top:1px dashed var(--border)}.shared-library-modal-foot{padding:12px 18px}.shared-library-modal-foot span{display:none}}

/* Mobile product refinement: quieter editorial surfaces, fewer template gradients. */
@media (max-width:720px) {
  html.light-mode,html.light-mode body{background:#f4f5f3!important}
  html.light-mode .content{padding:8px 0 18px!important}
  html.light-mode .topbar{height:54px;padding:0 12px;border-bottom:1px solid #e2e5e3;background:rgba(250,251,249,.94)!important;backdrop-filter:blur(16px)}
  html.light-mode .topbar .page-title{color:#18231f;font-size:18px;font-weight:780;letter-spacing:-.35px}
  html.light-mode .card,html.light-mode .m-stock-card,html.light-mode .m-stock-item,html.light-mode .m-in-form-card,html.light-mode .pan-filter,html.light-mode .reconcile-intro,html.light-mode .inventory-life-content,html.light-mode .supply-return-card{border:1px solid #e1e6e2!important;border-radius:15px!important;background:#fff!important;box-shadow:0 5px 16px rgba(26,43,35,.045)!important}

  html.light-mode .m-stock-mobile-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 9px 12px;padding:7px 2px 2px}
  html.light-mode .m-stock-mobile-header span,html.light-mode .mobile-flow-label span,html.light-mode .me-overline{display:block;margin-bottom:4px;color:#6f8379;font-size:9px;font-weight:800;letter-spacing:1.2px}
  html.light-mode .m-stock-mobile-header h2{margin:0;color:#17231e;font-size:22px;letter-spacing:-.55px}
  html.light-mode .m-stock-mobile-header p{margin:3px 0 0;color:#7c8982;font-size:11px}
  html.light-mode .m-stock-mobile-header button{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:12px;color:#fff;background:#203a31;box-shadow:0 6px 14px rgba(32,58,49,.16)}
  html.light-mode .m-stat-2x2{margin:0 9px 13px!important;gap:8px}
  html.light-mode .m-stat-2x2 .stat-card{min-height:94px;padding:13px!important;border:1px solid #e0e6e2!important;border-radius:14px!important;background:#fbfcfa!important;box-shadow:none!important}
  html.light-mode .m-stat-2x2 .stat-card:nth-child(1){border-top:3px solid #29483d!important}html.light-mode .m-stat-2x2 .stat-card:nth-child(2){border-top:3px solid #7b6650!important}html.light-mode .m-stat-2x2 .stat-card:nth-child(3){border-top:3px solid #56737a!important}html.light-mode .m-stat-2x2 .stat-card:nth-child(4){border-top:3px solid #626b7d!important}
  html.light-mode .m-stat-2x2 .stat-card .label{color:#718078;font-size:10.5px}html.light-mode .m-stat-2x2 .stat-card .value{margin-top:8px;color:#17231e;font-size:22px;letter-spacing:-.5px}
  html.light-mode .inventory-list-card{margin:0 9px;padding:10px!important}html.light-mode .stock-filter-row{gap:7px}
  html.light-mode .m-stock-card{margin-bottom:9px;overflow:hidden}html.light-mode .m-stock-head{padding:13px 12px}html.light-mode .m-stock-name{color:#17231e;font-size:14px;font-weight:720}html.light-mode .m-stock-code{color:#78857e;font-size:10.5px}
  html.light-mode .m-stock-stats{padding:10px 4px;border-top:1px solid #e6ebe7;background:#f7f9f7!important}html.light-mode .m-stock-stats .item .v{color:#20382f;font-size:16px}html.light-mode .m-stock-body{background:#fcfdfc!important}
  html.light-mode .m-stock-actions .btn{border-color:#d9e1dc;color:#3b5148;background:#fff!important;box-shadow:none}html.light-mode .m-stock-actions .btn.primary{color:#fff;border-color:#263f36;background:#263f36!important}

  html.light-mode .mobile-inout-shell{padding:0 9px 96px}html.light-mode .mobile-flow-label{display:flex;align-items:baseline;justify-content:space-between;padding:6px 3px 9px}html.light-mode .mobile-flow-label span{margin:0}html.light-mode .mobile-flow-label b{color:#1b2a24;font-size:14px}
  html.light-mode .mobile-inout-shell .inout-page-tabs{margin:0 0 11px!important;padding:4px!important;border:1px solid #dde3df!important;border-radius:13px!important;background:#ecefec!important;box-shadow:none!important}
  html.light-mode .mobile-inout-shell .m-tab{min-height:39px;border-radius:10px;color:#68766f;font-size:12px}html.light-mode .mobile-inout-shell .m-tab.active{color:#fff!important;background:#21372f!important;box-shadow:0 4px 10px rgba(33,55,47,.14)!important}
  html.light-mode .m-in-form-card{overflow:hidden}html.light-mode .m-in-form-head{padding:16px 15px!important;color:#17231e;border-bottom:1px solid #e2e7e3;background:#f5f7f4!important}html.light-mode .m-in-form-head h3{color:#17231e!important;font-size:17px}html.light-mode .m-in-form-head p{color:#75837b!important}html.light-mode .m-in-form-icon{color:#fff!important;background:#29463b!important}
  html.light-mode .m-in-form-card .input{min-height:45px;border-color:#dbe2dd!important;border-radius:11px}html.light-mode .m-in-product-photo{border-color:#dce4df;background:#f7f9f7!important}html.light-mode .m-inrow{border:1px solid #e0e5e1;border-left:3px solid #516b61;background:#fafbfa}
  html.light-mode .m-in-summary{border-color:#dfe6e1;background:#f2f5f2!important}html.light-mode .m-submit,html.light-mode .m-in-form-card .primary{border-color:#203a31!important;background:#203a31!important;box-shadow:0 7px 15px rgba(32,58,49,.15)!important}
  html.light-mode .m-stock-item{padding:13px 12px;border-left:0}html.light-mode .m-stock-item .m-stock-out{color:#2c5b4c}html.light-mode .m-out-load-more{border-color:#dce4df;background:#f5f8f5;color:#4f665c}

  html.light-mode .me-page{padding:2px 9px 96px!important}html.light-mode .me-hero{position:relative;overflow:hidden;align-items:center;min-height:116px;margin:0 0 12px;padding:19px 16px;border:0;border-radius:18px;color:#fff;background:#1c2d27!important;box-shadow:0 10px 24px rgba(28,45,39,.16)}
  html.light-mode .me-hero:after{content:'';position:absolute;right:-34px;bottom:-61px;width:132px;height:132px;border:22px solid rgba(255,255,255,.055);border-radius:50%}html.light-mode .me-hero .me-avatar{width:54px;height:54px;border:1px solid rgba(255,255,255,.17);border-radius:15px;background:rgba(255,255,255,.1);font-size:21px}
  html.light-mode .me-overline{color:#9fb3aa}html.light-mode .me-hero .me-name{font-size:20px;letter-spacing:-.3px}html.light-mode .me-hero .me-shop{color:#c5d0ca;font-size:11.5px}html.light-mode .me-hero .me-badge{z-index:1;padding:5px 8px;border:1px solid rgba(255,255,255,.12);color:#dbe5e0;background:rgba(255,255,255,.06);font-size:9.5px}
  html.light-mode .me-hero .me-badge i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:#73c9a5;box-shadow:0 0 0 3px rgba(115,201,165,.12)}
  html.light-mode .me-group{margin-bottom:10px;padding:13px!important}html.light-mode .me-group h3{display:flex;align-items:baseline;justify-content:space-between;margin:0 1px 11px;padding:0;border:0}html.light-mode .me-group h3 span{color:#1b2923;font-size:15px}html.light-mode .me-group h3 small{color:#909b95;font-size:9.5px;font-weight:500}
  html.light-mode .me-grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}html.light-mode .me-cell{min-height:100px;padding:13px;border:1px solid #e4e8e5;border-radius:12px;background:#fafbfa;box-shadow:none}
  html.light-mode .me-cell .me-cell-icon{width:35px;height:35px;margin-bottom:10px;border-radius:10px;background:#edf1ee!important;color:#395448!important}html.light-mode .me-cell:nth-child(2n) .me-cell-icon{color:#665440!important;background:#f3efe9!important}html.light-mode .me-cell .me-cell-label{color:#1d2b25;font-size:13px}html.light-mode .me-cell .me-cell-desc{color:#89938e;font-size:10px}
  html.light-mode .me-item{min-height:54px;padding:9px 2px;border-bottom-color:#e8ece9}html.light-mode .me-item .me-icon{width:34px;height:34px;border-radius:10px;color:#425a50;background:#eef2ef}html.light-mode .me-item .me-label{color:#22312a;font-size:13px}

  html.light-mode .orders-page,html.light-mode .reconcile-page,html.light-mode .pan-page,html.light-mode .manage-page,html.light-mode .settings-page,html.light-mode .members-page,html.light-mode .inventory-life-page{padding-left:9px!important;padding-right:9px!important;padding-bottom:96px!important}
  html.light-mode .reconcile-intro,html.light-mode .pan-filter,html.light-mode .inventory-life-hero,html.light-mode .supply-return-card{border-radius:15px!important;background:#fff!important;box-shadow:0 5px 16px rgba(26,43,35,.045)!important}
  html.light-mode .toolbar,html.light-mode .choice-segment,html.light-mode .soldout-periods,html.light-mode .supply-return-brand-chips,html.light-mode .supply-period-segment{border-color:#e0e5e1;border-radius:12px;background:#f4f6f4!important}
  html.light-mode .toolbar .btn.active,html.light-mode .choice-segment .btn.active,html.light-mode .soldout-periods .btn.active,html.light-mode .supply-period-segment .btn.active{border-color:#213a31!important;color:#fff!important;background:#213a31!important;box-shadow:none!important}
  html.light-mode .pan-kpi-card,html.light-mode .reconcile-summary-card,html.light-mode .supply-brand-kpis>* ,html.light-mode .soldout-kpi{border-color:#e0e6e2!important;background:#fafbfa!important;box-shadow:none!important}
  html.light-mode .bottom-nav{height:70px;border-top:1px solid #dfe4e0;background:rgba(249,250,248,.97)!important;box-shadow:0 -7px 20px rgba(30,48,39,.08)}html.light-mode .bottom-nav-item{color:#8a958f}html.light-mode .bottom-nav-item.active{color:#263f35}html.light-mode .bottom-nav-item.center .ic{color:#29483c;border-color:#f7f8f6;background:#edf1ee!important;box-shadow:0 6px 14px rgba(38,63,53,.14)}
}

@media (max-width:720px) {
  html.light-mode .content { padding:8px 9px 18px !important; }
  html.light-mode .mobile-dashboard,html.light-mode .m-in,html.light-mode .mobile-inout-shell,
  html.light-mode .pan-page,html.light-mode .reconcile-page,html.light-mode .manage-page,
  html.light-mode .inventory-life-page,html.light-mode .me-page,html.light-mode .orders-page,
  html.light-mode .settings-page,html.light-mode .members-page {
    padding-left:0 !important; padding-right:0 !important;
  }
  html.light-mode .m-stock-mobile-header,html.light-mode .m-stat-2x2,html.light-mode .inventory-list-card {
    margin-left:0 !important; margin-right:0 !important;
  }
}
/* ===== Mobile settings: progressive disclosure instead of one long form ===== */
.settings-content-group { display: block; }

@media (max-width: 760px) {
  .mobile-settings-hub {
    margin: 0 0 12px;
    padding: 16px;
    border: 1px solid rgba(165, 184, 211, .45);
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(242,247,252,.92));
    box-shadow: 0 12px 34px rgba(38, 60, 88, .08);
  }

  .mobile-settings-intro h2 {
    margin: 3px 0 4px;
    color: #142238;
    font-size: 23px;
    letter-spacing: -.02em;
  }

  .mobile-settings-intro p {
    margin: 0;
    color: #718096;
    font-size: 12px;
  }

  .mobile-settings-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 15px;
  }

  .mobile-settings-nav-item {
    display: flex;
    min-width: 0;
    min-height: 72px;
    align-items: center;
    gap: 10px;
    padding: 11px;
    border: 1px solid #dce5ef;
    border-radius: 16px;
    color: #53657b;
    text-align: left;
    background: rgba(255,255,255,.78);
    box-shadow: 0 4px 12px rgba(36, 53, 76, .035);
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
  }

  .mobile-settings-nav-item:active { transform: scale(.98); }

  .mobile-settings-nav-item.active {
    border-color: rgba(82, 108, 147, .22);
    color: #fff;
    background: linear-gradient(135deg, #17283e, #263b57);
    box-shadow: 0 9px 20px rgba(22, 39, 61, .18);
  }

  .mobile-settings-nav-icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border-radius: 11px;
    color: #435c78;
    background: #edf3f8;
  }

  .mobile-settings-nav-item.active .mobile-settings-nav-icon {
    color: #1e3955;
    background: rgba(240, 248, 255, .92);
  }

  .mobile-settings-nav-item > span:last-child { min-width: 0; }
  .mobile-settings-nav-item b,
  .mobile-settings-nav-item small { display: block; }
  .mobile-settings-nav-item b { font-size: 13px; line-height: 1.35; }
  .mobile-settings-nav-item small {
    overflow: hidden;
    margin-top: 3px;
    color: #91a0b2;
    font-size: 10px;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .mobile-settings-nav-item.active small { color: rgba(255,255,255,.66); }

  .settings-content-group { display: none; }
  .settings-content-group.active {
    display: block;
    animation: settings-section-enter .24s ease both;
  }

  .mobile-settings-section-head {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin: 3px 3px 9px;
    color: #1b2d44;
  }

  .mobile-settings-section-head > span {
    display: grid;
    width: 31px;
    height: 31px;
    place-items: center;
    border-radius: 10px;
    color: #405b79;
    background: #eaf1f7;
  }

  .mobile-settings-section-head b,
  .mobile-settings-section-head small { display: block; }
  .mobile-settings-section-head b { font-size: 15px; }
  .mobile-settings-section-head small { margin-top: 2px; color: #8391a3; font-size: 10px; }

  .settings-content-group > .card,
  .settings-content-group > .grid { margin-bottom: 10px; }

  .settings-content-group .card { border-radius: 18px; }
  .settings-content-group .card > h3 { line-height: 1.45; }
  .settings-content-group .card > h3 .sub {
    display: block;
    margin: 3px 0 0;
    font-size: 10px;
    font-weight: 400;
  }

  .settings-content-group .form-grid { grid-template-columns: 1fr; }
  .settings-content-group .setting-row {
    align-items: flex-start;
    gap: 10px;
  }
  .settings-content-group .setting-row > .btn,
  .settings-content-group .setting-row > div:last-child { flex-shrink: 0; }

  .store-profile-card .store-profile-title { align-items: flex-start; }
  .store-profile-card .store-profile-title .section-kicker,
  .store-profile-card .store-profile-title p { display: none; }
  .store-profile-card .store-profile-form { grid-template-columns: 1fr; }
  .store-profile-card .store-profile-form .btn { width: 100%; }

  @keyframes settings-section-enter {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* Keep the redesigned mobile pan hierarchy above legacy compatibility layers. */
@media (max-width:720px) {
  html.light-mode .pan-kpi-card {
    min-height:104px;
    padding:13px !important;
    background:linear-gradient(150deg,#fff,#f4f9fa) !important;
  }
  html.light-mode .pan-kpi-card .value { margin-top:11px; color:#14344a !important; font-size:20px !important; }
  html.light-mode .pan-mobile-card {
    min-height:0;
    padding:0 !important;
    background:linear-gradient(145deg,#fff,#f5faf9) !important;
  }
  html.light-mode .pan-mobile-brand-main b { color:#17364b; font-size:13px; }
  html.light-mode .pan-mobile-products {
    min-height:0;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
}

/* ========================================================================
   Desktop dark studio — graphite canvas, mineral surfaces and restrained teal.
   Kept desktop-only so the tuned light/mobile experiences remain untouched.
   ======================================================================== */
@media (min-width:721px) {
  html.eye-mode {
    --primary:#53c6bb;
    --primary-light:rgba(83,198,187,.13);
    --primary-dark:#38a99f;
    --sidebar-bg:#080e15;
    --sidebar-text:#93a8b8;
    --bg:#090f16;
    --card:#111b25;
    --border:#243442;
    --text:#edf5f7;
    --text-2:#b4c3cc;
    --text-3:#758998;
    --shadow:0 16px 36px rgba(0,0,0,.25);
    color-scheme:dark;
  }

  html.eye-mode body {
    color:#eaf2f5;
    background:#090f16 !important;
    background-image:radial-gradient(900px 520px at 92% -12%,rgba(47,137,139,.09),transparent 68%),radial-gradient(760px 520px at 12% 108%,rgba(53,89,122,.08),transparent 70%) !important;
  }
  html.eye-mode body::before,
  html.eye-mode body::after { display:none !important; }
  html.eye-mode :where(.app-main,.page-main,.page-content,.main-content,.content-wrap,.content) {
    background:transparent !important;
    background-image:none !important;
  }

  /* Navigation becomes one quiet graphite rail instead of a purple/blue layer. */
  html.eye-mode .sidebar {
    background:linear-gradient(180deg,#080e15 0%,#0b131c 100%) !important;
    border-right:1px solid #1c2a35 !important;
    box-shadow:12px 0 30px rgba(0,0,0,.13);
  }
  html.eye-mode .side-brand { border-bottom-color:#1d2b36; }
  html.eye-mode .side-brand strong,
  html.eye-mode .sidebar .brand,
  html.eye-mode .sidebar .logo { color:#eff7f8 !important; }
  html.eye-mode .side-brand small,
  html.eye-mode .side-group-title { color:#607584 !important; }
  html.eye-mode .sidebar nav a {
    margin:2px 9px;
    border:1px solid transparent;
    border-radius:10px;
    color:#93a7b6 !important;
    background:transparent !important;
  }
  html.eye-mode .sidebar nav a:hover {
    color:#dce9ed !important;
    border-color:#20313e;
    background:#101c26 !important;
  }
  html.eye-mode .sidebar nav a.active {
    color:#eafffc !important;
    border-color:rgba(83,198,187,.19) !important;
    border-left-color:rgba(83,198,187,.19) !important;
    background:linear-gradient(90deg,rgba(50,145,140,.24),rgba(31,66,76,.18)) !important;
    box-shadow:inset 3px 0 0 #53c6bb,0 7px 18px rgba(0,0,0,.12);
  }
  html.eye-mode .sidebar nav a.active .uic { color:#75d9d0; }
  html.eye-mode .side-foot { border-top-color:#1d2b36; color:#9bafbc; }
  html.eye-mode .theme-switch {
    border-color:#273744;
    color:#a9bac5;
    background:#101a23;
  }
  html.eye-mode .theme-switch:hover { border-color:#3e746f; color:#e7f6f4; background:#15252d; }

  html.eye-mode .topbar {
    border-bottom:1px solid #21303c !important;
    background:rgba(9,15,22,.88) !important;
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    backdrop-filter:blur(18px) saturate(125%);
  }
  html.eye-mode .topbar h1,
  html.eye-mode .topbar .title { color:#edf5f7 !important; }
  html.eye-mode .topbar .user {
    border-color:#293a47;
    color:#dbe7eb;
    background:#111c26;
  }
  html.eye-mode .topbar .user:hover { border-color:#3f655f; background:#16232d; }
  html.eye-mode .topbar .avatar { color:#0a171a; background:linear-gradient(145deg,#78ddd3,#4cb9b0); }

  /* One surface family for cards, lists, KPIs and functional panels. */
  html.eye-mode :where(
    .card,.stat-card,.stock-row,.inventory-list-card,.order-list-card,.store-profile-card,
    .report-summary-card,.stat-trend-card,.pan-filter,.pan-mobile-card,.reconcile-summary-card,
    .supply-return-card,.supply-brand-card,.inventory-life-content,.soldout-control,.soldout-list,
    .soldout-kpi,.ops-todo,.shared-library-admin-card,.setting-row,.cmp-picker,.m-tcard,.m-inrow,.m-in-summary
  ) {
    border-color:#263846 !important;
    color:#dce8ec;
    background:linear-gradient(145deg,#121d27 0%,#101923 100%) !important;
    box-shadow:0 11px 26px rgba(0,0,0,.13) !important;
  }
  html.eye-mode :where(.card,.stat-card,.stock-row,.setting-row):hover { border-color:#34505b; }
  html.eye-mode :where(.card,.stat-card) h2,
  html.eye-mode :where(.card,.stat-card) h3,
  html.eye-mode :where(.card,.stat-card) h4,
  html.eye-mode .value,
  html.eye-mode .store-profile-title h3 { color:#edf5f7 !important; }
  html.eye-mode :where(.muted,.sub,.hint,.extra,.small),
  html.eye-mode .card p,
  html.eye-mode .setting-row .d { color:#8195a3 !important; }
  html.eye-mode .section-kicker { color:#65c9c0 !important; }

  html.eye-mode .stat-card {
    position:relative;
    overflow:hidden;
  }
  html.eye-mode .stat-card::after {
    content:'';
    position:absolute;
    right:-27px;
    bottom:-31px;
    width:78px;
    height:78px;
    border:12px solid rgba(83,198,187,.035);
    border-radius:50%;
    pointer-events:none;
  }
  html.eye-mode .stat-card .label { color:#8ca0ad !important; }
  html.eye-mode .stat-card .value.pos,
  html.eye-mode .pos { color:#67d9bd !important; }
  html.eye-mode .stat-card .value.neg,
  html.eye-mode .neg { color:#ff8f86 !important; }

  /* All page heroes share the same dark material, with restrained module accents. */
  html.eye-mode :where(
    .module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.orders-hero,.report-hero,
    .settings-hero,.manage-hero,.reconcile-intro,.dewu-sync-intro,.inventory-life-hero,.soldout-hero
  ) {
    border:1px solid #31505a !important;
    color:#f1f8f8 !important;
    background:radial-gradient(circle at 84% 12%,rgba(87,199,187,.13),transparent 30%),linear-gradient(118deg,#101c27 0%,#142c36 58%,#17434a 100%) !important;
    box-shadow:0 17px 38px rgba(0,0,0,.22) !important;
  }
  html.eye-mode :where(.module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.inventory-life-hero) h2,
  html.eye-mode :where(.module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.inventory-life-hero) h3,
  html.eye-mode :where(.module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.inventory-life-hero) .value { color:#f4fbfb !important; }
  html.eye-mode :where(.module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.inventory-life-hero) p,
  html.eye-mode :where(.module-hero,.dashboard-hero,.inventory-workbench,.operation-banner,.inventory-life-hero) small { color:#a5bdc5 !important; }
  html.eye-mode .module-hero-side,
  html.eye-mode .report-hero-kpi {
    border-color:rgba(144,207,204,.18) !important;
    background:rgba(6,18,24,.34) !important;
    box-shadow:inset 0 1px rgba(255,255,255,.025);
  }
  html.eye-mode .inbound-banner { background:linear-gradient(118deg,#10202b,#123842 62%,#17605f) !important; }
  html.eye-mode .outbound-banner,
  html.eye-mode .orders-hero { background:linear-gradient(118deg,#111c29,#192f3d 62%,#274a55) !important; }

  /* Controls and segmented choices use one accent and never bright violet. */
  html.eye-mode :where(.btn,.chip,.m-tab,.app-select-trigger,.stock-filter-picker-trigger) {
    border-color:#334754 !important;
    color:#b8c8d1 !important;
    background:#14212b !important;
    box-shadow:none !important;
  }
  html.eye-mode :where(.btn,.chip,.m-tab,.app-select-trigger,.stock-filter-picker-trigger):hover {
    border-color:#47716e !important;
    color:#f0f8f8 !important;
    background:#192b34 !important;
  }
  html.eye-mode :where(.btn.primary,.btn.main,.stock-add,.chip.active,.m-tab.active,
    .dashboard-period-tabs button.active,.sales-period-tabs button.active,
    .app-select-option.active,.stock-filter-picker-option.active) {
    border-color:#58bdb4 !important;
    color:#071719 !important;
    background:linear-gradient(135deg,#61d0c5,#42aaa4) !important;
    box-shadow:0 8px 18px rgba(47,166,157,.18) !important;
  }
  html.eye-mode .btn.danger { border-color:#744542 !important; color:#ffb0aa !important; background:#2b1c20 !important; }
  html.eye-mode .btn.danger:hover { border-color:#a45b56 !important; color:#ffd4d0 !important; background:#3a2327 !important; }
  html.eye-mode :where(.toolbar,.choice-segment,.dashboard-period-tabs,.sales-period-tabs,.soldout-periods,.supply-period-segment) {
    border-color:#293b47 !important;
    background:#0e1821 !important;
  }

  html.eye-mode :where(.input,select.input,textarea.input,.form-item input,.form-item select,input[type="date"],input[type="month"]) {
    border-color:#344956 !important;
    color:#e5eff2 !important;
    background:#0d1720 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
  }
  html.eye-mode :where(.input,textarea.input,.form-item input)::placeholder { color:#5f7483 !important; }
  html.eye-mode :where(.input,select.input,textarea.input,.form-item input,.form-item select):focus {
    border-color:#55bdb4 !important;
    background:#101d26 !important;
    box-shadow:0 0 0 3px rgba(83,198,187,.12) !important;
  }
  html.eye-mode option { color:#dfeaed; background:#101a23; }
  html.eye-mode :where(.app-select-popover,.stock-filter-picker-popover) {
    border-color:#334955 !important;
    background:#111d27 !important;
    box-shadow:0 18px 42px rgba(0,0,0,.38) !important;
  }
  html.eye-mode :where(.app-select-option,.stock-filter-picker-option) { color:#b5c6cf !important; background:#111d27 !important; }
  html.eye-mode :where(.app-select-option,.stock-filter-picker-option):hover { color:#eef8f7 !important; background:#192a33 !important; }

  /* Tables have a fixed visual rhythm and a subtle selected/hover state. */
  html.eye-mode :where(.table,.cmp-table,.pan-table) { color:#cbd9df; }
  html.eye-mode :where(.table,.cmp-table,.pan-table) thead th {
    border-color:#263946 !important;
    color:#8399a8 !important;
    background:#0c161f !important;
  }
  html.eye-mode :where(.table,.cmp-table,.pan-table) td {
    border-color:#21333f !important;
    color:#cbd9df !important;
    background:#111b25 !important;
  }
  html.eye-mode :where(.table,.cmp-table,.pan-table) tbody tr:hover td { color:#eff7f8 !important; background:#172832 !important; }
  html.eye-mode :where(.table,.cmp-table) th.hl,
  html.eye-mode :where(.table,.cmp-table) td.hl { color:#dff6f2 !important; background:#173238 !important; }
  html.eye-mode .pan-pct { background:#20333e; }
  html.eye-mode .pan-pct .bar,
  html.eye-mode .progress .bar,
  html.eye-mode .allocation-track i { background:linear-gradient(90deg,#42aaa4,#72d5c9) !important; }

  /* Tags, status and warning colors stay semantic but muted. */
  html.eye-mode :where(.tag,.pan-tag) { border:1px solid #34505a; color:#9ddbd4; background:#173038 !important; }
  html.eye-mode .tag.gray { border-color:#374753; color:#a5b5bf; background:#18232c !important; }
  html.eye-mode .tag.green { border-color:#326358; color:#7ee0c7; background:#14352f !important; }
  html.eye-mode .tag.orange { border-color:#71552d; color:#efbd69; background:#302619 !important; }
  html.eye-mode .tag.red { border-color:#72413f; color:#f59a93; background:#301d21 !important; }

  /* Charts and secondary visualization surfaces no longer retain white islands. */
  html.eye-mode :where(.chart-box,.cat-donut,.report-performance-grid,.trend-metrics,.shared-library-stats) { color:#c5d4da; }
  html.eye-mode .chart-box svg line { stroke:#2a3d49 !important; }
  html.eye-mode .chart-box svg text { fill:#8398a6 !important; }
  html.eye-mode .chart-donut circle[stroke="#eef1f5"] { stroke:#263945 !important; }
  html.eye-mode .chart-donut text { fill:#e9f3f5 !important; }
  html.eye-mode .activity-day { background:#21313c; }
  html.eye-mode .activity-day i { background:#4a626e; }
  html.eye-mode .activity-day.active { background:#29434c; }
  html.eye-mode .activity-day.active i { background:#61cdc2; }

  /* Dialogs and admin data windows complete the same material system. */
  html.eye-mode :where(.modal,.shared-library-modal) {
    border:1px solid #304551 !important;
    color:#dce8ec !important;
    background:#101a24 !important;
    box-shadow:0 28px 80px rgba(0,0,0,.52) !important;
  }
  html.eye-mode :where(.modal-mask,.shared-library-modal-overlay) { background:rgba(2,7,11,.73) !important; backdrop-filter:blur(5px); }
  html.eye-mode :where(.modal .m-head,.modal .m-foot,.shared-library-modal-head,.shared-library-modal-foot) {
    border-color:#293d49 !important;
    background:#111e28 !important;
  }
  html.eye-mode :where(.shared-library-modal-tools,.shared-library-modal-row,.shared-library-stat,.shared-library-tip) {
    border-color:#293d49 !important;
    color:#c8d7dd !important;
    background:#0d1821 !important;
  }

  /* Dark scrollbars are deliberately quiet and match both main canvas and sidebar. */
  html.eye-mode * { scrollbar-color:#344b55 #0c151d; }
  html.eye-mode *::-webkit-scrollbar { width:9px; height:9px; }
  html.eye-mode *::-webkit-scrollbar-track { background:#0c151d; }
  html.eye-mode *::-webkit-scrollbar-thumb { border:2px solid #0c151d; border-radius:99px; background:#344b55; }
  html.eye-mode *::-webkit-scrollbar-thumb:hover { background:#467069; }
}

/* ===== System toast console: neutral technology feedback, no generic green ===== */
#toast-wrap {
  right:22px;
  bottom:22px;
  gap:10px;
  z-index:3000;
}
.toast {
  --toast-accent:#63cbd3;
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:11px;
  min-width:260px;
  max-width:min(390px,calc(100vw - 28px));
  overflow:hidden;
  padding:11px 15px 12px 11px;
  border:1px solid rgba(119,174,194,.30);
  border-radius:14px;
  color:#ecf7fa;
  background:linear-gradient(135deg,rgba(12,22,33,.97),rgba(17,38,48,.96)) !important;
  box-shadow:0 18px 46px rgba(3,10,16,.32),inset 0 1px 0 rgba(255,255,255,.055),0 0 24px rgba(74,175,187,.075);
  backdrop-filter:blur(16px) saturate(135%);
  animation:system-toast-in .32s cubic-bezier(.2,.78,.22,1) both;
}
.toast::before {
  content:'';
  position:absolute;
  top:0;
  left:46px;
  width:76px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--toast-accent),transparent);
  box-shadow:0 0 11px var(--toast-accent);
  opacity:.75;
}
.toast-signal {
  position:relative;
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--toast-accent) 42%,transparent);
  border-radius:11px;
  color:var(--toast-accent);
  background:color-mix(in srgb,var(--toast-accent) 10%,rgba(7,18,26,.82));
  box-shadow:inset 0 0 15px color-mix(in srgb,var(--toast-accent) 8%,transparent);
}
.toast-signal::after {
  content:'';
  position:absolute;
  right:4px;
  top:4px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--toast-accent);
  box-shadow:0 0 8px var(--toast-accent);
  animation:toast-signal-pulse 1.3s ease-in-out infinite;
}
.toast-copy { display:block; min-width:0; }
.toast-copy small,
.toast-copy b { display:block; }
.toast-copy small {
  margin-bottom:3px;
  color:color-mix(in srgb,var(--toast-accent) 76%,#dbe9ef);
  font-size:8px;
  font-weight:800;
  line-height:1;
  letter-spacing:1.15px;
}
.toast-copy b {
  overflow:hidden;
  color:#edf6f8;
  font-size:12.5px;
  font-weight:650;
  line-height:1.45;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.toast-progress {
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,var(--toast-accent),color-mix(in srgb,var(--toast-accent) 45%,transparent));
  box-shadow:0 0 8px color-mix(in srgb,var(--toast-accent) 38%,transparent);
  transform-origin:left center;
  animation:toast-progress-run var(--toast-duration,2400ms) linear both;
}
.toast.success { --toast-accent:#67cdd4; }
.toast.info { --toast-accent:#8fa9e8; }
.toast.warning { --toast-accent:#e4b86c; }
.toast.error { --toast-accent:#ee8580; }

html.light-mode .toast {
  border-color:rgba(82,127,146,.29);
  color:#edf7fa;
  background:linear-gradient(135deg,rgba(18,31,44,.97),rgba(24,52,62,.96)) !important;
  box-shadow:0 17px 42px rgba(26,54,70,.25),inset 0 1px rgba(255,255,255,.075),0 0 22px rgba(65,156,170,.07);
}

@keyframes system-toast-in {
  from { opacity:0; transform:translateX(18px) scale(.97); filter:blur(3px); }
  to { opacity:1; transform:translateX(0) scale(1); filter:blur(0); }
}
@keyframes toast-progress-run {
  from { transform:scaleX(1); opacity:.9; }
  to { transform:scaleX(0); opacity:.25; }
}
@keyframes toast-signal-pulse {
  0%,100% { opacity:.42; transform:scale(.82); }
  50% { opacity:1; transform:scale(1); }
}

@media (max-width:720px) {
  #toast-wrap {
    right:9px;
    bottom:84px;
    width:calc(100vw - 18px);
    align-items:stretch;
  }
  .toast {
    width:100%;
    min-width:0;
    max-width:none;
    box-sizing:border-box;
    grid-template-columns:35px minmax(0,1fr);
    padding:10px 13px 11px 10px;
    border-radius:13px;
  }
  .toast-signal { width:35px; height:35px; border-radius:10px; }
  .toast-copy b { font-size:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .toast,
  .toast-signal::after,
  .toast-progress { animation:none !important; }
}

/* ===== Dark settings and confirmation dialogs: complete mobile/desktop surfaces ===== */
html.eye-mode .modal-mask { background:rgba(1,7,12,.76) !important; backdrop-filter:blur(9px) saturate(115%); }
html.eye-mode .modal {
  overflow:hidden;
  border:1px solid #294752 !important;
  color:#dce9ec !important;
  background:linear-gradient(150deg,#111f2b,#0b1720) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.56),0 0 34px rgba(65,208,195,.07) !important;
}
html.eye-mode .modal .m-head,
html.eye-mode .modal .m-foot { border-color:#263e49 !important; background:rgba(12,25,34,.92) !important; }
html.eye-mode .modal .m-head h3 { color:#f0f8f9 !important; }
html.eye-mode .modal .m-body { color:#a9bec3 !important; background:transparent !important; }
html.eye-mode .modal .m-close { color:#839ba3 !important; }
html.eye-mode .modal .m-close:hover { color:#7ce1d6 !important; }
html.eye-mode .modal .m-foot .btn { border-color:#38515e !important; color:#b8cbd0 !important; background:#162630 !important; }
html.eye-mode .modal .m-foot .btn.primary {
  border-color:#4fa99f !important;
  color:#eafffc !important;
  background:linear-gradient(135deg,#276f70,#318b82) !important;
  box-shadow:0 8px 20px rgba(39,139,130,.20) !important;
}

html.eye-mode .settings-page .card,
html.eye-mode .settings-page .stat-card {
  border-color:#243e49 !important;
  color:#dce9eb !important;
  background:linear-gradient(145deg,#111f2a,#0c1822) !important;
  box-shadow:0 10px 27px rgba(0,0,0,.20) !important;
}
html.eye-mode .settings-page :where(h2,h3,.t,.store-profile-title h3) { color:#edf8f8 !important; }
html.eye-mode .settings-page :where(p,.sub,.d,.muted,.hint,.extra) { color:#789398 !important; }
html.eye-mode .settings-page .setting-row { border-bottom-color:#203640 !important; }
html.eye-mode .settings-page .tag.gray { border-color:#36515c; color:#86aaa9; background:#132832 !important; }
html.eye-mode .settings-page .store-profile-form .input,
html.eye-mode .settings-page .form-grid .input {
  border-color:#304d59 !important;
  color:#e9f4f5 !important;
  background:#0a1720 !important;
}
html.eye-mode .settings-page .btn.primary {
  border-color:#4e9e98 !important;
  color:#effffd !important;
  background:linear-gradient(135deg,#285f6b,#297f78) !important;
  box-shadow:0 8px 20px rgba(39,127,120,.18) !important;
}

@media (max-width:760px) {
  html.eye-mode .mobile-settings-hub {
    border-color:#294752 !important;
    background:radial-gradient(circle at 88% 8%,rgba(79,214,201,.10),transparent 31%),linear-gradient(145deg,#111f2a,#0a1720) !important;
    box-shadow:0 15px 36px rgba(0,0,0,.27) !important;
  }
  html.eye-mode .mobile-settings-intro .section-kicker { color:#61c7bf !important; }
  html.eye-mode .mobile-settings-intro h2 { color:#f0f9f9 !important; }
  html.eye-mode .mobile-settings-intro p { color:#779295 !important; }
  html.eye-mode .mobile-settings-nav-item {
    border-color:#243d48 !important;
    color:#b2c5c8 !important;
    background:linear-gradient(145deg,#14242f,#0f1c26) !important;
    box-shadow:0 6px 16px rgba(0,0,0,.15) !important;
  }
  html.eye-mode .mobile-settings-nav-item.active {
    border-color:#477a80 !important;
    color:#f2fbfb !important;
    background:linear-gradient(135deg,#1a3440,#205257) !important;
    box-shadow:0 9px 22px rgba(0,0,0,.24),inset 0 1px rgba(113,228,217,.10) !important;
  }
  html.eye-mode .mobile-settings-nav-icon { color:#78aaa9 !important; background:#182f37 !important; }
  html.eye-mode .mobile-settings-nav-item.active .mobile-settings-nav-icon { color:#83e3d9 !important; background:#153f43 !important; }
  html.eye-mode .mobile-settings-nav-item small { color:#647f84 !important; }
  html.eye-mode .mobile-settings-nav-item.active small { color:#87aaa9 !important; }
  html.eye-mode .mobile-settings-section-head { color:#eaf6f6 !important; }
  html.eye-mode .mobile-settings-section-head > span { color:#73d5cc !important; background:#15313a !important; }
  html.eye-mode .mobile-settings-section-head b { color:#eaf6f6 !important; }
  html.eye-mode .mobile-settings-section-head small { color:#668287 !important; }
  html.eye-mode .settings-content-group .card { border-radius:18px !important; }
  .settings-page .store-profile-form { display:flex; width:100%; max-width:none; flex-direction:column; }
  .settings-page .store-profile-form .input { width:100%; min-height:44px; box-sizing:border-box; }
  html.eye-mode .modal { width:min(420px,calc(100vw - 28px)); border-radius:19px !important; }
  html.eye-mode .modal .m-head { padding:17px 18px !important; }
  html.eye-mode .modal .m-body { padding:17px 18px !important; line-height:1.7; }
  html.eye-mode .modal .m-foot { padding:13px 16px calc(13px + env(safe-area-inset-bottom)) !important; }
}

/* ===== Cross-device polish pass: account center, scrolling and tactile routes ===== */
.topbar .user { cursor:pointer; }

@media (min-width:721px) {
  .me-page-desktop { padding-bottom:18px; }
  .me-desktop-hero {
    position:relative;
    display:flex;
    min-height:138px;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    overflow:hidden;
    margin-bottom:13px;
    padding:24px 27px;
    border:1px solid #d7e2e8;
    border-radius:21px;
    color:#173246;
    background:radial-gradient(circle at 84% 18%,rgba(55,154,151,.13),transparent 31%),linear-gradient(135deg,#f9fcfc,#edf5f5 58%,#e6f0f3);
    box-shadow:0 12px 30px rgba(30,61,78,.075);
  }
  .me-desktop-hero::after {
    content:'';
    position:absolute;
    right:9%;
    top:-89px;
    width:230px;
    height:230px;
    border:30px solid rgba(43,118,122,.06);
    border-radius:50%;
    pointer-events:none;
  }
  .me-desktop-profile { position:relative; z-index:1; display:flex; align-items:center; gap:16px; }
  .me-desktop-profile .me-avatar {
    display:grid;
    width:62px;
    height:62px;
    place-items:center;
    border:1px solid rgba(39,100,110,.18);
    border-radius:18px;
    color:#fff;
    background:linear-gradient(145deg,#21475a,#327a78);
    box-shadow:0 9px 21px rgba(32,87,91,.17);
    font-size:23px;
    font-weight:800;
  }
  .me-desktop-profile .me-name { margin-top:4px; color:#162f43; font-size:24px; font-weight:800; letter-spacing:-.45px; }
  .me-desktop-profile .me-shop { display:flex; align-items:center; gap:5px; margin-top:6px; color:#69808f; font-size:12px; }
  .me-desktop-status {
    position:relative;
    z-index:1;
    min-width:220px;
    padding:15px 17px;
    border:1px solid rgba(62,111,121,.16);
    border-radius:15px;
    background:rgba(255,255,255,.57);
    backdrop-filter:blur(8px);
  }
  .me-desktop-status span,
  .me-desktop-status b,
  .me-desktop-status small { display:block; }
  .me-desktop-status span { color:#748895; font-size:10px; }
  .me-desktop-status b { overflow:hidden; margin-top:4px; color:#17384b; font-size:16px; text-overflow:ellipsis; white-space:nowrap; }
  .me-desktop-status small { margin-top:8px; color:#688078; font-size:10px; }
  .me-desktop-status small i { display:inline-block; width:6px; height:6px; margin-right:5px; border-radius:50%; background:#53aaa0; box-shadow:0 0 0 4px rgba(83,170,160,.1); }

  .me-desktop-snapshot{margin-bottom:13px;padding:0!important;overflow:hidden;border-color:#d8e3e7;background:rgba(255,255,255,.82);box-shadow:0 8px 24px rgba(30,61,78,.055)}
  .me-desktop-snapshot-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:14px 17px 12px;border-bottom:1px solid #e2e9ec;background:linear-gradient(135deg,#fafcfc,#f2f7f6)}
  .me-desktop-snapshot-head h3{margin:3px 0 0;color:#172f43;font-size:15px}.me-desktop-snapshot-head>small{color:#84959f;font-size:10px}
  .me-desktop-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0; }
  .me-desktop-stats .stat-card {
    display:flex;
    min-width:0;
    min-height:100px;
    align-items:center;
    gap:12px;
    padding:16px 17px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    text-align:left;
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
  }
  .me-desktop-stats .stat-card + .stat-card{border-left:1px solid #e3eaed}
  .me-desktop-stats .stat-card:hover { transform:none; border-color:#e3eaed; background:#f6faf9; box-shadow:none; }
  .me-stat-icon { display:grid; width:39px; height:39px; flex:0 0 39px; place-items:center; border-radius:12px; color:#356777; background:#e8f2f3; }
  .me-desktop-stats .stat-card > div { min-width:0; }
  .me-desktop-stats .stat-card span,
  .me-desktop-stats .stat-card b,
  .me-desktop-stats .stat-card small { display:block; }
  .me-desktop-stats .stat-card .me-stat-icon {
    display:grid;
    width:46px;
    height:46px;
    flex:0 0 46px;
    place-items:center;
    padding:0;
    line-height:0;
    border-radius:14px;
  }
  .me-desktop-stats .stat-card .me-stat-icon svg {
    display:block;
    width:21px;
    height:21px;
    margin:auto;
  }
  .me-desktop-stats .stat-card > div > span { color:#718493; font-size:10px; }
  .me-desktop-stats .stat-card b { overflow:hidden; margin-top:5px; color:#173247; font-size:21px; line-height:1.05; text-overflow:ellipsis; white-space:nowrap; }
  .me-desktop-stats .stat-card small { margin-top:5px; color:#8797a2; font-size:10px; }

  .me-desktop-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(280px,.75fr); gap:13px; align-items:start; }
  .me-desktop-tools,
  .me-desktop-system { padding:18px !important; }
  .me-desktop-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:13px; }
  .me-desktop-section-head h3 { margin:3px 0 0; color:#172f43; font-size:16px; }
  .me-desktop-section-head > small { color:#8495a0; font-size:10px; }
  .me-desktop-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
  .me-desktop-tool {
    position:relative;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    min-height:79px;
    padding:12px;
    border:1px solid #e0e7eb;
    border-radius:14px;
    color:#263e50;
    text-align:left;
    background:#f9fbfc;
    cursor:pointer;
    transition:transform .17s ease,border-color .17s ease,background .17s ease;
  }
  .me-desktop-tool:hover { transform:translateY(-2px); border-color:#bfd4d8; background:#f4f9f9; }
  .me-desktop-tool .me-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:11px; color:#3a7180; background:#e8f2f3; }
  .me-desktop-tool b,
  .me-desktop-tool small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .me-desktop-tool b { color:#1d3547; font-size:12px; }
  .me-desktop-tool small { margin-top:4px; color:#82919d; font-size:9.5px; }
  .me-desktop-tool > i { color:#9aabb5; font-size:12px; font-style:normal; }
  .me-desktop-system .me-item {
    display:grid;
    width:100%;
    grid-template-columns:36px minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:11px 3px;
    border:0;
    border-bottom:1px solid #e7ecef;
    color:#243d4f;
    text-align:left;
    background:transparent;
    cursor:pointer;
  }
  .me-desktop-system .me-item:last-child { border-bottom:0; }
  .me-desktop-system .me-icon { display:grid; width:34px; height:34px; place-items:center; border-radius:10px; color:#436f78; background:#edf3f3; }
  .me-desktop-system .me-text b,
  .me-desktop-system .me-text small { display:block; }
  .me-desktop-system .me-label { color:#243c4d; font-size:12px; }
  .me-desktop-system .me-desc { margin-top:3px; color:#85949e; font-size:9.5px; }
  .me-desktop-system .me-arrow { color:#879aa5; font-style:normal; }
  .me-desktop-local-note { display:flex; gap:9px; margin-top:14px; padding:11px; border-radius:11px; color:#557a79; background:#eef6f4; }
  .me-desktop-local-note > svg { flex:0 0 auto; margin-top:1px; }
  .me-desktop-local-note b,
  .me-desktop-local-note small { display:block; }
  .me-desktop-local-note b { font-size:10px; }
  .me-desktop-local-note small { margin-top:3px; color:#78908d; font-size:9px; line-height:1.45; }

  html.eye-mode .me-desktop-hero {
    border-color:#31505a;
    color:#eff8f8;
    background:radial-gradient(circle at 84% 18%,rgba(83,198,187,.12),transparent 31%),linear-gradient(135deg,#101c27,#142c36 58%,#17434a) !important;
    box-shadow:0 17px 38px rgba(0,0,0,.22);
  }
  html.eye-mode .me-desktop-hero::after { border-color:rgba(93,209,197,.055); }
  html.eye-mode .me-desktop-profile .me-avatar { border-color:rgba(121,218,208,.2); background:linear-gradient(145deg,#1d4a55,#3d9a91); }
  html.eye-mode .me-desktop-profile .me-name { color:#f1f8f8; }
  html.eye-mode .me-desktop-profile .me-shop { color:#a3bac3; }
  html.eye-mode .me-desktop-status { border-color:rgba(120,200,196,.18); background:rgba(5,17,23,.34); }
  html.eye-mode .me-desktop-status span { color:#8399a5; }
  html.eye-mode .me-desktop-status b { color:#eff8f8; }
  html.eye-mode .me-desktop-status small { color:#8db5ad; }
  html.eye-mode .me-desktop-snapshot{border-color:#29454e;background:#101e27;box-shadow:none}
  html.eye-mode .me-desktop-snapshot-head{border-bottom-color:#29434b;background:linear-gradient(135deg,#132630,#10222a)}
  html.eye-mode .me-desktop-snapshot-head h3{color:#e9f4f3}html.eye-mode .me-desktop-snapshot-head>small{color:#748d92}
  html.eye-mode .me-desktop-stats .stat-card+.stat-card{border-left-color:#294149}html.eye-mode .me-desktop-stats .stat-card:hover{background:#142830}
  html.eye-mode .me-desktop-stats .stat-card:hover { border-color:#3a5d65; box-shadow:0 13px 28px rgba(0,0,0,.2) !important; }
  html.eye-mode .me-stat-icon,
  html.eye-mode .me-desktop-tool .me-icon,
  html.eye-mode .me-desktop-system .me-icon { color:#72cfc6; background:#173038; }
  html.eye-mode .me-desktop-stats .stat-card > div > span,
  html.eye-mode .me-desktop-stats .stat-card small { color:#8195a3; }
  html.eye-mode .me-desktop-stats .stat-card b { color:#edf5f7; }
  html.eye-mode .me-desktop-section-head h3 { color:#edf5f7; }
  html.eye-mode .me-desktop-tool { border-color:#263946; color:#c8d6dc; background:#0f1922; }
  html.eye-mode .me-desktop-tool:hover { border-color:#3b5c64; background:#152630; }
  html.eye-mode .me-desktop-tool b,
  html.eye-mode .me-desktop-system .me-label { color:#e5eff2; }
  html.eye-mode .me-desktop-tool small,
  html.eye-mode .me-desktop-system .me-desc { color:#7f929f; }
  html.eye-mode .me-desktop-system .me-item { border-bottom-color:#263743; color:#d9e6e9; }
  html.eye-mode .me-desktop-local-note { color:#83cec5; background:#142b30; }
  html.eye-mode .me-desktop-local-note small { color:#7fa09d; }
}

@media (max-width:1050px) and (min-width:721px) {
  .me-desktop-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .me-desktop-layout { grid-template-columns:1fr; }
  .me-desktop-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:720px) {
  html,
  body { scrollbar-width:thin; scrollbar-color:rgba(67,93,108,.28) transparent; }
  ::-webkit-scrollbar { width:4px !important; height:4px !important; }
  ::-webkit-scrollbar-track { background:transparent !important; }
  ::-webkit-scrollbar-thumb {
    border:0 !important;
    border-radius:99px !important;
    background:rgba(67,93,108,.25) !important;
  }
  .content { padding-bottom:calc(104px + env(safe-area-inset-bottom)) !important; }

  html.eye-mode,
  html.eye-mode body { background:#091119 !important; background-image:none !important; }
  html.eye-mode :where(.page-main,.content,.stock-page,.inout-page,.pan-page,.me-page) { background:transparent !important; }
  html.eye-mode .m-stock-mobile-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:2px 9px 12px;
    padding:7px 2px 2px;
  }
  html.eye-mode .m-stock-mobile-header > div { min-width:0; }
  html.eye-mode .m-stock-mobile-header span { display:block; margin-bottom:4px; color:#69bcb4; font-size:9px; font-weight:800; letter-spacing:1.2px; }
  html.eye-mode .m-stock-mobile-header h2 { margin:0; color:#edf7f7; font-size:22px; letter-spacing:-.55px; }
  html.eye-mode .m-stock-mobile-header p { overflow:hidden; margin:3px 0 0; color:#8297a2; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
  html.eye-mode .m-stock-mobile-header button {
    display:grid;
    width:38px;
    height:38px;
    flex:0 0 38px;
    place-items:center;
    border:1px solid #38615f;
    border-radius:12px;
    color:#081719;
    background:linear-gradient(145deg,#67cfc5,#43aaa3);
    box-shadow:0 7px 16px rgba(42,151,143,.17);
  }
  html.eye-mode .bottom-nav {
    height:70px;
    border:1px solid #283b46 !important;
    border-bottom-color:#1d2b34 !important;
    background:rgba(12,22,30,.97) !important;
    box-shadow:0 -8px 22px rgba(0,0,0,.24) !important;
  }
  html.eye-mode .bottom-nav-item { color:#778b98 !important; text-shadow:none !important; }
  html.eye-mode .bottom-nav-item.active { color:#7bd4cb !important; text-shadow:none !important; }
  html.eye-mode .bottom-nav-item.center .ic {
    color:#8cded6 !important;
    border-color:#14232c !important;
    background:#17333a !important;
    box-shadow:0 7px 17px rgba(0,0,0,.25),inset 0 0 0 1px #33545a !important;
  }
  html.eye-mode .topbar { border-bottom-color:#223440 !important; background:rgba(9,17,25,.96) !important; }
  html.eye-mode .topbar .user { border-color:#314752; background:#13242d; }
}

/* ===== Mobile cyber night theme: independent from the quieter desktop dark palette ===== */
@media (max-width:720px) {
  .mobile-theme-toggle {
    position:relative;
    display:grid;
    width:36px;
    height:36px;
    flex:0 0 36px;
    place-items:center;
    border:1px solid #dbe3df;
    border-radius:11px;
    color:#40554d;
    background:rgba(255,255,255,.82);
    box-shadow:0 5px 13px rgba(26,48,40,.07);
    cursor:pointer;
  }
  .topbar.secondary .right { gap:6px; }
  .topbar.secondary .user { display:none; }

  html.eye-mode,html.eye-mode body {
    color-scheme:dark;
    background:#060c13 !important;
    background-image:radial-gradient(circle at 85% 8%,rgba(36,205,192,.105),transparent 31%),radial-gradient(circle at 5% 43%,rgba(57,105,210,.08),transparent 36%) !important;
  }
  html.eye-mode body:before {
    content:'';
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:linear-gradient(rgba(107,225,215,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(107,225,215,.014) 1px,transparent 1px);
    background-size:28px 28px;
    -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.42),transparent 72%);
  }
  html.eye-mode .content { background:transparent !important; }
  html.eye-mode .topbar {
    border-bottom:1px solid rgba(76,139,145,.24) !important;
    background:rgba(6,13,21,.88) !important;
    box-shadow:0 8px 24px rgba(0,0,0,.22) !important;
    backdrop-filter:blur(18px) saturate(130%);
  }
  html.eye-mode .topbar .page-title { color:#e8f8f7 !important; text-shadow:0 0 18px rgba(104,224,212,.12); }
  html.eye-mode .m-back-btn { border-color:#29434a !important; color:#9fc1c2 !important; background:#0f1c25 !important; }
  html.eye-mode .mobile-theme-toggle {
    border-color:#31545a;
    color:#8ce8df;
    background:linear-gradient(145deg,#132831,#0d1b24);
    box-shadow:inset 0 0 0 1px rgba(121,232,222,.035),0 0 18px rgba(67,211,198,.12);
  }
  html.eye-mode .mobile-theme-toggle:after {
    content:'';
    position:absolute;
    top:5px;
    right:5px;
    width:4px;
    height:4px;
    border-radius:50%;
    background:#69e6da;
    box-shadow:0 0 8px #69e6da;
  }
  html.eye-mode .wallet-hero {
    border-color:#275159 !important;
    background:radial-gradient(circle at 82% 12%,rgba(79,233,218,.14),transparent 29%),linear-gradient(138deg,#0a1821 0%,#102a30 58%,#143d3e 100%) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.34),inset 0 0 0 1px rgba(102,218,207,.025) !important;
  }
  html.eye-mode .wallet-balance { border-color:rgba(113,231,220,.16); background:rgba(4,14,20,.43); }
  html.eye-mode .wallet-period-bar,
  html.eye-mode .wallet-kpi,
  html.eye-mode .wallet-entry-form,
  html.eye-mode .wallet-rhythm-card,
  html.eye-mode .wallet-trend-card,
  html.eye-mode .wallet-history {
    border-color:#203943 !important;
    background:linear-gradient(145deg,rgba(15,28,37,.98),rgba(8,18,26,.98)) !important;
    box-shadow:0 9px 24px rgba(0,0,0,.22),inset 0 0 0 1px rgba(94,213,203,.018) !important;
  }
  html.eye-mode .wallet-period-tabs,html.eye-mode .wallet-type-tabs { background:#07131a !important; }
  html.eye-mode .wallet-period-tabs button.active { color:#041313; background:linear-gradient(135deg,#80eadf,#4dc1ba); box-shadow:0 0 18px rgba(75,210,198,.2); }
  html.eye-mode .wallet-type-tabs button.active.expense { background:linear-gradient(135deg,#93624f,#6f4438); }
  html.eye-mode .wallet-type-tabs button.active.business { background:linear-gradient(135deg,#397783,#285764); box-shadow:0 0 16px rgba(64,170,183,.15); }
  html.eye-mode .wallet-type-tabs button.active.income { background:linear-gradient(135deg,#3da88f,#287a6a); box-shadow:0 0 16px rgba(63,202,172,.14); }
  html.eye-mode .input,html.eye-mode select.input {
    border-color:#29424c !important;
    color:#dceceb !important;
    background:#0b1821 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018) !important;
  }
  html.eye-mode .input:focus { border-color:#56bdb7 !important; box-shadow:0 0 0 3px rgba(86,189,183,.11) !important; }
  html.eye-mode .wallet-kpi.business { border-top-color:#4bb9b8 !important; }
  html.eye-mode .wallet-kpi.business b { color:#92dfdc; }
  html.eye-mode .wallet-submit { border-color:#4bc7ba !important; color:#031312 !important; background:linear-gradient(135deg,#6de1d5,#43bcb4) !important; box-shadow:0 8px 20px rgba(56,196,183,.19) !important; }
  html.eye-mode .bottom-nav {
    border-color:#25434c !important;
    background:rgba(7,16,24,.94) !important;
    box-shadow:0 -12px 34px rgba(0,0,0,.42),inset 0 1px 0 rgba(111,225,215,.035) !important;
    backdrop-filter:blur(20px) saturate(135%);
  }
  html.eye-mode .bottom-nav-item.active { color:#77e1d7 !important; }
  html.eye-mode .bottom-nav-item.center .ic { border-color:#427f82 !important; color:#8af0e6 !important; background:radial-gradient(circle,#1b4549,#10272f 72%) !important; box-shadow:0 0 24px rgba(69,211,199,.2),inset 0 0 0 1px rgba(132,239,230,.08) !important; }
}

/* ===== Unified mobile select sheet ===== */
.mobile-select-trigger { display:none; }
@media (max-width:720px) {
  select.mobile-native-select-hidden { position:absolute !important; width:1px !important; height:1px !important; opacity:0 !important; pointer-events:none !important; }
  .mobile-select-trigger {
    display:flex;
    width:100%;
    min-height:43px;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:0 12px;
    border:1px solid #dbe3df;
    border-radius:11px;
    color:#263a32;
    background:#fff;
    cursor:pointer;
    font:inherit;
    text-align:left;
  }
  .mobile-select-trigger > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .mobile-select-trigger > svg { flex:0 0 auto; color:#87968f; transform:rotate(90deg); }
  .mobile-select-trigger.placeholder { color:#8b9792; }
  .mobile-select-sheet-mask {
    position:fixed;
    inset:0;
    z-index:500000;
    display:flex;
    align-items:flex-end;
    padding:12px;
    opacity:0;
    background:rgba(7,14,18,.55);
    backdrop-filter:blur(7px);
    transition:opacity .18s ease;
  }
  .mobile-select-sheet-mask.show { opacity:1; }
  .mobile-select-sheet {
    width:100%;
    max-height:min(68dvh,620px);
    overflow:hidden;
    border:1px solid #dce5e1;
    border-radius:22px;
    background:#f9fbfa;
    box-shadow:0 24px 70px rgba(8,24,18,.24);
    transform:translateY(18px) scale(.985);
    transition:transform .22s cubic-bezier(.2,.8,.2,1);
  }
  .mobile-select-sheet-mask.show .mobile-select-sheet { transform:none; }
  .mobile-select-sheet-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 17px 13px; border-bottom:1px solid #e5ebe8; }
  .mobile-select-sheet-head small,.mobile-select-sheet-head b { display:block; }
  .mobile-select-sheet-head small { margin-bottom:3px; color:#7b9188; font-size:8px; font-weight:800; letter-spacing:1.2px; }
  .mobile-select-sheet-head b { color:#1d3028; font-size:16px; }
  .mobile-select-sheet-head > button { display:grid; width:34px; height:34px; place-items:center; border:1px solid #dfe6e3; border-radius:10px; color:#61746c; background:#fff; }
  .mobile-select-options { overflow:auto; max-height:calc(min(68dvh,620px) - 70px); padding:8px; overscroll-behavior:contain; }
  .mobile-select-option { display:flex; width:100%; min-height:51px; align-items:center; justify-content:space-between; gap:12px; padding:0 13px; border:0; border-radius:12px; color:#40534b; background:transparent; font-size:13px; text-align:left; }
  .mobile-select-option + .mobile-select-option { margin-top:3px; }
  .mobile-select-option > span { display:flex; align-items:center; gap:10px; }
  .mobile-select-option i { width:6px; height:6px; border-radius:50%; background:#c0cbc6; }
  .mobile-select-option.active { color:#1e5548; background:#e8f3ef; font-weight:750; }
  .mobile-select-option.active i { background:#46a78f; box-shadow:0 0 0 4px rgba(70,167,143,.12); }
  .mobile-select-option.active > svg { color:#368c77; }

  html.eye-mode .mobile-select-trigger { border-color:#29434c; color:#dceceb; background:#0b1821; box-shadow:inset 0 0 0 1px rgba(112,226,216,.018); }
  html.eye-mode .mobile-select-trigger > svg { color:#6f9a9c; }
  html.eye-mode .mobile-select-sheet-mask { background:rgba(1,6,10,.76); }
  html.eye-mode .mobile-select-sheet { border-color:#2c5158; background:linear-gradient(155deg,#0f2029,#09151d); box-shadow:0 26px 80px rgba(0,0,0,.58),0 0 30px rgba(61,198,186,.07); }
  html.eye-mode .mobile-select-sheet-head { border-bottom-color:#203943; }
  html.eye-mode .mobile-select-sheet-head small { color:#5ca9a5; }
  html.eye-mode .mobile-select-sheet-head b { color:#ecf8f7; }
  html.eye-mode .mobile-select-sheet-head > button { border-color:#29454d; color:#8bb7b7; background:#11232c; }
  html.eye-mode .mobile-select-option { color:#8fa9aa; }
  html.eye-mode .mobile-select-option i { background:#365159; }
  html.eye-mode .mobile-select-option.active { color:#bdf2eb; background:linear-gradient(135deg,#173c3d,#123037); box-shadow:inset 0 0 0 1px rgba(91,218,206,.11); }
  html.eye-mode .mobile-select-option.active i { background:#67e1d5; box-shadow:0 0 0 4px rgba(103,225,213,.1),0 0 10px rgba(103,225,213,.45); }
  html.eye-mode .mobile-select-option.active > svg { color:#75e7dc; }
}

/* ===== Repair mobile cyber dashboard and personal center ===== */
@media (max-width:720px) {
  html.light-mode .mobile-kpi-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; overflow:visible; margin:0 0 17px; padding:0; }
  html.light-mode .mobile-kpi-grid .mobile-metric { width:auto; min-width:0; min-height:104px; padding:12px 9px; border-radius:15px; }
  html.light-mode .mobile-kpi-grid .mobile-metric:last-child { grid-column:auto; }
  html.light-mode .mobile-kpi-grid .m-kpi-head { display:block; font-size:9px; line-height:1.35; }
  html.light-mode .mobile-kpi-grid .m-kpi-head .m-icon { display:grid; width:27px; height:27px; margin-bottom:8px; place-items:center; border-radius:8px; }
  html.light-mode .mobile-kpi-grid .m-value { font-size:19px; }
  html.light-mode .mobile-kpi-grid .m-sub { overflow:hidden; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  html.eye-mode .mobile-dashboard { display:flex; flex-direction:column; gap:0; padding:2px 9px 96px !important; }
  html.eye-mode .mobile-workspace-hero { position:relative; overflow:hidden; min-height:218px; margin:0 0 11px; padding:17px 16px 15px; border:1px solid #2b555a; border-radius:21px; color:#eefbfa; background:radial-gradient(circle at 83% 13%,rgba(91,231,216,.14),transparent 27%),linear-gradient(140deg,#0b1822,#112c34 62%,#17413f) !important; box-shadow:0 16px 36px rgba(0,0,0,.31) !important; }
  html.eye-mode .mobile-workspace-hero:after { content:''; position:absolute; right:-54px; bottom:-86px; width:185px; height:185px; border:27px solid rgba(111,231,218,.05); border-radius:50%; }
  html.eye-mode .m-hero-eyebrow,html.eye-mode .m-hero-greet,html.eye-mode .m-hero-value,html.eye-mode .m-hero-split { position:relative; z-index:1; }
  html.eye-mode .m-hero-eyebrow { display:flex; min-width:0; align-items:center; justify-content:space-between; gap:10px; color:#77a6a5; font-size:8px; line-height:1.25; letter-spacing:.45px; }
  html.eye-mode .m-hero-eyebrow > span:first-child { display:flex; min-width:0; align-items:center; gap:5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  html.eye-mode .m-hero-eyebrow > span:last-child { flex:0 0 auto; letter-spacing:0; }
  html.eye-mode .m-hero-eyebrow i { background:#6de5d8; box-shadow:0 0 9px #6de5d8; }
  html.eye-mode .m-hero-greet { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-top:10px; }
  html.eye-mode .m-hero-greet h2 { margin:0; font-size:21px; line-height:1.15; letter-spacing:-.35px; }
  html.eye-mode .m-hero-greet p { margin:4px 0 0; font-size:9px; line-height:1.35; }
  html.eye-mode .m-hero-value { margin-top:15px; }
  html.eye-mode .m-hero-value span { display:block !important; margin-bottom:5px !important; font-size:9px !important; line-height:1.3 !important; }
  html.eye-mode .m-hero-value b { display:block !important; font-size:29px !important; line-height:1 !important; letter-spacing:-.7px !important; }
  html.eye-mode .m-hero-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin-top:15px; padding-top:12px; }
  html.eye-mode .m-hero-split > div + div { padding-left:13px; border-left:1px solid rgba(102,219,209,.13); }
  html.eye-mode .m-hero-split b,html.eye-mode .m-hero-split span { display:block; }
  html.eye-mode .m-hero-split b { font-size:17px !important; line-height:1 !important; }.eye-mode .m-hero-split span { margin-top:4px !important; font-size:8px !important; line-height:1.3 !important; }
  html.eye-mode .m-hero-greet h2,html.eye-mode .m-hero-value b,html.eye-mode .m-hero-split b { color:#f3fcfb !important; }
  html.eye-mode .m-hero-greet p,html.eye-mode .m-hero-value span,html.eye-mode .m-hero-split span { color:#8eacab !important; }
  html.eye-mode .m-hero-split { border-top-color:rgba(102,219,209,.15) !important; }
  html.eye-mode .mobile-action-rail { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin:0 0 18px; }
  html.eye-mode .mobile-action { min-width:0; min-height:82px; border:1px solid #213b45 !important; border-radius:15px; color:#91aaac; background:linear-gradient(145deg,#101f2a,#0b1720) !important; box-shadow:0 8px 20px rgba(0,0,0,.18) !important; }
  html.eye-mode .mobile-action .ma-icon { color:#75dcd2 !important; background:#17333a !important; }
  html.eye-mode .mobile-section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; margin:1px 2px 10px; }
  html.eye-mode .mobile-section-title > div { min-width:0; }
  html.eye-mode .mobile-section-title span,html.eye-mode .mobile-section-title b { display:block; }
  html.eye-mode .mobile-section-title span { margin-bottom:2px; font-size:8px; letter-spacing:.5px; }
  html.eye-mode .mobile-section-title b { font-size:16px; line-height:1.15; }
  html.eye-mode .mobile-section-title span { color:#587d7e; }
  html.eye-mode .mobile-section-title b { color:#e8f5f4; }
  html.eye-mode .mobile-section-title button { color:#7db3b2; background:#10232c; }
  html.eye-mode .mobile-kpi-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; overflow:visible; margin:0 0 17px; padding:0; }
  html.eye-mode .mobile-kpi-grid .mobile-metric { width:auto; min-width:0; min-height:108px; padding:12px 9px; border:1px solid #223c48 !important; border-radius:15px; background:linear-gradient(145deg,#101f2a,#0b1721) !important; box-shadow:0 8px 20px rgba(0,0,0,.18) !important; }
  html.eye-mode .mobile-kpi-grid .mobile-metric:last-child { grid-column:auto; }
  html.eye-mode .mobile-metric .m-kpi-head { color:#718e91; }
  html.eye-mode .mobile-kpi-grid .m-kpi-head { display:block; font-size:9px; line-height:1.35; }
  html.eye-mode .mobile-kpi-grid .m-kpi-head .m-icon { display:grid; width:27px; height:27px; margin-bottom:8px; place-items:center; border-radius:8px; color:#75d7cf; background:#163039; }
  html.eye-mode .mobile-metric .m-value { color:#eef8f8; font-size:19px; }
  html.eye-mode .mobile-metric .m-sub { color:#627c80; font-size:8px; white-space:nowrap; }
  html.eye-mode .mobile-rhythm-card { border:1px solid #2a4955 !important; color:#dff5f3 !important; background:linear-gradient(135deg,#14253a,#182e48) !important; box-shadow:0 10px 24px rgba(0,0,0,.22) !important; }
  html.eye-mode .mobile-rhythm-card span,html.eye-mode .mobile-rhythm-card em { color:#809aa7 !important; }
  html.eye-mode .mobile-dashboard > .card { border:1px solid #223b46 !important; border-radius:17px !important; color:#b6c9ca; background:linear-gradient(145deg,#101f2a,#0b1721) !important; box-shadow:0 9px 23px rgba(0,0,0,.2) !important; }
  html.eye-mode .mobile-dashboard > .card h3 { color:#e9f5f5; border-bottom-color:#203540 !important; }
  html.eye-mode .mobile-dashboard .rank-item { border-bottom-color:#1d333d !important; background:transparent !important; }
  html.eye-mode .mobile-dashboard .rank-item .t,html.eye-mode .mobile-dashboard .rank-item .v { color:#d8e8e8; }

  html.eye-mode .me-page { padding:2px 9px 96px !important; }
  html.eye-mode .me-hero { position:relative; overflow:hidden; min-height:122px; margin:0 0 11px; padding:18px 16px; border:1px solid #285158 !important; border-radius:20px; color:#eefbfa; background:radial-gradient(circle at 86% 14%,rgba(85,230,216,.17),transparent 30%),linear-gradient(140deg,#0b1822,#112d35 64%,#17413f) !important; box-shadow:0 15px 34px rgba(0,0,0,.3) !important; }
  html.eye-mode .me-hero:after { content:''; position:absolute; right:-35px; bottom:-63px; width:140px; height:140px; border:22px solid rgba(108,230,218,.055); border-radius:50%; }
  html.eye-mode .me-hero .me-avatar { position:relative; z-index:1; border-color:#3e7374; color:#bff4ed; background:linear-gradient(145deg,#183942,#1d5050) !important; box-shadow:0 0 20px rgba(64,200,187,.1); }
  html.eye-mode .me-hero .me-info,html.eye-mode .me-hero .me-badge { position:relative; z-index:1; }
  html.eye-mode .me-overline { color:#5e9a99 !important; }
  html.eye-mode .me-hero .me-name { color:#f0fbfa !important; }
  html.eye-mode .me-hero .me-shop { color:#91b0ae !important; }
  html.eye-mode .me-hero .me-badge { border-color:#315b5d; color:#8fccc7; background:#102c31; }
  html.eye-mode .me-hero .me-badge i { background:#68e0d3; box-shadow:0 0 9px #68e0d3; }
  html.eye-mode .me-page .m-stat-2x2 { gap:8px; margin-bottom:11px !important; }
  html.eye-mode .me-page .m-stat-2x2 .stat-card { min-height:100px; padding:13px; border:1px solid #223c47 !important; border-top:2px solid #315b61 !important; border-radius:16px; background:linear-gradient(145deg,#101f2b,#0b1721) !important; box-shadow:0 8px 20px rgba(0,0,0,.2) !important; }
  html.eye-mode .me-page .stat-card .label,html.eye-mode .me-page .stat-card .extra { color:#6f8b8e !important; }
  html.eye-mode .me-page .stat-card .value { color:#eef8f8 !important; }
  html.eye-mode .me-group { margin-bottom:10px; padding:13px !important; border:1px solid #223c47 !important; border-radius:18px !important; background:linear-gradient(145deg,#101f2a,#0a171f) !important; box-shadow:0 9px 23px rgba(0,0,0,.2) !important; }
  html.eye-mode .me-group h3 span { color:#e8f5f4; }
  html.eye-mode .me-group h3 small { color:#5f7b7f; }
  html.eye-mode .me-grid2 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  html.eye-mode .me-cell { min-height:104px; padding:13px; border:1px solid #1f3540 !important; border-radius:13px; color:#dfeceb; background:linear-gradient(145deg,#12232e,#0d1b24) !important; box-shadow:none !important; }
  html.eye-mode .me-cell .me-cell-icon { width:35px; height:35px; margin-bottom:9px; border:1px solid #294750; color:#79d8cf !important; background:#17313a !important; }
  html.eye-mode .me-cell:nth-child(2n) .me-cell-icon { color:#85baca !important; background:#172c39 !important; }
  html.eye-mode .me-cell .me-cell-label { color:#dcebea !important; }
  html.eye-mode .me-cell .me-cell-desc { color:#657f83 !important; }
  html.eye-mode .me-item { border-bottom-color:#20353e !important; }
  html.eye-mode .me-item .me-icon { border:1px solid #29434c; color:#78ccc5; background:#142b34; }
  html.eye-mode .me-item .me-label { color:#dbe9e8; }
  html.eye-mode .me-item .me-desc,html.eye-mode .me-item .me-arrow,html.eye-mode .me-footer { color:#607b7e; }

  .mobile-section-title button,
  .mobile-dashboard .mobile-section-title button {
    display:inline-flex;
    min-height:30px;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    padding:0 11px;
    border:1px solid #dce4e0;
    border-radius:999px;
    outline:0 !important;
    color:#53675f;
    background:#fff;
    box-shadow:none !important;
    font-size:10px;
    line-height:1;
    text-decoration:none;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-section-title button:focus,.mobile-section-title button:focus-visible { outline:0 !important; box-shadow:none !important; }
  html.eye-mode .mobile-section-title button,
  html.eye-mode .mobile-dashboard .mobile-section-title button { border-color:#294650 !important; color:#83b7b7 !important; background:#10232c !important; }
}

/* ===== Mobile secondary header: give Back and title a deliberate rhythm ===== */
@media (max-width:720px) {
  .topbar.secondary {
    justify-content:flex-start !important;
    gap:13px !important;
    padding-left:14px !important;
  }
  .topbar.secondary .m-back-btn {
    min-width:68px;
    min-height:36px;
    justify-content:center;
    margin:0 !important;
    padding:0 13px !important;
  }
  .topbar.secondary .page-title {
    flex:0 1 auto !important;
    margin:0 !important;
    padding-left:1px;
  }
  .topbar.secondary .right {
    margin-left:auto;
  }
}

/* ===== Pan analysis at night: remove white islands and unify icon language ===== */
@media (max-width:720px) {
  html.eye-mode .pan-page {
    color:#dce9ec;
  }
  html.eye-mode .pan-filter {
    border-color:#29424e !important;
    background:linear-gradient(145deg,#101e29,#0b1720) !important;
    box-shadow:0 10px 25px rgba(0,0,0,.22) !important;
  }
  html.eye-mode .pan-kpi-card {
    border-color:#29434f !important;
    background:linear-gradient(145deg,#111f2b,#0d1923) !important;
    box-shadow:0 9px 23px rgba(0,0,0,.23),inset 0 1px rgba(113,225,214,.025) !important;
  }
  html.eye-mode .pan-kpi-card .label { color:#80999f !important; }
  html.eye-mode .pan-kpi-card .value { color:#edf8f8 !important; }
  html.eye-mode .pan-kpi-card .extra { color:#637f85 !important; }
  html.eye-mode .pan-kpi-icon {
    border:1px solid #28515a;
    color:#79ddd3 !important;
    background:linear-gradient(145deg,#17343c,#112a33) !important;
    box-shadow:inset 0 0 12px rgba(82,209,197,.055);
  }
  html.eye-mode .pan-kpi-4 .pan-kpi-icon {
    border-color:#55474a;
    color:#e5a795 !important;
    background:linear-gradient(145deg,#35282b,#271f25) !important;
  }
  html.eye-mode .pan-mobile-summary { gap:12px !important; }
  html.eye-mode .pan-mobile-brand-card,
  html.eye-mode .pan-mobile-products,
  html.eye-mode .pan-mobile-product-card {
    border:1px solid #29434f !important;
    color:#dce9ec !important;
    background:linear-gradient(145deg,#111f2b,#0c1822) !important;
    box-shadow:0 10px 26px rgba(0,0,0,.22) !important;
  }
  html.eye-mode .pan-mobile-brand-card,
  html.eye-mode .pan-mobile-product-card { border-radius:18px !important; }
  html.eye-mode .pan-mobile-head {
    border-bottom-color:#233b46 !important;
    color:#8ba2a8 !important;
    background:linear-gradient(90deg,rgba(20,43,52,.86),rgba(13,28,38,.82)) !important;
  }
  html.eye-mode .pan-mobile-products > .pan-mobile-head {
    padding:5px 3px 10px !important;
    border:0 !important;
    background:transparent !important;
  }
  html.eye-mode .pan-mobile-head h3 { color:#eaf6f6 !important; }
  html.eye-mode .pan-mobile-head h3 .uic { color:#72d4cb !important; }
  html.eye-mode .pan-mobile-head > span { color:#718b91 !important; }
  html.eye-mode .pan-mobile-brand-row { border-top-color:#213741 !important; }
  html.eye-mode .pan-mobile-rank { color:#7fa1a4 !important; background:#172a34 !important; }
  html.eye-mode .pan-mobile-brand-row:first-of-type .pan-mobile-rank { color:#eafffc !important; background:linear-gradient(145deg,#276a6b,#31877f) !important; }
  html.eye-mode .pan-mobile-brand-main b,
  html.eye-mode .pan-mobile-brand-main strong,
  html.eye-mode .pan-mobile-product-card h4,
  html.eye-mode .pan-mobile-product-metrics b { color:#e8f3f4 !important; }
  html.eye-mode .pan-mobile-brand-main small,
  html.eye-mode .pan-mobile-code,
  html.eye-mode .pan-mobile-product-metrics small { color:#708b91 !important; }
  html.eye-mode .pan-mobile-progress { background:#20333d !important; }
  html.eye-mode .pan-mobile-product-metrics { border-top-color:#223943 !important; }
  html.eye-mode .pan-mobile-product-metrics > span { border-right-color:#223943 !important; }
  html.eye-mode .pan-mobile-brand,
  html.eye-mode .pan-mobile-age { color:#82c8c2 !important; background:#173039 !important; }
  html.eye-mode .pan-mobile-age.warning { color:#d9b46c !important; background:#332a1e !important; }
  html.eye-mode .pan-mobile-age.danger { color:#e59a91 !important; background:#342124 !important; }
  html.eye-mode .pan-mobile-empty {
    min-height:112px;
    display:grid;
    place-items:center;
    color:#617d84 !important;
    background:radial-gradient(circle at 50% 40%,rgba(80,196,187,.045),transparent 45%);
  }
}

/* ===== Mobile business rhythm: calm vertical wheel, dismissible for today ===== */
@media (max-width:720px) {
  .mobile-rhythm-wheel {
    position:relative;
    min-height:100px;
    overflow:hidden;
    align-items:center;
    padding:16px 48px 16px 16px !important;
    cursor:pointer;
    transition:opacity .2s ease,transform .2s ease,margin .2s ease,max-height .2s ease,padding .2s ease;
  }
  .mobile-rhythm-wheel.is-dismissing {
    max-height:0;
    min-height:0;
    margin-top:0;
    margin-bottom:0;
    padding-top:0 !important;
    padding-bottom:0 !important;
    opacity:0;
    transform:translateY(-7px) scale(.98);
  }
  .mobile-rhythm-copy { min-width:0; width:100%; }
  .mobile-rhythm-copy > span { margin:0 0 7px !important; font-size:8px !important; letter-spacing:1px !important; }
  .mobile-rhythm-viewport {
    height:49px;
    overflow:hidden;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 86%,transparent 100%);
    mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 86%,transparent 100%);
  }
  .mobile-rhythm-track {
    display:flex;
    flex-direction:column;
    will-change:transform;
    animation:mobile-rhythm-roll 14s cubic-bezier(.72,0,.28,1) infinite;
  }
  .mobile-rhythm-slide {
    display:grid;
    height:49px;
    flex:0 0 49px;
    grid-template-columns:28px minmax(0,1fr);
    align-items:center;
    gap:9px;
  }
  .mobile-rhythm-slide > span {
    display:grid !important;
    width:28px;
    height:28px;
    place-items:center;
    margin:0 !important;
    border:1px solid rgba(85,166,170,.25);
    border-radius:9px;
    color:#397a83 !important;
    background:rgba(213,238,238,.62);
    font-size:9px !important;
    letter-spacing:0 !important;
  }
  .mobile-rhythm-slide b,.mobile-rhythm-slide em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .mobile-rhythm-slide b { color:inherit; font-size:14px; line-height:1.35; }
  .mobile-rhythm-slide em { margin-top:3px !important; font-size:9px !important; }
  .mobile-rhythm-wheel > i { position:absolute; right:18px; bottom:21px; }
  .mobile-rhythm-close {
    position:absolute;
    z-index:3;
    top:9px;
    right:10px;
    display:grid;
    width:27px;
    height:27px;
    place-items:center;
    padding:0;
    border:1px solid rgba(68,104,121,.16);
    border-radius:9px;
    color:#69818d;
    background:rgba(255,255,255,.48);
    font-size:18px;
    font-weight:300;
    line-height:1;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-rhythm-close:active { transform:scale(.92); }
  html.eye-mode .mobile-rhythm-slide > span { border-color:#2d5b61; color:#7be0d5 !important; background:#17333b; }
  html.eye-mode .mobile-rhythm-close { border-color:#294650; color:#86aaa9; background:rgba(10,25,34,.72); }
  @keyframes mobile-rhythm-roll {
    0%,16% { transform:translateY(0); }
    22%,38% { transform:translateY(-49px); }
    44%,60% { transform:translateY(-98px); }
    66%,82% { transform:translateY(-147px); }
    88%,100% { transform:translateY(-196px); }
  }
}

@media (max-width:720px) and (prefers-reduced-motion:reduce) {
  .mobile-rhythm-track { animation:none; }
}

/* ===== Mobile theme parity: identical page gutters and breathing room ===== */
@media (max-width:720px) {
  html.light-mode .content,
  html.eye-mode .content {
    padding:8px 9px calc(104px + env(safe-area-inset-bottom)) !important;
  }
  html.light-mode :where(
    .mobile-dashboard,.m-in,.mobile-inout-shell,.stock-page,.inout-page,.pan-page,
    .reconcile-page,.manage-page,.inventory-life-page,.me-page,.orders-page,
    .settings-page,.members-page,.wallet-page,.report-page,.soldout-page,.defect-page
  ),
  html.eye-mode :where(
    .mobile-dashboard,.m-in,.mobile-inout-shell,.stock-page,.inout-page,.pan-page,
    .reconcile-page,.manage-page,.inventory-life-page,.me-page,.orders-page,
    .settings-page,.members-page,.wallet-page,.report-page,.soldout-page,.defect-page
  ) {
    width:100%;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box;
  }
  html.eye-mode .mobile-dashboard {
    padding-top:0 !important;
    padding-bottom:96px !important;
  }
  html.eye-mode .mobile-workspace-hero { margin-bottom:13px; }
  html.eye-mode .mobile-action-rail { margin:13px 0 21px; }
  html.eye-mode .mobile-section-title { margin:19px 2px 10px; }

  /* Dark quick actions use the same vertical hierarchy as light mode. */
  html.eye-mode .mobile-action {
    display:flex;
    min-height:78px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:9px 3px;
    color:#a8bec1 !important;
    font-size:10px;
    font-weight:680;
    text-align:center;
  }
  html.eye-mode .mobile-action .ma-icon {
    display:grid;
    width:34px;
    height:34px;
    flex:0 0 34px;
    place-items:center;
    border:1px solid #28505a;
    border-radius:11px;
    color:#79ddd3 !important;
    background:linear-gradient(145deg,#17343c,#112a33) !important;
    box-shadow:inset 0 0 12px rgba(82,209,197,.05);
  }
  html.eye-mode .mobile-action:nth-child(2) .ma-icon {
    border-color:#59472f;
    color:#e7b66d !important;
    background:linear-gradient(145deg,#352b1f,#281f19) !important;
  }
  html.eye-mode .mobile-action:nth-child(3) .ma-icon {
    border-color:#294d65;
    color:#78c4e4 !important;
    background:linear-gradient(145deg,#173143,#102536) !important;
  }
  html.eye-mode .mobile-action:nth-child(4) .ma-icon {
    border-color:#454268;
    color:#aaa9ed !important;
    background:linear-gradient(145deg,#292a48,#1d2038) !important;
  }
  html.eye-mode .mobile-action:active {
    transform:scale(.97);
    border-color:#355963 !important;
  }
}

/* ===== Mobile geometry contract: dark mode changes color, never scale ===== */
@media (max-width:720px) {
  /* Exact selectors intentionally override older theme-specific padding. */
  html.light-mode .mobile-dashboard,html.eye-mode .mobile-dashboard,
  html.light-mode .stock-page,html.eye-mode .stock-page,
  html.light-mode .mobile-inout-shell,html.eye-mode .mobile-inout-shell,
  html.light-mode .inout-page,html.eye-mode .inout-page,
  html.light-mode .pan-page,html.eye-mode .pan-page,
  html.light-mode .reconcile-page,html.eye-mode .reconcile-page,
  html.light-mode .manage-page,html.eye-mode .manage-page,
  html.light-mode .inventory-life-page,html.eye-mode .inventory-life-page,
  html.light-mode .me-page,html.eye-mode .me-page,
  html.light-mode .orders-page,html.eye-mode .orders-page,
  html.light-mode .settings-page,html.eye-mode .settings-page,
  html.light-mode .members-page,html.eye-mode .members-page,
  html.light-mode .wallet-page,html.eye-mode .wallet-page {
    width:100%;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box;
  }

  /* Dashboard uses the exact same typography and spacing in both themes. */
  html.eye-mode .mobile-workspace-hero {
    min-height:0 !important;
    margin:0 0 11px !important;
    padding:17px 17px 15px !important;
    border-radius:20px !important;
  }
  html.eye-mode .m-hero-greet { align-items:center; margin-top:13px !important; }
  html.eye-mode .m-hero-greet h2 { font-size:23px !important; line-height:1.2 !important; letter-spacing:-.45px !important; }
  html.eye-mode .m-hero-greet p { margin-top:4px !important; font-size:11px !important; line-height:1.4 !important; }
  html.eye-mode .m-hero-value { margin-top:18px !important; }
  html.eye-mode .m-hero-value span { margin-bottom:0 !important; font-size:11px !important; }
  html.eye-mode .m-hero-value b { margin-top:2px; font-size:31px !important; line-height:1.08 !important; letter-spacing:-1.1px !important; }
  html.eye-mode .m-hero-split { gap:10px !important; margin-top:14px !important; padding-top:11px !important; }
  html.eye-mode .m-hero-split > div + div { padding-left:12px !important; }
  html.eye-mode .m-hero-split b { font-size:17px !important; line-height:normal !important; }
  html.eye-mode .m-hero-split span { margin-top:2px !important; font-size:10px !important; line-height:normal !important; }
  html.eye-mode .mobile-action-rail { gap:8px !important; margin:13px 0 21px !important; }
  html.eye-mode .mobile-action { min-height:78px !important; border-radius:16px !important; }
  html.eye-mode .mobile-action .ma-icon { width:33px !important; height:33px !important; flex-basis:33px !important; }
  html.eye-mode .mobile-kpi-grid { gap:7px !important; margin:0 0 17px !important; }
  html.eye-mode .mobile-kpi-grid .mobile-metric { min-height:104px !important; padding:12px 9px !important; border-radius:15px !important; }
  html.eye-mode .mobile-kpi-grid .m-value { font-size:19px !important; }
  html.eye-mode .mobile-section-title { margin:19px 2px 10px !important; }

  /* In/out workflow: same horizontal header, controls and form proportions. */
  html.light-mode .mobile-inout-shell,html.eye-mode .mobile-inout-shell { padding-bottom:96px !important; }
  html.eye-mode .mobile-flow-label {
    display:flex !important;
    align-items:baseline !important;
    justify-content:space-between !important;
    gap:14px;
    padding:6px 3px 9px !important;
  }
  html.eye-mode .mobile-flow-label span { margin:0 !important; font-size:9px !important; font-weight:800; letter-spacing:1.2px; }
  html.eye-mode .mobile-flow-label b { flex:0 0 auto; font-size:14px !important; }
  html.eye-mode .mobile-inout-shell .inout-page-tabs {
    margin:0 0 11px !important;
    padding:4px !important;
    border-radius:13px !important;
    box-shadow:none !important;
  }
  html.eye-mode .mobile-inout-shell .m-tab { min-height:39px !important; border-radius:10px !important; font-size:12px !important; }
  html.eye-mode .m-in-form-card { overflow:hidden; padding:0 0 14px !important; border-radius:15px !important; }
  html.eye-mode .m-in-form-head {
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    margin-bottom:12px !important;
    padding:16px 15px !important;
  }
  html.eye-mode .m-in-form-head h3 { margin:0 !important; font-size:17px !important; line-height:1.35 !important; }
  html.eye-mode .m-in-form-head p { margin:3px 0 0 !important; font-size:11px !important; line-height:1.45 !important; }
  html.eye-mode .m-in-form-icon { display:grid !important; width:36px !important; height:36px !important; flex:0 0 36px; place-items:center; border-radius:10px !important; }
  html.eye-mode .m-in-form-card .form-grid,
  html.eye-mode .m-in-form-card .m-in-size-title,
  html.eye-mode .m-in-form-card .m-inrow,
  html.eye-mode .m-in-form-card .m-in-add-row,
  html.eye-mode .m-in-form-card .m-in-summary,
  html.eye-mode .m-in-form-card .m-submit {
    width:calc(100% - 28px) !important;
    margin-left:14px !important;
    margin-right:14px !important;
  }
  html.eye-mode .m-in-form-card .input { min-height:45px !important; border-radius:11px !important; font-size:14px; }
  html.eye-mode .m-in-main-input { min-height:48px !important; font-size:15px !important; }
  html.eye-mode .m-in-product-photo { padding:12px !important; border-radius:14px !important; }
  html.eye-mode .m-in-size-title { display:flex !important; flex-direction:column; gap:3px; margin-top:17px !important; margin-bottom:9px !important; }
  html.eye-mode .m-in-size-title b { font-size:14px !important; }
  html.eye-mode .m-in-size-title span { font-size:11px !important; }
  html.eye-mode .m-inrow { padding:10px !important; }
  html.eye-mode .m-in-add-row { min-height:42px !important; }
  html.eye-mode .m-in-summary { padding:12px 5px !important; border-radius:13px !important; }
  html.eye-mode .m-submit { min-height:46px; border-radius:12px !important; }

  /* Inventory and account center keep identical card geometry as light mode. */
  html.eye-mode .m-stock-mobile-header { margin:2px 0 12px !important; padding:7px 2px 2px !important; }
  html.eye-mode .m-stat-2x2 { gap:8px !important; margin:0 0 13px !important; }
  html.eye-mode .m-stat-2x2 .stat-card { min-height:94px !important; padding:13px !important; border-radius:14px !important; }
  html.eye-mode .inventory-list-card { margin:0 !important; padding:10px !important; }
  html.eye-mode .m-stock-head,html.eye-mode .m-stock-item { padding:13px 12px !important; }
  html.eye-mode .m-stock-stats { padding:10px 4px !important; }
  html.eye-mode .me-hero { min-height:116px !important; margin:0 0 12px !important; padding:19px 16px !important; border-radius:18px !important; }
  html.eye-mode .me-group { margin-bottom:10px !important; padding:13px !important; border-radius:14px !important; }
  html.eye-mode .me-grid2 { gap:7px !important; }
  html.eye-mode .me-cell { min-height:100px !important; padding:13px !important; border-radius:12px !important; }

  /* Shared secondary pages and forms maintain one readable scale. */
  html.eye-mode .settings-content-group .card,
  html.eye-mode .orders-page .card,
  html.eye-mode .reconcile-page .card,
  html.eye-mode .manage-page .card,
  html.eye-mode .wallet-page .card { border-radius:15px !important; }
  html.eye-mode :where(.settings-page,.orders-page,.reconcile-page,.manage-page,.wallet-page) .input {
    min-height:45px;
    border-radius:11px;
    font-size:14px;
  }
}

/* ===== Pan dark parity: exact light-mode information architecture and scale ===== */
@media (max-width:720px) {
  html.eye-mode .pan-page { padding-top:9px !important; }
  html.eye-mode .pan-page > .pan-breadcrumb,
  html.eye-mode .pan-page > .pan-title { display:none !important; }

  html.eye-mode .pan-mobile-hero {
    position:relative;
    display:block !important;
    overflow:hidden;
    margin-bottom:10px;
    padding:18px;
    border:1px solid #2a4b56;
    border-radius:22px;
    color:#dcecee;
    background:radial-gradient(circle at 88% 8%,rgba(73,218,205,.11),transparent 31%),linear-gradient(142deg,#101f2a 0%,#112932 58%,#15353a 100%) !important;
    box-shadow:0 13px 30px rgba(0,0,0,.25);
  }
  html.eye-mode .pan-mobile-hero::after {
    content:'';
    position:absolute;
    right:-52px;
    top:-68px;
    width:160px;
    height:160px;
    border:22px solid rgba(85,222,210,.055);
    border-radius:50%;
    pointer-events:none;
  }
  html.eye-mode .pan-mobile-hero-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
  html.eye-mode .pan-mobile-hero-top h2 { margin:3px 0; color:#eefafa !important; font-size:21px; letter-spacing:-.35px; }
  html.eye-mode .pan-mobile-hero-top p { margin:0; color:#78969b !important; font-size:11px; }
  html.eye-mode .pan-health-badge { padding:6px 9px; font-size:10px; }
  html.eye-mode .pan-health-badge.good { color:#8fe5d9; background:#173b3c; }
  html.eye-mode .pan-health-badge.warning { color:#e1b86c; background:#342a1d; }
  html.eye-mode .pan-health-badge.danger { color:#e99a94; background:#382123; }
  html.eye-mode .pan-mobile-hero-value { gap:3px; margin-top:20px; }
  html.eye-mode .pan-mobile-hero-value > span { color:#87a2a7; font-size:12px; }
  html.eye-mode .pan-mobile-hero-value > b { color:#f2fbfb; font-size:32px; line-height:1.12; letter-spacing:-1.1px; }
  html.eye-mode .pan-mobile-hero-value > small { color:#759197; font-size:11px; }
  html.eye-mode .pan-mobile-health { margin-top:17px; padding-top:13px; border-top-color:rgba(110,208,199,.14); }
  html.eye-mode .pan-mobile-health > div:first-child { color:#829ba0; font-size:11px; }
  html.eye-mode .pan-mobile-health > div:first-child b { color:#dff4f2; font-size:13px; }
  html.eye-mode .pan-mobile-health > small { color:#708b91; font-size:10px; }
  html.eye-mode .pan-mobile-health-track { height:6px; margin:8px 0 7px; }

  html.eye-mode .pan-filter {
    margin-bottom:10px !important;
    padding:11px !important;
    border-radius:18px !important;
  }
  html.eye-mode .pan-filter .pan-row { gap:7px !important; }
  html.eye-mode .pan-filter .input,
  html.eye-mode .pan-filter .app-select-trigger { min-height:39px !important; border-radius:11px !important; font-size:11px !important; }
  html.eye-mode .pan-filter [data-act="pan-reset"] { min-height:39px !important; border-radius:11px !important; }

  html.eye-mode .pan-kpi {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:0 !important;
  }
  html.eye-mode .pan-kpi-card {
    min-height:104px !important;
    padding:13px !important;
    border-radius:16px !important;
  }
  html.eye-mode .pan-kpi-card .label { display:flex; align-items:center; gap:7px; font-size:11px !important; }
  html.eye-mode .pan-kpi-icon { width:25px !important; height:25px !important; border-radius:8px !important; }
  html.eye-mode .pan-kpi-card .value { margin-top:11px !important; font-size:20px !important; letter-spacing:-.35px !important; }
  html.eye-mode .pan-kpi-card .extra { margin-top:3px !important; font-size:10px !important; }

  html.eye-mode .pan-mobile-summary { display:grid !important; gap:13px !important; margin-top:13px !important; }
  html.eye-mode .pan-mobile-card,
  html.eye-mode .pan-mobile-products {
    min-height:0;
    padding:0 !important;
    overflow:hidden;
    border-radius:19px !important;
  }
  html.eye-mode .pan-mobile-head { padding:14px 14px 12px !important; }
  html.eye-mode .pan-mobile-head .section-kicker { margin-bottom:3px; font-size:8px !important; letter-spacing:1.05px; }
  html.eye-mode .pan-mobile-head h3 { font-size:15px !important; }
  html.eye-mode .pan-mobile-brand-row { grid-template-columns:27px minmax(0,1fr); gap:10px; padding:12px 14px !important; }
  html.eye-mode .pan-mobile-rank { width:27px; height:27px; border-radius:9px; font-size:11px; }
  html.eye-mode .pan-mobile-brand-main b { font-size:13px !important; }
  html.eye-mode .pan-mobile-brand-main strong { font-size:12px !important; }
  html.eye-mode .pan-mobile-brand-main small { font-size:10px !important; }
  html.eye-mode .pan-mobile-progress { height:5px; margin:7px 0 5px; }

  html.eye-mode .pan-mobile-products { border:0 !important; background:transparent !important; box-shadow:none !important; }
  html.eye-mode .pan-mobile-products > .pan-mobile-head { padding:4px 3px 10px !important; border:0 !important; }
  html.eye-mode .pan-mobile-product-list { display:grid; gap:9px; }
  html.eye-mode .pan-mobile-product-card { padding:13px !important; border-radius:17px !important; }
  html.eye-mode .pan-mobile-brand,
  html.eye-mode .pan-mobile-age { padding:4px 7px; border-radius:7px; font-size:9px; }
  html.eye-mode .pan-mobile-product-card h4 { margin:10px 0 5px; font-size:14px !important; line-height:1.4; }
  html.eye-mode .pan-mobile-code { font-size:10px !important; }
  html.eye-mode .pan-mobile-product-metrics { margin-top:12px; padding-top:11px; }
  html.eye-mode .pan-mobile-product-metrics > span { padding:0 8px; }
  html.eye-mode .pan-mobile-product-metrics small { font-size:9px !important; }
  html.eye-mode .pan-mobile-product-metrics b { margin-top:3px; font-size:12px !important; }
}

/* ===== 入库货号智能联想 ===== */
  .in-code-field { position:relative; z-index:120; }
.in-code-combobox { position:relative; }
.in-code-combobox.open { z-index:120; }
.in-code-combobox.open > .input {
  border-color:#8196f6;
  box-shadow:0 0 0 3px rgba(88,109,238,.10);
}
.in-code-suggestions {
  position:absolute;
  top:calc(100% + 7px);
  left:0;
  z-index:900;
  width:min(570px,calc(100vw - 44px));
  max-height:344px;
  overflow:auto;
  padding:7px;
  border:1px solid #d6e0eb;
  border-radius:16px;
  background:rgba(255,255,255,.98);
  box-shadow:0 20px 48px rgba(20,35,60,.16),0 3px 10px rgba(20,35,60,.06);
  backdrop-filter:blur(18px);
  animation:codeSuggestionIn .16s ease-out;
}
.in-code-suggestions[hidden] { display:none !important; }
@keyframes codeSuggestionIn {
  from { opacity:0; transform:translateY(-5px) scale(.99); }
  to { opacity:1; transform:none; }
}
.in-code-suggestion-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:5px 8px 8px;
  color:#53657a;
  font-size:11px;
  letter-spacing:.15px;
}
.in-code-suggestion-head small { color:#94a1b1; font-size:10px; }
.in-code-suggestion {
  width:100%;
  min-height:62px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto 15px;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border:0;
  border-top:1px solid #edf1f5;
  border-radius:11px;
  background:transparent;
  color:#17243a;
  text-align:left;
  transition:background .15s ease,transform .15s ease,box-shadow .15s ease;
}
.in-code-suggestion:hover,
.in-code-suggestion:focus-visible {
  outline:none;
  background:linear-gradient(100deg,#f0f4ff,#edf9f7);
  box-shadow:inset 3px 0 #586fee;
  transform:translateX(1px);
}
.in-code-suggestion-photo {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #e0e7ef;
  border-radius:11px;
  background:#f1f5f9;
  color:#6d8097;
}
.in-code-suggestion-photo img { width:100%; height:100%; object-fit:contain; background:#fff; }
.in-code-suggestion-main { min-width:0; display:flex; flex-direction:column; gap:4px; }
.in-code-suggestion-main b { overflow:hidden; color:#142238; font-size:13px; letter-spacing:.18px; text-overflow:ellipsis; white-space:nowrap; }
.in-code-suggestion-main small { overflow:hidden; color:#758499; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.in-code-suggestion-side { display:flex; flex-direction:column; align-items:flex-end; gap:5px; }
.in-code-suggestion-side i {
  padding:3px 7px;
  border-radius:999px;
  background:#edf2ff;
  color:#5368bd;
  font-size:9px;
  font-style:normal;
  white-space:nowrap;
}
.in-code-suggestion-side em { max-width:130px; overflow:hidden; color:#8794a5; font-size:9px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.in-code-suggestion-empty { display:flex; flex-direction:column; gap:4px; padding:16px 13px; }
.in-code-suggestion-empty b { color:#435369; font-size:12px; }
.in-code-suggestion-empty span { color:#8b98a8; font-size:11px; }

html.eye-mode .in-code-combobox.open > .input {
  border-color:#50cbbb !important;
  box-shadow:0 0 0 3px rgba(80,203,187,.10) !important;
}
html.eye-mode .in-code-suggestions {
  border-color:#294655;
  background:rgba(12,27,38,.98);
  box-shadow:0 22px 52px rgba(0,0,0,.38),0 0 0 1px rgba(92,221,205,.035);
}
html.eye-mode .in-code-suggestion-head { color:#83a0aa; }
html.eye-mode .in-code-suggestion-head small { color:#5f7881; }
html.eye-mode .in-code-suggestion { border-top-color:#1d3543; color:#d8e8eb; }
html.eye-mode .in-code-suggestion:hover,
html.eye-mode .in-code-suggestion:focus-visible {
  background:linear-gradient(100deg,rgba(45,84,105,.42),rgba(22,86,78,.35));
  box-shadow:inset 3px 0 #5bd9ca;
}
html.eye-mode .in-code-suggestion-photo { border-color:#2a4655; background:#142838; color:#7c9ba5; }
html.eye-mode .in-code-suggestion-photo img { background:#eaf0f0; }
html.eye-mode .in-code-suggestion-main b { color:#e8f4f4; }
html.eye-mode .in-code-suggestion-main small { color:#819aa2; }
html.eye-mode .in-code-suggestion-side i { background:#173b3b; color:#78d9cd; }
html.eye-mode .in-code-suggestion-side em { color:#6f8991; }
html.eye-mode .in-code-suggestion-empty b { color:#c4d8dc; }
html.eye-mode .in-code-suggestion-empty span { color:#708b94; }

@media(max-width:720px) {
  .in-code-suggestions.is-mobile {
    width:100%;
    max-height:300px;
    padding:6px;
    border-radius:15px;
    box-shadow:0 17px 42px rgba(20,35,60,.18);
  }
  .in-code-suggestion { min-height:66px; grid-template-columns:42px minmax(0,1fr) 14px; gap:9px; padding:9px 8px; }
  .in-code-suggestion-side { display:none; }
  .in-code-suggestion-main b { font-size:13px; }
  .in-code-suggestion-main small { font-size:10px; }
}

/* ===== 2026-08-29 手机入库工作台重构 ===== */
@media(max-width:720px) {
  .m-in-workbench { display:grid; gap:13px; }
  .m-in-command-hero {
    position:relative;
    overflow:hidden;
    min-height:194px;
    padding:17px 17px 15px;
    border:1px solid #244b5f;
    border-radius:23px;
    color:#fff;
    background:
      radial-gradient(circle at 94% 8%,rgba(86,221,204,.20),transparent 30%),
      radial-gradient(circle at 76% 100%,rgba(85,116,240,.14),transparent 37%),
      linear-gradient(137deg,#11283a 0%,#173e4d 57%,#24655f 100%);
    box-shadow:0 15px 34px rgba(26,67,78,.20);
  }
  .m-in-command-hero::after {
    content:'';
    position:absolute;
    right:-62px;
    top:34px;
    width:175px;
    height:175px;
    border:24px solid rgba(171,246,235,.06);
    border-radius:50%;
    pointer-events:none;
  }
  .m-in-command-top { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; color:#a3c0c7; font-size:9px; font-weight:700; letter-spacing:.7px; }
  .m-in-live { display:flex; align-items:center; gap:6px; }
  .m-in-live i { width:6px; height:6px; border-radius:50%; background:#5eead4; box-shadow:0 0 0 4px rgba(94,234,212,.10),0 0 12px rgba(94,234,212,.65); }
  .m-in-command-main { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:21px; }
  .m-in-command-main p { margin:0 0 4px; color:#65dacb; font-size:8px; font-weight:800; letter-spacing:1.35px; }
  .m-in-command-main h2 { margin:0; color:#fff; font-size:22px; line-height:1.25; letter-spacing:-.45px; }
  .m-in-command-main > div > span { display:block; margin-top:6px; color:#acc3c9; font-size:10px; }
  .m-in-command-icon { width:48px; height:48px; flex:0 0 48px; display:grid; place-items:center; border:1px solid rgba(135,234,220,.25); border-radius:15px; color:#8bf2e3; background:rgba(7,27,39,.28); box-shadow:inset 0 1px rgba(255,255,255,.08); }
  .m-in-step-rail { position:relative; z-index:1; display:grid; grid-template-columns:auto 1fr auto 1fr auto; align-items:center; gap:8px; margin-top:22px; padding:11px 12px; border:1px solid rgba(185,228,225,.12); border-radius:14px; background:rgba(4,20,30,.22); }
  .m-in-step-rail > div { display:flex; align-items:center; gap:5px; color:#8fa9b0; white-space:nowrap; }
  .m-in-step-rail b { width:22px; height:22px; display:grid; place-items:center; border-radius:7px; color:#8fa9b0; background:rgba(255,255,255,.06); font-size:8px; }
  .m-in-step-rail span { font-size:9px; }
  .m-in-step-rail > div.active { color:#dffbf7; }
  .m-in-step-rail > div.active b { color:#0d3b39; background:#74e0d2; box-shadow:0 0 14px rgba(116,224,210,.26); }
  .m-in-step-rail > i { height:1px; background:linear-gradient(90deg,rgba(111,221,207,.45),rgba(163,188,194,.13)); }

  html.light-mode .m-in-workbench .m-in-form-card,
  html.eye-mode .m-in-workbench .m-in-form-card { overflow:visible !important; padding:0 0 15px !important; border-radius:21px !important; }
  .m-in-workbench .m-in-form-head {
    position:relative;
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) auto;
    align-items:center !important;
    gap:11px !important;
    margin:0 !important;
    padding:17px 15px 15px !important;
    border-bottom:1px solid #e6ebe8 !important;
    border-radius:21px 21px 0 0;
    background:linear-gradient(135deg,#f7faf8,#eef5f2) !important;
  }
  .m-in-workbench .m-in-form-head small { display:block; margin-bottom:2px; color:#70877e; font-size:7px; font-weight:800; letter-spacing:1px; }
  .m-in-workbench .m-in-form-head h3 { margin:0 !important; color:#17251f !important; font-size:16px !important; }
  .m-in-workbench .m-in-form-head p { margin:3px 0 0 !important; color:#7d8d85 !important; font-size:9px !important; }
  .m-in-workbench .m-in-form-head em { padding:5px 7px; border:1px solid #cee0d9; border-radius:999px; color:#53796b; background:#fff; font-size:7px; font-style:normal; font-weight:800; letter-spacing:.5px; }
  .m-in-workbench .m-in-form-icon { width:42px !important; height:42px !important; flex-basis:42px !important; border-radius:13px !important; color:#fff !important; background:linear-gradient(145deg,#28483d,#376d5e) !important; box-shadow:0 7px 15px rgba(38,82,67,.18); }
  .m-in-product-block { margin:14px 13px 0; padding:13px; border:1px solid #e0e7e3; border-radius:16px; background:#fbfcfb; }
  html.light-mode .m-in-workbench .m-in-product-block .form-grid,
  html.eye-mode .m-in-workbench .m-in-product-block .form-grid { margin:0 !important; width:100% !important; padding:0 !important; gap:12px !important; }
  .m-in-workbench .in-code-field label { display:flex; align-items:center; justify-content:space-between; }
  .m-in-workbench .in-code-field label::after { content:'前缀智能匹配'; padding:3px 6px; border-radius:7px; color:#476c60; background:#e7f2ee; font-size:7px; font-weight:700; }
  html.light-mode .m-in-workbench .input { min-height:47px !important; border-radius:12px !important; background:#fff !important; }
  .m-in-workbench .m-in-main-input { padding-right:38px; font-weight:650; letter-spacing:.15px; }
  .m-in-workbench .in-code-combobox::after { content:'⌕'; position:absolute; right:13px; top:50%; transform:translateY(-52%); color:#799188; font-size:17px; pointer-events:none; }
  .m-in-workbench .m-in-product-photo { display:grid !important; grid-template-columns:50px minmax(0,1fr) auto; gap:10px !important; min-height:72px; margin:0 !important; padding:10px !important; border-radius:13px !important; }
  .m-in-workbench .m-in-product-photo .product-photo-preview { width:50px; height:50px; border-radius:11px; }
  .m-in-workbench .m-in-product-photo .in-product-photo-copy b { font-size:12px; }
  .m-in-workbench .m-in-product-photo .in-product-photo-copy span { margin-top:3px; font-size:9px; line-height:1.35; }
  .m-in-workbench .m-in-product-photo .in-product-photo-actions { gap:5px; }
  .m-in-workbench .m-in-product-photo .btn { min-height:32px; padding:0 9px; border-radius:9px; font-size:10px; }

  html.light-mode .m-in-workbench .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-size-title { display:flex !important; flex-direction:row !important; align-items:flex-end; justify-content:space-between; gap:10px; margin:20px 14px 10px !important; width:auto !important; }
  .m-in-workbench .m-in-size-title > div { min-width:0; display:flex; flex-direction:column; gap:3px; }
  .m-in-workbench .m-in-size-title small,
  .m-in-review-head small { color:#688279; font-size:7px; font-weight:800; letter-spacing:1px; }
  .m-in-workbench .m-in-size-title b { color:#17251f !important; font-size:15px !important; }
  .m-in-workbench .m-in-size-title > div > span { color:#84938c; font-size:9px !important; }
  .m-in-batch-count { flex:0 0 auto; padding:5px 8px; border:1px solid #d7e2dd; border-radius:9px; color:#50695f !important; background:#f5f8f6; font-size:9px !important; }
  html.light-mode .m-in-workbench .m-inrow,
  html.eye-mode .m-in-workbench .m-inrow { position:relative; margin:0 13px 9px !important; width:auto !important; padding:11px !important; border-left-width:1px !important; border-radius:15px !important; }
  .m-inrow-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; }
  .m-inrow-head span { color:#365349; font-size:9px; font-weight:800; letter-spacing:.7px; }
  .m-inrow-head small { color:#93a19b; font-size:8px; }
  .m-in-workbench .m-inrow-grid { gap:7px; }
  .m-in-workbench .m-inrow input,
  .m-in-workbench .m-inrow select { min-height:42px !important; border-radius:10px !important; font-size:12px !important; }
  .m-in-workbench .m-inrow-foot { margin-top:7px; }
  html.light-mode .m-in-workbench .m-in-add-row,
  html.eye-mode .m-in-workbench .m-in-add-row { min-height:42px; margin:2px 13px 18px !important; width:calc(100% - 26px) !important; border:1px dashed #bfcfc8; border-radius:12px; color:#46675b; background:#f7faf8; }
  .m-in-review-head { display:flex; align-items:center; justify-content:space-between; margin:0 14px 9px; padding-top:14px; border-top:1px dashed #dfe6e2; }
  .m-in-review-head > div { display:flex; flex-direction:column; gap:3px; }
  .m-in-review-head b { color:#17251f; font-size:14px; }
  .m-in-review-head > span { padding:4px 7px; border-radius:8px; color:#53786b; background:#eaf3ef; font-size:8px; }
  html.light-mode .m-in-workbench .m-in-review-summary,
  html.eye-mode .m-in-workbench .m-in-review-summary { margin:0 13px 10px !important; width:auto !important; padding:11px 4px !important; border-radius:14px !important; }
  .m-in-workbench .m-in-review-summary b { font-size:17px !important; }
  html.light-mode .m-in-workbench .m-submit,
  html.eye-mode .m-in-workbench .m-submit { min-height:53px; display:grid; grid-template-columns:1fr auto; grid-template-rows:auto auto; align-items:center; margin:0 13px !important; width:calc(100% - 26px) !important; padding:8px 15px 8px 18px; border-radius:14px !important; text-align:left; }
  .m-in-workbench .m-submit > span { grid-column:1; grid-row:1; font-size:14px; font-weight:800; }
  .m-in-workbench .m-submit > small { grid-column:1; grid-row:2; margin-top:1px; color:rgba(255,255,255,.65); font-size:8px; font-weight:500; }
  .m-in-workbench .m-submit > svg { grid-column:2; grid-row:1 / span 2; }
  .m-in-history-card { padding:14px !important; border-radius:19px !important; }
  .m-in-history-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
  .m-in-history-head small { color:#788d84; font-size:7px; font-weight:800; letter-spacing:1px; }
  .m-in-history-head h3 { display:flex; align-items:center; gap:6px; margin:3px 0 0; font-size:15px; }
  .m-in-history-head > span { padding:5px 8px; border-radius:9px; color:#65776f; background:#f1f5f2; font-size:8px; }

  html.eye-mode .m-in-command-hero { border-color:#285660; background:radial-gradient(circle at 94% 8%,rgba(83,222,205,.16),transparent 30%),linear-gradient(137deg,#0d202e,#113743 60%,#17554f); box-shadow:0 16px 35px rgba(0,0,0,.28); }
  html.eye-mode .m-in-workbench .m-in-form-head { border-bottom-color:#203a47 !important; background:linear-gradient(135deg,#132634,#152e3a) !important; }
  html.eye-mode .m-in-workbench .m-in-form-head h3,
  html.eye-mode .m-in-workbench .m-in-size-title b,
  html.eye-mode .m-in-review-head b { color:#e6f3f2 !important; }
  html.eye-mode .m-in-workbench .m-in-form-head small,
  html.eye-mode .m-in-workbench .m-in-size-title small,
  html.eye-mode .m-in-review-head small { color:#62bdb2; }
  html.eye-mode .m-in-workbench .m-in-form-head p,
  html.eye-mode .m-in-workbench .m-in-size-title > div > span { color:#758f96 !important; }
  html.eye-mode .m-in-workbench .m-in-form-head em { border-color:#28505a; color:#78d8cb; background:#102631; }
  html.eye-mode .m-in-product-block { border-color:#203c49; background:#10222f; }
  html.eye-mode .m-in-workbench .in-code-field label::after { color:#72cfc2; background:#173b3d; }
  html.eye-mode .m-in-batch-count,
  html.eye-mode .m-in-review-head > span { border-color:#294651; color:#77b9b0 !important; background:#142f38; }
  html.eye-mode .m-inrow-head span { color:#8ccdc3; }
  html.eye-mode .m-inrow-head small { color:#647d84; }
  html.eye-mode .m-in-workbench .m-in-add-row { border-color:#31505b; color:#83bdb5; background:#112631; }
  html.eye-mode .m-in-review-head { border-top-color:#29404a; }
  html.eye-mode .m-in-history-head > span { color:#7e9aa0; background:#142731; }
}

/* ===== 手机出库工作台：与智能入库采用同一作业语言 ===== */
@media(max-width:720px) {
  .m-out-workbench { display:grid; gap:13px; }
  .m-out-command-hero {
    position:relative;
    overflow:hidden;
    min-height:238px;
    padding:17px 17px 15px;
    border:1px solid #35516f;
    border-radius:23px;
    color:#fff;
    background:
      radial-gradient(circle at 92% 9%,rgba(79,186,232,.22),transparent 31%),
      radial-gradient(circle at 76% 78%,rgba(241,177,78,.12),transparent 37%),
      linear-gradient(137deg,#101d33 0%,#183451 58%,#2f6574 100%);
    box-shadow:0 15px 34px rgba(23,52,79,.21);
  }
  .m-out-command-hero::after { content:''; position:absolute; right:-56px; top:34px; width:165px; height:165px; border:23px solid rgba(156,220,241,.06); border-radius:50%; pointer-events:none; }
  .m-out-command-top { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; color:#9eb7cc; font-size:8px; font-weight:750; letter-spacing:.75px; }
  .m-out-command-top > span { display:flex; align-items:center; gap:6px; }
  .m-out-command-top i { width:6px; height:6px; border-radius:50%; background:#76d5ff; box-shadow:0 0 0 4px rgba(118,213,255,.10),0 0 12px rgba(118,213,255,.55); }
  .m-out-command-top em { padding:4px 7px; border:1px solid rgba(174,214,231,.16); border-radius:999px; color:#b5cfdd; font-size:7px; font-style:normal; }
  .m-out-command-main { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:17px; }
  .m-out-command-main p { margin:0 0 4px; color:#79d5f6; font-size:8px; font-weight:800; letter-spacing:1.3px; }
  .m-out-command-main h2 { margin:0; color:#fff; font-size:22px; line-height:1.25; letter-spacing:-.45px; }
  .m-out-command-main > div > span { display:block; margin-top:6px; color:#a8becd; font-size:10px; }
  .m-out-command-icon { width:48px; height:48px; flex:0 0 48px; display:grid; place-items:center; border:1px solid rgba(139,213,239,.24); border-radius:15px; color:#9ce4ff; background:rgba(5,20,38,.29); }
  .m-out-command-metrics { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:0; margin-top:17px; padding:10px 12px; border:1px solid rgba(184,217,232,.12); border-radius:14px; background:rgba(4,17,32,.22); }
  .m-out-command-metrics > div { display:flex; flex-direction:column; gap:3px; }
  .m-out-command-metrics > div + div { padding-left:14px; border-left:1px solid rgba(183,218,231,.13); }
  .m-out-command-metrics span { color:#91a9b9; font-size:8px; }
  .m-out-command-metrics b { color:#f2f8fb; font-size:16px; }
  .m-out-command-metrics small { color:#8ca6b7; font-size:8px; font-weight:500; }
  .m-out-step-rail { position:relative; z-index:1; display:grid; grid-template-columns:auto 1fr auto 1fr auto; align-items:center; gap:8px; margin-top:10px; padding:8px 10px; }
  .m-out-step-rail > div { display:flex; align-items:center; gap:5px; color:#819dac; white-space:nowrap; }
  .m-out-step-rail b { width:21px; height:21px; display:grid; place-items:center; border-radius:7px; color:#8ba6b4; background:rgba(255,255,255,.055); font-size:8px; }
  .m-out-step-rail span { font-size:8px; }
  .m-out-step-rail > div.active { color:#e4f7ff; }
  .m-out-step-rail > div.active b { color:#153448; background:#8ddcf7; box-shadow:0 0 14px rgba(141,220,247,.22); }
  .m-out-step-rail > i { height:1px; background:linear-gradient(90deg,rgba(119,203,233,.42),rgba(163,188,201,.12)); }

  .m-out-pick-card { padding:0 13px 14px !important; overflow:hidden; border-radius:21px !important; }
  .m-out-pick-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin:0 -13px 13px; padding:16px 15px 14px; border-bottom:1px solid #e5e9ed; background:linear-gradient(135deg,#f7f9fb,#eef3f7); }
  .m-out-pick-head small { color:#687f91; font-size:7px; font-weight:800; letter-spacing:1px; }
  .m-out-pick-head h3 { margin:4px 0 2px; color:#172431; font-size:16px; }
  .m-out-pick-head p { margin:0; color:#81909d; font-size:9px; }
  .m-out-pick-head > span { flex:0 0 auto; padding:5px 8px; border:1px solid #d6e0e7; border-radius:9px; color:#4e687b; background:#fff; font-size:9px; }
  .m-out-search-wrap { position:relative; display:flex; align-items:center; }
  .m-out-search-wrap > svg { position:absolute; left:13px; z-index:1; color:#718696; pointer-events:none; }
  .m-out-search-wrap .input { min-height:47px; padding-left:39px; border-radius:12px; font-size:13px; }
  .m-out-pick-card .m-out-list-hint { margin:8px 2px 9px; color:#82909d; font-size:9px; }
  .m-out-product-card { position:relative; display:grid !important; grid-template-columns:46px minmax(0,1fr) auto; gap:10px !important; min-height:82px; margin-bottom:8px; padding:11px !important; border:1px solid #e0e6eb !important; border-radius:15px !important; background:#fbfcfd !important; box-shadow:0 4px 12px rgba(22,42,62,.035); }
  .m-out-product-card::after { content:'›'; position:absolute; right:10px; top:50%; transform:translateY(-50%); color:#8fa0ad; font-size:18px; }
  .m-out-product-card .out-product-thumb { width:46px; height:46px; border-radius:12px; }
  .m-out-product-card .m-stock-main { padding-right:4px; }
  .m-out-product-card .m-stock-name { color:#172431; font-size:12px; line-height:1.4; }
  .m-out-product-card .m-stock-code { margin-top:4px; color:#82909d; font-size:9px; }
  .m-out-product-card .m-stock-right { align-items:flex-end; padding-right:15px; }
  .m-out-product-card .m-stock-num { color:#1e394a; font-size:9px; }
  .m-out-product-card .m-stock-num b { font-size:16px; }
  .m-out-product-card .m-stock-val { margin-top:2px; color:#8b98a4; font-size:8px; }
  .m-out-product-card .m-stock-out { margin-top:4px; color:#34738b; font-size:9px; font-weight:750; }
  .m-out-pick-card .m-out-load-more { margin-top:11px; padding:10px; border:1px solid #dce5e9; border-radius:12px; background:#f2f7f8; }
  .m-out-pick-card .m-out-load-more .btn { border-radius:9px; background:#fff; }
  .m-out-history-card { padding:14px !important; border-radius:19px !important; }
  .m-out-history-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
  .m-out-history-head small { color:#778b98; font-size:7px; font-weight:800; letter-spacing:1px; }
  .m-out-history-head h3 { display:flex; align-items:center; gap:6px; margin:3px 0 0; font-size:15px; }
  .m-out-history-head > span { padding:5px 8px; border-radius:9px; color:#607583; background:#eef3f6; font-size:8px; }

  html.eye-mode .m-out-command-hero { border-color:#294e67; background:radial-gradient(circle at 92% 9%,rgba(82,190,229,.17),transparent 31%),linear-gradient(137deg,#0b1829,#102d45 59%,#1d515e); box-shadow:0 16px 35px rgba(0,0,0,.29); }
  html.eye-mode .m-out-pick-head { border-bottom-color:#233948; background:linear-gradient(135deg,#142432,#162d3a); }
  html.eye-mode .m-out-pick-head h3 { color:#e7f1f4; }
  html.eye-mode .m-out-pick-head small { color:#6bbbd7; }
  html.eye-mode .m-out-pick-head p { color:#78909d; }
  html.eye-mode .m-out-pick-head > span { border-color:#2b4859; color:#8eb1c2; background:#102430; }
  html.eye-mode .m-out-product-card { border-color:#243e4e !important; background:#112432 !important; box-shadow:none; }
  html.eye-mode .m-out-product-card .m-stock-name { color:#dcebef; }
  html.eye-mode .m-out-product-card .m-stock-code,
  html.eye-mode .m-out-product-card .m-stock-val { color:#718994; }
  html.eye-mode .m-out-product-card .m-stock-num { color:#bfd5dc; }
  html.eye-mode .m-out-product-card .m-stock-out { color:#78cbe6; }
  html.eye-mode .m-out-pick-card .m-out-load-more { border-color:#294755; color:#7e9ba6; background:#142b35; }
  html.eye-mode .m-out-pick-card .m-out-load-more .btn { border-color:#31505f; color:#a7c1ca; background:#10232e; }
  html.eye-mode .m-out-history-head > span { color:#7e9ba8; background:#142934; }
}

/* ===== 今日明细：移动经营流水控制台 ===== */
@media(max-width:720px) {
  .mobile-inout-shell,.mobile-inout-shell * { box-sizing:border-box; }
  .mobile-inout-shell { width:100%; min-width:0; max-width:100%; overflow-x:hidden; }
  .m-today-workbench { width:100%; min-width:0; max-width:100%; display:grid; gap:13px; overflow:hidden; }
  .m-today-workbench > * { min-width:0; max-width:100%; }
  .m-today-hero { position:relative; overflow:hidden; padding:17px; border:1px solid #324f69; border-radius:23px; color:#fff; background:radial-gradient(circle at 91% 8%,rgba(104,221,205,.17),transparent 29%),linear-gradient(138deg,#111e35,#203c5d 58%,#356b72); box-shadow:0 15px 34px rgba(25,55,82,.19); }
  .m-today-hero::after { content:''; position:absolute; right:-55px; top:38px; width:170px; height:170px; border:23px solid rgba(164,229,223,.055); border-radius:50%; }
  .m-today-hero-top,.m-today-hero-main,.m-today-hero-metrics { position:relative; z-index:1; }
  .m-today-hero-top { display:flex; align-items:center; justify-content:space-between; color:#9eb8c6; font-size:8px; font-weight:800; letter-spacing:.8px; }
  .m-today-hero-top > span { display:flex; align-items:center; gap:6px; }.m-today-hero-top i { width:6px; height:6px; border-radius:50%; background:#67e3d3; box-shadow:0 0 0 4px rgba(103,227,211,.1),0 0 12px rgba(103,227,211,.5); }
  .m-today-hero-top em { padding:4px 8px; border:1px solid rgba(179,218,227,.15); border-radius:999px; color:#c3d7df; font-size:8px; font-style:normal; }
  .m-today-hero-main { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:18px; }
  .m-today-hero-main p { margin:0 0 4px; color:#79d8cd; font-size:8px; font-weight:800; letter-spacing:1.25px; }.m-today-hero-main h2 { margin:0; color:#fff; font-size:22px; }.m-today-hero-main > div > span { display:block; margin-top:6px; color:#a9c0cb; font-size:10px; }
  .m-today-hero-icon { width:48px; height:48px; flex:0 0 48px; display:grid; place-items:center; border:1px solid rgba(137,224,211,.22); border-radius:15px; color:#8ce8dc; background:rgba(5,20,38,.25); }
  .m-today-hero-metrics { display:grid; grid-template-columns:repeat(3,1fr); margin-top:18px; padding:11px 4px; border:1px solid rgba(184,220,226,.12); border-radius:14px; background:rgba(4,17,32,.2); }
  .m-today-hero-metrics > div { min-width:0; padding:0 9px; }.m-today-hero-metrics > div + div { border-left:1px solid rgba(186,219,226,.12); }
  .m-today-hero-metrics span,.m-today-hero-metrics em { display:block; overflow:hidden; color:#8fa8b5; font-size:8px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }.m-today-hero-metrics b { display:block; margin:4px 0 2px; color:#f1f7fa; font-size:14px; white-space:nowrap; }.m-today-hero-metrics b small { color:#8da6b3; font-size:7px; }
  .m-today-control-card,.m-today-ledger { width:100%; min-width:0; max-width:100%; padding:14px !important; overflow:hidden; border-radius:19px !important; }
  .m-today-section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:11px; }.m-today-section-head small { color:#72877f; font-size:7px; font-weight:800; letter-spacing:1px; }.m-today-section-head h3 { margin:3px 0 0; color:#17251f; font-size:15px; }.m-today-section-head > span { padding:5px 8px; border-radius:9px; color:#557066; background:#edf3f0; font-size:8px; }
  .m-today-range { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px !important; margin:0 !important; padding:3px !important; overflow:hidden!important; border:1px solid #e0e7e3; border-radius:12px; background:#f2f5f3; }.m-today-range .chip { min-width:0; min-height:35px; padding:7px 2px!important; justify-content:center; border:0 !important; border-radius:9px !important; background:transparent !important; font-size:10px; }.m-today-range .chip.active { color:#fff !important; background:#253f36 !important; box-shadow:0 5px 12px rgba(37,63,54,.15); }
  .m-today-custom-range { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:6px; width:100%; min-width:0; margin:10px 0 0; }.m-today-custom-range .input { width:100%; min-width:0; height:42px; padding:8px 5px; font-size:12px; }.m-today-custom-range .muted { font-size:10px; }
  .m-today-kpis { width:100%; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px !important; margin:0 !important; }.m-today-kpis .stat-card { width:auto; min-width:0; min-height:96px !important; padding:13px !important; overflow:hidden; border-radius:15px !important; }.m-today-kpis .stat-card .label,.m-today-kpis .stat-card .extra { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.m-today-kpis .stat-card .value { max-width:100%; margin-top:11px !important; overflow:hidden; font-size:clamp(16px,5.1vw,20px) !important; text-overflow:ellipsis; white-space:nowrap; }
  .m-today-ledger .m-tabs { position:relative!important; top:auto!important; width:100%; min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:10px !important; padding:4px !important; overflow:hidden; border:1px solid #e0e6e2; border-radius:12px; background:#f1f4f2; }.m-today-ledger .m-tab { min-width:0; min-height:38px; padding-left:2px; padding-right:2px; overflow:hidden; border-radius:9px; text-overflow:ellipsis; }.m-today-ledger .m-tab.active { color:#fff !important; background:#203a31 !important; }
  .m-today-record { position:relative; width:100%; min-width:0; max-width:100%; margin-bottom:7px; padding:12px 11px 12px 14px !important; overflow:hidden; border:1px solid #e3e8e5 !important; border-radius:13px !important; background:#fbfcfb !important; }.m-today-record::before { content:''; position:absolute; left:0; top:11px; bottom:11px; width:3px; border-radius:0 3px 3px 0; background:#4e796b; }.m-today-record.is-out::before { background:#477b95; }.m-today-record .m-li-main { min-width:0; overflow:hidden; }.m-today-record .m-li-title { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.m-today-record .m-li-title b { font-size:12px; }.m-today-record .m-li-title .tag { display:inline-block; max-width:48%; overflow:hidden; vertical-align:middle; text-overflow:ellipsis; white-space:nowrap; }.m-today-record .m-li-sub { max-width:100%; margin-top:4px; overflow:hidden; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
  html.eye-mode .m-today-hero { border-color:#2b5161; background:radial-gradient(circle at 91% 8%,rgba(92,220,204,.14),transparent 29%),linear-gradient(138deg,#0b192b,#152f49 58%,#1d5359); box-shadow:0 16px 35px rgba(0,0,0,.28); }
  html.eye-mode .m-today-section-head h3 { color:#e5f2ef; }.eye-mode .m-today-section-head small { color:#69bdb0; }html.eye-mode .m-today-section-head > span { color:#7ec0b5; background:#143139; }
  html.eye-mode .m-today-range { border-color:#27424d; background:#10242e; }html.eye-mode .m-today-range .chip.active { background:#1d5b54 !important; }
  html.eye-mode .m-today-ledger .m-tabs { border-color:#263f4a; background:#10232d; }html.eye-mode .m-today-ledger .m-tab.active { background:#1c5b53 !important; }
  html.eye-mode .m-today-record { border-color:#233d49 !important; background:#10232e !important; }
}

/* ===== 库存管理：移动货盘总览与商品目录 ===== */
@media(max-width:720px) {
  .m-stock-workbench { display:grid; gap:13px; }
  .m-stock-overview-hero { position:relative; overflow:hidden; padding:17px; border:1px solid #28535b; border-radius:23px; color:#fff; background:radial-gradient(circle at 92% 7%,rgba(95,225,207,.20),transparent 30%),linear-gradient(137deg,#102a35,#174852 58%,#31746d); box-shadow:0 15px 34px rgba(25,70,73,.19); }
  .m-stock-overview-hero::after { content:''; position:absolute; right:-62px; top:53px; width:178px; height:178px; border:24px solid rgba(162,237,225,.06); border-radius:50%; }
  .m-stock-overview-top,.m-stock-overview-main,.m-stock-overview-metrics { position:relative; z-index:1; }.m-stock-overview-top { display:flex; align-items:center; justify-content:space-between; }.m-stock-overview-top > span { display:flex; align-items:center; gap:6px; color:#a4c1c4; font-size:8px; font-weight:800; letter-spacing:.8px; }.m-stock-overview-top i { width:6px; height:6px; border-radius:50%; background:#65e5d4; box-shadow:0 0 0 4px rgba(101,229,212,.1),0 0 12px rgba(101,229,212,.55); }.m-stock-overview-top button { min-height:30px; display:flex; align-items:center; gap:5px; padding:0 10px; border:1px solid rgba(186,232,225,.18); border-radius:10px; color:#d9f4ef; background:rgba(5,28,34,.24); font-size:9px; }
  .m-stock-overview-main { display:flex; align-items:center; justify-content:space-between; margin-top:17px; }.m-stock-overview-main p { margin:0 0 3px; color:#72ddce; font-size:8px; font-weight:800; letter-spacing:1.2px; }.m-stock-overview-main h2 { margin:0; color:#b6cece; font-size:11px; font-weight:550; }.m-stock-overview-main strong { display:block; margin-top:4px; color:#fff; font-size:31px; letter-spacing:-1px; }.m-stock-overview-main > div > span { display:block; margin-top:4px; color:#9db7b9; font-size:9px; }
  .m-stock-overview-icon { width:52px; height:52px; display:grid; place-items:center; border:1px solid rgba(148,231,219,.22); border-radius:17px; color:#8ce8db; background:rgba(4,28,34,.24); }
  .m-stock-overview-metrics { display:grid; grid-template-columns:repeat(3,1fr); margin-top:18px; padding:11px 4px; border:1px solid rgba(187,229,223,.12); border-radius:14px; background:rgba(3,25,31,.2); }.m-stock-overview-metrics > div { padding:0 10px; }.m-stock-overview-metrics > div + div { border-left:1px solid rgba(183,224,219,.13); }.m-stock-overview-metrics span { display:block; color:#8da9aa; font-size:8px; }.m-stock-overview-metrics b { display:block; margin-top:4px; color:#f2fbfa; font-size:16px; }.m-stock-overview-metrics small { color:#86a4a5; font-size:7px; }
  .m-stock-signal-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.m-stock-signal-grid > div { min-height:92px; padding:13px; border:1px solid #dfe7e3; border-radius:15px; background:#fbfcfb; box-shadow:0 5px 15px rgba(25,50,42,.04); }.m-stock-signal-grid span { display:flex; align-items:center; gap:6px; color:#6f8179; font-size:10px; }.m-stock-signal-grid b { display:block; margin-top:11px; color:#173027; font-size:19px; }.m-stock-signal-grid b small { font-size:9px; }.m-stock-signal-grid > div > small { display:block; margin-top:3px; color:#89978f; font-size:8px; }.m-stock-signal-grid .attention { border-top:2px solid #a37a45; }
  .m-stock-active-filter { display:flex; align-items:center; gap:6px; flex-wrap:wrap; padding:9px 10px; border:1px solid #d7e4df; border-radius:13px; background:#f2f8f5; }.m-stock-active-filter .spacer { flex:1; }
  .m-stock-catalog-card { padding:0 12px 13px !important; overflow:visible !important; border-radius:20px !important; }.m-stock-catalog-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin:0 -12px 13px; padding:15px 14px 13px; border-bottom:1px solid #e5eae7; border-radius:20px 20px 0 0; background:linear-gradient(135deg,#f8faf9,#eff5f2); }.m-stock-catalog-head small { color:#6b8278; font-size:7px; font-weight:800; letter-spacing:1px; }.m-stock-catalog-head h3 { margin:3px 0 2px; color:#17251f; font-size:16px; }.m-stock-catalog-head p { margin:0; color:#839189; font-size:9px; }.m-stock-catalog-head > span { padding:5px 8px; border:1px solid #d6e2dc; border-radius:9px; color:#526d61; background:#fff; font-size:9px; }
  .m-stock-search { position:relative; display:flex; align-items:center; margin-bottom:8px; }.m-stock-search > svg { position:absolute; left:13px; z-index:1; color:#71877d; }.m-stock-search .input { min-height:46px; padding-left:39px; border-radius:12px; }
  .m-stock-catalog-card .stock-filter-row { margin-bottom:9px; }.m-stock-catalog-card > .m-chips-scroll { margin-bottom:9px !important; }
  .m-stock-product-card { margin-bottom:9px !important; border-radius:16px !important; box-shadow:0 5px 15px rgba(23,46,38,.045) !important; }.m-stock-product-card .m-stock-head { padding:12px !important; }.m-stock-product-card .m-stock-stats { background:#f7f9f8; }.m-stock-product-card .m-stock-stats .v { color:#173027; }.m-stock-product-card .m-stock-body { border-top-color:#e4e9e6; background:#fbfcfb; }
  html.eye-mode .m-stock-overview-hero { border-color:#28535d; background:radial-gradient(circle at 92% 7%,rgba(87,220,203,.16),transparent 30%),linear-gradient(137deg,#0c202a,#103b45 58%,#1b5852); box-shadow:0 16px 35px rgba(0,0,0,.28); }
  html.eye-mode .m-stock-signal-grid > div { border-color:#223d47; background:#10232d; box-shadow:none; }html.eye-mode .m-stock-signal-grid span { color:#7d969b; }html.eye-mode .m-stock-signal-grid b { color:#dfefed; }html.eye-mode .m-stock-signal-grid > div > small { color:#6d858b; }
  html.eye-mode .m-stock-active-filter { border-color:#29444d; background:#132b33; }
  html.eye-mode .m-stock-catalog-head { border-bottom-color:#233d46; background:linear-gradient(135deg,#142630,#153039); }html.eye-mode .m-stock-catalog-head h3 { color:#e4f1ef; }html.eye-mode .m-stock-catalog-head small { color:#69bcb0; }html.eye-mode .m-stock-catalog-head p { color:#748d92; }html.eye-mode .m-stock-catalog-head > span { border-color:#2b4a53; color:#80bbb2; background:#10262e; }
  html.eye-mode .m-stock-product-card .m-stock-stats,html.eye-mode .m-stock-product-card .m-stock-body { background:#10222c; }html.eye-mode .m-stock-product-card .m-stock-stats .v { color:#dcecea; }
}

/* 品牌面板与货号联想互斥：品牌选择打开时，货号输入区不能穿透到面板上方。 */
@media(max-width:720px) {
  .brand-picker-active .in-code-field { z-index:1 !important; }
  .brand-picker-active .in-code-combobox { z-index:1 !important; }
  .brand-picker-active [data-role="in-code-suggestions"] { display:none !important; }
  .brand-picker-active .brand-picker.is-mobile { z-index:950 !important; }
  .brand-picker-active .brand-picker.is-mobile .brand-picker-popover { z-index:951 !important; }
}

/* 业务页使用次级工作台层级：首页保留醒目主视觉，其余页回归克制的信息面板。 */
@media(max-width:720px) {
  html.light-mode .m-in-command-hero,
  html.light-mode .m-out-command-hero,
  html.light-mode .m-today-hero {
    color:#17332f;
    border:1px solid #cedfdb;
    background:
      radial-gradient(circle at 94% 8%,rgba(60,132,121,.08),transparent 28%),
      linear-gradient(138deg,#fbfdfc 0%,#f2f7f5 58%,#eaf2f1 100%);
    box-shadow:0 10px 25px rgba(27,62,58,.08);
  }
  html.light-mode .m-in-command-hero::after,
  html.light-mode .m-out-command-hero::after,
  html.light-mode .m-today-hero::after {
    border-color:rgba(47,113,104,.05);
  }
  html.light-mode .m-in-command-top,
  html.light-mode .m-out-command-top,
  html.light-mode .m-today-hero-top { color:#738985; }
  html.light-mode .m-in-live i,
  html.light-mode .m-out-command-top i,
  html.light-mode .m-today-hero-top i {
    background:#4ba99b;
    box-shadow:0 0 0 4px rgba(75,169,155,.10),0 0 10px rgba(75,169,155,.22);
  }
  html.light-mode .m-in-command-main p,
  html.light-mode .m-out-command-main p,
  html.light-mode .m-today-hero-main p { color:#43877d; }
  html.light-mode .m-in-command-main h2,
  html.light-mode .m-out-command-main h2,
  html.light-mode .m-today-hero-main h2 { color:#183630; }
  html.light-mode .m-in-command-main > div > span,
  html.light-mode .m-out-command-main > div > span,
  html.light-mode .m-today-hero-main > div > span { color:#71837f; }
  html.light-mode .m-in-command-icon,
  html.light-mode .m-out-command-icon,
  html.light-mode .m-today-hero-icon {
    color:#347b72;
    border-color:#c9ded9;
    background:rgba(255,255,255,.72);
    box-shadow:0 7px 16px rgba(31,73,67,.07);
  }
  html.light-mode .m-in-step-rail,
  html.light-mode .m-out-step-rail,
  html.light-mode .m-out-command-metrics,
  html.light-mode .m-today-hero-metrics {
    border-color:#d8e5e1;
    background:rgba(255,255,255,.66);
  }
  html.light-mode .m-in-step-rail span,
  html.light-mode .m-out-step-rail span,
  html.light-mode .m-out-command-metrics span,
  html.light-mode .m-today-hero-metrics span,
  html.light-mode .m-today-hero-metrics em { color:#718682; }
  html.light-mode .m-in-step-rail b,
  html.light-mode .m-out-step-rail b { color:#6d817d; background:#e7efed; }
  html.light-mode .m-in-step-rail .active b,
  html.light-mode .m-out-step-rail .active b { color:#fff; background:#397f75; }
  html.light-mode .m-in-step-rail i,
  html.light-mode .m-out-step-rail i { background:#ceddd9; }
  html.light-mode .m-out-command-metrics b,
  html.light-mode .m-today-hero-metrics b { color:#19372f; }
  html.light-mode .m-today-hero-top em { color:#52746d; border-color:#d1dfdc; background:rgba(255,255,255,.65); }

  html.eye-mode .m-in-command-hero,
  html.eye-mode .m-out-command-hero,
  html.eye-mode .m-today-hero {
    border-color:#29434a;
    background:
      radial-gradient(circle at 94% 8%,rgba(79,182,167,.08),transparent 28%),
      linear-gradient(138deg,#0d1821 0%,#11232c 60%,#153139 100%);
    box-shadow:0 12px 28px rgba(0,0,0,.23);
  }
}

/* 库存页 2.0：资产概览降噪，经营判断与商品目录成为视觉主线。 */
@media(max-width:720px) {
  html.light-mode .m-stock-overview-hero {
    color:#17332e;
    border:1px solid #cbded9;
    background:
      radial-gradient(circle at 94% 8%,rgba(50,122,111,.075),transparent 29%),
      linear-gradient(138deg,#fcfdfc 0%,#f3f7f5 58%,#eaf1ef 100%);
    box-shadow:0 10px 25px rgba(25,59,53,.075);
  }
  html.light-mode .m-stock-overview-hero::after { border-color:rgba(44,105,96,.045); }
  html.light-mode .m-stock-overview-top > span { color:#718783; }
  html.light-mode .m-stock-overview-top i { background:#4aa597; box-shadow:0 0 0 4px rgba(74,165,151,.1),0 0 10px rgba(74,165,151,.22); }
  html.light-mode .m-stock-overview-top button { color:#315f57; border-color:#cadbd7; background:rgba(255,255,255,.75); box-shadow:0 5px 13px rgba(35,75,68,.055); }
  html.light-mode .m-stock-overview-main p { color:#43857b; }
  html.light-mode .m-stock-overview-main h2 { color:#647b76; }
  html.light-mode .m-stock-overview-main strong { color:#17342e; }
  html.light-mode .m-stock-overview-main > div > span { color:#7b8c88; }
  html.light-mode .m-stock-overview-icon { color:#34796f; border-color:#c8dcd7; background:rgba(255,255,255,.75); box-shadow:0 7px 16px rgba(31,71,64,.07); }
  html.light-mode .m-stock-overview-metrics { border-color:#d7e3e0; background:rgba(255,255,255,.68); }
  html.light-mode .m-stock-overview-metrics > div + div { border-left-color:#dce6e3; }
  html.light-mode .m-stock-overview-metrics span,
  html.light-mode .m-stock-overview-metrics small { color:#728580; }
  html.light-mode .m-stock-overview-metrics b { color:#1b3932; }

  .m-stock-signal-grid > div { position:relative; overflow:hidden; }
  .m-stock-signal-grid > div::after { content:''; position:absolute; right:-20px; top:-22px; width:66px; height:66px; border:12px solid rgba(52,106,88,.045); border-radius:50%; }
  .m-stock-signal-grid .profit { border-top:2px solid #4d8272; }
  .m-stock-signal-grid .attention { border-top-color:#a47b46; }
  .m-stock-insight-strip {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    overflow:hidden;
    border:1px solid #dbe5e1;
    border-radius:14px;
    background:#dbe5e1;
    box-shadow:0 5px 15px rgba(24,51,42,.035);
  }
  .m-stock-insight-strip > div { min-width:0; padding:11px 9px; background:#f8faf9; }
  .m-stock-insight-strip span { display:block; overflow:hidden; color:#7a8b85; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  .m-stock-insight-strip b { display:block; margin-top:5px; color:#203b32; font-size:13px; white-space:nowrap; }
  .m-stock-insight-strip .good b { color:#287567; }
  .m-stock-insight-strip .steady b { color:#526e65; }
  .m-stock-insight-strip .warning b { color:#9a6a2e; }

  html.light-mode .m-stock-catalog-card { border:1px solid #dce5e1 !important; background:#fff !important; box-shadow:0 10px 25px rgba(26,52,43,.06) !important; }
  html.light-mode .m-stock-catalog-head { background:linear-gradient(135deg,#fafcfb,#f2f6f4); }
  html.light-mode .m-stock-product-card { border-color:#dfe7e3 !important; background:#fcfdfc !important; }
  html.light-mode .m-stock-product-card::before { content:''; display:block; height:2px; background:linear-gradient(90deg,#4d8272 0 34%,#d9e4e0 34%); }

  html.eye-mode .m-stock-overview-hero {
    border-color:#29434a;
    background:radial-gradient(circle at 94% 8%,rgba(77,177,163,.08),transparent 29%),linear-gradient(138deg,#0d1821,#11232c 60%,#153139);
    box-shadow:0 12px 28px rgba(0,0,0,.23);
  }
  html.eye-mode .m-stock-insight-strip { border-color:#263f47; background:#263f47; box-shadow:none; }
  html.eye-mode .m-stock-insight-strip > div { background:#10232c; }
  html.eye-mode .m-stock-insight-strip span { color:#789096; }
  html.eye-mode .m-stock-insight-strip b { color:#dcebe8; }
  html.eye-mode .m-stock-insight-strip .good b { color:#6fd1c0; }
  html.eye-mode .m-stock-insight-strip .steady b { color:#9bbdb5; }
  html.eye-mode .m-stock-insight-strip .warning b { color:#d9a866; }
}

/* 我的 2.0：个人身份、经营快照、业务工具、账户数据四层结构。 */
@media(min-width:721px) and (max-width:1050px){
  .me-desktop-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .me-desktop-stats .stat-card:nth-child(3){border-left:0;border-top:1px solid #e3eaed}
  .me-desktop-stats .stat-card:nth-child(4){border-top:1px solid #e3eaed}
  .me-desktop-layout{grid-template-columns:1fr}
  html.eye-mode .me-desktop-stats .stat-card:nth-child(3),html.eye-mode .me-desktop-stats .stat-card:nth-child(4){border-top-color:#294149}
}
@media(max-width:720px) {
  .me-page { display:grid; gap:11px; padding-bottom:96px !important; }
  .me-page .me-hero { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:13px; margin:0 !important; }
  .me-hero-meta { position:relative; z-index:1; grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; margin:4px -2px -5px; padding-top:12px; border-top:1px solid rgba(255,255,255,.1); }
  .me-hero-meta > span { display:grid; gap:2px; padding:0 8px; }
  .me-hero-meta > span + span { border-left:1px solid rgba(255,255,255,.1); }
  .me-hero-meta small { color:rgba(215,231,225,.58); font-size:8px; }
  .me-hero-meta b { color:#eef7f3; font-size:11px; font-weight:700; }

  .me-snapshot { overflow:hidden; border:1px solid #dce5e1; border-radius:18px; background:#fff; box-shadow:0 8px 22px rgba(25,51,42,.055); }
  .me-snapshot-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 14px 12px; border-bottom:1px solid #e6ebe8; background:linear-gradient(135deg,#fafcfb,#f2f6f4); }
  .me-snapshot-head small { color:#668078; font-size:7px; font-weight:850; letter-spacing:1.1px; }
  .me-snapshot-head h3 { margin:3px 0 0; color:#192a23; font-size:16px; }
  .me-snapshot-head button { min-height:31px; padding:0 10px; border:1px solid #d6e1dd; border-radius:10px; color:#4f695f; background:#fff; font:inherit; font-size:9px; }
  .me-snapshot-grid { display:grid; grid-template-columns:1fr 1fr; }
  .me-snapshot-grid button { position:relative; display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto auto; column-gap:9px; min-height:108px; padding:13px; border:0; color:inherit; background:#fff; text-align:left; font:inherit; }
  .me-snapshot-grid button:nth-child(odd) { border-right:1px solid #e7ece9; }
  .me-snapshot-grid button:nth-child(-n+2) { border-bottom:1px solid #e7ece9; }
  .me-snapshot-grid .ic { grid-row:1/4; width:31px; height:31px; display:grid; place-items:center; border-radius:9px; color:#37675a; background:#eaf2ef; }
  .me-snapshot-grid .ic.out { color:#866532; background:#f6f0e5; }
  .me-snapshot-grid .ic.stock { color:#456878; background:#eaf1f4; }
  .me-snapshot-grid .ic.profit { color:#655483; background:#f0edf5; }
  .me-snapshot-grid small { align-self:center; color:#71817b; font-size:9px; }
  .me-snapshot-grid b { margin-top:7px; color:#172820; font-size:18px; line-height:1; white-space:nowrap; }
  .me-snapshot-grid b em { color:#72817b; font-size:8px; font-style:normal; font-weight:550; }
  .me-snapshot-grid i { margin-top:4px; color:#929e98; font-size:8px; font-style:normal; }

  .me-page .me-group { margin:0 !important; padding:13px !important; border-radius:18px !important; }
  .me-grid2 { gap:8px !important; }
  .me-cell { position:relative; display:block; overflow:hidden; min-height:112px !important; padding:13px !important; border-radius:14px !important; text-align:left; font:inherit; }
  .me-cell-index { position:absolute; right:11px; top:10px; color:#a5afaa; font-size:7px; font-weight:800; letter-spacing:.7px; }
  .me-cell-arrow { position:absolute; right:11px; bottom:10px; color:#84928b; font-size:12px; }
  .me-cell .me-cell-label { padding-right:20px; }
  .me-cell .me-cell-desc { max-width:82%; }
  .me-local-note { display:flex; align-items:flex-start; gap:9px; margin-top:11px; padding:11px; border:1px solid #dfe7e3; border-radius:12px; color:#4d685e; background:#f3f7f5; }
  .me-local-note > svg { flex:0 0 auto; margin-top:2px; }
  .me-local-note span { display:grid; gap:3px; }.me-local-note b { font-size:10px; }.me-local-note small { color:#84938c; font-size:8px; line-height:1.45; }

  html.light-mode .me-hero { min-height:0 !important; padding:17px 16px 15px !important; border:1px solid #cbded9 !important; color:#17332e !important; background:radial-gradient(circle at 93% 8%,rgba(58,132,120,.08),transparent 28%),linear-gradient(138deg,#fbfdfc,#f2f7f5 58%,#eaf1ef) !important; box-shadow:0 10px 25px rgba(25,59,53,.075) !important; }
  html.light-mode .me-hero::after { border-color:rgba(47,109,99,.045) !important; }
  html.light-mode .me-hero .me-avatar { color:#fff; border-color:#3e6d63; background:#2f5d53 !important; }
  html.light-mode .me-overline { color:#5c7d74 !important; }
  html.light-mode .me-hero .me-name { color:#18352f !important; }
  html.light-mode .me-hero .me-shop { color:#6e827c !important; }
  html.light-mode .me-hero .me-badge { color:#3e6c61; border-color:#c7d9d4; background:rgba(255,255,255,.7); }
  html.light-mode .me-hero-meta { border-top-color:#d8e4e0; }
  html.light-mode .me-hero-meta > span + span { border-left-color:#d8e4e0; }
  html.light-mode .me-hero-meta small { color:#82938e; }
  html.light-mode .me-hero-meta b { color:#284a41; }

  html.eye-mode .me-snapshot { border-color:#243e47; background:#0f2029; box-shadow:0 10px 24px rgba(0,0,0,.2); }
  html.eye-mode .me-snapshot-head { border-bottom-color:#223a43; background:linear-gradient(135deg,#132630,#142e36); }
  html.eye-mode .me-snapshot-head small { color:#64b5ab; }html.eye-mode .me-snapshot-head h3 { color:#e4f1ef; }
  html.eye-mode .me-snapshot-head button { color:#86b9b1; border-color:#2b4a52; background:#10242c; }
  html.eye-mode .me-snapshot-grid button { color:#dceae8; background:#10212a; }
  html.eye-mode .me-snapshot-grid button:nth-child(odd),html.eye-mode .me-snapshot-grid button:nth-child(-n+2) { border-color:#203740; }
  html.eye-mode .me-snapshot-grid .ic { color:#71c9bd; background:#17323a; }
  html.eye-mode .me-snapshot-grid .ic.out { color:#d5aa69; background:#332a20; }
  html.eye-mode .me-snapshot-grid .ic.stock { color:#83bdce; background:#182e39; }
  html.eye-mode .me-snapshot-grid .ic.profit { color:#aa9dcc; background:#28243a; }
  html.eye-mode .me-snapshot-grid small { color:#71898b; }html.eye-mode .me-snapshot-grid b { color:#e9f4f2; }html.eye-mode .me-snapshot-grid i { color:#60787b; }
  html.eye-mode .me-local-note { color:#8bc5bc; border-color:#29454d; background:#132b33; }html.eye-mode .me-local-note small { color:#688286; }
}

/* 次级业务页顶部加深半档：与白色内容区分层，但不争夺首页主视觉。 */
@media(max-width:720px) {
  html.light-mode .m-in-command-hero,
  html.light-mode .m-out-command-hero,
  html.light-mode .m-today-hero,
  html.light-mode .m-stock-overview-hero,
  html.light-mode .me-hero {
    border-color:#b9d1cb !important;
    background:
      radial-gradient(circle at 94% 8%,rgba(48,111,101,.105),transparent 30%),
      linear-gradient(138deg,#f2f7f5 0%,#e7f0ed 58%,#dce9e6 100%) !important;
    box-shadow:0 11px 27px rgba(28,67,60,.09) !important;
  }
  html.light-mode .m-in-command-hero::after,
  html.light-mode .m-out-command-hero::after,
  html.light-mode .m-today-hero::after,
  html.light-mode .m-stock-overview-hero::after,
  html.light-mode .me-hero::after { border-color:rgba(43,100,91,.065) !important; }
  html.light-mode .m-in-step-rail,
  html.light-mode .m-out-step-rail,
  html.light-mode .m-out-command-metrics,
  html.light-mode .m-today-hero-metrics,
  html.light-mode .m-stock-overview-metrics {
    border-color:#c7d9d4;
    background:rgba(255,255,255,.58);
  }
  html.light-mode .m-in-command-icon,
  html.light-mode .m-out-command-icon,
  html.light-mode .m-today-hero-icon,
  html.light-mode .m-stock-overview-icon {
    border-color:#b9d2cc;
    background:rgba(250,253,252,.68);
  }
  html.light-mode .me-hero-meta { border-top-color:#c8d9d4; }
  html.light-mode .me-hero-meta > span + span { border-left-color:#c8d9d4; }
}

/* 电脑端库存目录 2.0：自然字重、档案信息与数据舱分离。 */
@media(min-width:721px) {
  .inventory-list-card {
    padding:0 !important;
    overflow:visible !important;
    border-color:#dbe4e0 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(25,50,42,.055) !important;
  }
  .inventory-list-title { margin:0; padding:18px 20px 14px; border-bottom:1px solid #e5ebe8; background:linear-gradient(135deg,#fbfcfb,#f3f7f5); border-radius:18px 18px 0 0; }
  .inventory-list-title .section-kicker { color:#668078; font-size:9px; letter-spacing:1px; }
  .inventory-list-title h3 { margin-top:4px; color:#1d2d26; font-size:17px; font-weight:650; }
  .inventory-list-card > .toolbar { margin:12px 14px 0 !important; padding:9px !important; border-color:#dfe7e3 !important; border-radius:11px !important; background:#f6f8f7 !important; }
  .inventory-list-card > .toolbar + .toolbar { margin-top:8px !important; margin-bottom:12px !important; background:#fafbfa !important; }
  .inventory-list-card > .toolbar .input { min-height:38px; border-color:#d9e2de; border-radius:9px; background:#fff; }
  .stock-list-columns { grid-template-columns:minmax(300px,1fr) 104px 116px 96px 58px; gap:9px; margin:0 14px; padding:7px 12px 8px 106px; color:#83938c; font-size:9px; font-weight:700; letter-spacing:.55px; text-transform:uppercase; }
  .inventory-list-card .stock-dense-row { position:relative; margin:0 14px 8px; overflow:hidden; border:1px solid #dfe7e3 !important; border-radius:13px !important; background:#fff !important; box-shadow:0 3px 10px rgba(28,52,44,.025); transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease; }
  .inventory-list-card .stock-dense-row::before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:#78958b; opacity:0; transition:opacity .16s ease; }
  .inventory-list-card .stock-dense-row:hover { transform:translateY(-1px); border-color:#b7ccc5 !important; box-shadow:0 9px 22px rgba(28,58,48,.07) !important; }
  .inventory-list-card .stock-dense-row:hover::before { opacity:1; }
  .inventory-list-card .stock-dense-row .stock-head { grid-template-columns:44px 48px minmax(300px,1fr) 334px 58px; gap:11px; min-height:78px; padding:11px 13px; }
  .inventory-list-card .stock-dense-row .stock-thumb { width:44px; height:44px; border:1px solid #e1e8e5; border-radius:10px; background:#f1f5f3; }
  .inventory-list-card .stock-dense-row .brand-tag { width:44px; min-width:44px; height:27px; color:#3f5d53; border:1px solid #cfddd8; border-radius:8px; background:#edf3f1; font-size:9px; font-weight:700; box-shadow:none; }
  .inventory-list-card .stock-dense-row .stock-product { padding-right:10px; }
  .inventory-list-card .stock-dense-row .stock-head .name { color:#1e2c26; font-size:13.5px; font-weight:500; line-height:1.45; letter-spacing:.02px; }
  .inventory-list-card .stock-dense-row .stock-head .code { display:flex; align-items:center; gap:5px; margin-top:5px; color:#7c8b85; font-size:10px; line-height:1.3; }
  .inventory-list-card .stock-dense-row .stock-head .code > span:first-child { color:#557168; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:10px; letter-spacing:.15px; }
  .inventory-list-card .stock-dense-row .stock-code-copy { margin:0 3px 0 0; padding:0 7px; min-height:21px; color:#4d6a60; border-color:#cfddd8; background:#f3f7f5; font-size:9px; line-height:19px; }
  .inventory-list-card .stock-dense-row .stock-head .info { grid-template-columns:104px 116px 96px; gap:7px; }
  .inventory-list-card .stock-dense-row .stock-head .info .item { display:flex; min-height:48px; flex-direction:column; align-items:flex-end; justify-content:center; padding:6px 10px !important; border:1px solid #e5ebe8 !important; border-radius:9px; background:#f8faf9; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .v { color:#243b32; font-size:14px; font-weight:600; letter-spacing:-.15px; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .l { margin-top:4px; color:#89968f; font-size:8.5px; }
  .inventory-list-card .stock-expand-mark { display:flex; min-height:29px; align-items:center; justify-content:center; color:#60786f; border:1px solid #d8e2de; border-radius:9px; background:#f8faf9; font-size:9px; transition:.15s ease; }
  .inventory-list-card .stock-dense-row:hover .stock-expand-mark { color:#fff; border-color:#385f53; background:#385f53; }
  .inventory-list-card .stock-dense-row .stock-body { padding:13px 14px 14px 116px; border-top:1px solid #e5ebe8; background:#f6f9f7; }
  .inventory-list-card .stock-dense-row .size-cell { min-width:72px; padding:8px 11px; border-color:#dce5e1; border-radius:9px; background:#fff; }
  .inventory-list-card .stock-dense-row .size-cell .sz { color:#263b33; font-size:12px; font-weight:600; }
  .inventory-list-card .stock-dense-row .size-cell .qn { margin-top:2px; color:#60746c; font-size:10px; }
  .inventory-list-card .stock-dense-row .size-cell .pr { margin-top:2px; color:#929d98; font-size:9px; }
  .inventory-list-card .pager { margin:12px 14px 15px; }

  html.eye-mode .inventory-list-card { border-color:#294149 !important; background:#0f2029 !important; box-shadow:0 12px 30px rgba(0,0,0,.2) !important; }
  html.eye-mode .inventory-list-title { border-bottom-color:#233a42; background:linear-gradient(135deg,#132630,#142e36); }
  html.eye-mode .inventory-list-title h3 { color:#e4efed; }html.eye-mode .inventory-list-title .section-kicker { color:#65b2a8; }
  html.eye-mode .inventory-list-card > .toolbar { border-color:#29434b !important; background:#122832 !important; }
  html.eye-mode .inventory-list-card > .toolbar + .toolbar { background:#10242d !important; }
  html.eye-mode .inventory-list-card .stock-dense-row { border-color:#243c45 !important; background:#10212a !important; box-shadow:none; }
  html.eye-mode .inventory-list-card .stock-dense-row:hover { border-color:#3a625f !important; box-shadow:0 9px 22px rgba(0,0,0,.2) !important; }
  html.eye-mode .inventory-list-card .stock-dense-row .brand-tag { color:#8fc5bc; border-color:#31504f; background:#173039; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .name { color:#dce9e7; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .code { color:#70878a; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .code > span:first-child { color:#82aaa3; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item { border-color:#243b43 !important; background:#132730; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item .v { color:#dceae7; }
  html.eye-mode .inventory-list-card .stock-expand-mark { color:#83a39d; border-color:#2d494f; background:#142b33; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-body { border-top-color:#243b43; background:#0e1e26; }
}

/* 库存行自适应修正：数据列完整，展开键永不覆盖库龄。 */
@media(min-width:721px) {
  .stock-list-columns { grid-template-columns:minmax(180px,1fr) minmax(72px,88px) minmax(84px,100px) minmax(72px,86px) 36px; padding-left:106px; }
  .inventory-list-card .stock-dense-row .stock-head {
    grid-template-columns:42px 44px minmax(180px,1fr) minmax(250px,294px) 36px;
    gap:9px;
    min-width:0;
  }
  .inventory-list-card .stock-dense-row .stock-product { min-width:0; padding-right:4px; }
  .inventory-list-card .stock-dense-row .stock-head .info { grid-template-columns:minmax(72px,88px) minmax(84px,100px) minmax(72px,86px); gap:5px; min-width:0; }
  .inventory-list-card .stock-dense-row .stock-head .info .item { min-width:0; padding:6px 7px !important; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .v { overflow:hidden; max-width:100%; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .l { overflow:hidden; max-width:100%; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  .inventory-list-card .stock-expand-mark {
    width:31px;
    height:31px;
    min-width:31px;
    min-height:31px;
    align-self:center;
    padding:0;
    border:1px solid #cfddd8;
    border-radius:50%;
    color:#49675d;
    background:#f4f8f6;
    font:500 18px/1 Arial,sans-serif;
    cursor:pointer;
  }
  .inventory-list-card .stock-dense-row:hover .stock-expand-mark { color:#fff; border-color:#385f53; background:#385f53; }
}

@media(min-width:721px) and (max-width:1120px) {
  .inventory-list-card .stock-dense-row .stock-head { grid-template-columns:38px 40px minmax(150px,1fr) minmax(222px,258px) 32px; gap:7px; padding-left:10px; padding-right:10px; }
  .inventory-list-card .stock-dense-row .stock-thumb { width:38px; height:38px; }
  .inventory-list-card .stock-dense-row .brand-tag { width:40px; min-width:40px; }
  .inventory-list-card .stock-dense-row .stock-head .info { grid-template-columns:minmax(66px,78px) minmax(78px,92px) minmax(66px,78px); gap:4px; }
  .inventory-list-card .stock-dense-row .stock-head .name { font-size:12.5px; }
  .inventory-list-card .stock-dense-row .stock-head .code { font-size:9px; }
  .inventory-list-card .stock-expand-mark { width:29px; height:29px; min-width:29px; min-height:29px; }
  .stock-list-columns { grid-template-columns:minmax(150px,1fr) minmax(66px,78px) minmax(78px,92px) minmax(66px,78px) 32px; padding-left:94px; gap:7px; }
  .inventory-list-card .stock-dense-row .stock-body { padding-left:98px; }
}

/* ===== 利润计算器 ===== */
.profit-calc-page { display:flex; flex-direction:column; gap:15px; color:#182720; }
.profit-calc-hero {
  position:relative;
  display:flex;
  min-height:154px;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  overflow:hidden;
  padding:28px 30px;
  border:1px solid #bdd3cd;
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 22%,rgba(68,148,132,.15),transparent 28%),
    linear-gradient(135deg,#f4f9f7 0%,#eaf3f0 58%,#dcebe7 100%);
  box-shadow:0 14px 35px rgba(27,66,55,.085);
}
.profit-calc-hero::after { content:''; position:absolute; right:-50px; bottom:-105px; width:270px; height:270px; border:37px solid rgba(53,120,105,.06); border-radius:50%; }
.profit-calc-hero-copy { position:relative; z-index:1; max-width:680px; }
.profit-calc-hero-copy small,.profit-panel-head small,.profit-target-copy small { color:#47796c; font-size:9px; font-weight:800; letter-spacing:1.35px; }
.profit-calc-hero-copy h2 { margin:7px 0 6px; color:#14281f; font-size:26px; font-weight:690; letter-spacing:-.65px; }
.profit-calc-hero-copy p { margin:0; color:#6c8178; font-size:12px; }
.profit-formula { position:relative; z-index:1; display:flex; min-width:310px; flex-direction:column; gap:6px; padding:16px 18px; border:1px solid rgba(85,130,119,.25); border-radius:16px; background:rgba(255,255,255,.62); backdrop-filter:blur(8px); }
.profit-formula span { color:#698079; font-size:9px; font-weight:700; letter-spacing:.8px; }
.profit-formula b { color:#1d3c31; font-size:14px; font-weight:680; }
.profit-formula em { color:#8b9a94; font-size:10px; font-style:normal; }
.profit-calc-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr); gap:15px; }
.profit-input-panel,.profit-target-card { border-color:#dce5e1 !important; border-radius:19px !important; background:#fff !important; box-shadow:0 9px 27px rgba(29,56,47,.055) !important; }
.profit-input-panel { padding:19px !important; }
.profit-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:14px; }
.profit-panel-head h3,.profit-target-copy h3 { margin:4px 0 2px; color:#1a2b24; font-size:17px; font-weight:660; }
.profit-panel-head p,.profit-target-copy p { margin:0; color:#89968f; font-size:10px; }
.profit-panel-head button { padding:7px 10px; border:1px solid #d8e3de; border-radius:9px; color:#60776d; background:#f8faf9; font-size:10px; cursor:pointer; }
.profit-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.profit-field { display:grid; grid-template-columns:36px minmax(0,1fr) minmax(110px,145px); align-items:center; gap:10px; min-height:70px; padding:10px 11px; border:1px solid #e1e8e5; border-radius:13px; background:#fbfcfb; transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.profit-field:focus-within { transform:translateY(-1px); border-color:#8ab4a8; box-shadow:0 8px 18px rgba(52,99,86,.09); }
.profit-field-icon { display:grid; width:36px; height:36px; place-items:center; border-radius:10px; color:#397263; background:#e8f3ef; }
.profit-field.cost .profit-field-icon { color:#92702f; background:#f7f0df; }
.profit-field.freight .profit-field-icon { color:#53758c; background:#edf3f7; }
.profit-field.extra .profit-field-icon { color:#716292; background:#f2eef9; }
.profit-field-copy { min-width:0; }
.profit-field-copy b { display:block; color:#273930; font-size:11px; font-weight:650; }
.profit-field-copy small { display:block; overflow:hidden; margin-top:3px; color:#929e98; font-size:8.5px; text-overflow:ellipsis; white-space:nowrap; }
.profit-field-input { display:flex; align-items:center; gap:4px; padding:0 8px; border-left:1px solid #e0e7e4; }
.profit-field-input i { color:#82928b; font-size:12px; font-style:normal; }
.profit-field-input input { width:100%; min-width:0; height:38px; border:0; outline:0; color:#183128; background:transparent; font-size:18px; font-weight:660; text-align:right; font-variant-numeric:tabular-nums; }
.profit-field-input input::placeholder { color:#bdc6c2; font-weight:450; }
.profit-cost-strip { display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:11px; margin-top:10px; padding:12px 14px; border-radius:12px; color:#687c73; background:#f0f5f3; }
.profit-cost-strip span { font-size:10px; font-weight:700; }
.profit-cost-strip strong { color:#203b31; font-size:17px; }
.profit-cost-strip small { justify-self:end; color:#91a099; font-size:9px; }
.profit-result-panel { position:relative; overflow:hidden; padding:18px 19px !important; color:#e8f3f0; border-color:#284e46 !important; background:radial-gradient(circle at 91% 12%,rgba(88,212,187,.18),transparent 28%),linear-gradient(145deg,#102a30,#153e3e 58%,#285a50) !important; box-shadow:0 15px 35px rgba(15,49,44,.18) !important; }
.profit-result-panel.loss { border-color:#71474d !important; background:radial-gradient(circle at 91% 12%,rgba(239,116,120,.15),transparent 30%),linear-gradient(145deg,#2d2027,#442a31 60%,#5d3439) !important; }
.profit-result-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.profit-result-actions{display:flex;align-items:center;gap:8px}.profit-result-actions button{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid rgba(181,226,217,.24);border-radius:999px;color:#d8efea;background:rgba(8,34,35,.28);font-size:9px;cursor:pointer;transition:.18s ease}.profit-result-actions button:hover{transform:translateY(-1px);border-color:rgba(127,231,206,.55);background:rgba(31,91,82,.5)}
.profit-result-top span { display:flex; align-items:center; gap:7px; color:#8fc8bc; font-size:9px; font-weight:800; letter-spacing:1.15px; }
.profit-result-top span i { width:7px; height:7px; border-radius:50%; background:#65d9c2; box-shadow:0 0 0 5px rgba(101,217,194,.1); }
.profit-result-panel.loss .profit-result-top span i { background:#ee8c92; box-shadow:0 0 0 5px rgba(238,140,146,.1); }
.profit-result-top em { padding:5px 9px; border:1px solid rgba(181,226,217,.2); border-radius:999px; color:#bce0d9; background:rgba(9,31,33,.2); font-size:9px; font-style:normal; }
.profit-share-head small{display:block;margin-bottom:4px;color:#428275;font-size:9px;font-weight:800;letter-spacing:1.2px}.profit-share-preview{background:#edf3f2!important;text-align:center}.profit-share-preview img{display:block;width:min(100%,430px);margin:0 auto;border-radius:17px;box-shadow:0 16px 42px rgba(19,48,43,.18)}.profit-share-preview p{margin:12px 0 0;color:var(--text-3);font-size:11px}.modal.profit-share-modal{width:min(620px,calc(100vw - 24px));max-height:92vh}.modal.profit-share-modal .m-body{overflow:auto}html.eye-mode .profit-share-preview{background:#0d1b23!important}.profit-result-panel.loss .profit-result-actions button{border-color:rgba(255,184,190,.26);color:#ffdadd;background:rgba(72,31,38,.32)}
.profit-main-result { padding:24px 2px 20px; }
.profit-main-result small { color:#94b8b1; font-size:10px; }
.profit-main-result strong { display:block; margin:6px 0 4px; color:#69e1c9; font-size:39px; font-weight:690; letter-spacing:-1.2px; font-variant-numeric:tabular-nums; }
.profit-result-panel.loss .profit-main-result strong { color:#ff9ca2; }
.profit-main-result p { margin:0; color:#729892; font-size:9.5px; }
.profit-result-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; border:1px solid rgba(153,203,192,.16); border-radius:13px; background:rgba(5,26,29,.22); }
.profit-result-metrics > div { min-width:0; padding:11px; }
.profit-result-metrics > div + div { border-left:1px solid rgba(153,203,192,.14); }
.profit-result-metrics span,.profit-result-metrics small { display:block; overflow:hidden; color:#789e97; font-size:8.5px; text-overflow:ellipsis; white-space:nowrap; }
.profit-result-metrics b { display:block; overflow:hidden; margin:5px 0 3px; color:#e6f2ef; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.profit-margin-track { margin-top:14px; }
.profit-margin-track-line { display:flex; align-items:center; justify-content:space-between; color:#82a59e; font-size:9px; }
.profit-margin-track-line b { color:#b8d8d1; font-weight:600; }
.profit-margin-bar { height:5px; margin-top:7px; overflow:hidden; border-radius:99px; background:rgba(5,22,25,.4); }
.profit-margin-bar i { display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,#4ccbb2,#7fe7ce); transition:width .3s cubic-bezier(.22,.8,.3,1); }
.profit-result-panel.loss .profit-margin-bar i { background:linear-gradient(90deg,#d97078,#f3a0a5); }
.profit-target-card { display:grid; grid-template-columns:48px minmax(0,1fr) 180px minmax(220px,280px); align-items:center; gap:16px; padding:17px 19px !important; }
.profit-target-icon { display:grid; width:48px; height:48px; place-items:center; border-radius:13px; color:#376e60; background:#e8f2ef; }
.profit-target-input > span,.profit-target-result > span { display:block; margin-bottom:5px; color:#809089; font-size:9px; }
.profit-target-input > div { display:flex; height:42px; align-items:center; overflow:hidden; border:1px solid #d8e2de; border-radius:10px; background:#fbfcfb; }
.profit-target-input input { width:100%; min-width:0; height:100%; padding:0 9px; border:0; outline:0; color:#20372e; background:transparent; font-size:17px; font-weight:650; text-align:right; }
.profit-target-input i { padding:0 10px; color:#657a71; font-size:11px; font-style:normal; }
.profit-target-result { padding-left:17px; border-left:1px solid #dfe6e3; }
.profit-target-result strong { display:block; color:#286554; font-size:22px; letter-spacing:-.4px; }
.profit-target-result small { color:#91a099; font-size:9px; }
.profit-explain-card { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.profit-explain-card > div { display:flex; min-width:0; align-items:flex-start; gap:10px; padding:13px 14px; border:1px solid #e0e7e4; border-radius:13px; color:#577268; background:rgba(255,255,255,.72); }
.profit-explain-card > div > svg { flex:0 0 auto; margin-top:1px; }
.profit-explain-card span { min-width:0; }
.profit-explain-card b,.profit-explain-card small { display:block; }
.profit-explain-card b { color:#31483f; font-size:10px; }
.profit-explain-card small { overflow:hidden; margin-top:3px; color:#8b9993; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }

html.eye-mode .profit-calc-page { color:#dbe9e6; }
html.eye-mode .profit-calc-hero { border-color:#29474c; background:radial-gradient(circle at 88% 22%,rgba(79,206,185,.13),transparent 28%),linear-gradient(135deg,#10252d,#123139 60%,#17453f); box-shadow:0 15px 35px rgba(0,0,0,.22); }
html.eye-mode .profit-calc-hero-copy h2 { color:#e8f2ef; }
html.eye-mode .profit-calc-hero-copy p { color:#809a96; }
html.eye-mode .profit-formula { border-color:#31545a; background:rgba(8,28,34,.48); }
html.eye-mode .profit-formula b { color:#d7e9e5; }
html.eye-mode .profit-input-panel,html.eye-mode .profit-target-card { border-color:#284149 !important; background:#10222b !important; box-shadow:0 12px 30px rgba(0,0,0,.18) !important; }
html.eye-mode .profit-panel-head h3,html.eye-mode .profit-target-copy h3 { color:#dceae7; }
html.eye-mode .profit-panel-head button { color:#8bada6; border-color:#2a484f; background:#132a33; }
html.eye-mode .profit-field { border-color:#263f47; background:#122630; }
html.eye-mode .profit-field:focus-within { border-color:#518c80; }
html.eye-mode .profit-field-copy b { color:#cbdcd8; }
html.eye-mode .profit-field-input { border-left-color:#29434a; }
html.eye-mode .profit-field-input input { color:#e5f0ed; }
html.eye-mode .profit-cost-strip { color:#829b95; background:#142a32; }
html.eye-mode .profit-cost-strip strong { color:#dbe9e6; }
html.eye-mode .profit-target-input > div { border-color:#29434b; background:#132831; }
html.eye-mode .profit-target-input input { color:#dceae7; }
html.eye-mode .profit-target-result { border-left-color:#294149; }
html.eye-mode .profit-target-result strong { color:#6bd3bc; }
html.eye-mode .profit-explain-card > div { border-color:#263e46; color:#83a49d; background:#10232b; }
html.eye-mode .profit-explain-card b { color:#c9dbd7; }

@media(max-width:720px) {
  .profit-calc-page { gap:11px; padding-bottom:94px; }
  .profit-calc-hero { min-height:0; flex-direction:column; align-items:stretch; gap:15px; padding:20px 17px; border-radius:19px; }
  .profit-calc-hero-copy h2 { max-width:290px; font-size:22px; line-height:1.25; }
  .profit-calc-hero-copy p { font-size:10px; line-height:1.6; }
  .profit-formula { min-width:0; padding:13px 14px; }
  .profit-calc-grid { display:flex; flex-direction:column; gap:11px; }
  .profit-input-panel,.profit-result-panel,.profit-target-card { border-radius:17px !important; }
  .profit-input-panel { padding:15px !important; }
  .profit-fields { grid-template-columns:1fr; }
  .profit-field { grid-template-columns:36px minmax(0,1fr) 120px; }
  .profit-field-input input { font-size:16px; }
  .profit-cost-strip { grid-template-columns:auto auto; }
  .profit-cost-strip small { grid-column:1 / -1; justify-self:start; }
  .profit-main-result strong { font-size:35px; }
  .profit-result-metrics > div { padding:10px 8px; }
  .profit-result-metrics b { font-size:12px; }
  .profit-target-card { grid-template-columns:42px minmax(0,1fr); gap:12px; padding:15px !important; }
  .profit-target-icon { width:42px; height:42px; }
  .profit-target-input,.profit-target-result { grid-column:1 / -1; }
  .profit-target-result { padding:12px 0 0; border-top:1px solid #dfe6e3; border-left:0; }
  html.eye-mode .profit-target-result { border-top-color:#294149; border-left:0; }
  .profit-explain-card { grid-template-columns:1fr; }
  .profit-explain-card small { white-space:normal; line-height:1.45; }
}

/* 移动端输入稳定性：iOS 会自动放大字号小于 16px 的表单控件。 */
@media(max-width:720px) {
  html {
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
  select,
  textarea,
  .input,
  [contenteditable="true"] {
    font-size:16px !important;
    line-height:1.35;
  }
  input,
  select,
  textarea,
  button,
  [role="button"] {
    touch-action:manipulation;
  }
  input[type="number"] {
    font-variant-numeric:tabular-nums;
  }
  .m-inrow input,
  .m-inrow select,
  .m-out-workbench input,
  .m-out-workbench select,
  .m-stock-search input,
  .wallet-page input,
  .wallet-page select {
    min-height:44px;
  }
}

/* iPhone Safari 视口修正：所有一级容器按实际布局宽度收缩，禁止 100vw 叠加安全区后溢出。 */
@media(max-width:720px) {
  html,
  body {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  body { position:relative; }
  #app,
  .shell,
  .page-main,
  .content,
  #view-root {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  .topbar {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding-left:max(12px,env(safe-area-inset-left)) !important;
    padding-right:max(12px,env(safe-area-inset-right)) !important;
    box-sizing:border-box !important;
  }
  .topbar .page-title { flex:0 1 auto; min-width:0; white-space:nowrap; }
  .topbar .right { flex:0 1 auto; min-width:0; gap:7px !important; }
  .topbar .right > * { min-width:0; }

  .mobile-dashboard,
  .mobile-dashboard > *,
  .mobile-workspace-hero,
  .mobile-action-rail,
  .mobile-kpi-grid,
  .mobile-section-title {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .mobile-dashboard {
    padding-left:0 !important;
    padding-right:0 !important;
    overflow-x:hidden !important;
  }
  .mobile-workspace-hero { margin-left:0 !important; margin-right:0 !important; }
  .mobile-action-rail {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  .mobile-action {
    width:auto !important;
    min-width:0 !important;
    padding-left:3px !important;
    padding-right:3px !important;
  }
  .mobile-action > span:last-child,
  .mobile-action .ma-label {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .mobile-kpi-grid {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .mobile-kpi-grid .mobile-metric { width:auto !important; min-width:0 !important; }
  .mobile-section-title { gap:8px; }
  .mobile-section-title > div { min-width:0; }
  .mobile-section-title button { flex:0 0 auto; white-space:nowrap; }

  .bottom-nav,
  html.light-mode .bottom-nav,
  html.eye-mode .bottom-nav {
    position:fixed !important;
    left:max(12px,env(safe-area-inset-left)) !important;
    right:max(12px,env(safe-area-inset-right)) !important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    box-sizing:border-box !important;
    z-index:900 !important;
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
  }

  /* 固定 Dock 不遮住库存分页、表单提交区和长页面最后一张卡。 */
  .content {
    padding-bottom:calc(126px + env(safe-area-inset-bottom,0px)) !important;
  }

  /* 微信内置浏览器：工具栏高度变化时仍固定在当前可视窗口，而不是文档末尾。 */
  html.is-wechat .shell { min-height:100svh; }
  html.is-wechat .page-main { min-height:100svh; }
  html.is-wechat .bottom-nav,
  html.is-wechat.light-mode .bottom-nav,
  html.is-wechat.eye-mode .bottom-nav {
    bottom:calc(12px + env(safe-area-inset-bottom,0px)) !important;
  }
  html.is-wechat .content {
    padding-bottom:calc(132px + env(safe-area-inset-bottom,0px)) !important;
  }
}

/* 安卓微信库存页：大字体/显示缩放不能用 Grid 的最小内容宽度撑破页面。 */
@media(max-width:720px) {
  .m-stock-workbench {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    grid-template-columns:minmax(0,1fr) !important;
    overflow:hidden;
    box-sizing:border-box;
  }
  .m-stock-workbench > *,
  .m-stock-overview-hero,
  .m-stock-signal-grid,
  .m-stock-insight-strip,
  .m-stock-catalog-card,
  .m-stock-catalog-head,
  .m-stock-search,
  .m-stock-catalog-card .stock-filter-row,
  .m-stock-product-card {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .m-stock-overview-top,
  .m-stock-overview-main { min-width:0; gap:8px; }
  .m-stock-overview-top > span,
  .m-stock-overview-main > div { min-width:0; }
  .m-stock-overview-top > span {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-overview-top button { flex:0 0 auto; }
  .m-stock-overview-icon { flex:0 0 52px; }
  .m-stock-overview-metrics {
    width:100%;
    min-width:0;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    box-sizing:border-box;
  }
  .m-stock-overview-metrics > div {
    min-width:0;
    padding-left:8px !important;
    padding-right:8px !important;
  }
  .m-stock-overview-metrics span,
  .m-stock-overview-metrics b,
  .m-stock-overview-metrics small {
    overflow:hidden;
    max-width:100%;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-signal-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .m-stock-signal-grid > div { min-width:0; }
  .m-stock-signal-grid span,
  .m-stock-signal-grid > div > small {
    overflow:hidden;
    max-width:100%;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-insight-strip {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .m-stock-catalog-head > div { min-width:0; }
  .m-stock-catalog-head p {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-stock-catalog-head > span { flex:0 0 auto; }
  .m-stock-catalog-card .stock-filter-row > * { min-width:0; }
}

/* 这类安卓微信窄布局再收一档，保持三列信息完整而不是裁掉第三列。 */
@media(max-width:390px) {
  html.is-wechat.is-android-webview .m-stock-overview-hero { padding:15px 13px; }
  html.is-wechat.is-android-webview .m-stock-overview-metrics { padding-left:2px; padding-right:2px; }
  html.is-wechat.is-android-webview .m-stock-overview-metrics > div { padding-left:6px !important; padding-right:6px !important; }
  html.is-wechat.is-android-webview .m-stock-overview-metrics span { font-size:7.5px; }
  html.is-wechat.is-android-webview .m-stock-overview-metrics b { font-size:14px; }
  html.is-wechat.is-android-webview .m-stock-signal-grid > div { padding:12px 10px; }
  html.is-wechat.is-android-webview .m-stock-insight-strip > div { padding-left:7px; padding-right:7px; }
}

/* 截图隐私模式：一个入口统一隐藏当前页面的经营数字，不改动原始数据。 */
.privacy-toggle {
  display:inline-grid;
  width:31px;
  height:31px;
  min-width:31px;
  min-height:31px;
  padding:0 !important;
  place-items:center;
  border:1px solid #d6e2de !important;
  border-radius:10px !important;
  color:#597269 !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 5px 13px rgba(31,67,57,.06);
  cursor:pointer;
}
.privacy-toggle.active {
  color:#fff !important;
  border-color:#416d62 !important;
  background:#416d62 !important;
  box-shadow:0 7px 16px rgba(38,83,71,.18);
}
.section-head-actions {
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
}
.hero-privacy-toggle {
  position:absolute;
  z-index:4;
  top:104px;
  right:16px;
  color:#d9f6f1 !important;
  border-color:rgba(193,235,230,.23) !important;
  background:rgba(4,28,35,.26) !important;
  box-shadow:none;
}
.hero-privacy-toggle.active {
  color:#0f3731 !important;
  border-color:#91ddd2 !important;
  background:#9ce7dc !important;
}
[data-private-value] { position:relative; }
.private-inline { display:inline-block !important; min-width:1.2em; font-style:normal; }
html.privacy-hero [data-private-value="hero"],
html.privacy-flow [data-private-value="flow"],
html.privacy-snapshot [data-private-value="snapshot"] {
  color:transparent !important;
  text-shadow:none !important;
  user-select:none;
  -webkit-user-select:none;
}
html.privacy-hero [data-private-value="hero"] > *,
html.privacy-flow [data-private-value="flow"] > *,
html.privacy-snapshot [data-private-value="snapshot"] > * { color:transparent !important; }
html.privacy-hero [data-private-value="hero"]::after,
html.privacy-flow [data-private-value="flow"]::after,
html.privacy-snapshot [data-private-value="snapshot"]::after {
  content:'••••';
  position:absolute;
  inset:50% auto auto 0;
  color:currentColor;
  color:#71847e !important;
  font-size:13px;
  font-weight:800;
  line-height:1;
  letter-spacing:2px;
  transform:translateY(-50%);
}
html.privacy-hero .mobile-workspace-hero [data-private-value="hero"]::after { color:#d9efec !important; }

html.eye-mode .privacy-toggle {
  color:#81bcb5 !important;
  border-color:#2b4a52 !important;
  background:#10242d !important;
  box-shadow:none;
}
html.eye-mode .privacy-toggle.active {
  color:#071817 !important;
  border-color:#68d8cc !important;
  background:#68d8cc !important;
}
html.eye-mode.privacy-hero [data-private-value="hero"]::after,
html.eye-mode.privacy-flow [data-private-value="flow"]::after,
html.eye-mode.privacy-snapshot [data-private-value="snapshot"]::after { color:#819b9c !important; }
html.eye-mode.privacy-hero .mobile-workspace-hero [data-private-value="hero"]::after { color:#cae8e4 !important; }

@media(max-width:720px) {
  .mobile-section-title .section-head-actions > button:not(.privacy-toggle),
  .me-snapshot-head .section-head-actions > button:not(.privacy-toggle) { flex:0 0 auto; }
  .me-snapshot-head .section-head-actions { align-self:center; }
  .mobile-section-title > .section-head-actions {
    width:auto !important;
    flex:0 0 auto;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:7px !important;
  }
}

/* 2026-08-31: final mobile surface and form-hint refinements. */
@media(max-width:720px) {
  /* Extend the catalog heading across the card padding on every mobile webview. */
  .m-stock-catalog-card > .m-stock-catalog-head {
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 -12px 13px !important;
    border-radius:20px 20px 0 0 !important;
  }

  /* Hints stay secondary; entered values keep their existing contrast and weight. */
  .m-in-workbench input::placeholder,
  .m-in-workbench textarea::placeholder {
    color:#98a39e !important;
    opacity:1 !important;
    font-size:15px !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
  }
  .m-in-workbench .m-in-main-input::placeholder {
    color:#89968f !important;
    font-weight:500 !important;
  }
  html.eye-mode .m-in-workbench input::placeholder,
  html.eye-mode .m-in-workbench textarea::placeholder {
    color:#667b80 !important;
  }
}

/* 2026-08-31: desktop stock asset row — compact, balanced and action-oriented. */
.stock-detail-label {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
}
.stock-detail-label > div { min-width:0; }
.stock-detail-label b { display:block; color:#20352d; font-size:12px; font-weight:680; }
.stock-detail-label span { display:block; margin-top:2px; color:#8a9892; font-size:9px; }
.stock-detail-label em {
  flex:0 0 auto;
  padding:4px 8px;
  border:1px solid #dbe5e1;
  border-radius:999px;
  color:#62766e;
  background:#fff;
  font-size:9px;
  font-style:normal;
}

@media(min-width:721px) {
  .inventory-list-card .stock-dense-row {
    border-left:3px solid #648c7f !important;
    border-radius:16px !important;
    box-shadow:0 6px 18px rgba(25,52,43,.045) !important;
  }
  .inventory-list-card .stock-dense-row::before { display:none !important; }
  .inventory-list-card .stock-dense-row .stock-head {
    grid-template-columns:48px 46px minmax(220px,1fr) minmax(320px,390px) 38px !important;
    min-height:88px;
    gap:12px !important;
    padding:13px 15px !important;
    background:linear-gradient(110deg,#fff 0%,#fbfdfc 58%,#f6faf8 100%);
  }
  .inventory-list-card .stock-dense-row .stock-thumb {
    width:46px;
    height:46px;
    border-radius:12px;
    background:#eef4f1;
  }
  .inventory-list-card .stock-dense-row .brand-tag {
    width:46px;
    min-width:46px;
    height:29px;
    border-radius:9px;
  }
  .inventory-list-card .stock-dense-row .stock-head .name {
    overflow:hidden;
    color:#17251f;
    font-size:14px;
    font-weight:620;
    line-height:1.4;
    letter-spacing:-.05px;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .inventory-list-card .stock-dense-row .stock-head .code {
    margin-top:6px;
    color:#7c8d86;
    font-size:9.5px;
  }
  .inventory-list-card .stock-dense-row .stock-head .info {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    min-width:0;
    gap:0 !important;
    overflow:hidden;
    border:1px solid #e0e8e4;
    border-radius:12px;
    background:#f7faf8;
  }
  .inventory-list-card .stock-dense-row .stock-head .info .item {
    min-height:58px;
    padding:8px 13px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
  }
  .inventory-list-card .stock-dense-row .stock-head .info .item + .item { border-left:1px solid #e0e8e4 !important; }
  .inventory-list-card .stock-dense-row .stock-head .info .item .v {
    color:#1d332a;
    font-size:16px;
    font-weight:660;
    letter-spacing:-.25px;
  }
  .inventory-list-card .stock-dense-row .stock-head .info .item .l {
    margin-top:5px;
    color:#84938d;
    font-size:8.5px;
  }
  .inventory-list-card .stock-expand-mark {
    display:grid;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    place-items:center;
    border-radius:10px !important;
    color:#527166;
    background:#f4f8f6;
    transition:transform .2s ease,background .2s ease,border-color .2s ease;
  }
  .inventory-list-card .stock-expand-mark.open {
    transform:rotate(180deg);
    color:#fff;
    border-color:#3e6d5f;
    background:#3e6d5f;
  }
  .inventory-list-card .stock-dense-row .stock-asset-body {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(410px,auto);
    gap:14px 24px;
    align-items:start;
    padding:15px 18px 12px !important;
    border-top:1px solid #e2e9e6;
    background:#f8faf9 !important;
  }
  .stock-size-workspace,
  .stock-action-workspace { min-width:0; }
  .inventory-list-card .stock-size-workspace .size-grid {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0;
  }
  .inventory-list-card .stock-size-workspace .size-cell {
    min-width:112px;
    padding:9px 11px;
    border-radius:11px;
    text-align:left;
    background:#fff;
  }
  .inventory-list-card .stock-size-workspace .size-cell .sz { font-size:12px; font-weight:650; }
  .inventory-list-card .stock-size-workspace .size-cell .qn { font-size:10px; }
  .inventory-list-card .stock-size-workspace .size-cell .pr { font-size:8.5px; }
  .inventory-list-card .stock-action-workspace .stock-actions {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:7px;
  }
  .inventory-list-card .stock-action-workspace .stock-actions .btn {
    min-height:34px;
    padding:7px 11px;
    border-radius:9px;
    color:#405b51;
    border-color:#d4e0db;
    background:#fff;
    font-size:10.5px;
    box-shadow:none;
  }
  .inventory-list-card .stock-action-workspace .stock-actions .btn.primary {
    color:#fff;
    border-color:#294a3f;
    background:#294a3f;
  }
  .inventory-list-card .stock-action-workspace .stock-actions .btn[data-act="open-del"] {
    color:#a34d55;
    border-color:#ead5d8;
    background:#fffafa;
  }
  .inventory-list-card .stock-asset-timeline {
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    gap:9px;
    margin:0;
    padding-top:9px;
    border-top:1px dashed #dce5e1;
    color:#7d8e87;
    font-size:9.5px;
  }
  .inventory-list-card .stock-asset-timeline span { margin-right:auto; color:#87968f; font-size:9px; }
  .inventory-list-card .stock-asset-timeline b { color:#61756d; font-size:9.5px; font-weight:580; }
  .inventory-list-card .stock-asset-timeline i { width:3px; height:3px; border-radius:50%; background:#91a099; }

  html.eye-mode .inventory-list-card .stock-dense-row { border-left-color:#58a392 !important; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head { background:linear-gradient(110deg,#10232c,#112932); }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info { border-color:#29434b; background:#142a33; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item + .item { border-left-color:#29434b !important; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-head .info .item .v { color:#e0ece9; }
  html.eye-mode .inventory-list-card .stock-dense-row .stock-asset-body { border-top-color:#294149; background:#0e2028 !important; }
  html.eye-mode .stock-detail-label b { color:#dceae7; }
  html.eye-mode .stock-detail-label span { color:#71878b; }
  html.eye-mode .stock-detail-label em { color:#8eb8af; border-color:#29464d; background:#132a32; }
  html.eye-mode .inventory-list-card .stock-size-workspace .size-cell { border-color:#29434b; background:#132832; }
  html.eye-mode .inventory-list-card .stock-action-workspace .stock-actions .btn { color:#b6c9c5; border-color:#2d4950; background:#142a33; }
  html.eye-mode .inventory-list-card .stock-action-workspace .stock-actions .btn.primary { color:#071a18; border-color:#62c4b1; background:#62c4b1; }
  html.eye-mode .inventory-list-card .stock-asset-timeline { border-top-color:#294149; }
  html.eye-mode .inventory-list-card .stock-asset-timeline b { color:#91aaa5; }
}

@media(min-width:721px) and (max-width:1120px) {
  .inventory-list-card .stock-dense-row .stock-head {
    grid-template-columns:40px 40px minmax(160px,1fr) minmax(246px,284px) 34px !important;
    gap:8px !important;
    padding:11px !important;
  }
  .inventory-list-card .stock-dense-row .stock-thumb { width:40px; height:40px; }
  .inventory-list-card .stock-dense-row .brand-tag { width:40px; min-width:40px; }
  .inventory-list-card .stock-dense-row .stock-asset-body { grid-template-columns:minmax(0,1fr) minmax(300px,auto); gap:16px; }
  .inventory-list-card .stock-action-workspace .stock-actions .btn { padding:7px 9px; }
}

/* Profit calculator result cockpit: keep contrast independent from generic cards. */
.profit-calc-page .profit-result-panel.card,
html.light-mode .profit-calc-page .profit-result-panel.card,
html.eye-mode .profit-calc-page .profit-result-panel.card {
  color:#17362f !important;
  border:1px solid #b8d9d0 !important;
  background:
    radial-gradient(circle at 91% 7%,rgba(76,180,157,.13),transparent 31%),
    linear-gradient(142deg,#f6fbf9 0%,#edf7f3 57%,#e2f1ec 100%) !important;
  box-shadow:0 14px 32px rgba(35,91,76,.1),inset 0 1px rgba(255,255,255,.82) !important;
}
.profit-calc-page .profit-result-panel.card.loss,
html.light-mode .profit-calc-page .profit-result-panel.card.loss,
html.eye-mode .profit-calc-page .profit-result-panel.card.loss {
  color:#542a31 !important;
  border-color:#e9c9cd !important;
  background:
    radial-gradient(circle at 91% 7%,rgba(220,106,118,.11),transparent 32%),
    linear-gradient(142deg,#fffafa 0%,#fbeff1 58%,#f6e5e8 100%) !important;
  box-shadow:0 14px 32px rgba(116,51,61,.09),inset 0 1px rgba(255,255,255,.82) !important;
}
.profit-calc-page .profit-result-top span { color:#3f8d7b !important; }
.profit-calc-page .profit-result-top em {
  color:#42796c !important;
  border:1px solid #c6ddd7 !important;
  background:rgba(255,255,255,.68) !important;
}
.profit-calc-page .profit-result-panel.loss .profit-result-top span { color:#b65b65 !important; }
.profit-calc-page .profit-result-panel.loss .profit-result-top em { color:#a2525b !important; border-color:#eccdd1 !important; background:rgba(255,255,255,.64) !important; }
.profit-calc-page .profit-main-result small { color:#71958c !important; }
.profit-calc-page .profit-main-result strong { color:#23856f !important; text-shadow:none; }
.profit-calc-page .profit-main-result p { color:#819d96 !important; }
.profit-calc-page .profit-result-panel.loss .profit-main-result small { color:#a87a80 !important; }
.profit-calc-page .profit-result-panel.loss .profit-main-result strong { color:#d65f6b !important; text-shadow:none; }
.profit-calc-page .profit-result-panel.loss .profit-main-result p { color:#aa858a !important; }
.profit-calc-page .profit-result-metrics {
  border:1px solid rgba(118,168,156,.19) !important;
  background:rgba(255,255,255,.64) !important;
  box-shadow:inset 0 1px rgba(255,255,255,.72) !important;
}
.profit-calc-page .profit-result-panel.loss .profit-result-metrics { border-color:rgba(194,125,134,.19) !important; background:rgba(255,255,255,.6) !important; }
.profit-calc-page .profit-result-metrics span,
.profit-calc-page .profit-result-metrics small,
.profit-calc-page .profit-margin-line span { color:#78978f !important; }
.profit-calc-page .profit-result-metrics b { color:#24453c !important; }
.profit-calc-page .profit-result-panel.loss .profit-result-metrics span,
.profit-calc-page .profit-result-panel.loss .profit-result-metrics small,
.profit-calc-page .profit-result-panel.loss .profit-margin-line span { color:#a98287 !important; }
.profit-calc-page .profit-margin-line b { color:#3b8e7b !important; }
.profit-calc-page .profit-result-panel.loss .profit-margin-line b { color:#bd626c !important; }
.profit-calc-page .profit-margin-bar { background:#d5e3df !important; }

@media(max-width:720px) {
  .profit-calc-page .profit-result-panel.card { padding:18px 16px !important; border-radius:20px !important; }
  .profit-calc-page .profit-result-metrics { gap:0; padding:14px 11px !important; }
  .profit-calc-page .profit-result-metrics > div { min-width:0; padding:0 8px; }
  .profit-calc-page .profit-result-metrics > div + div { border-left:1px solid rgba(154,220,206,.12); }
  .profit-calc-page .profit-result-panel.loss .profit-result-metrics > div + div { border-left-color:rgba(255,185,191,.12); }
}

/* Compact mobile numeric calculator for profit inputs. */
.profit-number-pad { display:none; }
@media(max-width:720px) {
  html.profit-pad-open,html.profit-pad-open body,html.global-pad-open,html.global-pad-open body { overflow:hidden !important; }
  .profit-number-pad { position:fixed; z-index:500020; inset:0; display:block; visibility:hidden; opacity:0; pointer-events:none; transition:opacity .2s ease,visibility .2s ease; }
  .profit-number-pad.show { visibility:visible; opacity:1; pointer-events:auto; }
  .profit-pad-backdrop { position:absolute; inset:0; width:100%; border:0; background:rgba(24,39,34,.22); }
  .profit-pad-sheet { position:absolute; right:10px; bottom:max(10px,env(safe-area-inset-bottom)); left:10px; overflow:hidden; padding:14px; border:1px solid rgba(128,162,153,.35); border-radius:24px; background:#fafdfc; box-shadow:0 18px 42px rgba(28,55,47,.23); transform:translate3d(0,18px,0); transition:transform .18s cubic-bezier(.2,.8,.25,1); }
  .profit-number-pad.show .profit-pad-sheet { transform:translateY(0); }
  .profit-pad-head { display:grid; grid-template-columns:minmax(0,1fr) auto 34px; align-items:center; gap:10px; padding:1px 2px 12px; }
  .profit-pad-head div small,.profit-pad-head div b { display:block; }
  .profit-pad-head div small { color:#769087; font-size:8px; font-weight:800; letter-spacing:1.1px; }
  .profit-pad-head div b { margin-top:3px; color:#243a33; font-size:13px; }
  .profit-pad-head > strong { color:#246e5d; font-size:24px; font-variant-numeric:tabular-nums; letter-spacing:-.5px; }
  .profit-pad-head > button { display:grid; width:34px; height:34px; place-items:center; padding:0; border:1px solid #dbe5e1; border-radius:11px; color:#657971; background:#f5f8f7; font-size:20px; }
  .profit-pad-keys { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
  .profit-pad-keys button { height:45px; padding:0; border:1px solid #dce5e2; border-radius:13px; color:#243b33; background:#fff; box-shadow:0 3px 8px rgba(31,60,51,.04); font-size:18px; font-weight:630; font-variant-numeric:tabular-nums; -webkit-tap-highlight-color:transparent; }
  .profit-pad-keys button:active { transform:scale(.97); border-color:#92baaf; background:#edf6f3; }
  .profit-pad-keys button:disabled { color:#c4ceca; border-color:#e8eeeb; background:#f5f7f6; box-shadow:none; }
  .profit-pad-keys button.muted { color:#687d75; background:#f1f5f3; font-size:13px; }
  .profit-pad-keys button.done { color:#fff; border-color:#347d6b; background:linear-gradient(135deg,#286b5b,#3d907c); font-size:14px; }
  html.eye-mode .profit-pad-sheet { border-color:#29464d; background:rgba(13,32,39,.98); box-shadow:0 24px 60px rgba(0,0,0,.42); }
  html.eye-mode .profit-pad-head div b,html.eye-mode .profit-pad-head > strong { color:#dceae6; }
  html.eye-mode .profit-pad-head > button,html.eye-mode .profit-pad-keys button { color:#dce9e6; border-color:#29454c; background:#142b33; }
  html.eye-mode .profit-pad-keys button.muted { color:#9bb1ac; background:#11262e; }
}
/* 入库扣款方式：与资金账期中心联动 */
.in-payment-method{display:grid;grid-template-columns:minmax(230px,1fr) minmax(230px,340px) auto;gap:12px;align-items:center;margin:14px 0;padding:14px 16px;border:1px solid #d9e5e3;border-radius:16px;background:linear-gradient(135deg,#f7fbfa,#f4f7fb)}
.in-payment-copy{display:flex;gap:11px;align-items:center;min-width:0}.in-payment-copy>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#256b62;background:#e4f3ef}.in-payment-copy b{display:block;font-size:14px;color:var(--text)}.in-payment-copy b em{font-style:normal;font-size:10px;font-weight:600;color:#54827b;margin-left:5px;padding:2px 6px;border-radius:999px;background:#e8f3f0}.in-payment-copy small{display:block;margin-top:3px;color:var(--text-3);white-space:normal}.in-payment-method select{min-width:0}
.credit-record-remove{border:0;background:transparent;color:var(--text-3);font-size:12px;cursor:pointer;padding:6px 8px;border-radius:8px}.credit-record-remove:hover{color:#b74755;background:#fff0f2}
@media(max-width:700px){.in-payment-method{grid-template-columns:1fr auto;padding:13px;margin:12px 0}.in-payment-copy{grid-column:1/-1}.in-payment-method select{font-size:16px}.in-payment-method .btn{white-space:nowrap}.credit-record{grid-template-columns:auto 1fr auto}.credit-record-remove{grid-column:2/-1;justify-self:end}}
@media(max-width:700px){.profit-result-actions{gap:5px}.profit-result-actions button{padding:7px 9px;font-size:10px}.profit-result-actions button svg{display:none}.profit-share-preview img{width:100%}.modal.profit-share-modal .m-foot{display:grid;grid-template-columns:1fr 1fr}.modal.profit-share-modal .m-foot>[data-close]{display:none}.modal.profit-share-modal .m-foot .btn{justify-content:center}}
html.eye-mode .in-payment-method{border-color:#29434c;background:linear-gradient(135deg,rgba(20,42,49,.88),rgba(16,33,43,.9))}html.eye-mode .in-payment-copy>span{color:#72dfd2;background:#173b3d}html.eye-mode .in-payment-copy b em{color:#7bd7cd;background:#173638}html.eye-mode .credit-record-remove:hover{color:#ff9cac;background:#2e1c26}

/* Mobile receiving flow: keep the three steps inside one continuous workspace. */
@media(max-width:720px){
  .m-in-workbench .m-in-form-card{
    position:relative;
    overflow:hidden!important;
    padding:0 0 14px!important;
    border:1px solid #dbe6e1!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 14px 34px rgba(30,55,46,.075)!important;
  }
  .m-in-workbench .m-in-form-head{
    padding:15px 15px 13px!important;
    border-bottom:1px solid #e5ece8!important;
    background:linear-gradient(135deg,#f4f8f6 0%,#eef5f2 100%)!important;
  }
  .m-in-workbench .m-in-product-block{
    margin:0!important;
    padding:15px 14px 12px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  html.light-mode .m-in-workbench .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-size-title,
  .m-in-workbench .m-in-review-head{
    position:relative;
    align-items:center!important;
    margin:0 14px 10px!important;
    padding:16px 0 0 30px!important;
    width:auto!important;
    border-top:1px solid #e4ebe7!important;
  }
  .m-in-workbench .m-in-size-title::before,
  .m-in-workbench .m-in-review-head::before{
    content:'';
    position:absolute;
    top:19px;
    left:4px;
    width:9px;
    height:9px;
    border-radius:50%;
    background:#538f7e;
    box-shadow:0 0 0 5px #e9f2ef;
  }
  .m-in-workbench .m-in-size-title::after,
  .m-in-workbench .m-in-review-head::after{
    content:'';
    position:absolute;
    top:31px;
    bottom:-12px;
    left:8px;
    width:1px;
    background:#d9e7e2;
  }
  .m-in-workbench .m-in-size-title b,
  .m-in-workbench .m-in-review-head b{font-size:14px!important;letter-spacing:-.1px}
  .m-in-workbench .m-inrow{
    margin:0 13px 8px!important;
    padding:11px!important;
    width:calc(100% - 26px)!important;
    border:1px solid #e0e8e4!important;
    border-left:2px solid #6a998b!important;
    border-radius:14px!important;
    background:#f9fbfa!important;
    box-shadow:none!important;
  }
  html.light-mode .m-in-workbench .m-in-add-row,
  html.eye-mode .m-in-workbench .m-in-add-row{
    min-height:40px!important;
    margin:2px 13px 11px!important;
    border-color:#cbd9d3!important;
    background:#f7faf8!important;
  }
  .m-in-workbench .m-in-review-head{margin-top:0!important}
  .m-in-workbench .m-in-review-head::after{display:none}
  html.light-mode .m-in-workbench .m-in-review-summary,
  html.eye-mode .m-in-workbench .m-in-review-summary{
    margin:0 13px 9px!important;
    padding:12px 8px!important;
    width:calc(100% - 26px)!important;
    border-color:#e0e9e5!important;
    background:#f2f7f4!important;
  }
  .m-in-workbench .in-payment-method{margin:9px 13px!important;background:#f7faf9}
  .m-in-workbench .m-submit{margin:0 13px!important;width:calc(100% - 26px)!important}

  html.eye-mode .m-in-workbench .m-in-form-card{
    border-color:#263f49!important;
    background:#0f202a!important;
    box-shadow:0 18px 42px rgba(0,0,0,.25)!important;
  }
  html.eye-mode .m-in-workbench .m-in-form-head{border-bottom-color:#29414a!important;background:linear-gradient(135deg,#142b35,#11252f)!important}
  html.eye-mode .m-in-workbench .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-review-head{border-top-color:#29414a!important}
  html.eye-mode .m-in-workbench .m-in-size-title::before,
  html.eye-mode .m-in-workbench .m-in-review-head::before{background:#68c5b8;box-shadow:0 0 0 5px #17343b}
  html.eye-mode .m-in-workbench .m-in-size-title::after{background:#294750}
  html.eye-mode .m-in-workbench .m-inrow{border-color:#29434d!important;border-left-color:#67b9ad!important;background:#132832!important}
  html.eye-mode .m-in-workbench .m-in-add-row{border-color:#31505b!important;background:#112731!important}
  html.eye-mode .m-in-workbench .m-in-review-summary{border-color:#29434c!important;background:#142b33!important}
  html.eye-mode .m-in-workbench .in-payment-method{background:#122831!important}
}

/* 最终层级兜底：库存筛选展开时必须覆盖品牌栏与商品列表。 */
@media(min-width:721px){
  .inventory-list-card{position:relative!important;overflow:visible!important;isolation:auto!important}
  .inventory-list-card>.inventory-filter-toolbar{position:relative!important;z-index:100500!important;overflow:visible!important}
  .inventory-list-card>.inventory-brand-toolbar{position:relative!important;z-index:1!important}
  .inventory-filter-toolbar .stock-filter-picker.open{z-index:100510!important}
  .inventory-filter-toolbar .stock-filter-picker-popover{z-index:100520!important}
}

/* ===== 年度资金趋势与私人专享登录入口 ===== */
.credit-trend-tools{display:flex;align-items:flex-end;gap:18px}.credit-trend-tools>label{display:grid;gap:4px}.credit-trend-tools>label>span{color:#879891;font-size:8px;font-weight:700;letter-spacing:.5px}.credit-trend-tools select{min-width:112px;padding:8px 28px 8px 10px;border:1px solid #d9e4e0;border-radius:10px;color:#294b42;background:#f8fbfa;font-size:11px;font-weight:750;cursor:pointer}.credit-trend-column>span{font-variant-numeric:tabular-nums}.credit-trend-chart .credit-trend-column>span:not(:empty){color:#657d75;font-weight:700}
html.eye-mode .credit-trend-tools select{color:#dce9e5;border-color:#29454b;background:#10232b}

.login-exclusive{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin-top:22px;padding:10px 15px 10px 10px;border:1px solid rgba(196,181,125,.28);border-radius:14px;background:linear-gradient(120deg,rgba(196,181,125,.10),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}.login-exclusive>span{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(221,205,145,.35);border-radius:11px;color:#e0d39f;background:rgba(15,24,36,.5);font-family:Georgia,serif;font-size:20px}.login-exclusive b,.login-exclusive small{display:block}.login-exclusive b{color:#f7f1db;font-size:12px;letter-spacing:.4px}.login-exclusive small{margin-top:4px;color:#9eaab7;font-size:9px}.login-landing{background:radial-gradient(circle at 14% 10%,rgba(67,121,113,.22),transparent 30%),radial-gradient(circle at 84% 90%,rgba(180,152,84,.10),transparent 28%),#071019}.login-layout{border-color:#33444b;background:#0c1720;box-shadow:0 36px 110px rgba(0,0,0,.52),0 0 0 1px rgba(208,191,130,.05)}.login-intro{background:radial-gradient(circle at 80% 12%,rgba(87,153,140,.18),transparent 26%),radial-gradient(circle at 62% 58%,rgba(172,143,82,.10),transparent 38%),linear-gradient(135deg,#07131c 0%,#102b30 56%,#244d45 100%)}.login-intro::before{border-color:rgba(217,205,157,.13);box-shadow:0 0 0 54px rgba(255,255,255,.025),0 0 0 112px rgba(103,173,158,.04)}.login-panel{background:linear-gradient(180deg,#121e27 0%,#0b151e 100%);border-left-color:rgba(216,200,143,.10)}.login-brand em{color:#d9cca0;border-color:rgba(218,203,148,.25);background:rgba(218,203,148,.06)}.login-brand-mark,.login-cap-icon{color:#8fd0c2}.login-eyebrow{color:#c8b97f}.login-eyebrow i,.login-status i{background:#70d3bf;box-shadow:0 0 0 4px rgba(112,211,191,.11)}.login-stock-ticket{border-color:rgba(210,193,130,.42);background:linear-gradient(145deg,rgba(58,65,49,.96),rgba(17,35,39,.96))}.login-stock-ticket strong{color:#e0d095}.login-stock-ticket span{color:#c9cfb0}.login-stock-ticket i{background:linear-gradient(90deg,#d8c47e,transparent)}.login-stage-product{border-color:rgba(112,211,191,.42);background:linear-gradient(145deg,rgba(28,77,72,.98),rgba(15,38,45,.98) 58%,rgba(70,64,43,.96) 100%)}.login-stage-chip{border-left-color:#d5c078}.login-stage-chip b{color:#7cd3c1}.login-capabilities>div{border-color:rgba(212,201,157,.13);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(202,184,116,.025))}.login-panel .login-card .login-submit{border-color:#7bc6b7!important;background:linear-gradient(135deg,#397f73 0%,#326b67 58%,#75683f 100%)!important;box-shadow:0 12px 28px rgba(35,103,91,.26)}.login-panel .login-card .login-submit:hover{background:linear-gradient(135deg,#468f82 0%,#3d7c77 58%,#877849 100%)!important}.login-tabs button.active{background:linear-gradient(135deg,#377b70,#526d5f);box-shadow:0 4px 14px rgba(41,105,93,.28)}.login-panel .login-card .form-item input:focus{border-color:#68b8aa!important;box-shadow:0 0 0 3px rgba(104,184,170,.15)!important}.login-panel .login-tip{border-color:#2d4647;background:rgba(69,132,119,.06)}

@media(max-width:720px){.credit-trend .credit-section-head{display:grid;gap:13px}.credit-trend-tools{width:100%;align-items:end;justify-content:space-between}.credit-trend-tools .credit-trend-legend{flex-wrap:wrap}.credit-trend-tools select{min-width:104px;font-size:16px}.login-exclusive{margin-top:14px;padding:8px 12px 8px 8px}.login-exclusive>span{width:36px;height:36px;font-size:17px}.login-exclusive small{max-width:230px}.login-intro{min-height:310px}.login-intro-main{padding-top:30px}}

/* Mobile/WebView receiving width guard: iOS Safari and Android WeChat may enlarge text
   or retain a wider layout viewport. Every receiving block must shrink to the visual viewport. */
@media(max-width:720px){
  html.is-wechat,
  html.is-ios-webview,
  html.is-android-webview{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }
  .m-in,
  .m-in-workbench,
  .m-in-workbench > *,
  .m-in-command-hero,
  .m-in-workbench .m-in-form-card,
  .m-in-workbench .m-in-product-block,
  .m-in-workbench .form-grid,
  .m-in-workbench .full,
  .m-in-workbench .in-code-combobox,
  .m-in-workbench .m-in-size-title,
  .m-in-workbench .m-inrow,
  .m-in-workbench .m-in-review-head,
  .m-in-workbench .m-in-review-summary,
  .m-in-workbench .in-payment-method{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .m-in-workbench{
    width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow-x:hidden!important;
  }
  .m-in-command-hero,
  .m-in-workbench .m-in-form-card{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .m-in-command-top > span:last-child{
    min-width:0;
    max-width:42%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-in-command-main > div:first-child{min-width:0}
  .m-in-command-main h2,
  .m-in-command-main > div > span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-in-step-rail{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    padding:9px!important;
  }
  .m-in-step-rail > i{display:none!important}
  .m-in-step-rail > div{
    min-width:0;
    justify-content:center;
    gap:4px!important;
  }
  .m-in-step-rail span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-in-workbench .m-in-form-head{
    width:100%!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    padding-right:13px!important;
  }
  .m-in-workbench .m-in-form-head > div{min-width:0}
  .m-in-workbench .m-in-form-head h3,
  .m-in-workbench .m-in-form-head p{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .m-in-workbench .m-in-form-head em{display:none!important}
  .m-in-workbench .input,
  .m-in-workbench input,
  .m-in-workbench select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:16px!important;
    box-sizing:border-box!important;
  }
  .m-in-workbench .m-in-product-photo{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    box-sizing:border-box!important;
  }
  .m-in-product-photo .in-product-photo-copy,
  .m-in-product-photo .in-product-photo-actions{min-width:0!important}
  .m-in-product-photo .in-product-photo-copy b,
  .m-in-product-photo .in-product-photo-copy span{
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .m-in-product-photo .in-product-photo-copy span{
    display:-webkit-box!important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
  }
  .m-in-workbench .m-inrow-grid{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .m-in-workbench .m-inrow-foot{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  .m-in-workbench .m-inrow-foot > *{min-width:0!important;max-width:100%!important}
  .m-in-workbench .m-in-size-title > div,
  .m-in-workbench .m-in-review-head > div{min-width:0!important}
}

@media(max-width:380px){
  .m-in-command-hero{padding-left:13px!important;padding-right:13px!important}
  .m-in-command-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
  .m-in-step-rail span{font-size:8px!important}
  .m-in-workbench .m-in-product-photo{grid-template-columns:42px minmax(0,1fr) auto!important;gap:7px!important;padding:8px!important}
  .m-in-workbench .m-in-product-photo .product-photo-preview{width:42px;height:42px}
  .m-in-workbench .m-in-product-photo .btn{padding-left:7px;padding-right:7px}
}

/* Receiving flow v2: one compact process surface instead of three detached cards. */
@media(max-width:720px){
  .m-in-workbench{gap:0!important}
  .m-in-command-hero{
    min-height:158px!important;
    padding:14px 15px 12px!important;
    border-radius:21px 21px 14px 14px!important;
    box-shadow:0 8px 22px rgba(29,65,58,.07)!important;
  }
  .m-in-command-main{margin-top:13px!important}
  .m-in-command-main h2{font-size:19px!important}
  .m-in-command-main > div > span{margin-top:4px!important}
  .m-in-command-icon{width:42px!important;height:42px!important;flex-basis:42px!important}
  .m-in-step-rail{margin-top:14px!important;padding:8px 9px!important}

  .m-in-workbench .m-in-form-card{
    margin-top:9px!important;
    padding-bottom:12px!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,#fff 0%,#fbfcfb 100%)!important;
    box-shadow:0 9px 24px rgba(32,57,49,.055)!important;
  }
  .m-in-workbench .m-in-form-head{
    min-height:0!important;
    padding:12px 14px 10px!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:9px!important;
    border-radius:18px 18px 0 0!important;
    background:#f3f7f5!important;
  }
  .m-in-workbench .m-in-form-icon{
    width:36px!important;
    height:36px!important;
    flex-basis:36px!important;
    border-radius:11px!important;
    box-shadow:none!important;
  }
  .m-in-workbench .m-in-form-head small{margin-bottom:1px!important}
  .m-in-workbench .m-in-form-head h3{font-size:14px!important}
  .m-in-workbench .m-in-form-head p{margin-top:2px!important}
  .m-in-workbench .m-in-product-block{padding:12px 13px 8px!important}
  html.light-mode .m-in-workbench .m-in-product-block .form-grid,
  html.eye-mode .m-in-workbench .m-in-product-block .form-grid{gap:9px!important}

  html.light-mode .m-in-workbench .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-size-title,
  .m-in-workbench .m-in-review-head{
    min-height:44px!important;
    margin:0 13px 8px!important;
    padding:9px 9px 9px 35px!important;
    border:0!important;
    border-radius:12px!important;
    background:#eef5f2!important;
  }
  .m-in-workbench .m-in-size-title::before,
  .m-in-workbench .m-in-review-head::before{
    top:50%!important;
    left:13px!important;
    width:8px!important;
    height:8px!important;
    transform:translateY(-50%);
    box-shadow:0 0 0 4px #dcebe5!important;
  }
  .m-in-workbench .m-in-size-title::after,
  .m-in-workbench .m-in-review-head::after{display:none!important}
  .m-in-workbench .m-in-size-title small,
  .m-in-workbench .m-in-review-head small{font-size:6px!important;letter-spacing:.8px!important}
  .m-in-workbench .m-in-size-title b,
  .m-in-workbench .m-in-review-head b{font-size:13px!important}
  .m-in-workbench .m-inrow{
    margin-bottom:7px!important;
    border-left-width:1px!important;
    background:#fff!important;
  }
  html.light-mode .m-in-workbench .m-in-add-row,
  html.eye-mode .m-in-workbench .m-in-add-row{
    min-height:38px!important;
    margin-bottom:9px!important;
    background:#f7faf8!important;
  }
  html.light-mode .m-in-workbench .m-in-review-summary,
  html.eye-mode .m-in-workbench .m-in-review-summary{
    margin-bottom:7px!important;
    padding:10px 6px!important;
    border:0!important;
    background:#f2f6f4!important;
  }
  .m-in-workbench .in-payment-method{margin-top:7px!important;margin-bottom:8px!important;padding:10px 11px!important}

  html.eye-mode .m-in-workbench .m-in-form-card{background:linear-gradient(180deg,#0f202a,#10232c)!important}
  html.eye-mode .m-in-workbench .m-in-form-head{background:#142a33!important}
  html.eye-mode .m-in-workbench .m-in-size-title,
  html.eye-mode .m-in-workbench .m-in-review-head{background:#163038!important}
  html.eye-mode .m-in-workbench .m-in-size-title::before,
  html.eye-mode .m-in-workbench .m-in-review-head::before{box-shadow:0 0 0 4px #1e4548!important}
  html.eye-mode .m-in-workbench .m-inrow{background:#132832!important}
}

/* iOS owns a native home-indicator safe area. Do not add the Android/WebView
   extra lift on top of it, otherwise the floating dock sits visibly too high. */
@media(max-width:720px){
  html.is-ios-webview .bottom-nav,
  html.is-ios-webview.light-mode .bottom-nav,
  html.is-ios-webview.eye-mode .bottom-nav,
  html.is-ios-webview.is-wechat .bottom-nav{
    bottom:calc(env(safe-area-inset-bottom,0px) + 1px)!important;
  }
}

/* ===== 资金账期 2.0：账户洞察与 12 个月资金趋势 ===== */
.credit-trend.card{overflow:hidden;padding:22px;border:1px solid #d7e3df;background:rgba(255,255,255,.86);box-shadow:0 10px 27px rgba(30,60,52,.05)}
.credit-trend-legend{display:flex;align-items:center;gap:14px;color:#728780;font-size:10px}.credit-trend-legend span{display:flex;align-items:center;gap:5px}.credit-trend-legend i{width:8px;height:8px;border-radius:3px;background:#477e72}.credit-trend-legend i.collection{background:#b6a06f}
.credit-trend-chart{display:grid;grid-template-columns:repeat(12,minmax(28px,1fr));align-items:end;gap:10px;height:190px;margin-top:22px;padding:14px 10px 0;border-bottom:1px solid #dfe8e4;background:linear-gradient(180deg,rgba(242,247,245,.2),rgba(239,245,242,.65))}
.credit-trend-column{display:grid;grid-template-rows:1fr 22px;align-items:end;height:100%;min-width:0}.credit-trend-bars{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:100%}.credit-trend-bars i{display:block;width:min(13px,38%);min-height:0;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#72ae9d,#3e796a);transition:height .45s ease}.credit-trend-bars i.collection{background:linear-gradient(180deg,#dfc98d,#ac8b4f)}.credit-trend-column>span{align-self:center;color:#879891;font-size:9px;text-align:center;white-space:nowrap}
.credit-trend-foot{display:flex;justify-content:flex-end;gap:24px;padding:13px 4px 0;color:#7d9089;font-size:10px}.credit-trend-foot b{margin-left:5px;color:#294d43;font-size:12px}
.credit-account-month{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.credit-account-month span{display:grid;gap:3px;padding:9px;border:1px solid #e1e8e5;border-radius:10px;background:#f7faf9}.credit-account-month small{color:#879891;font-size:9px}.credit-account-month b{overflow:hidden;color:#294b42;font-size:12px;font-variant-numeric:tabular-nums;text-overflow:ellipsis}
.credit-account-actions{grid-template-columns:1fr 1fr 1fr}.credit-account-actions button.detail{color:#5c5c85;border-color:#deddec;background:#f7f6fb}
.modal.credit-detail-modal{width:min(920px,calc(100vw - 40px));max-height:92vh}.credit-detail-head>div>small{display:block;margin-bottom:3px;color:#568276;font-size:8px;font-weight:800;letter-spacing:1.2px}.credit-detail-head h3{margin:0}.credit-detail-body{display:grid;gap:16px;min-width:0;width:100%;box-sizing:border-box}
.credit-detail-filter{display:flex;align-items:center;justify-content:space-between;gap:12px}.credit-detail-filter label{display:grid;gap:4px}.credit-detail-filter label span{color:#7e918a;font-size:10px}.credit-detail-month{min-width:190px;padding:10px 36px 10px 12px;border:1px solid #d9e4e0;border-radius:11px;color:#24453b;background:#f9fbfa;font-size:13px;font-weight:700;cursor:pointer}.credit-detail-type{padding:6px 9px;border-radius:999px;color:#4f756a;background:#eaf3f0;font-size:10px}
.credit-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #dce5e2;border-radius:16px;background:#f8faf9}.credit-detail-kpis article{display:grid;gap:5px;min-width:0;padding:15px}.credit-detail-kpis article+article{border-left:1px solid #e1e8e5}.credit-detail-kpis span{color:#81928c;font-size:10px}.credit-detail-kpis b{overflow:hidden;color:#284a40;font-size:18px;font-variant-numeric:tabular-nums;text-overflow:ellipsis}.credit-detail-kpis small{color:#98a49f;font-size:9px}.credit-detail-kpis .debt b{color:#75633d}
.credit-detail-trend,.credit-detail-ledger{padding:16px;border:1px solid #dfe7e4;border-radius:16px;background:#fbfcfb}.credit-detail-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.credit-detail-section-head small{color:#62857c;font-size:8px;font-weight:800;letter-spacing:1px}.credit-detail-section-head h4{margin:3px 0 0;font-size:14px}.credit-detail-section-head>span{color:#879891;font-size:10px}.credit-trend-chart.compact{height:145px;margin-top:12px;padding-top:8px;gap:6px}
.credit-detail-record{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 0;border-top:1px solid #e5ebe9}.credit-detail-record:first-child{margin-top:9px}.credit-detail-record>span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#9a7135;background:#fbf2e2}.credit-detail-record>span.repayment{color:#347967;background:#e8f4f0}.credit-detail-record b,.credit-detail-record small{display:block}.credit-detail-record b{font-size:11px}.credit-detail-record small{margin-top:2px;color:#8b9a95;font-size:9px}.credit-detail-record>strong{color:#a87631;font-size:12px}.credit-detail-record>strong.repayment{color:#3b806e}.credit-detail-empty{padding:25px 10px;color:#94a39e;font-size:11px;text-align:center}

html.eye-mode .credit-trend.card,html.eye-mode .credit-detail-trend,html.eye-mode .credit-detail-ledger{border-color:#29454b;background:#12262f;box-shadow:none}html.eye-mode .credit-account-month span,html.eye-mode .credit-detail-kpis{border-color:#29444b;background:#10232b}html.eye-mode .credit-account-month b,html.eye-mode .credit-detail-kpis b,html.eye-mode .credit-trend-foot b{color:#dce9e5}html.eye-mode .credit-detail-kpis article+article,html.eye-mode .credit-detail-record{border-color:#294149}html.eye-mode .credit-detail-month{color:#dce9e5;border-color:#29454b;background:#10232b}html.eye-mode .credit-detail-type{color:#78c4b8;background:#173638}html.eye-mode .credit-trend-chart{border-color:#294149;background:linear-gradient(180deg,rgba(19,42,50,.2),rgba(16,36,44,.8))}

@media(max-width:720px){
  .credit-trend.card{padding:17px 14px}.credit-trend .credit-section-head{align-items:flex-start}.credit-trend-legend{gap:8px}.credit-trend-chart{grid-template-columns:repeat(12,24px);gap:7px;height:165px;overflow:visible;padding-right:6px;padding-left:6px}.credit-trend.card{overflow-x:auto}.credit-trend-foot{justify-content:space-between;gap:8px;min-width:365px}.credit-account-actions{grid-template-columns:1fr 1fr}.credit-account-actions button.detail{grid-column:1/-1}.credit-account-month{margin-top:10px}
  .modal.credit-detail-modal{width:calc(100vw - 20px);max-height:90vh}.modal .credit-detail-body{min-width:0}.credit-detail-kpis{grid-template-columns:1fr 1fr}.credit-detail-kpis article:nth-child(3){border-left:0;border-top:1px solid #e1e8e5}.credit-detail-kpis article:nth-child(4){border-top:1px solid #e1e8e5}.credit-detail-kpis b{font-size:16px}.credit-detail-month{min-width:150px;font-size:16px}.credit-detail-trend,.credit-detail-ledger{padding:13px}.credit-detail-trend{overflow-x:auto}.credit-trend-chart.compact{min-width:390px;height:135px}.credit-detail-record{grid-template-columns:30px minmax(0,1fr) auto}.credit-detail-record small{line-height:1.45}
  html.eye-mode .credit-detail-kpis article:nth-child(3),html.eye-mode .credit-detail-kpis article:nth-child(4){border-top-color:#294149}
}
/* 库存批次成本修正：信息密度高但保留清晰的金额对照关系。 */
.stock-cost-editor{display:grid;gap:14px}
.stock-cost-note{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid #dde4ee;border-radius:14px;background:#f7f9fc;color:#26354b}
.stock-cost-note span{font-size:12px;color:#71827e}
.stock-cost-list{display:grid;gap:9px}
.stock-cost-row{display:grid;grid-template-columns:minmax(82px,.7fr) minmax(150px,1.35fr) minmax(86px,.75fr) 24px minmax(135px,1fr);gap:10px;align-items:center;padding:12px 14px;border:1px solid #dce4e7;border-radius:14px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.stock-cost-row:focus-within{border-color:#76a99c;box-shadow:0 8px 24px rgba(29,78,66,.09);transform:translateY(-1px)}
.stock-cost-size,.stock-cost-meta,.stock-cost-old,.stock-cost-input{display:flex;flex-direction:column;gap:3px;min-width:0}
.stock-cost-size b{font-size:16px;color:#10231f}.stock-cost-size small,.stock-cost-meta small,.stock-cost-old small,.stock-cost-input small{font-size:11px;color:#84928f}
.stock-cost-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#47635c}
.stock-cost-old b{font-size:15px;color:#60706c}.stock-cost-arrow{text-align:center;color:#97a6a2}
.stock-cost-input{position:relative}.stock-cost-input i{position:absolute;left:11px;bottom:10px;font-style:normal;color:#587069}.stock-cost-input .input{padding-left:27px;font-weight:750;color:#12372e}
.stock-cost-summary{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid #d9e1ec;border-radius:14px;background:#f3f6fa;color:#617086}
.stock-cost-summary b{font-size:20px;color:#17243a}
body.theme-dark .stock-cost-note{border-color:#284941;background:linear-gradient(135deg,#10231f,#111d29);color:#e5f5f1}
body.theme-dark .stock-cost-row{border-color:#253b49;background:#101d2a}.theme-dark .stock-cost-size b{color:#edf8f5}.theme-dark .stock-cost-meta b{color:#9fc8bd}.theme-dark .stock-cost-old b{color:#b1c1bd}
@media(max-width:700px){
  .stock-cost-row{grid-template-columns:58px 1fr 20px minmax(108px,1fr);gap:8px;padding:11px}
  .stock-cost-meta{grid-column:1/3;grid-row:2}.stock-cost-old{grid-column:2;grid-row:1}.stock-cost-arrow{grid-column:3;grid-row:1}.stock-cost-input{grid-column:4;grid-row:1/3}
  .stock-cost-note span{line-height:1.55}.stock-cost-summary{position:relative;bottom:auto;z-index:2;box-shadow:none}
}

/* ===== Private workspace identity: restrained, bespoke and consistent ===== */
@media(min-width:721px){
  .sidebar .brand{
    position:relative;
    min-height:138px;
    padding:20px 20px 17px;
    overflow:hidden;
    background:linear-gradient(148deg,#f9fbfc 0%,#f5f8f8 58%,#eef6f3 100%);
  }
  .sidebar .brand::after{
    content:"";
    position:absolute;
    right:-40px;
    bottom:-58px;
    width:122px;
    height:122px;
    border:18px solid rgba(57,113,99,.055);
    border-radius:50%;
    pointer-events:none;
  }
  .sidebar .brand-mark{position:relative;z-index:1;margin-bottom:11px}
  .sidebar .brand-mark .logo{
    width:30px;height:30px;border:1px solid #cdded9;border-radius:10px;
    color:#295d50;background:#fff;box-shadow:0 5px 14px rgba(34,70,61,.07)
  }
  .sidebar .brand-mark em{
    padding:4px 8px;border:1px solid #d8e4e0;border-radius:999px;
    color:#52766d;background:rgba(255,255,255,.78);font-size:7px;letter-spacing:.75px
  }
  .sidebar .brand-kicker{
    position:relative;z-index:1;display:flex;align-items:center;gap:6px;
    margin-bottom:4px;color:#789087;font-size:7px;font-weight:800;letter-spacing:1.15px
  }
  .sidebar .brand-kicker i{width:12px;height:2px;border-radius:2px;background:#55a692;box-shadow:0 0 8px rgba(72,167,143,.35)}
  .sidebar .brand h2{position:relative;z-index:1;margin:0 0 2px;color:#142d27;font-size:15px;font-weight:760;letter-spacing:.15px}
  .sidebar .brand .brand-edition{position:relative;z-index:1;display:block;color:#335e53;font-size:9px;font-weight:680;letter-spacing:.2px}
  .sidebar .brand>span{position:relative;z-index:1;display:block;margin-top:5px;color:#91a19c;font-size:6.5px;letter-spacing:.75px}

  .topbar-control-deck{gap:8px!important}
  .topbar .topbar-brief{
    display:flex;align-items:center;gap:8px;height:38px;padding:5px 10px 5px 7px!important;
    border:1px solid #dce6e3!important;border-radius:12px!important;
    color:#506a63!important;background:#f8faf9!important;box-shadow:none!important;cursor:pointer
  }
  .topbar-brief-icon{display:grid;width:26px;height:26px;place-items:center;border-radius:8px;color:#356e60;background:#eaf4f1}
  .topbar-brief>span:last-child{display:grid;gap:1px;text-align:left}
  .topbar-brief small,.license-chip small,.account-copy small{font-size:6.5px;font-weight:800;line-height:1;letter-spacing:.85px}
  .topbar-brief small{color:#92a09c}
  .topbar-brief b{display:flex;align-items:center;gap:6px;color:#38544c;font-size:9px;font-weight:700;white-space:nowrap}
  .topbar-brief b i{width:1px;height:8px;background:#d4dfdc}
  .topbar .license-chip{
    display:flex;align-items:center;gap:7px;height:38px;padding:5px 10px!important;
    border:1px solid #e4ddcc!important;border-radius:12px!important;color:#6c6148!important;
    background:linear-gradient(145deg,#fbfaf6,#f5f1e8)!important;box-shadow:none!important
  }
  .license-chip .license-signal{width:7px;height:7px;border-radius:50%;background:#b89955;box-shadow:0 0 0 4px rgba(184,153,85,.10)}
  .license-chip>span:last-child{display:grid;gap:2px}
  .license-chip small{color:#a59572}
  .license-chip b{font-size:9px;font-weight:720;white-space:nowrap}
  .account-control{display:flex;align-items:center;height:40px;padding:2px;border:1px solid #d6e2de;border-radius:13px;background:#f7faf9;box-shadow:0 5px 14px rgba(24,59,50,.045)}
  .topbar .account-control .user{display:flex;align-items:center;gap:8px;height:34px;padding:3px 7px 3px 3px!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .topbar .account-control .avatar{
    display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(255,255,255,.65);border-radius:9px;
    color:#fff!important;background:linear-gradient(145deg,#244c42,#397365)!important;
    box-shadow:0 5px 12px rgba(35,79,67,.16)!important;font-size:12px;font-weight:760
  }
  .account-copy{display:grid;min-width:68px;gap:2px;text-align:left}
  .account-copy small{color:#8b9b96}
  .account-copy .name{max-width:84px;overflow:hidden;color:#223d35!important;font-size:10px!important;font-weight:720;text-overflow:ellipsis;white-space:nowrap}
  .account-chevron{color:#9aaaa5;font-size:17px;line-height:1}
  .topbar-logout{display:grid;width:31px;height:31px;place-items:center;margin-left:1px;border:0;border-left:1px solid #dde6e3;color:#869690;background:transparent;cursor:pointer;transition:color .18s ease,background .18s ease}
  .topbar-logout:hover{border-radius:0 10px 10px 0;color:#a15d5d;background:#faf0f0}

  html.eye-mode .sidebar .brand{background:linear-gradient(148deg,#101f29,#122a31 58%,#12312f)}
  html.eye-mode .sidebar .brand::after{border-color:rgba(98,216,190,.055)}
  html.eye-mode .sidebar .brand-mark .logo{color:#77d8c3;border-color:#2b494e;background:#142b34}
  html.eye-mode .sidebar .brand-mark em{color:#8fbcb2;border-color:#2b494e;background:rgba(16,38,47,.75)}
  html.eye-mode .sidebar .brand-kicker{color:#648c84}
  html.eye-mode .sidebar .brand h2{color:#edf8f5}
  html.eye-mode .sidebar .brand .brand-edition{color:#9bc7bc}
  html.eye-mode .sidebar .brand>span{color:#5f7e78}
  html.eye-mode .topbar .topbar-brief{color:#a7bbb5!important;border-color:#294149!important;background:#10232b!important}
  html.eye-mode .topbar-brief-icon{color:#72d5bf;background:#17383a}
  html.eye-mode .topbar-brief b{color:#c2d5d0}
  html.eye-mode .topbar-brief b i{background:#315058}
  html.eye-mode .topbar .license-chip{color:#d5c69f!important;border-color:#453f30!important;background:linear-gradient(145deg,#25261f,#29271d)!important}
  html.eye-mode .license-chip small{color:#9f916f}
  html.eye-mode .account-control{border-color:#2b444a;background:#10232b;box-shadow:none}
  html.eye-mode .topbar .account-control .avatar{color:#08251f!important;background:linear-gradient(145deg,#78d8c3,#4ea996)!important;border-color:#86dec9!important}
  html.eye-mode .account-copy small{color:#63837c}
  html.eye-mode .account-copy .name{color:#e2efeb!important}
  html.eye-mode .topbar-logout{color:#708a84;border-left-color:#29434a}
  html.eye-mode .topbar-logout:hover{color:#e7a2a2;background:#2d2227}
}

/* ===== Reconcile import editor + consistent desktop application header ===== */
.rec-editor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:14px 0 5px}
.rec-editor-head>div{display:grid;gap:3px}.rec-editor-head b{display:flex;align-items:center;gap:6px;color:#19382f;font-size:13px}.rec-editor-head span{color:#7c8e88;font-size:10px}.rec-editor-head em{padding:5px 9px;border-radius:999px;color:#52756b;background:#edf5f2;font-size:9px;font-style:normal}.rec-source{margin-bottom:7px}
.rec-editor-wrap{max-height:310px;overflow:auto;border:1px solid #dce6e3;border-radius:13px;background:#fff}
.rec-editor-table{min-width:960px;margin:0}.rec-editor-table thead{position:sticky;top:0;z-index:2}.rec-editor-table th{padding:9px 7px;background:#eef4f2;color:#516b63;font-size:10px}.rec-editor-table td{padding:5px 4px}.rec-editor-table tr:hover td{background:#fafcfb}.rec-row-no{width:28px;color:#8d9c97;text-align:center;font-size:9px}.rec-cell{height:34px!important;min-height:34px!important;padding:6px 8px!important;border-color:transparent!important;border-radius:8px!important;background:transparent!important;font-size:11px!important}.rec-cell:hover{border-color:#d7e3df!important;background:#fff!important}.rec-cell:focus{border-color:#77a99c!important;background:#fff!important;box-shadow:0 0 0 3px rgba(74,139,122,.09)!important}.rec-cell.code{min-width:122px;font-weight:700}.rec-cell.name{min-width:220px}.rec-cell.brand{min-width:105px}.rec-cell.size{width:74px}.rec-cell.number{width:62px}.rec-cell.money{width:94px;font-variant-numeric:tabular-nums}.rec-row-remove{display:inline-flex;align-items:center;gap:4px;padding:7px 8px;border:0;border-radius:8px;color:#9b6767;background:transparent;cursor:pointer;font-size:9px}.rec-row-remove:hover{color:#a44646;background:#fbefef}
.rec-cell.brand.is-auto{color:#237764!important;background:linear-gradient(90deg,rgba(73,163,139,.09),transparent)!important}
.modal.reconcile-preview-modal{width:min(1180px,calc(100vw - 40px));height:min(860px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);display:flex;flex-direction:column;overflow:hidden;border-radius:20px}.modal.reconcile-preview-modal>.m-body{flex:1;min-height:0;padding:16px 20px;background:#f6f8fb}.rec-preview-head{flex:0 0 auto;gap:16px;background:#fff}.rec-preview-head h3{min-width:0;display:flex!important;align-items:center;gap:9px}.rec-preview-title{display:inline-flex;flex:0 0 auto;align-items:center;gap:6px}.rec-preview-file{min-width:0;max-width:650px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);font-weight:650}.rec-preview-head .tag{flex:0 0 auto;margin:0!important}.rec-preview-kpis .stat-card,.rec-preview-details .stat-card{min-width:0;padding:13px 15px}.rec-preview-kpis .value,.rec-preview-details .value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-preview-details{grid-template-columns:repeat(4,minmax(0,1fr))}.rec-preview-details .stat-card:last-child .value{font-size:12px!important;white-space:normal;overflow-wrap:anywhere;line-height:1.45}.rec-results-table{max-height:none;overflow:auto;border:1px solid var(--border);border-radius:13px;background:#fff}.rec-results-table .table{min-width:1080px}.rec-results-table thead{position:sticky;top:0;z-index:2}.rec-results-table th{background:#edf2f7}.rec-result-cost-editor{display:flex;align-items:center;gap:6px;min-width:205px}.rec-result-cost-editor .input{height:34px;min-width:120px}.rec-preview-foot{flex:0 0 auto!important;display:flex!important;align-items:center;justify-content:space-between!important;gap:10px;background:#fff}.rec-preview-foot>div{display:flex;align-items:center;gap:8px}
.rec-results-cards{display:none}.rec-result-card{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(23,36,58,.05)}.rec-result-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px 14px 10px}.rec-result-card header>div{min-width:0}.rec-result-card header b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.rec-result-card header span:not(.tag){display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-3);font-size:11px}.rec-result-card header>.tag{flex:0 0 auto}.rec-result-meta{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:8px;padding:0 14px 11px;color:var(--text-3);font-size:10px}.rec-result-meta span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-result-meta b{color:var(--text-2);font-size:11px}.rec-result-money{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f7f9fc}.rec-result-money>div{padding:10px 8px;text-align:center;border-right:1px solid var(--border)}.rec-result-money>div:last-child{border-right:0}.rec-result-money span{display:block;margin-bottom:3px;color:var(--text-3);font-size:9px}.rec-result-money b{font-size:13px;font-variant-numeric:tabular-nums}.rec-result-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 13px;color:var(--text-3);font-size:10px}.rec-result-card footer>.rec-result-cost-editor{flex:1;justify-content:flex-end}.rec-result-card footer>.rec-result-cost-editor .input{min-width:0;width:130px}
html.eye-mode .rec-editor-head b{color:#dcece8}html.eye-mode .rec-editor-head em{color:#8bc7ba;background:#173438}html.eye-mode .rec-editor-wrap{border-color:#29444b;background:#10232b}html.eye-mode .rec-editor-table th{color:#94b5ad;background:#173039}html.eye-mode .rec-editor-table tr:hover td{background:#132a32}html.eye-mode .rec-cell{color:#dce8e4!important}html.eye-mode .rec-cell:hover,html.eye-mode .rec-cell:focus{border-color:#3c625c!important;background:#10252d!important}html.eye-mode .rec-cell.brand.is-auto{color:#73d5c0!important;background:linear-gradient(90deg,rgba(70,185,157,.12),transparent)!important}

@media(min-width:721px){
.rec-preview-head{position:relative}
  .topbar{height:62px!important;min-height:62px!important;padding:0 18px!important}
  .topbar .page-title{display:flex;align-items:center;min-height:62px;font-size:18px!important;line-height:1.2}
  .content{padding-top:14px!important}
}
@media(max-width:720px){
  .rec-preview-head{position:relative}
  .rec-editor-head{align-items:flex-start}.rec-editor-head em{display:none}.rec-editor-wrap{max-height:360px}.rec-editor-table{min-width:900px}
  .modal.reconcile-preview-modal{width:calc(100vw - 12px)!important;height:calc(100dvh - 14px);max-height:calc(100dvh - 14px);border-radius:17px}.modal.reconcile-preview-modal>.m-body{padding:10px;background:#f5f7fa}.rec-preview-head{padding:12px 13px!important;align-items:flex-start!important}.rec-preview-head h3{display:grid!important;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:3px 8px}.rec-preview-title{font-size:14px}.rec-preview-file{grid-column:1/-1;grid-row:2;max-width:100%;font-size:10px;font-weight:500}.rec-preview-head .tag{grid-column:2;grid-row:1}.rec-preview-head .m-close{position:absolute;right:8px;top:7px}.rec-preview-head h3{padding-right:28px}.rec-preview-kpis,.rec-preview-details{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-bottom:8px!important}.rec-preview-kpis .stat-card,.rec-preview-details .stat-card{min-height:68px;padding:9px 11px}.rec-preview-kpis .stat-card:last-child{grid-column:1/-1;min-height:60px}.rec-preview-kpis .label,.rec-preview-details .label{font-size:9px}.rec-preview-kpis .value,.rec-preview-details .value{font-size:17px!important}.rec-preview-details .stat-card:last-child{display:none}.rec-results-table{display:none!important}.rec-results-cards{display:grid!important;gap:9px}.rec-preview-foot{padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;gap:7px}.rec-preview-foot>div{gap:5px}.rec-preview-foot .btn{height:36px;padding:0 10px;font-size:10px}.rec-preview-foot>div:last-child{margin-left:auto}.rec-preview-foot>div:last-child .btn{white-space:nowrap}.rec-result-card footer{align-items:flex-start;flex-direction:column}.rec-result-card footer>.rec-result-cost-editor{width:100%;justify-content:stretch}.rec-result-card footer>.rec-result-cost-editor .input{width:auto;flex:1}.rec-result-card footer>.rec-result-cost-editor .btn{flex:0 0 auto}.modal.reconcile-preview-modal .card[style*="margin-bottom:12px"]{font-size:11px;line-height:1.65}
}

/* Private identity v2: blend branding and account controls into the shell. */
@media(min-width:721px){
  .sidebar .brand{
    min-height:128px;
    padding:19px 20px 15px;
    border-bottom:1px solid #e3e9e7;
    background:transparent!important;
  }
  .sidebar .brand::after{display:none!important}
  .sidebar .brand-mark .logo{
    width:27px;height:27px;border:0;border-radius:0;
    color:#315f54;background:transparent;box-shadow:none
  }
  .sidebar .brand-mark em{
    padding:2px 0;border:0;border-radius:0;
    color:#82968f;background:transparent;font-size:6.5px
  }
  .sidebar .brand-kicker{margin-bottom:5px;color:#879891}
  .sidebar .brand-kicker i{width:9px;box-shadow:none}

  .topbar-control-deck{gap:0!important}
  .topbar .topbar-brief,
  .topbar .license-chip{
    height:32px;padding:2px 11px!important;
    border:0!important;border-right:1px solid #e1e7e5!important;border-radius:0!important;
    background:transparent!important;box-shadow:none!important
  }
  .topbar-brief-icon{width:20px;height:20px;border-radius:6px;background:#edf4f2}
  .license-chip .license-signal{width:6px;height:6px;box-shadow:none}
  .account-control{
    height:34px;padding:0 0 0 10px;border:0;border-radius:0;
    background:transparent;box-shadow:none
  }
  .topbar .account-control .user{height:32px;padding:2px 7px 2px 0!important}
  .topbar .account-control .avatar{
    width:25px;height:25px;border:1px solid #d6e3df;border-radius:8px;
    color:#315e53!important;background:#edf4f2!important;box-shadow:none!important;font-size:10px
  }
  .account-copy{min-width:62px}
  .topbar-logout{width:28px;height:28px;border-left:1px solid #e1e7e5}

  html.eye-mode .sidebar .brand{border-bottom-color:#233b42;background:transparent!important}
  html.eye-mode .sidebar .brand-mark .logo{color:#75cbbb;background:transparent}
  html.eye-mode .sidebar .brand-mark em{color:#66867f;background:transparent}
  html.eye-mode .topbar .topbar-brief,
  html.eye-mode .topbar .license-chip{border-right-color:#294148!important;background:transparent!important}
  html.eye-mode .topbar-brief-icon{background:#142d34}
  html.eye-mode .account-control{border:0;background:transparent}
  html.eye-mode .topbar .account-control .avatar{
    color:#80d9c7!important;border-color:#2d4d50!important;background:#142d34!important;box-shadow:none!important
  }
}

/* 统计报表 CNY / USD 显示切换 */
.report-control .toolbar{display:flex;align-items:center;gap:8px}.stat-currency-tools{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:12px;border-left:1px solid #e0e8e5}.stat-currency-label{color:#879891;font-size:8px;font-weight:800;letter-spacing:1px}.stat-currency-toggle{display:flex;padding:3px;border:1px solid #d9e4e0;border-radius:10px;background:#f1f6f4}.stat-currency-toggle button{min-width:48px;height:28px;padding:0 10px;border:0;border-radius:7px;color:#72847e;background:transparent;font-size:10px;font-weight:800;cursor:pointer}.stat-currency-toggle button.active{color:#fff;background:#326f61;box-shadow:0 4px 10px rgba(39,105,88,.16)}.stat-usd-rate{display:none;align-items:center;height:35px;padding:0 9px;border:1px solid #d9e4e0;border-radius:10px;background:#fff}.stat-usd-rate.show{display:flex}.stat-usd-rate span{color:#758780;font-size:9px;white-space:nowrap}.stat-usd-rate input{width:54px!important;height:28px!important;padding:0 3px!important;border:0!important;outline:0;background:transparent!important;color:#21483e;font-size:11px!important;font-weight:800;text-align:right}html.eye-mode .stat-currency-tools{border-left-color:#29434a}html.eye-mode .stat-currency-toggle,html.eye-mode .stat-usd-rate{border-color:#2b474e;background:#10242c}html.eye-mode .stat-usd-rate input{color:#dcebe7}
@media(max-width:720px){.report-control .toolbar{flex-wrap:wrap}.stat-currency-tools{order:10;width:100%;margin:4px 0 0;padding:9px 0 0;border-left:0;border-top:1px solid #e2e9e6}.stat-currency-label{margin-right:auto}.stat-currency-toggle button{min-width:52px}.stat-usd-rate{margin-left:auto}.stat-usd-rate input{font-size:16px!important}.report-summary-card strong,.report-summary-card b,.rank-item .val .v,.cmp-table td{overflow-wrap:anywhere}}

/* 货盘商品分页 */
.pan-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 2px 2px}.pan-pager>span{color:#82918c;font-size:10px}.pan-pager>div{display:flex;align-items:center;gap:5px}.pan-pager button{min-width:31px;height:31px;padding:0 9px;border:1px solid #d8e3df;border-radius:9px;color:#557168;background:#fff;font-size:10px;cursor:pointer}.pan-pager button.active{color:#fff;border-color:#326f61;background:#326f61}.pan-pager button:disabled{opacity:.38;cursor:default}html.eye-mode .pan-pager button{color:#afc5bf;border-color:#2d4950;background:#10242c}html.eye-mode .pan-pager button.active{color:#08251f;border-color:#71cdb8;background:#71cdb8}
@media(max-width:720px){.pan-mobile-products>.pan-pager{display:grid;grid-template-columns:1fr;padding:11px 1px 2px}.pan-pager>span{text-align:center}.pan-pager>div{justify-content:center;gap:4px}.pan-pager button{min-width:29px;height:30px;padding:0 7px}.pan-pager button:nth-child(2),.pan-pager button:nth-last-child(2){font-size:0}.pan-pager button:nth-child(2):after{content:'‹';font-size:16px}.pan-pager button:nth-last-child(2):after{content:'›';font-size:16px}.pan-mobile-product-list{gap:6px!important}.pan-mobile-product-card{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:10px 11px!important;border-radius:14px!important}.pan-mobile-product-top{grid-column:1/-1}.pan-mobile-brand,.pan-mobile-age{padding:3px 6px!important}.pan-mobile-product-card h4{grid-column:1;margin:7px 8px 2px 0!important;font-size:12px!important}.pan-mobile-code{grid-column:2;align-self:center;justify-self:end;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pan-mobile-product-metrics{grid-column:1/-1;margin-top:7px!important;padding-top:7px!important}.pan-mobile-product-metrics>span{padding:0 6px!important}.pan-mobile-product-metrics small{font-size:8px!important}.pan-mobile-product-metrics b{font-size:11px!important}}

/* 库存生命周期统一分页：手机列表头尾均可快速翻页。 */
.soldout-list>.app-pager{margin:12px 16px 16px}.inventory-life-content .app-pager{margin-top:12px}
@media(max-width:720px){.m-stock-catalog-card>.app-pager{margin:9px 11px!important;padding:8px!important;border-radius:11px!important}.m-stock-catalog-card>.app-pager+.m-stock-card{margin-top:5px}.m-stock-catalog-card>.app-pager .app-pager-meta{font-size:9px}.m-stock-catalog-card>.app-pager button{height:32px;min-width:32px}.soldout-list>.app-pager{margin:10px;padding:8px}.inventory-life-content{padding-bottom:92px}.inventory-life-content .app-pager{margin-left:0;margin-right:0}}

/* 手机首页货盘雷达：把库龄与流水合并成一个可执行摘要。 */
@media(max-width:720px){
  .mobile-stock-radar{margin:18px 0 6px;padding:15px;border:1px solid #dbe5e1;border-radius:19px;background:linear-gradient(145deg,#fff,#f5f9f7);box-shadow:0 12px 28px rgba(31,60,51,.07)}
  .mobile-radar-head,.mobile-radar-status,.mobile-radar-feed-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .mobile-radar-head>div span{display:block;color:#76958c;font-size:8px;font-weight:850;letter-spacing:1.25px}.mobile-radar-head h3{margin:2px 0 0!important;padding:0!important;border:0!important;color:#18342d;font-size:18px!important}.mobile-radar-head button,.mobile-radar-feed-head button{border:0;color:#56776e;background:transparent;font-size:10px;cursor:pointer}
  .mobile-radar-status{margin-top:13px;padding:13px 14px;border-radius:14px;background:#eaf3ef}.mobile-radar-status>div{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:7px}.radar-status-dot{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#3d8c78;box-shadow:0 0 0 5px rgba(61,140,120,.10)}.mobile-radar-status b{color:#183b32;font-size:13px}.mobile-radar-status small{margin-top:2px;color:#748a84;font-size:9px}.mobile-radar-status strong{color:#285f51;font-size:27px;line-height:1}.mobile-radar-status sup{font-size:10px}
  .mobile-stock-radar.watch .radar-status-dot{background:#d49b2e;box-shadow:0 0 0 5px rgba(212,155,46,.11)}.mobile-stock-radar.watch .mobile-radar-status{background:#faf4e8}.mobile-stock-radar.danger .radar-status-dot{background:#d55b55;box-shadow:0 0 0 5px rgba(213,91,85,.10)}.mobile-stock-radar.danger .mobile-radar-status{background:#fbefed}
  .mobile-radar-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px;border:1px solid #e2e9e6;border-radius:14px;background:rgba(255,255,255,.78)}.mobile-radar-metrics button{min-width:0;padding:11px 7px;border:0;background:transparent;text-align:left}.mobile-radar-metrics button+button{border-left:1px solid #e5ebe8}.mobile-radar-metrics span,.mobile-radar-metrics b,.mobile-radar-metrics small{display:block}.mobile-radar-metrics span{overflow:hidden;color:#80918c;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.mobile-radar-metrics b{margin-top:5px;color:#19382f;font-size:17px}.mobile-radar-metrics small{margin-top:1px;color:#9aa7a3;font-size:8px}
  .mobile-radar-feed-head{margin-top:15px;padding-top:13px;border-top:1px solid #e3ebe7}.mobile-radar-feed-head>span{color:#405d55;font-size:11px;font-weight:800}.mobile-radar-feed{margin-top:4px}.mobile-radar-event{position:relative;display:grid;width:100%;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 1px;border:0;border-bottom:1px solid #edf1ef;color:inherit;background:transparent;text-align:left}.mobile-radar-event:last-child{border-bottom:0}.mobile-radar-event>i{width:7px;height:7px;border:2px solid #5e8b80;border-radius:50%}.mobile-radar-event.out>i{border-color:#c28b42}.mobile-radar-event.defect>i{border-color:#b96868}.mobile-radar-event span,.mobile-radar-event b,.mobile-radar-event small{display:block;min-width:0}.mobile-radar-event b{overflow:hidden;color:#203d35;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.mobile-radar-event small{overflow:hidden;margin-top:2px;color:#8b9a95;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.mobile-radar-event em{color:#60756f;font-size:10px;font-style:normal}.mobile-radar-empty{padding:16px 3px 5px;color:#91a09b;font-size:10px;text-align:center}
  html.eye-mode .mobile-stock-radar{border-color:#29454b;background:linear-gradient(145deg,#10232b,#112830);box-shadow:none}html.eye-mode .mobile-radar-head h3,html.eye-mode .mobile-radar-status b,html.eye-mode .mobile-radar-metrics b,html.eye-mode .mobile-radar-event b{color:#dcece8}html.eye-mode .mobile-radar-head>div span,html.eye-mode .mobile-radar-head button,html.eye-mode .mobile-radar-feed-head button{color:#75a89f}html.eye-mode .mobile-radar-status{background:#16352f}html.eye-mode .mobile-radar-metrics{border-color:#29464a;background:#102129}html.eye-mode .mobile-radar-metrics button+button,html.eye-mode .mobile-radar-feed-head,html.eye-mode .mobile-radar-event{border-color:#294148}
}

/* 手机库存筛选：锚定触发按钮展开，规避微信内 fixed 被定位到长页面底部。 */
@media(max-width:720px){
  .m-stock-catalog-card{overflow:visible!important}
  .m-stock-catalog-card .stock-filter-row{position:relative;z-index:300;overflow:visible!important}
  .m-stock-catalog-card .stock-filter-picker{position:relative;z-index:301}
  .m-stock-catalog-card .stock-filter-picker.open{z-index:320}
  .m-stock-catalog-card .stock-filter-picker.is-mobile .stock-filter-picker-popover{
    position:absolute!important;
    top:calc(100% + 7px)!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:auto!important;
    max-height:270px;
    overflow:auto;
    border-radius:13px!important;
    box-shadow:0 16px 34px rgba(24,52,45,.20)!important;
    transform:none!important;
    z-index:330!important;
  }
  .m-stock-catalog-card .stock-filter-picker.is-mobile:first-child .stock-filter-picker-popover{right:auto!important;left:0!important;width:max(100%,170px)!important}
  .m-stock-catalog-card .stock-filter-picker.is-mobile:last-child .stock-filter-picker-popover{right:0!important;left:auto!important;width:max(100%,190px)!important}
  .m-stock-catalog-card>.m-chips-scroll{position:relative;z-index:1}
  .m-stock-catalog-card>.m-stock-card,.m-stock-catalog-card>.app-pager{position:relative;z-index:0}
}

/* 2026-09-03 视觉收口：货盘筛选、个人钱包与带薪时间统一为浅色经营舱。 */
.pan-filter{position:relative;overflow:visible;padding:19px 20px 17px!important;border:1px solid #d7e5e0!important;border-top:1px solid #d7e5e0!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(242,248,246,.96))!important;box-shadow:0 12px 28px rgba(30,63,53,.065)!important}
.pan-filter:before{content:"";position:absolute;top:0;left:22px;width:76px;height:3px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,#4a9482,#9bc9bc)}
.pan-filter-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid #e2ebe7}
.pan-filter-head>div{min-width:0}.pan-filter-head small{display:block;margin-bottom:4px;color:#548778;font-size:8px;font-weight:850;letter-spacing:1.45px}.pan-filter-head h3{display:flex;align-items:center;gap:7px;margin:0!important;color:#1b342d;font-size:17px}.pan-filter-head p{margin:4px 0 0;color:#82938d;font-size:10px}.pan-filter-head>span{flex:none;padding:7px 11px;border:1px solid #d6e4df;border-radius:99px;color:#50776c;background:rgba(255,255,255,.78);font-size:9px;font-weight:750}
.pan-filter .pan-row{display:grid!important;grid-template-columns:1.05fr .95fr .95fr 1fr 1fr 1.35fr 1fr minmax(100px,.8fr);align-items:end;gap:10px!important}.pan-filter .pan-field{min-width:0!important}.pan-filter .pan-field label{margin-left:2px;color:#758981!important;font-size:10px!important;font-weight:650}.pan-filter .input,.pan-filter .app-select-trigger{min-height:42px!important;border-color:#d7e3df!important;border-radius:12px!important;background:rgba(255,255,255,.9)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.pan-filter [data-act="pan-reset"]{min-height:42px!important;border-color:#d6e2de!important;border-radius:12px!important;color:#466b61!important;background:#edf4f1!important;font-weight:700}

html.light-mode .wallet-hero{border-color:#cedfd9!important;background:radial-gradient(circle at 86% 4%,rgba(92,157,139,.13),transparent 31%),linear-gradient(135deg,#f3f8f6 0%,#e9f3ef 58%,#f7f4eb 100%)!important;box-shadow:0 13px 32px rgba(38,69,59,.075)!important;color:#18362e!important}
html.light-mode .wallet-hero::after{border-color:rgba(67,128,111,.065)!important}
html.light-mode .wallet-hero h2{color:#18362e!important}html.light-mode .wallet-hero p{color:#71867f!important}html.light-mode .wallet-hero .section-kicker{color:#4a8576!important}
html.light-mode .wallet-balance{border-color:#d5e3de!important;background:rgba(255,255,255,.72)!important;box-shadow:0 9px 24px rgba(38,72,62,.055)!important;backdrop-filter:blur(10px)}html.light-mode .wallet-balance span{color:#71867f!important}html.light-mode .wallet-balance b{color:#214f42!important}html.light-mode .wallet-balance b.neg{color:#bb5b62!important}html.light-mode .wallet-balance small{color:#83958f!important}

html.light-mode .pb-work-clock{border:1px solid #cfe2dc!important;color:#1b493d!important;background:radial-gradient(circle at 50% 125%,rgba(90,181,157,.14),transparent 48%),linear-gradient(145deg,#eff8f5,#e3f1ec)!important;box-shadow:inset 0 1px 0 #fff,0 8px 19px rgba(43,91,76,.07)!important}html.light-mode .pb-work-clock small{color:#718e85!important}html.light-mode .pb-work-clock strong{color:#204f42!important}html.light-mode .pb-work-clock em{color:#418b79!important}
html.light-mode .pb-total{position:relative;color:#1c493d!important;background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.75),transparent 35%),linear-gradient(145deg,#e8f5f0,#dceee8)!important}html.light-mode .pb-total small{color:#4c8c7b!important}html.light-mode .pb-total span{color:#55776d!important}html.light-mode .pb-total>strong{color:#24856f!important}html.light-mode .pb-total p{color:#69867d!important}
html.light-mode .pb-results{border-color:#d4e3de!important;box-shadow:0 12px 28px rgba(35,73,61,.055)}

html.eye-mode .pan-filter{border-color:#29474c!important;background:linear-gradient(145deg,#10252d,#132b33)!important;box-shadow:none!important}html.eye-mode .pan-filter-head{border-bottom-color:#29434a}html.eye-mode .pan-filter-head h3{color:#e2efec}html.eye-mode .pan-filter-head p{color:#77939a}html.eye-mode .pan-filter-head>span{border-color:#2d4b50;color:#80afa5;background:#132b32}
@media(max-width:720px){.pan-filter{padding:13px!important;border-radius:18px!important}.pan-filter:before{left:16px;width:54px}.pan-filter-head{margin-bottom:11px;padding:2px 2px 10px}.pan-filter-head h3{font-size:15px}.pan-filter-head p{display:none}.pan-filter-head>span{padding:5px 8px;font-size:8px}.pan-filter .pan-row{display:flex!important;align-items:center!important}.pan-filter .input,.pan-filter .app-select-trigger,.pan-filter [data-act="pan-reset"]{min-height:41px!important}.wallet-hero{padding:19px 17px!important}.wallet-balance{margin-top:14px!important;padding:15px!important}.wallet-balance b{font-size:29px!important}.pb-work-clock{padding:18px 14px!important}.pb-total{padding:21px 18px!important}.pb-total span{margin-top:12px!important}}

/* ===== 2026-09-04 unified light theme =====
   New business modules use the dashboard/report neutral blue-gray system.
   Green remains only for semantic success/profit states, never whole surfaces. */
html.light-mode :where(.profit-calc-page,.credit-center-page,.wallet-page,.paid-break-page,.pan-page){color:#1f2733}
html.light-mode :where(.profit-calc-hero,.credit-hero,.wallet-hero,.paid-break-hero){border-color:#dce3ee!important;background:linear-gradient(135deg,#f8faff 0%,#f1f4fa 58%,#eef2f8 100%)!important;box-shadow:0 10px 28px rgba(30,35,90,.055)!important;color:#1f2733!important}
html.light-mode :where(.profit-calc-hero,.credit-hero,.wallet-hero,.paid-break-hero)::after{border-color:rgba(79,70,229,.045)!important}
html.light-mode :where(.profit-calc-hero,.credit-hero,.wallet-hero,.paid-break-hero) :where(h2,h3,b){color:#17243a!important}
html.light-mode :where(.profit-calc-hero,.credit-hero,.wallet-hero,.paid-break-hero) :where(p,span,small,i){color:#6f7b8e!important}
html.light-mode :where(.profit-calc-hero-copy small,.credit-hero>div>small,.wallet-hero .section-kicker,.paid-break-hero>div>small){color:#59677c!important}
html.light-mode :where(.profit-formula,.credit-month,.wallet-balance,.pb-rate){border-color:#dbe3ef!important;background:rgba(255,255,255,.82)!important;box-shadow:none!important}
html.light-mode :where(.profit-input-panel,.profit-target-card,.profit-explain-card>div,.credit-kpis,.credit-warning.card,.credit-advice.card,.credit-trend.card,.credit-account,.credit-history.card,.wallet-period-bar,.wallet-kpi,.wallet-main-grid>.card,.wallet-trend-card,.wallet-history,.pb-panel,.pb-results,.pan-filter,.pan-kpi-card,.pan-grid>.card,.pan-mobile-product-card){border-color:#e0e5ee!important;background:#fff!important;box-shadow:0 6px 20px rgba(30,35,90,.045)!important}
html.light-mode :where(.profit-field,.profit-target-input>div,.credit-warning-meta span,.credit-account-month span,.wallet-form-grid label,.wallet-opening,.pb-field,.pb-catchup-grid label,.pb-live-summary,.pb-live-summary>div,.pan-filter .input,.pan-filter .app-select-trigger){border-color:#e2e7ef!important;background:#f8fafc!important}
html.light-mode :where(.profit-cost-strip,.credit-advice.card,.wallet-auto-profit,.wallet-rhythm-note,.pb-shift,.pb-clock-tip,.pb-empty){background:#f3f5f9!important}
html.light-mode .pan-filter{border-radius:18px!important;background:#fff!important}
html.light-mode .pan-filter:before{background:#4f46e5!important}
html.light-mode .pan-filter-head{border-bottom-color:#e6e9f0!important}
html.light-mode .pan-filter-head small{color:#667085!important}
html.light-mode .pan-filter-head h3{color:#1f2733!important}
html.light-mode .pan-filter-head p{color:#8a94a5!important}
html.light-mode .pan-filter-head>span{border-color:#e0e5ee!important;color:#667085!important;background:#f8fafc!important}
html.light-mode .pan-filter [data-act="pan-reset"]{border-color:#dfe5ef!important;color:#465268!important;background:#f3f5f9!important}
html.light-mode :where(.pb-pay-mode,.wallet-period-tabs){background:#eef1f6!important}
html.light-mode :where(.pb-pay-mode button.active,.wallet-period-tabs button.active,.pb-catchup-foot button[data-custom-day]){color:#fff!important;background:#17243a!important;box-shadow:0 4px 12px rgba(23,36,58,.15)!important}
html.light-mode .pb-work-clock{border-color:#dce3ee!important;color:#17243a!important;background:#f3f5f9!important;box-shadow:none!important}
html.light-mode .pb-work-clock :where(small,em){color:#7b8799!important}
html.light-mode .pb-work-clock strong{color:#17243a!important}
html.light-mode .pb-total{color:#17243a!important;background:#f3f5f9!important}
html.light-mode .pb-total :where(small,span,p){color:#748094!important}
html.light-mode .pb-total>strong{color:#3730a3!important}
html.light-mode .wallet-balance b{color:#17243a!important}
html.light-mode .wallet-balance b.neg{color:#c45b65!important}
html.light-mode :where(.wallet-type-tabs button.active,.wallet-submit,.credit-title-row>button,.credit-account-actions button:last-child){border-color:#17243a!important;background:#17243a!important;color:#fff!important}
html.light-mode :where(.app-pager,.pan-pager){border-color:#dfe5ef!important;background:#f8fafc!important;box-shadow:none!important}
html.light-mode :where(.app-pager,.pan-pager) button{border-color:#d9e1ed!important;color:#526079!important;background:#fff!important}
html.light-mode :where(.app-pager,.pan-pager) button:hover:not(:disabled):not(.active){border-color:#aebbd0!important;color:#17243a!important;background:#f4f6fa!important}
html.light-mode :where(.app-pager,.pan-pager) button.active{border-color:#17243a!important;color:#fff!important;background:#17243a!important;box-shadow:0 4px 11px rgba(23,36,58,.17)!important}
html.light-mode :where(.app-pager-meta,.pan-pager>span){color:#7b8799!important}
@media(max-width:720px){html.light-mode :where(.profit-calc-page,.credit-center-page,.wallet-page,.paid-break-page,.pan-page){background:transparent!important}html.light-mode :where(.profit-calc-hero,.credit-hero,.wallet-hero,.paid-break-hero){border-radius:18px!important;box-shadow:0 6px 18px rgba(30,35,90,.045)!important}html.light-mode :where(.app-pager,.pan-pager,.m-out-pick-card>.app-pager,.m-stock-catalog-card>.app-pager){border-color:#dfe5ef!important;background:#f7f9fc!important}}

/* Wallet hero requires explicit specificity because its former green theme used !important. */
html.light-mode .wallet-page .wallet-hero{border-color:#dce3ee!important;background:linear-gradient(135deg,#f8faff 0%,#f1f4fa 58%,#eef2f8 100%)!important;box-shadow:0 10px 28px rgba(30,35,90,.055)!important;color:#1f2733!important}
html.light-mode .wallet-page .wallet-hero::after{border-color:rgba(23,36,58,.045)!important}
html.light-mode .wallet-page .wallet-hero h2{color:#17243a!important}
html.light-mode .wallet-page .wallet-hero p,html.light-mode .wallet-page .wallet-hero .section-kicker{color:#6f7b8e!important}

/* Unified chart language: navy for the primary series, slate for comparison. */
html.light-mode .credit-trend-bars i{background:linear-gradient(180deg,#34445d,#17243a)!important}
html.light-mode .credit-trend-bars i.collection{background:linear-gradient(180deg,#aab3c1,#778398)!important}
html.light-mode .credit-trend-legend i{background:#17243a!important}
html.light-mode .credit-trend-legend i.collection{background:#8793a6!important}
html.light-mode .credit-warning-track{background:#e4e8ef!important}
html.light-mode .credit-warning.safe .credit-warning-track i{background:#17243a!important}
html.light-mode .credit-warning.safe .credit-warning-value em{color:#39465a!important;background:#eef1f6!important}
html.light-mode .wallet-trend-bars i.income{background:linear-gradient(180deg,#34445d,#17243a)!important}
html.light-mode .wallet-trend-bars i.expense{background:linear-gradient(180deg,#adb6c4,#7b8799)!important}
html.light-mode .wallet-legend i.income{background:#17243a!important}
html.light-mode .wallet-legend i.expense{background:#8793a6!important}
.credit-history>.app-pager,.wallet-history>.app-pager{margin-top:14px}
@media(max-width:720px){.credit-history>.app-pager,.wallet-history>.app-pager{margin:12px 0 0!important;padding:9px!important}}

/* Mobile credit accounts: category overview first, urgent individual accounts on demand. */
.credit-mobile-groups{display:none}
@media(max-width:720px){
  .credit-accounts-wrap>.credit-accounts{display:none}
  .credit-mobile-groups{display:grid;gap:10px;margin-top:12px}
  .credit-mobile-group{overflow:hidden;border:1px solid #dfe5ef;border-radius:17px;background:#fff;box-shadow:0 5px 16px rgba(30,35,90,.04)}
  .credit-mobile-group-summary{display:grid;width:100%;grid-template-columns:42px minmax(0,1fr) minmax(90px,auto);align-items:center;gap:10px;padding:14px;border:0;color:#1f2733;background:#fff;text-align:left;cursor:pointer}
  .credit-mobile-group-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#526079;background:#eef1f6}
  .credit-mobile-group-copy,.credit-mobile-group-next{display:grid;min-width:0;gap:2px}
  .credit-mobile-group-copy small,.credit-mobile-group-next small{color:#8490a2;font-size:9px}
  .credit-mobile-group-copy strong{color:#17243a;font-size:21px;letter-spacing:-.4px}
  .credit-mobile-group-copy em,.credit-mobile-group-next em{overflow:hidden;color:#8793a5;font-size:8.5px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
  .credit-mobile-group-next{position:relative;padding-right:18px;text-align:right}
  .credit-mobile-group-next b{color:#344054;font-size:11px}
  .credit-mobile-group-next i{position:absolute;right:0;top:50%;color:#8b96a7;font-size:15px;font-style:normal;transform:translateY(-50%);transition:transform .18s}
  .credit-mobile-group.expanded .credit-mobile-group-next i{transform:translateY(-50%) rotate(180deg)}
  .credit-mobile-group-body{display:grid;gap:8px;padding:0 9px 9px;border-top:1px solid #edf0f5;background:#f7f9fc}
  .credit-mobile-group-body .credit-account{margin-top:9px;padding:13px;border-color:#e0e5ee;box-shadow:none}
  .credit-account.mobile-compact .credit-account-debt{margin-top:11px}
  .credit-account.mobile-compact .credit-account-month{display:none}
  .credit-account-due{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px;padding:8px 9px;border-radius:9px;color:#6f7b8e;background:#f2f4f8;font-size:9px}
  .credit-account-due b{color:#526079;font-size:10px}.credit-account-due b.soon{color:#9a6a22}.credit-account-due b.urgent{color:#bd4f59}
  .credit-account.mobile-compact .credit-account-actions{margin-top:9px}
  .credit-mobile-group-more{height:38px;border:1px solid #dbe2ed;border-radius:10px;color:#526079;background:#fff;font-size:10px;font-weight:700;cursor:pointer}
  html.eye-mode .credit-mobile-group{border-color:#29454b;background:#12262f;box-shadow:none}
  html.eye-mode .credit-mobile-group-summary{color:#dce9e5;background:#12262f}
  html.eye-mode .credit-mobile-group-icon{color:#b4c8c2;background:#1b343b}
  html.eye-mode .credit-mobile-group-copy strong,html.eye-mode .credit-mobile-group-next b{color:#e3eeeb}
  html.eye-mode .credit-mobile-group-body{border-top-color:#294149;background:#10232b}
  html.eye-mode .credit-account-due{color:#91a7a1;background:#172f35}
  html.eye-mode .credit-mobile-group-more{border-color:#2b474e;color:#b9cbc6;background:#12262f}
}

/* ===== Workspace header, reconcile summary and inventory-sync controls v3 ===== */
@media(min-width:721px){
  .sidebar .brand{min-height:154px;padding:22px 21px 19px;background:transparent!important}
  .sidebar .brand-mark{margin-bottom:15px}
  .sidebar .brand-mark .logo{width:36px;height:36px;border:1px solid #d6dce6;border-radius:11px;color:#25334a;background:#fff;box-shadow:0 7px 18px rgba(23,36,58,.07)}
  .sidebar .brand-mark em{padding:4px 8px;border:1px solid #dce2eb;border-radius:999px;color:#53627a;background:#f6f8fb;font-size:8px;letter-spacing:.8px}
  .sidebar .brand-kicker{margin-bottom:7px;color:#748198;font-size:8px;letter-spacing:1.25px}
  .sidebar .brand-kicker i{width:13px;background:#68758a;box-shadow:none}
  .sidebar .brand h2{margin-bottom:4px;color:#17243a;font-size:18px;font-weight:800;letter-spacing:.1px}
  .sidebar .brand .brand-edition{color:#45546b;font-size:10px;font-weight:750}
  .sidebar .brand>span{margin-top:6px;color:#8b96a8;font-size:7.5px;letter-spacing:.85px}

  .topbar-control-deck{gap:7px!important}
  .topbar .topbar-brief,.topbar .license-chip{height:40px;padding:5px 11px!important;border:1px solid #dfe4ec!important;border-radius:11px!important;background:#f7f9fc!important;box-shadow:none!important}
  .topbar-brief-icon{width:28px;height:28px;border-radius:8px;color:#40506a;background:#e9edf3}
  .topbar-brief small,.license-chip small,.account-copy small{color:#7f8a9d;font-size:7.5px;letter-spacing:.75px}
  .topbar-brief b{color:#29374d;font-size:10px}.topbar-brief b i{background:#cfd6e0}
  .topbar .license-chip{color:#39475e!important}.license-chip small{color:#7f8a9d}.license-chip b{font-size:10px}.license-chip .license-signal{background:#68758a;box-shadow:0 0 0 4px rgba(104,117,138,.10)}
  .account-control{height:40px;padding:2px;border:1px solid #dfe4ec;border-radius:11px;background:#f7f9fc;box-shadow:none}
  .topbar .account-control .user{height:34px;padding:3px 8px 3px 3px!important}
  .topbar .account-control .avatar{width:29px;height:29px;border:1px solid #d7dee8;border-radius:8px;color:#34445d!important;background:#e9edf3!important;box-shadow:none!important;font-size:11px}
  .account-copy{min-width:68px}.account-copy .name{color:#26354b!important;font-size:11px!important}.account-chevron{color:#7d899c}

  .rec-preview-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:0!important;overflow:hidden;border:1px solid #dce3ec;border-radius:14px;background:#fff}
  .rec-preview-kpis .stat-card{min-height:78px;margin:0;border:0;border-right:1px solid #e3e8ef;border-radius:0;box-shadow:none;background:transparent}
  .rec-preview-kpis .stat-card:last-child{border-right:0;background:#f5f7fa}
  .rec-preview-kpis .value{margin-top:6px;font-size:21px}
  .rec-preview-details{gap:0!important;overflow:hidden;border:1px solid #e0e5ed;border-radius:13px;background:#fff}
  .rec-preview-details .stat-card{min-height:69px;margin:0;border:0;border-right:1px solid #e5e9f0;border-radius:0;box-shadow:none;background:transparent}
  .rec-preview-details .stat-card:last-child{border-right:0}
  .rec-preview-details .value{margin-top:5px;font-size:17px}
}

.du-import-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
.du-import-option{display:grid;grid-template-columns:38px minmax(140px,.55fr) minmax(220px,1fr);align-items:center;gap:11px;min-width:0;padding:12px 13px;border:1px solid #dce3ec;border-radius:13px;background:#f8fafc;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s}
.du-import-option:focus-within{border-color:#8793a6;background:#fff;box-shadow:0 0 0 3px rgba(104,117,138,.10)}
.du-option-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:#45546b;background:#e9edf3}
.du-option-copy{display:grid;gap:3px;min-width:0}.du-option-copy small{color:#7e8a9c;font-size:8px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.du-option-copy b{overflow:hidden;color:#26354b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.du-option-select{position:relative;display:block;min-width:0}.du-option-select select{width:100%;height:40px!important;padding:0 36px 0 12px!important;border:1px solid #d9e0e9!important;border-radius:10px!important;outline:0;appearance:none;color:#27364c!important;background:#fff!important;font-size:11px!important;font-weight:650;cursor:pointer}.du-option-select i{position:absolute;right:13px;top:50%;color:#718096;font-size:14px;font-style:normal;pointer-events:none;transform:translateY(-54%)}
.du-batch-price{border:1px solid #e0e5ed!important;background:#f6f8fb!important}.du-total{border-color:#dce3ec!important;background:#f3f6f9!important}
.du-total-metric{display:grid;gap:3px;min-width:120px}.du-total-metric small{color:#7d8998;font-size:11px}.du-total-metric b{color:#172a42;font-size:16px;font-variant-numeric:tabular-nums}
@media(max-width:720px){.du-total{display:grid!important;grid-template-columns:1fr 1fr;gap:8px 12px}.du-total-metric{min-width:0}.du-total #du-total-hint{grid-column:1/-1;margin-top:2px}}
html.eye-mode .du-import-option{border-color:#2b424e;background:#11232d}html.eye-mode .du-option-icon{color:#a9bac7;background:#1a303b}html.eye-mode .du-option-copy small{color:#718893}html.eye-mode .du-option-copy b{color:#dce6eb}html.eye-mode .du-option-select select{border-color:#344b58!important;color:#e2ebef!important;background:#152a35!important}html.eye-mode .du-batch-price,html.eye-mode .du-total{border-color:#2b424e!important;background:#11232d!important}

@media(max-width:900px) and (min-width:721px){.du-import-options{grid-template-columns:1fr}.du-import-option{grid-template-columns:38px 180px minmax(0,1fr)}}
@media(max-width:720px){
  .du-import-options{grid-template-columns:1fr;gap:8px}.du-import-option{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px}.du-option-icon{grid-row:1/3;width:34px;height:34px}.du-option-copy b{font-size:10px}.du-option-select{grid-column:2}.du-option-select select{height:38px!important;font-size:10px!important}
  .topbar .topbar-brief{color:#34445d!important}.topbar-brief-icon{color:#45546b!important;background:#e9edf3!important}.topbar .license-chip{color:#43516a!important;background:#f5f7fa!important}.license-chip .license-signal{background:#68758a!important}.topbar .account-control .avatar{color:#34445d!important;background:#e9edf3!important}
}
html.eye-mode .sidebar .brand-mark .logo{color:#bac5d4;border-color:#344454;background:#182732;box-shadow:none}html.eye-mode .sidebar .brand-mark em{color:#aab5c5;border-color:#344454;background:#182732}html.eye-mode .sidebar .brand-kicker{color:#8290a2}html.eye-mode .sidebar .brand-kicker i{background:#8793a6}html.eye-mode .sidebar .brand h2{color:#f0f3f7}html.eye-mode .sidebar .brand .brand-edition{color:#b8c2cf}html.eye-mode .sidebar .brand>span{color:#718094}
html.eye-mode .topbar .topbar-brief,html.eye-mode .topbar .license-chip{color:#c4ccd7!important;border-color:#31414e!important;background:#14232d!important}html.eye-mode .topbar-brief-icon{color:#c0c9d5;background:#22333f}html.eye-mode .topbar-brief small,html.eye-mode .license-chip small,html.eye-mode .account-copy small{color:#7f8d9f}html.eye-mode .topbar-brief b,html.eye-mode .license-chip b{color:#dce2e9}html.eye-mode .license-chip .license-signal{background:#8793a6;box-shadow:0 0 0 4px rgba(135,147,166,.1)}html.eye-mode .account-control{border-color:#31414e;background:#14232d}html.eye-mode .topbar .account-control .avatar{color:#d8dee7!important;border-color:#3b4a58!important;background:#23333f!important}html.eye-mode .account-copy .name{color:#e5e9ef!important}
html.eye-mode .rec-preview-kpis,html.eye-mode .rec-preview-details,html.eye-mode .rec-results-table,html.eye-mode .rec-result-card{border-color:#30414e;background:#13232d}html.eye-mode .rec-preview-kpis .stat-card,html.eye-mode .rec-preview-details .stat-card{border-color:#30414e;background:transparent}html.eye-mode .rec-preview-kpis .stat-card:last-child,html.eye-mode .rec-result-money{background:#182a35}html.eye-mode .rec-results-table th{background:#1c2e39}html.eye-mode .rec-result-money{border-color:#30414e}

/* ===== Wallet balance detail ===== */
.wallet-balance{position:relative;width:100%;font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.wallet-balance:hover{transform:translateY(-2px);border-color:#bdc7d5!important;box-shadow:0 12px 28px rgba(23,36,58,.08)!important}.wallet-balance:focus-visible{outline:3px solid rgba(67,82,110,.16);outline-offset:2px}.wallet-balance-open{display:flex;align-items:center;gap:5px;position:absolute;right:16px;top:14px;color:#59677c;font-size:9px;font-style:normal;font-weight:750}.wallet-balance-open svg{transition:transform .18s}.wallet-balance:hover .wallet-balance-open svg{transform:translateX(3px)}
.modal.wallet-detail-modal{width:min(980px,calc(100vw - 36px));height:min(820px,calc(100dvh - 36px));max-height:calc(100dvh - 36px);display:flex;flex-direction:column;overflow:hidden;border-radius:20px}.modal.wallet-detail-modal>.m-body{flex:1;min-height:0;padding:16px 20px;background:#f5f7fa}.wallet-detail-head>div>span{display:block;margin-bottom:4px;color:#6f7b8e;font-size:8px;font-weight:800;letter-spacing:1.2px}.wallet-detail-head h3{margin:0!important}.wallet-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px;border:1px solid #dfe5ed;border-radius:14px;background:#fff}.wallet-detail-modes,.wallet-detail-types{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.wallet-detail-modes button,.wallet-detail-types button{height:32px;padding:0 12px;border:0;border-radius:9px;color:#68758a;background:transparent;font-size:10px;font-weight:700;cursor:pointer}.wallet-detail-modes button.active,.wallet-detail-types button.active{color:#fff;background:#17243a;box-shadow:0 4px 11px rgba(23,36,58,.16)}.wallet-detail-dates{display:flex;align-items:center;gap:7px}.wallet-detail-dates label{display:flex;align-items:center;gap:6px;height:34px;padding:0 9px;border:1px solid #dfe5ed;border-radius:9px;color:#7c8798;background:#f8fafc;font-size:8px}.wallet-detail-dates input{width:112px;border:0;outline:0;color:#344054;background:transparent;font:inherit;font-size:10px}.wallet-detail-dates>i{color:#9aa3b1;font-style:normal}.wallet-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin-bottom:13px;border:1px solid #dce3ec;border-radius:15px;background:#fff}.wallet-detail-kpis article{min-height:88px;padding:15px;border-right:1px solid #e3e8ef}.wallet-detail-kpis article:last-child{border-right:0}.wallet-detail-kpis article.primary{color:#fff;background:#17243a}.wallet-detail-kpis span,.wallet-detail-kpis small{display:block;color:#7b8799;font-size:9px}.wallet-detail-kpis b{display:block;margin-top:8px;color:#26354b;font-size:21px;font-variant-numeric:tabular-nums}.wallet-detail-kpis .primary span,.wallet-detail-kpis .primary small{color:#aeb8c6}.wallet-detail-kpis .primary b{color:#fff}.wallet-detail-kpis small{margin-top:5px}.wallet-detail-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.wallet-detail-list-head>span{color:#8490a2;font-size:9px}.wallet-detail-list{overflow:hidden;border:1px solid #dfe5ed;border-radius:14px;background:#fff}.wallet-detail-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:64px;padding:10px 13px;border-bottom:1px solid #e8ecf2}.wallet-detail-row:last-child{border-bottom:0}.wallet-detail-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;color:#34445d;background:#edf1f6}.wallet-detail-icon.expense{color:#7b5260;background:#f6edef}.wallet-detail-row>div{min-width:0}.wallet-detail-row>div>b{display:block;overflow:hidden;color:#27364c;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.wallet-detail-row>div>b i{padding:2px 5px;border-radius:5px;color:#7d6570;background:#f5ecef;font-size:7px;font-style:normal}.wallet-detail-row>div>small{display:block;margin-top:4px;overflow:hidden;color:#8490a2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.wallet-detail-row>strong{text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.wallet-detail-row>strong>small{display:block;margin-top:3px;color:#8a95a6;font-size:8px;font-weight:500}.wallet-detail-empty{display:grid;min-height:220px;place-items:center;align-content:center;gap:7px;color:#929cad;text-align:center}.wallet-detail-empty b{color:#4a566a;font-size:12px}.wallet-detail-empty small{font-size:9px}.wallet-detail-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:11px}.wallet-detail-pager button{height:32px;padding:0 12px;border:1px solid #dce3ec;border-radius:9px;color:#536178;background:#fff;font-size:9px;cursor:pointer}.wallet-detail-pager button:disabled{opacity:.4;cursor:default}.wallet-detail-pager span,.wallet-detail-count{color:#8793a6;font-size:9px}.wallet-detail-count{padding:10px;text-align:center}
html.eye-mode .wallet-balance-open{color:#95a4b5}html.eye-mode .modal.wallet-detail-modal>.m-body{background:#0e1d26}html.eye-mode .wallet-detail-toolbar,html.eye-mode .wallet-detail-kpis,html.eye-mode .wallet-detail-list{border-color:#30414e;background:#13232d}html.eye-mode .wallet-detail-dates label{border-color:#334653;background:#172934}html.eye-mode .wallet-detail-dates input{color:#dce3ea}html.eye-mode .wallet-detail-modes button,html.eye-mode .wallet-detail-types button{color:#9eabb9}html.eye-mode .wallet-detail-modes button.active,html.eye-mode .wallet-detail-types button.active{color:#14212c;background:#c5ced9}html.eye-mode .wallet-detail-kpis article,html.eye-mode .wallet-detail-row{border-color:#30414e}html.eye-mode .wallet-detail-kpis b,html.eye-mode .wallet-detail-row>div>b{color:#e3e8ee}html.eye-mode .wallet-detail-kpis article.primary{background:#263746}html.eye-mode .wallet-detail-icon{color:#c2ccd7;background:#21333f}html.eye-mode .wallet-detail-icon.expense{color:#d2aeb8;background:#382932}html.eye-mode .wallet-detail-pager button{border-color:#344754;color:#bdc6d1;background:#152731}
@media(max-width:720px){.wallet-balance-open{right:13px;top:12px}.modal.wallet-detail-modal{width:calc(100vw - 12px)!important;height:calc(100dvh - 14px);max-height:calc(100dvh - 14px);border-radius:18px}.modal.wallet-detail-modal>.m-body{padding:10px}.wallet-detail-toolbar{align-items:stretch;flex-direction:column;padding:8px}.wallet-detail-modes{display:grid;grid-template-columns:repeat(3,1fr)}.wallet-detail-modes button{padding:0 5px}.wallet-detail-dates{display:grid;grid-template-columns:1fr auto 1fr}.wallet-detail-dates label{height:auto;align-items:flex-start;flex-direction:column;gap:2px;padding:7px 8px}.wallet-detail-dates input{width:100%;font-size:9px}.wallet-detail-kpis{grid-template-columns:repeat(2,1fr)}.wallet-detail-kpis article{min-height:76px;padding:12px;border-bottom:1px solid #e3e8ef}.wallet-detail-kpis article:nth-child(2){border-right:0}.wallet-detail-kpis article:nth-child(3),.wallet-detail-kpis article:nth-child(4){border-bottom:0}.wallet-detail-kpis b{font-size:17px}.wallet-detail-list-head{align-items:flex-start;flex-direction:column}.wallet-detail-types{display:grid;width:100%;grid-template-columns:repeat(4,1fr);padding:3px;border-radius:10px;background:#e9edf3}.wallet-detail-types button{padding:0 4px}.wallet-detail-list-head>span{padding-left:3px}.wallet-detail-row{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:10px}.wallet-detail-icon{width:34px;height:34px}.wallet-detail-row>div>small{max-width:190px}.wallet-detail-row>strong{font-size:11px}.modal.wallet-detail-modal>.m-foot>span{display:none}}

/* Unified stock editor: product profile, image and batch corrections in one modal. */
.stock-product-editor-meta{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:12px;margin:12px 0 14px}.stock-product-editor-meta>label{display:grid;gap:7px;padding:12px;border:1px solid var(--border);border-radius:13px;background:#f8fafc}.stock-product-editor-meta>label>span{color:var(--text-2);font-size:11px;font-weight:700}.stock-product-editor-image>div{display:flex;align-items:center;gap:10px}.stock-product-editor-image [data-product-image-preview]{display:grid;flex:0 0 52px;width:52px;height:52px;place-items:center;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text-3)}.stock-product-editor-image img{width:100%;height:100%;object-fit:cover}.stock-product-editor-modal .stock-cost-size{gap:5px}.stock-product-editor-modal .stock-cost-size .input{width:92px;height:34px;padding:6px 8px}.stock-product-editor-modal .stock-cost-size>small:first-child{color:var(--text-3);font-size:9px}.stock-product-editor-modal .stock-cost-size>small:last-child{font-size:9px}
.stock-cost-location{height:34px!important;margin-top:5px;padding:5px 24px 5px 8px!important;font-size:11px!important;color:#405951;background:#f6f9f8}
.stock-product-editor-brand{grid-column:1/-1}.stock-product-editor-brand .input{height:40px}.stock-product-editor-brand small{color:var(--text-3);font-size:10px}
.pan-size-breakdown{display:flex;flex-wrap:wrap;gap:6px;min-width:120px}.pan-size-breakdown>span{display:inline-flex;gap:7px;padding:5px 8px;border:1px solid #dfe5ee;border-radius:7px;background:#f5f7fb;font-size:12px;color:#52627a}.pan-size-breakdown b{color:#17243a}.pan-mobile-product-card .pan-size-breakdown{min-width:0;margin:10px 0}
@media(max-width:720px){.modal.stock-product-editor-modal{width:calc(100vw - 16px)!important;height:min(760px,calc(100dvh - 20px));max-height:calc(100dvh - 20px);overflow:hidden;border-radius:22px}.stock-product-editor-modal>.m-head{flex:0 0 auto;padding:16px 18px}.stock-product-editor-modal>.m-body{flex:1;min-width:0;padding:12px!important;overflow-x:hidden;overflow-y:auto;background:#f5f7fa}.stock-product-editor-modal>.m-foot{flex:0 0 auto;padding:11px 13px calc(11px + env(safe-area-inset-bottom));background:#fff}.stock-product-editor-modal .stock-cost-note{padding:11px 12px;border-color:#dfe5ee;background:#fff}.stock-product-editor-meta{grid-template-columns:1fr;gap:8px;margin:0}.stock-product-editor-meta>label{padding:11px;border-color:#dfe5ee;background:#fff}.stock-product-editor-modal .stock-cost-list{gap:9px}.stock-product-editor-modal .stock-cost-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px 10px;width:100%;box-sizing:border-box;padding:12px;border-color:#dfe5ee;border-radius:16px;box-shadow:0 5px 16px rgba(28,42,64,.035)}.stock-product-editor-modal .stock-cost-size{grid-column:1!important;grid-row:1!important;gap:5px}.stock-product-editor-modal .stock-cost-input{grid-column:2!important;grid-row:1!important}.stock-product-editor-modal .stock-cost-meta{grid-column:1/-1!important;grid-row:2!important;display:flex;align-items:center;justify-content:space-between;flex-direction:row;padding-top:7px;border-top:1px solid #edf0f5}.stock-product-editor-modal .stock-cost-meta b,.stock-product-editor-modal .stock-cost-meta small{font-size:9px}.stock-product-editor-modal .stock-cost-old,.stock-product-editor-modal .stock-cost-arrow{display:none!important}.stock-product-editor-modal .stock-cost-size .input,.stock-product-editor-modal .stock-cost-input .input{width:100%!important;height:42px;box-sizing:border-box}.stock-product-editor-modal .stock-cost-summary{padding:12px 13px;border-color:#d9e1ec;background:#edf2f8;color:#65748a}.stock-product-editor-modal .stock-cost-summary b{font-size:18px;color:#17243a}}

/* Stock-card inbound/outbound share one responsive modal language. */
.stock-flow-modal{width:min(720px,calc(100vw - 32px));overflow:hidden;border-radius:20px}.stock-flow-tip{margin:0 0 12px;padding:11px 13px;border:1px solid #dfe5ee;border-radius:12px;color:#65748a;background:#f7f9fc;font-size:12px;line-height:1.6}.stock-flow-rows{display:grid;gap:9px}.stock-flow-summary .stat-card{min-width:0}.stock-flow-summary .value{color:#17243a}.stock-out-row{border-color:#dde4ed!important;box-shadow:none!important}
@media(max-width:720px){.modal.stock-flow-modal{width:calc(100vw - 16px)!important;height:min(760px,calc(100dvh - 20px));max-height:calc(100dvh - 20px);overflow:hidden;border-radius:22px}.stock-flow-modal>.m-head{flex:0 0 auto;min-width:0;padding:16px 18px}.stock-flow-modal>.m-head h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-flow-modal>.m-body{flex:1;min-width:0;padding:12px!important;overflow-x:hidden!important;overflow-y:auto;background:#f5f7fa}.stock-flow-modal>.m-foot{flex:0 0 auto;padding:11px 13px calc(11px + env(safe-area-inset-bottom));background:#fff}.stock-flow-tip{padding:10px 11px;background:#fff}.stock-flow-row.stock-in-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%;box-sizing:border-box;margin:0!important;padding:11px;border:1px solid #dfe5ee;border-radius:15px;background:#fff}.stock-in-row>[data-field="size"],.stock-in-row>[data-field="buyPrice"]{grid-row:1}.stock-in-row>[data-field="addNum"],.stock-in-row>[data-field="unit"]{grid-row:2}.stock-in-row>[data-del]{position:absolute;right:8px;top:8px}.stock-in-row:has([data-del]){position:relative;padding-right:42px}.stock-in-row .input{min-width:0;width:100%;height:42px;box-sizing:border-box}.stock-flow-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.stock-in-modal .stock-flow-summary .stat-card:last-child{grid-column:1/-1}.stock-flow-summary .stat-card{min-height:70px;padding:11px 12px}.stock-flow-summary .label{font-size:10px}.stock-flow-summary .value{font-size:18px!important}.stock-out-row{width:100%;box-sizing:border-box;margin:0!important;padding:12px!important;border-radius:16px!important}.stock-out-meta{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px 10px!important}.stock-out-meta>b{grid-column:1;font-size:16px}.stock-out-meta>span:nth-child(2){grid-column:1}.stock-out-meta>span:nth-child(3){grid-column:2;grid-row:1;text-align:right}.stock-out-meta>span:nth-child(4){grid-column:1/-1;padding-top:6px;border-top:1px solid #edf0f4}.stock-out-row>.grid:last-child{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}.stock-out-row .input{min-width:0;width:100%;height:44px;box-sizing:border-box}.stock-out-row label{display:block;margin-bottom:5px}.stock-out-modal .stock-flow-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ===== Inventory command strip: compact core metrics + technology signal ===== */
@media(min-width:721px){
  html.light-mode .inventory-workbench,html.eye-mode .inventory-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,440px);align-items:center;gap:14px 24px;padding:20px 22px}
  .inventory-command{display:grid;gap:9px;align-self:stretch}.inventory-command .inventory-actions{justify-content:flex-end;margin:0}
  .inventory-tech-signal{position:relative;overflow:hidden;display:grid;grid-template-columns:8px minmax(92px,auto) 76px minmax(120px,1fr);align-items:center;gap:10px;min-height:48px;padding:8px 13px;border:1px solid #34445a;border-radius:13px;color:#dbe2eb;background:linear-gradient(110deg,#17243a,#25354b);box-shadow:0 9px 22px rgba(23,36,58,.13)}
  .inventory-tech-signal::after{content:"";position:absolute;right:-28px;width:94px;height:94px;border:14px solid rgba(184,198,216,.055);border-radius:50%}.inventory-tech-signal .pulse,.m-stock-tech-signal .pulse{width:7px;height:7px;border-radius:50%;background:#a8b9cf;box-shadow:0 0 0 4px rgba(168,185,207,.11),0 0 13px rgba(168,185,207,.6);animation:stock-signal-pulse 2s ease-in-out infinite}.inventory-tech-signal>div{display:grid;gap:2px}.inventory-tech-signal small{color:#8999ae;font-size:7px;font-weight:800;letter-spacing:1px}.inventory-tech-signal b{color:#f3f6f9;font-size:11px}.inventory-tech-signal b.good{color:#c3d7d2}.inventory-tech-signal b.warning{color:#d9c5a5}.inventory-tech-signal em{position:relative;z-index:1;overflow:hidden;color:#9caabd;font-size:8px;font-style:normal;text-align:right;text-overflow:ellipsis;white-space:nowrap}
  html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent,html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:100%;overflow:hidden;padding:0;border:1px solid #dce3ec;border-radius:14px;background:rgba(255,255,255,.74)}
  html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent>div,html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent>div{min-width:0;min-height:88px;padding:15px 18px;border:0!important;border-right:1px solid #e1e7ef!important;border-radius:0;background:transparent!important;box-shadow:none}
  html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent>div:last-child,html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent>div:last-child{border-right:0!important}
  html.light-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent .inventory-profit b{color:#17243a!important}
  html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent{border-color:#344855;background:rgba(9,24,33,.42)}html.eye-mode .inventory-workbench .inventory-metrics.inventory-metrics-prominent>div{border-right-color:#344855!important}
}
@keyframes stock-signal-pulse{0%,100%{opacity:.62;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}
.m-stock-tech-signal{position:relative;z-index:1;display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:14px;padding:9px 10px;border:1px solid rgba(182,199,215,.2);border-radius:12px;background:rgba(14,30,45,.22);backdrop-filter:blur(8px)}.m-stock-tech-signal>div{display:grid;gap:2px}.m-stock-tech-signal>div:nth-of-type(2){text-align:right}.m-stock-tech-signal small{color:#93a7b8;font-size:7px;font-weight:800;letter-spacing:.75px}.m-stock-tech-signal b{color:#f2f6f8;font-size:10px}.m-stock-tech-signal em{grid-column:2/-1;overflow:hidden;color:#9cadb9;font-size:7.5px;font-style:normal;text-align:right;text-overflow:ellipsis;white-space:nowrap}.m-stock-overview-metrics b.pos{color:#d8e1ea!important}.m-stock-overview-metrics b.neg{color:#e4bdc2!important}
html.light-mode .m-stock-tech-signal{border-color:#d8e1e9;background:rgba(255,255,255,.58)}html.light-mode .m-stock-tech-signal small{color:#7d8b9e}html.light-mode .m-stock-tech-signal b{color:#26354b}html.light-mode .m-stock-tech-signal em{color:#7f8d9f}html.light-mode .m-stock-tech-signal .pulse{background:#68758a;box-shadow:0 0 0 4px rgba(104,117,138,.1),0 0 10px rgba(104,117,138,.25)}
@media(max-width:900px) and (min-width:721px){html.light-mode .inventory-workbench,html.eye-mode .inventory-workbench{grid-template-columns:1fr}.inventory-command{grid-row:2}.inventory-tech-signal{grid-template-columns:8px 110px 80px 1fr}.inventory-command .inventory-actions{justify-content:flex-start}}
@media(max-width:720px){.m-stock-overview-hero{padding-bottom:14px!important}.m-stock-overview-metrics{margin-top:10px!important}.m-stock-overview-metrics>div{padding:0 6px!important}.m-stock-overview-metrics b{font-size:14px!important}.m-stock-overview-metrics>div:nth-child(2) b{font-size:12px!important}.m-stock-signal-grid,.m-stock-insight-strip{display:none!important}}

/* Wallet detail readability: comfortable desktop and mobile type scale. */
.wallet-detail-head>div>span{font-size:10px;letter-spacing:1.35px}.wallet-detail-head h3{font-size:17px!important}.wallet-detail-modes button,.wallet-detail-types button{height:36px;padding:0 15px;font-size:12px}.wallet-detail-dates label{height:39px;padding:0 11px;font-size:10px}.wallet-detail-dates input{width:128px;font-size:12px}.wallet-detail-kpis article{min-height:98px;padding:17px}.wallet-detail-kpis span,.wallet-detail-kpis small{font-size:11px}.wallet-detail-kpis b{margin-top:9px;font-size:24px}.wallet-detail-list-head>span{font-size:11px}.wallet-detail-row{grid-template-columns:40px minmax(0,1fr) auto;min-height:76px;gap:13px;padding:12px 15px}.wallet-detail-icon{width:40px;height:40px}.wallet-detail-row>div>b{font-size:13px}.wallet-detail-row>div>b i{font-size:9px}.wallet-detail-row>div>small{margin-top:5px;font-size:11px}.wallet-detail-row>strong{font-size:15px}.wallet-detail-row>strong>small{margin-top:4px;font-size:10px}.wallet-detail-pager button{height:36px;font-size:11px}.wallet-detail-pager span,.wallet-detail-count{font-size:11px}.modal.wallet-detail-modal>.m-foot{font-size:11px}
@media(max-width:720px){.wallet-detail-head>div>span{font-size:9px}.wallet-detail-head h3{font-size:16px!important}.wallet-detail-modes button,.wallet-detail-types button{height:36px;font-size:11px}.wallet-detail-dates label{font-size:9px}.wallet-detail-dates input{font-size:11px}.wallet-detail-kpis article{min-height:84px;padding:13px}.wallet-detail-kpis span,.wallet-detail-kpis small{font-size:10px}.wallet-detail-kpis b{font-size:19px}.wallet-detail-row{grid-template-columns:36px minmax(0,1fr) auto;min-height:72px;gap:9px;padding:11px}.wallet-detail-icon{width:36px;height:36px}.wallet-detail-row>div>b{font-size:12px}.wallet-detail-row>div>small{max-width:210px;font-size:10px}.wallet-detail-row>strong{font-size:13px}.wallet-detail-row>strong>small{font-size:9px}.wallet-detail-list-head>span{font-size:10px}}

/* 每日开档：店铺名称设置后，每个账号每天首次进入首页显示一次。 */
.daily-opening-mask{backdrop-filter:blur(8px)}
.daily-opening-modal{overflow:hidden;border-radius:22px!important}
.daily-opening-head{align-items:flex-start!important;background:linear-gradient(120deg,#f6faf8,#eef5f2)!important}
.daily-opening-head small{display:block;margin-bottom:5px;color:#70877f;font-size:9px;font-weight:800;letter-spacing:1.25px}
.daily-opening-head h3{color:#29483e!important;font-size:14px!important;font-variant-numeric:tabular-nums}
.daily-opening-body{padding:28px 26px!important;background:radial-gradient(circle at 95% 5%,rgba(102,151,132,.12),transparent 36%),#fff}
.daily-opening-signal{display:inline-flex;align-items:center;gap:7px;color:#5f796f;font-size:10px;font-weight:700;letter-spacing:.4px}
.daily-opening-signal i{width:7px;height:7px;border-radius:50%;background:#5b9a82;box-shadow:0 0 0 5px rgba(91,154,130,.1)}
.daily-opening-body h2{margin:15px 0 10px;color:#203b33;font-size:26px;letter-spacing:-.8px}
.daily-opening-body>p{max-width:390px;margin:0;color:#6c7e77;font-size:13px;line-height:1.8}
.daily-opening-focus{display:grid;gap:5px;margin-top:24px;padding:14px 16px;border:1px solid #dce8e2;border-radius:13px;background:#f6f9f7}
.daily-opening-focus span{color:#8b9a94;font-size:9px;letter-spacing:1px}
.daily-opening-focus b{color:#365c4e;font-size:12px;letter-spacing:.35px}
.daily-opening-foot{justify-content:stretch!important;background:#fff!important}
.daily-opening-foot .btn{width:100%;height:44px;border-radius:11px!important}
@media(max-width:720px){.daily-opening-modal{width:calc(100vw - 28px)!important;margin:auto!important;border-radius:22px!important}.daily-opening-body{padding:25px 21px!important}.daily-opening-body h2{font-size:23px}.daily-opening-foot{padding-bottom:calc(16px + env(safe-area-inset-bottom))!important}}

/* ===== 2026-09-07 desktop/macOS compatibility fixes ===== */
/* A child z-index cannot escape the filter card's backdrop-filter stacking context. */
.pan-filter.has-open-picker{
  z-index:100200!important;
}
.pan-filter.has-open-picker .app-select-picker.open,
.pan-filter.has-open-picker .app-select-popover{
  z-index:100210!important;
}

/* Safari may resolve the compact grid's intrinsic row height too aggressively. */
.modal.credit-detail-modal>.m-head,
.modal.credit-detail-modal>.m-foot{flex:0 0 auto}
.modal.credit-detail-modal>.credit-detail-body{flex:1 1 auto;min-height:0;overflow-y:auto}
.credit-detail-kpis{min-height:108px}
.credit-detail-kpis article{
  min-height:106px;
  align-content:center;
  grid-template-rows:auto minmax(24px,auto) auto;
  box-sizing:border-box;
}
.credit-detail-kpis span,.credit-detail-kpis b,.credit-detail-kpis small{display:block;line-height:1.35}
.credit-detail-kpis b{white-space:nowrap}

/* Keep the brand glyph optically centered across Blink, Firefox and Safari. */
@media(min-width:721px){
  .sidebar .brand-mark .logo{
    display:grid!important;
    flex:0 0 auto;
    place-items:center!important;
    padding:0!important;
    line-height:0!important;
    box-sizing:border-box;
  }
  .sidebar .brand-mark .logo svg{
    display:block;
    width:24px;
    height:24px;
    margin:auto;
  }
}

@media(max-width:720px){
  .credit-detail-kpis{min-height:0}
  .credit-detail-kpis article{min-height:92px}
  .m-today-out-actions{display:flex!important;min-width:92px;align-items:flex-end;flex-direction:column;gap:3px}
  .m-today-out-actions .btn{min-height:30px;padding:5px 9px;font-size:9px;white-space:nowrap}
}

/* 库存移动端最终布局兜底：必须晚于历史兼容规则。 */
@media(max-width:720px){
  .m-stock-catalog-card{padding:10px 10px 12px!important}
  .m-stock-catalog-card>.m-stock-catalog-head{display:none!important}
  .m-stock-filter-line{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(78px,.72fr) minmax(88px,.82fr)!important;gap:6px!important}
  .m-stock-filter-line>.m-stock-search{width:auto!important;margin:0!important}
  .m-stock-filter-line>.stock-filter-row{display:contents!important;width:auto!important;margin:0!important}
}

/* 2026-09-07：入库页恢复深蓝主题，并降低表单提示噪声。 */
@media(max-width:720px){
  html.light-mode .mobile-inout-shell .inout-page-tabs{
    border-color:#d9e0e9!important;
    background:#f1f4f8!important;
  }
  html.light-mode .mobile-inout-shell .inout-page-tabs .m-tab{
    color:#64748b!important;
  }
  html.light-mode .mobile-inout-shell .inout-page-tabs .m-tab.active{
    color:#fff!important;
    border-color:#14263a!important;
    background:linear-gradient(135deg,#101f34 0%,#1d3653 100%)!important;
    box-shadow:0 5px 13px rgba(15,31,52,.20)!important;
  }

  html.light-mode .m-in-workbench .m-in-form-head{
    border-bottom-color:#e1e7ef!important;
    background:linear-gradient(135deg,#f7f9fc 0%,#eef2f7 100%)!important;
  }
  html.light-mode .m-in-workbench .m-in-form-icon{
    color:#fff!important;
    border:1px solid #294563!important;
    background:linear-gradient(145deg,#10233a,#234565)!important;
    box-shadow:0 6px 14px rgba(17,36,59,.16)!important;
  }
  html.light-mode .m-in-workbench .m-in-form-head small{color:#718096!important}
  html.light-mode .m-in-workbench .m-in-form-head h3{color:#16253a!important}
  html.light-mode .m-in-workbench .m-in-form-head p{color:#8894a4!important}

  .m-in-workbench .m-in-product-block{
    padding:11px 12px 10px!important;
  }
  html.light-mode .m-in-workbench .m-in-product-block .form-grid{
    gap:11px!important;
  }
  html.light-mode .m-in-workbench .m-in-product-block label.small{
    margin:0 0 5px!important;
    color:#536176!important;
    font-size:11px!important;
    line-height:1.25!important;
    font-weight:650!important;
  }
  html.light-mode .m-in-workbench .in-code-field label::after{
    color:#536b83!important;
    background:#edf2f7!important;
  }
  html.light-mode .m-in-workbench .m-in-product-block .input,
  html.light-mode .m-in-workbench .m-in-product-block .brand-picker-trigger{
    min-height:43px!important;
    border-color:#d9e0e8!important;
    border-radius:11px!important;
    color:#1d2939!important;
    background:#fbfcfd!important;
    box-shadow:none!important;
  }
  html.light-mode .m-in-workbench .m-in-product-block .input:focus{
    border-color:#7189a5!important;
    background:#fff!important;
    box-shadow:0 0 0 3px rgba(39,70,104,.08)!important;
  }
  .m-in-workbench .m-in-product-block input::placeholder,
  .m-in-workbench .m-in-product-block textarea::placeholder{
    color:#a7afb9!important;
    opacity:1!important;
    font-size:13px!important;
    font-weight:400!important;
    letter-spacing:0!important;
  }
  .m-in-workbench .m-in-product-block .m-in-main-input::placeholder{
    color:#9aa4af!important;
    font-size:13px!important;
    font-weight:450!important;
  }
  html.light-mode .m-in-workbench .m-in-product-photo{
    min-height:64px!important;
    padding:8px 9px!important;
    border:1px dashed #d7dee7!important;
    background:#f7f9fb!important;
  }
  .m-in-workbench .m-in-product-photo .product-photo-preview{
    width:44px!important;
    height:44px!important;
    color:#46617f!important;
    border-color:#d8e1ed!important;
    background:#edf2f8!important;
  }
  .m-in-workbench .m-in-product-photo .in-product-photo-copy b{color:#26364c!important;font-size:11px!important}
  .m-in-workbench .m-in-product-photo .in-product-photo-copy span{color:#8b96a5!important;font-size:8.5px!important}
  .m-in-workbench .m-in-product-photo .btn{min-height:30px!important;color:#324a67!important;border-color:#d2dbe7!important;background:#fff!important}
}

/* 2026-09-07：我的页面回归系统深蓝主题，绿色只保留业务语义状态。 */
@media(max-width:720px){
  html.light-mode .me-page .me-hero{
    border-color:#d5deea!important;
    color:#17243a!important;
    background:
      radial-gradient(circle at 92% 10%,rgba(54,83,124,.09),transparent 29%),
      linear-gradient(138deg,#f8faff 0%,#f0f4f9 58%,#e8eef6 100%)!important;
    box-shadow:0 10px 25px rgba(23,36,58,.075)!important;
  }
  html.light-mode .me-page .me-hero::after{border-color:rgba(38,63,96,.05)!important}
  html.light-mode .me-page .me-hero .me-avatar{
    color:#fff!important;
    border-color:#294766!important;
    background:linear-gradient(145deg,#11243b,#284968)!important;
    box-shadow:0 7px 16px rgba(17,36,59,.16)!important;
  }
  html.light-mode .me-page .me-overline{color:#526987!important}
  html.light-mode .me-page .me-hero .me-name{color:#17263d!important}
  html.light-mode .me-page .me-hero .me-shop{color:#708096!important}
  html.light-mode .me-page .me-hero .me-badge{
    color:#49627f!important;
    border-color:#d3dce8!important;
    background:rgba(255,255,255,.76)!important;
  }
  html.light-mode .me-page .me-hero .me-badge i{
    background:#55789e!important;
    box-shadow:0 0 0 3px rgba(85,120,158,.12)!important;
  }
  html.light-mode .me-page .me-hero-meta{border-top-color:#d6dee9!important}
  html.light-mode .me-page .me-hero-meta>span+span{border-left-color:#d6dee9!important}
  html.light-mode .me-page .me-hero-meta small{color:#8793a4!important}
  html.light-mode .me-page .me-hero-meta b{color:#263d5b!important}

  html.light-mode .me-page .me-snapshot{
    border-color:#dfe5ed!important;
    box-shadow:0 8px 22px rgba(23,36,58,.05)!important;
  }
  html.light-mode .me-page .me-snapshot-head{
    border-bottom-color:#e5e9f0!important;
    background:linear-gradient(135deg,#fbfcfe,#f3f6fa)!important;
  }
  html.light-mode .me-page .me-snapshot-head small{color:#66758b!important}
  html.light-mode .me-page .me-snapshot-head h3{color:#17243a!important}
  html.light-mode .me-page .me-snapshot-head button{color:#4e617b!important;border-color:#d8e0ea!important}
  html.light-mode .me-page .me-snapshot-grid .ic,
  html.light-mode .me-page .me-snapshot-grid .ic.out,
  html.light-mode .me-page .me-snapshot-grid .ic.stock,
  html.light-mode .me-page .me-snapshot-grid .ic.profit{
    color:#365777!important;
    background:#edf2f7!important;
  }
  html.light-mode .me-page .me-snapshot-grid button:nth-child(2n) .ic{
    color:#53617c!important;
    background:#f0f1f6!important;
  }

  html.light-mode .me-page .me-group{border-color:#e0e5ed!important;box-shadow:0 6px 20px rgba(23,36,58,.04)!important}
  html.light-mode .me-page .me-group h3 span{color:#17243a!important}
  html.light-mode .me-page .me-group h3 small{color:#8994a5!important}
  html.light-mode .me-page .me-cell{
    border-color:#e1e6ed!important;
    background:#fbfcfe!important;
  }
  html.light-mode .me-page .me-cell .me-cell-icon,
  html.light-mode .me-page .me-cell:nth-child(2n) .me-cell-icon{
    color:#294968!important;
    background:#edf2f7!important;
  }
  html.light-mode .me-page .me-cell:nth-child(4n+2) .me-cell-icon,
  html.light-mode .me-page .me-cell:nth-child(4n+3) .me-cell-icon{
    color:#4d5875!important;
    background:#f0f1f6!important;
  }
  html.light-mode .me-page .me-cell .me-cell-label{color:#1d2b40!important}
  html.light-mode .me-page .me-cell .me-cell-desc{color:#8993a2!important}
  html.light-mode .me-page .me-cell-index,
  html.light-mode .me-page .me-cell-arrow{color:#8693a5!important}
  html.light-mode .me-page .me-item .me-icon{color:#355371!important;background:#eef2f7!important}
  html.light-mode .me-page .me-item .me-label{color:#213047!important}
}

/* 账号密码安全：设置页与管理员重置弹窗。 */
.account-password-card{overflow:hidden;padding:0!important}
.account-password-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e4e9f0;background:linear-gradient(135deg,#fafcff,#f2f5fa)}
.account-password-head h3{margin:4px 0;color:#17243a;font-size:17px}.account-password-head p{margin:0;color:#7b8799;font-size:11px}
.account-password-head>span{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#fff;background:#172f4b}
.account-password-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:10px;padding:17px 20px 20px}
.account-password-form label,.member-password-modal label{display:grid;gap:6px;color:#526079;font-size:11px;font-weight:650}
.account-password-form .btn{min-height:42px;white-space:nowrap}
.member-password-modal{display:grid;gap:13px}.member-password-modal p{margin:0 0 2px;color:#68758a;font-size:12px;line-height:1.6}.member-password-modal p b{color:#17243a}
html.eye-mode .account-password-head{border-color:#2a3d55;background:#121d2c}.eye-mode .account-password-head h3,.eye-mode .member-password-modal p b{color:#edf3fb}.eye-mode .account-password-head p,.eye-mode .member-password-modal p{color:#8190a5}
@media(max-width:720px){
  .account-password-head{padding:14px}.account-password-head>span{width:36px;height:36px}
  .account-password-form{grid-template-columns:1fr;padding:14px}
  .account-password-form .input,.member-password-modal .input{font-size:16px}
  .member-actions{flex-wrap:wrap}
}

/* 心愿储蓄 2.0：冷光数据舱视觉。 */
.wish-page{position:relative;gap:14px}
.wish-hero{min-height:224px;border:1px solid rgba(105,153,187,.28);background:radial-gradient(circle at 82% 20%,rgba(56,117,153,.28),transparent 31%),linear-gradient(125deg,#0b1726 0%,#172d46 58%,#23475b 100%);box-shadow:0 18px 46px rgba(13,33,51,.2)}
.wish-grid{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(rgba(155,183,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(155,183,255,.35) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000,transparent 78%)}
.wish-orbit{position:absolute;border:1px solid rgba(116,169,195,.22);border-radius:50%}.wish-orbit-a{width:310px;height:310px;right:-58px;top:-135px}.wish-orbit-b{width:210px;height:210px;right:-8px;top:-85px;box-shadow:0 0 40px rgba(81,163,186,.12)}
.wish-live{display:inline-flex;align-items:center;gap:7px;margin-bottom:22px;padding:6px 10px;border:1px solid rgba(150,180,255,.2);border-radius:99px;color:#b8c9ff;background:rgba(18,35,66,.5);font-size:9px;font-weight:800;letter-spacing:.13em}.wish-live i{width:6px;height:6px;border-radius:50%;background:#67e8f9;box-shadow:0 0 12px #67e8f9}
.wish-hero-copy small{color:#91abc0}.wish-progress-line{width:min(520px,100%);height:4px;margin-top:24px;overflow:hidden;border-radius:9px;background:rgba(255,255,255,.1)}.wish-progress-line i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#67d9df,#7ca8c5);box-shadow:0 0 14px rgba(103,217,223,.7)}
.wish-ring{background:conic-gradient(#70e3f2 var(--wish-progress),rgba(255,255,255,.1) 0);box-shadow:0 0 45px rgba(98,220,240,.16)}.wish-ring:before{background:#132648}.wish-ring small{color:#87dce9;letter-spacing:.12em}
.wish-stats{border-color:#dce5eb;background:linear-gradient(120deg,#fff,#f7fafb)}.wish-stats article{position:relative;border-color:#e4eaee}.wish-stats article:before{content:"";position:absolute;left:0;top:18px;width:2px;height:26px;background:linear-gradient(#67d9df,#557b99)}.wish-stats article:first-child:before{display:none}.wish-stats small{color:#61758a;font-weight:750;letter-spacing:.05em}
.wish-card{border-color:#dce5eb!important;background:linear-gradient(145deg,#fff 0%,#f9fbfc 100%)!important}.wish-card header{padding-bottom:15px;border-bottom:1px solid #e7ecef}.wish-card header small{color:#52738d;letter-spacing:.16em}.wish-chip{border:1px solid #d8e5ec;color:#3d627b;background:#edf4f7}
.wish-source{margin:14px 0 16px}.wish-source>span{display:block;margin-bottom:7px;color:#69758a;font-size:11px;font-weight:700}.wish-source>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.wish-source button{height:36px;border:1px solid #dce3ee;border-radius:10px;color:#68758b;background:#fff;font-size:11px;cursor:pointer}.wish-source button.active{border-color:#365d79;color:#fff;background:linear-gradient(135deg,#18314d,#365f78);box-shadow:0 7px 16px rgba(31,67,91,.2)}
.wish-amount>div{border-color:#dbe4ea;background:linear-gradient(110deg,#f7f9fa,#f0f5f7)}.wish-amount input{letter-spacing:-.03em}.wish-primary{background:linear-gradient(110deg,#132b45,#31536b);box-shadow:0 10px 22px rgba(25,48,70,.18)}.wish-secondary{background:linear-gradient(110deg,#294a66,#416f86);box-shadow:0 10px 22px rgba(40,79,103,.17)}
.wish-record-mark{color:#1f637b;background:#e6f6f8;box-shadow:inset 0 0 0 1px #c9e7ea}.wish-record-copy b{display:flex;align-items:center;gap:9px;font-size:14px}.wish-record-copy em{padding:4px 7px;border:1px solid #d8e5ec;border-radius:99px;color:#456c84;background:#edf4f7;font-size:9px;font-style:normal;font-weight:650}.wish-pager{display:flex;align-items:center;justify-content:center;gap:14px;padding:15px 0 7px;border-top:1px solid #edf0f5}.wish-pager button{height:32px;padding:0 13px;border:1px solid #dce3e9;border-radius:9px;color:#4f6577;background:#fff;font-size:10px;cursor:pointer}.wish-pager button:disabled{cursor:not-allowed;opacity:.38}.wish-pager span{color:#8b95a7;font-size:10px}.wish-pager span b{color:#355f78;font-size:12px}
.eye-mode .wish-card header{border-color:#293a52}.eye-mode .wish-source button,.eye-mode .wish-pager button{border-color:#33475a;color:#aebdca;background:#172737}.eye-mode .wish-source button.active{color:#fff;background:linear-gradient(135deg,#23445f,#3b7180)}.eye-mode .wish-record-copy em{border-color:#355362;color:#b7d3dc;background:#203845}
@media(max-width:720px){
  .wish-hero{min-height:184px;padding:20px}.wish-live{margin-bottom:13px}.wish-hero-copy small{font-size:9px;letter-spacing:.13em}.wish-progress-line{margin-top:15px}.wish-stats article{padding:13px 9px}.wish-stats small{font-size:8px}.wish-source>div{grid-template-columns:1fr 1fr}.wish-source button{height:39px}.wish-form{grid-template-columns:1fr}.wish-form label:first-child,.wish-form label.wide{grid-column:auto}.wish-record-copy b{align-items:flex-start;flex-direction:column;gap:3px}.wish-record-copy em{padding:2px 6px}
}
/* Product category chooser stays inside the editor to avoid native mobile select layers. */
.stock-product-category-field{display:grid;gap:9px;padding:12px;border:1px solid var(--border);border-radius:13px;background:#f8fafc}.stock-product-category-field>span{color:var(--text-2);font-size:11px;font-weight:700}.stock-product-category-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.stock-product-category-option{height:36px;border:1px solid #dbe3ed;border-radius:10px;color:#58667b;background:#fff;font-size:11px;font-weight:700;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.stock-product-category-option.active{border-color:#17243a;color:#fff;background:#17243a;box-shadow:0 5px 13px rgba(23,36,58,.18)}
@media(max-width:720px){.stock-product-editor-meta>label,.stock-product-category-field{padding:11px;border-color:#dfe5ee;background:#fff}.stock-product-category-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.stock-product-category-option{height:38px;font-size:12px}}
/* Per-account inventory ownership: store accounts and warehouses. */
.inventory-location-select{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0;padding:11px 12px;border:1px solid #dfe5ee;border-radius:13px;background:#f7f9fc}.inventory-location-select>div{display:grid;gap:3px}.inventory-location-select b{color:#26354b;font-size:11px}.inventory-location-select small{color:#8793a5;font-size:9px}.inventory-location-select .input{width:min(270px,48%)}.inventory-location-manager{display:grid;gap:13px;margin-top:14px}.inventory-location-manager h3{margin:3px 0}.inventory-location-manager p{margin:4px 0 0;color:#738096;font-size:11px}.inventory-location-chips{display:flex;gap:7px;flex-wrap:wrap}.inventory-location-chip{position:relative;display:grid;gap:2px;min-width:100px;padding:9px 28px 9px 11px;border:1px solid #dce3ec;border-radius:11px;background:#f7f9fc}.inventory-location-chip b{color:#26354b;font-size:11px}.inventory-location-chip small{color:#8793a5;font-size:8px}.inventory-location-chip button{position:absolute;right:7px;top:7px;border:0;color:#8590a1;background:transparent;cursor:pointer}.inventory-location-add{display:grid;grid-template-columns:minmax(180px,1fr) 150px auto;gap:8px}.inventory-location-add .input{min-width:0}
@media(max-width:720px){.inventory-location-select{align-items:stretch;flex-direction:column;margin:8px 0}.inventory-location-select .input{width:100%;height:42px}.inventory-location-manager{padding:14px!important}.inventory-location-add{grid-template-columns:1fr 120px}.inventory-location-add .btn{grid-column:1/-1}.stock-filter-row:has([data-key="location"]){grid-template-columns:1fr 1fr}.stock-filter-row:has([data-key="location"])>[data-stock-picker]:first-child{grid-column:1/-1}}

/* Inventory ownership visibility: product summary, size batches and price history. */
.stock-location-badge{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;margin-top:5px;padding:4px 8px;border:1px solid #dce5e2;border-radius:999px;background:#f4f7f6;color:#536861;font-size:9.5px;font-weight:650;line-height:1;white-space:nowrap}.stock-location-badge i{display:grid;place-items:center;width:13px;height:13px;border-radius:50%;background:#dfe9e6;color:#34574d;font-size:8px;font-style:normal}.stock-location-badge.compact{margin-top:4px}.size-locations{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px}.size-locations span,.history-location{display:inline-flex;align-items:center;padding:3px 6px;border-radius:6px;background:#edf3f1;color:#557067;font-size:8.5px;font-weight:600;line-height:1.2}.price-history-table .history-location{white-space:nowrap}
html.eye-mode .stock-location-badge{border-color:#29434b;background:#172b32;color:#a8c0bb}html.eye-mode .stock-location-badge i{background:#274047;color:#d5e7e3}html.eye-mode .size-locations span,html.eye-mode .history-location{background:#20383d;color:#b8cec9}
@media(max-width:720px){.m-stock-main{min-width:0}.m-stock-main>.stock-location-badge{margin-top:6px}.m-stock-product-card .size-cell{min-height:94px}.size-locations{flex-direction:column;align-items:flex-start}.size-locations span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-history-table{min-width:570px}.price-history-table th,.price-history-table td{padding-left:9px;padding-right:9px}}

/* 全局浮层优先级：所有从业务弹窗中打开的选择器/联想框必须显示在 modal-mask 之上。 */
@media(max-width:720px){.mobile-select-sheet-mask{z-index:500000!important}.brand-autocomplete-menu{z-index:500010!important}.profit-number-pad{z-index:500020!important}}
.rec-accounting-date{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:12px;margin-top:10px;padding:11px 12px;border:1px solid #dce4ec;border-radius:12px;background:#f7f9fc}.rec-accounting-date label{display:grid;gap:3px}.rec-accounting-date b{color:#26354b;font-size:11px}.rec-accounting-date small{color:#7f8ca0;font-size:9px}.rec-accounting-date .input{width:100%}@media(max-width:720px){.rec-accounting-date{grid-template-columns:1fr;gap:8px}.rec-accounting-date .input{min-height:44px}}
/* 对账文件与库存归属绑定：同货号同尺码也只在所选仓库/店铺账号内匹配。 */
.rec-location-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:center;gap:14px;margin-top:10px;padding:12px;border:1px solid #dce4ec;border-radius:12px;background:linear-gradient(135deg,#f8fafc,#f1f6f7)}.rec-location-wrap label{display:grid;gap:4px}.rec-location-wrap b{color:#26354b;font-size:11px}.rec-location-wrap small{color:#7b899d;font-size:9px;line-height:1.5}.rec-location-wrap .input{width:100%}.rec-location-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 9px;border:1px solid #d5e5e1;border-radius:999px;color:#3e6259;background:#edf5f3;font-size:9px;font-weight:750;white-space:nowrap}.m-record-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:7px}.m-record-meta span{display:inline-flex;align-items:center;padding:4px 7px;border-radius:7px;color:#617084;background:#f0f3f7;font-size:9px}.m-record-meta span:last-child{color:#3f655c;background:#edf5f3}
html.eye-mode .rec-location-wrap{border-color:#2d4254;background:linear-gradient(135deg,#162536,#182d37)}html.eye-mode .rec-location-wrap b{color:#e8f0f6}html.eye-mode .rec-location-wrap small{color:#91a0b3}html.eye-mode .rec-location-badge,html.eye-mode .m-record-meta span:last-child{border-color:#315048;color:#bad3cc;background:#203a35}
@media(max-width:720px){.rec-location-wrap{grid-template-columns:1fr;gap:8px}.rec-location-wrap .input{min-height:44px}.rec-location-badge{font-size:9px}.m-record-meta{margin-top:6px}}
/* Funding account type chooser: rendered inside the modal, never behind WebView overlays. */
.credit-account-type-field{grid-column:1/-1}.credit-account-type-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.credit-account-type-option{min-height:38px;padding:7px 9px;border:1px solid #dbe3ed;border-radius:10px;color:#58667b;background:#fff;font-size:11px;font-weight:700;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.credit-account-type-option.active{border-color:#17243a;color:#fff;background:#17243a;box-shadow:0 5px 13px rgba(23,36,58,.18)}
@media(max-width:720px){.credit-account-type-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.credit-account-type-option{min-height:42px;font-size:12px}.credit-account-type-option:last-child{grid-column:1/-1}}
