*{margin:0;-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%}body{overflow-x:hidden;font-size:16px}uni-app,uni-page,uni-page-wrapper,uni-page-body{display:block;box-sizing:border-box;width:100%}uni-page-wrapper{position:relative}#app,uni-app,uni-page,uni-page-wrapper{height:100%}.uni-mask{position:fixed;z-index:999;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.5)}.uni-fade-enter-active,.uni-fade-leave-active{transition-duration:.25s;transition-property:opacity;transition-timing-function:ease}.uni-fade-enter-from,.uni-fade-leave-active{opacity:0}.uni-loading,uni-button[loading]:before{background-color:transparent;background-image:url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=);background-repeat:no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}html{--primary-color: #007aff;--UI-BG: #fff;--UI-BG-1: #f7f7f7;--UI-BG-2: #fff;--UI-BG-3: #f7f7f7;--UI-BG-4: #4c4c4c;--UI-BG-5: #fff;--UI-FG: #000;--UI-FG-0: rgba(0, 0, 0, .9);--UI-FG-HALF: rgba(0, 0, 0, .9);--UI-FG-1: rgba(0, 0, 0, .5);--UI-FG-2: rgba(0, 0, 0, .3);--UI-FG-3: rgba(0, 0, 0, .1)}uni-page[data-type] uni-page-body{background-color:transparent}body:after{position:fixed;content:"";left:-1000px;top:-1000px;animation:shadow-preload .1s;animation-delay:3s}@keyframes shadow-preload{0%{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}to{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}}.uni-async-error{position:absolute;left:0;right:0;top:0;bottom:0;color:#999;padding:100px 10px;text-align:center}.uni-async-loading{box-sizing:border-box;width:100%;padding:50px;text-align:center}.uni-async-loading .uni-loading{width:30px;height:30px}uni-tabbar{display:block;box-sizing:border-box;width:100%;z-index:998}.uni-tabbar{display:flex;z-index:998;box-sizing:border-box}.uni-tabbar-top,.uni-tabbar-bottom,.uni-tabbar-top .uni-tabbar,.uni-tabbar-bottom .uni-tabbar{position:fixed;left:var(--window-left);right:var(--window-right)}.uni-app--showlayout+.uni-tabbar-top,.uni-app--showlayout+.uni-tabbar-bottom,.uni-app--showlayout+.uni-tabbar-top .uni-tabbar,.uni-app--showlayout+.uni-tabbar-bottom .uni-tabbar{left:var(--window-margin);right:var(--window-margin)}.uni-tabbar-bottom .uni-tabbar{bottom:0;padding-bottom:0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.uni-tabbar~.uni-placeholder{width:100%;margin-bottom:0;margin-bottom:constant(safe-area-inset-bottom);margin-bottom:env(safe-area-inset-bottom)}.uni-tabbar *{box-sizing:border-box}.uni-tabbar__item{display:flex;justify-content:center;align-items:center;flex-direction:column;flex:1;font-size:0;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.uni-tabbar__bd{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.uni-tabbar__icon{position:relative;display:inline-block;margin-top:5px}.uni-tabbar__icon.uni-tabbar__icon__diff{margin-top:0;width:34px;height:34px}.uni-tabbar__icon img{width:100%;height:100%}.uni-tabbar__iconfont{font-family:UniTabbarIconFont}.uni-tabbar__label{position:relative;text-align:center;font-size:10px}.uni-tabbar-border{position:absolute;left:0;top:0;width:100%;height:1px;transform:scaleY(.5)}.uni-tabbar__reddot{position:absolute;top:2px;right:0;width:12px;height:12px;border-radius:50%;background-color:#f43530;color:#fff;transform:translate(40%)}.uni-tabbar__badge{width:auto;height:16px;line-height:16px;border-radius:16px;min-width:16px;padding:0 2px;font-size:12px;text-align:center;white-space:nowrap}.uni-tabbar__mid{display:flex;justify-content:center;position:absolute;bottom:0;background-size:100% 100%}.uni-app--showtabbar uni-page-wrapper{display:block;height:calc(100% - var(--tab-bar-height));height:calc(100% - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - var(--tab-bar-height) - env(safe-area-inset-bottom))}uni-page[data-type] uni-page-wrapper{height:100%}.uni-app--showtabbar uni-page-wrapper:after{content:"";display:block;width:100%;height:var(--tab-bar-height);height:calc(var(--tab-bar-height) + constant(safe-area-inset-bottom));height:calc(var(--tab-bar-height) + env(safe-area-inset-bottom))}.uni-app--showtabbar uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px - var(--tab-bar-height));height:calc(100% - 44px - constant(safe-area-inset-top) - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - 44px - env(safe-area-inset-top) - var(--tab-bar-height) - env(safe-area-inset-bottom))}*{box-sizing:border-box}uni-page-body{background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.55;min-height:100vh;min-height:100dvh;overscroll-behavior:none}body{overscroll-behavior:none}body.page-lock{overflow:hidden}uni-input,uni-textarea,.qinput,.searchbox,.input{font-size:16px}uni-button,.tap{min-height:44px}uni-button:after{border:none}uni-button{background:transparent;padding:0;line-height:normal;color:inherit}.safe-bottom{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}uni-tabbar,.uni-tabbar,uni-tabbar__placeholder{display:none!important}uni-page-wrapper,uni-page-body{min-height:100vh;min-height:100dvh}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg);padding-top:max(env(safe-area-inset-top,0px),var(--safe-top, 0px));padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}.app.no-tabbar{padding-top:0;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.appbar{flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);--appbar-pad-top: calc(12px + max(env(safe-area-inset-top, 0px), var(--safe-top, 0px))) ;padding:12px 16px 11px;padding-top:var(--appbar-pad-top);position:sticky;top:0;z-index:30;box-shadow:0 6px 16px -14px rgba(16,24,40,.55)}.appbar h3{font-size:17px;font-weight:600;color:var(--text-primary);line-height:1.3;margin:0}.appbar .sub{font-size:12px;color:var(--text-muted);margin-top:2px}.appbar.has-back{padding-left:48px}.backbtn{position:absolute;left:8px;top:var(--appbar-pad-top);transform:translateY(-8px);width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:22px;line-height:1}.appbar-acts{position:absolute;right:12px;top:var(--appbar-pad-top);transform:translateY(-4px)}.mini-switch{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--brand-ink);background:var(--brand-bg);border:1px solid var(--brand-border);border-radius:999px;padding:6px 10px;min-height:32px}.body{flex:1 1 auto;padding:12px 14px 8px}.tabbar-fade{position:fixed;left:0;right:0;bottom:0;height:calc(140px + env(safe-area-inset-bottom,0px));z-index:45;pointer-events:none;backdrop-filter:blur(9px) saturate(112%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.4) 44%,rgba(0,0,0,.85) 72%,rgba(0,0,0,1) 90%);mask-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.4) 44%,rgba(0,0,0,.85) 72%,#000 90%);background:var(--veil-grad)}.tabbar-float{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));height:62px;border-radius:18px;background:var(--surface-glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow-2),0 12px 30px rgba(16,24,40,.14);display:flex;align-items:stretch;z-index:60;transition:transform .25s,opacity .25s}.tabbar-float.sunk{transform:translateY(130%);opacity:0;pointer-events:none}.tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;position:relative;color:var(--text-muted);font-size:11px}.tab .ti{font-size:20px;line-height:1.1;opacity:.72}.tab.on{color:var(--brand-ink);font-weight:600}.tab.on .ti{opacity:1;text-shadow:0 0 10px rgba(14,116,144,.35)}.tab .badge{position:absolute;top:6px;right:calc(50% - 22px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;line-height:16px;text-align:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:13px;margin-bottom:10px;box-shadow:var(--shadow-1)}.row{display:flex;align-items:center}.row-between{display:flex;align-items:center;justify-content:space-between}.col{display:flex;flex-direction:column}.flex1{flex:1;min-width:0}.gap6{gap:6px}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.mt6{margin-top:6px}.mt8{margin-top:8px}.mt10{margin-top:10px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mb8{margin-bottom:8px}.mb10{margin-bottom:10px}.mb12{margin-bottom:12px}.t-primary{color:var(--text-primary)}.t-secondary{color:var(--text-secondary)}.t-muted{color:var(--text-muted)}.t-danger{color:var(--danger-ink)}.t-warning{color:var(--warning-ink)}.t-brand{color:var(--brand-ink)}.t-sm{font-size:12px}.t-xs{font-size:11px}.t-lg{font-size:16px}.t-bold{font-weight:600}.t-num{font-variant-numeric:tabular-nums;font-weight:600}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{height:1px;background:var(--border);margin:10px 0}.section-title{font-size:11px;color:var(--text-muted);letter-spacing:.6px;margin:14px 2px 8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid var(--border-control);background:var(--surface);color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.2}.btn-p{background:var(--brand);border-color:var(--brand);color:#fff}.btn-s{background:var(--surface-2);border-color:var(--border);color:var(--text-secondary)}.btn-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-ink)}.btn-dir{min-height:50px;font-size:15px;font-weight:600}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn:active{filter:brightness(.96)}.pill{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;border-radius:5px;font-size:11px;font-weight:500;white-space:nowrap;background:var(--surface-3);color:var(--text-secondary)}.pill.in{background:#e8f3e9;color:#1f5c23}.pill.out{background:#fbeaea;color:#96201f}.pill.src-群消息{background:var(--warning-bg);color:var(--warning-ink)}.pill.src-智能体对话{background:var(--agent-bg);color:var(--agent-ink)}.pill.src-手动登记{background:var(--brand-bg);color:var(--brand-ink)}.searchbar{display:flex;gap:8px;margin-bottom:10px}.searchbar .sb{flex:1;display:flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;background:var(--surface);border:1px solid var(--border);border-radius:9px;color:var(--text-muted);font-size:14px}.searchbar .sb uni-input{flex:1;border:none;outline:none;background:transparent;font-size:16px;color:var(--text-primary)}.filterbar{display:flex;gap:7px;overflow-x:auto;margin-bottom:12px;padding-bottom:2px}.filterbar::-webkit-scrollbar{height:0}.fchip{flex-shrink:0;border:1px solid var(--border-control);border-radius:14px;padding:7px 12px;font-size:12px;color:var(--text-secondary);background:var(--surface);min-height:34px}.fchip.on{background:var(--brand-bg);border-color:var(--brand);color:var(--brand-ink);font-weight:600}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:46px 20px;color:var(--text-muted);text-align:center}.empty .ei{font-size:38px;opacity:.35;margin-bottom:12px}.empty .et{font-size:14px;color:var(--text-secondary)}.empty .ed{font-size:12px;margin-top:6px}.note{border-radius:10px;padding:11px 13px;margin-bottom:10px;background:var(--warning-bg);border:1px solid var(--warning-border)}.note .nt{font-size:12.5px;font-weight:600;color:var(--warning-ink);margin-bottom:4px}.note p,.note uni-p{font-size:12px;color:var(--text-secondary);line-height:1.65;display:block}.note.blue{background:var(--info-bg);border-color:var(--info-border)}.note.blue .nt{color:var(--info-ink)}.note.red{background:var(--danger-bg);border-color:var(--danger-border)}.note.red .nt{color:var(--danger-ink)}.note.green{background:var(--success-bg);border-color:var(--success-border)}.note.green .nt{color:var(--success-ink)}.sticky-bottom{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--surface);border-top:1px solid var(--border);padding:10px 14px calc(78px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 18px rgba(16,24,40,.06)}.sticky-bottom .hint{font-size:11.5px;color:var(--text-muted);text-align:center;margin-top:7px}.sheet-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--mask);z-index:70;display:flex;align-items:flex-end}.sheet-in{width:100%;max-height:78vh;background:var(--surface);border-radius:16px 16px 0 0;display:flex;flex-direction:column}.sheet-h{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--border)}.sheet-h .t{font-size:15px;font-weight:600}.sheet-h .x{font-size:13px;color:var(--text-muted);padding:6px 8px}.sheet-b{padding:6px 16px calc(14px + env(safe-area-inset-bottom,0px));overflow-y:auto}.pickrow{display:flex;align-items:center;gap:11px;padding:11px 12px;border-bottom:1px solid var(--border);min-height:60px}.pickrow:last-child{border-bottom:none}.pickrow.sel{background:var(--brand-bg);box-shadow:inset 3px 0 0 var(--brand)}.thumb{width:42px;height:42px;border-radius:8px;background:var(--surface-3);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;overflow:hidden}.qinput,.input{width:100%;min-height:44px;background:var(--surface);border:1px solid var(--border-control);border-radius:9px;padding:10px 12px;color:var(--text-primary);outline:none}.qinput:focus,.input:focus{border-color:var(--brand)}.who-av{width:22px;height:22px;border-radius:50%;background:var(--surface-3);color:var(--text-secondary);font-size:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.me-av{width:48px;height:48px;border-radius:50%;background:var(--brand-bg);color:var(--brand-ink);font-size:18px;font-weight:600;display:flex;align-items:center;justify-content:center}.list{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:10px}.li{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 13px;border-bottom:1px solid var(--border);font-size:14px}.li .r{margin-left:auto;color:var(--text-muted);font-size:12.5px;display:flex;align-items:center;gap:6px}.li .chev{color:var(--text-muted);font-size:16px}.li .ok{color:var(--success-ink);font-size:12px}/*!
 * ============================================================================
 * 仓储库存管理系统 · 手机端 H5 设计令牌 (tokens.css)
 * ----------------------------------------------------------------------------
 * 浅色为默认主题（仓库强光环境），深色通过 [data-theme="dark"] 覆盖。
 * 方向主题（入库=绿 / 出库=红）走 **类名** .t-in / .t-out，遵循 PRD §7.6.2。
 *
 * 【为什么方向色必须走类名】
 *   微信小程序里 :root 定义的 var() 会 **静默失效**（不报错、样式直接丢）。
 *   所以方向色不能只依赖 CSS 变量。本文件对每一条用到方向色的组件规则，
 *   都额外写了一「类名 + 直接色值」的兜底规则：
 *     · H5 主路径   → var(--dir-*)        （改主题只改令牌）
 *     · 小程序兜底 → .t-in .xxx / .t-out .xxx （var() 失效时靠这层，值相同）
 *     · 深色覆盖   → [data-theme="dark"] .t-in .xxx
 *   ⚠️ 新增任何用到方向色的组件时，必须同时补齐这三层，否则移植小程序会掉样式。
 *
 * 【data-theme 挂载位置】
 *   H5：<html data-theme="dark">
 *   小程序：页面根节点 <view data-theme="dark">（uni-app 会透传到 wxml）
 *   注意：.t-in / .t-out 必须挂在 data-theme 元素的 **子级**，否则
 *   [data-theme="dark"] .t-in 选择器不生效（tokens.css 已同时提供
 *   [data-theme="dark"].t-in 变体兜底）。
 *
 * 【导入方式】
 *   H5：main.js / App.vue 里 `import './design/tokens.css'`
 *   小程序：把本文件内容放进 App.vue 的 \3c style>（不要用 :root 选择器）
 * ============================================================================
 */:root{--c-white: #FFFFFF;--c-gray-25: #FAFBFC;--c-gray-50: #F2F3F5;--c-gray-100: #E9EBEF;--c-gray-200: #E4E6EA;--c-gray-300: #D5DAE1;--c-gray-400: #B9C0C9;--c-gray-500: #8A919B;--c-gray-600: #676D75;--c-gray-700: #545A63;--c-gray-800: #3A3F47;--c-gray-900: #1B1D21;--c-green-50: #E8F3E9;--c-green-100: #CBE3CD;--c-green-500: #2E7D32;--c-green-700: #1F5C23;--c-green-900: #1B4D1E;--c-red-50: #FBEAEA;--c-red-100: #F2D2D1;--c-red-500: #C62828;--c-red-700: #96201F;--c-red-900: #7E1B1A;--c-cyan-50: #E3F1F5;--c-cyan-100: #C5E1E9;--c-cyan-500: #0E7490;--c-cyan-700: #0A5A70;--c-cyan-900: #084755;--c-amber-50: #FEF3E2;--c-amber-100: #F8DFB9;--c-amber-500: #B45309;--c-amber-700: #8A3F07;--c-blue-50: #E8F0FD;--c-blue-100: #C7D9FA;--c-blue-500: #1D4ED8;--c-blue-700: #1E3A8A;--c-violet-50: #F0EAFC;--c-violet-100: #DED4F8;--c-violet-500: #6D28D9;--c-violet-700: #4C1D95}:root{--bg: #F2F3F5;--bg-sunken: #E9EBEF;--surface: #FFFFFF;--surface-2: #F7F8FA;--surface-3: #EFF1F4;--surface-glass: rgba(255, 255, 255, .86);--surface-inverse: #1B1D21;--mask: rgba(16, 24, 40, .45);--veil-grad: linear-gradient(to bottom, rgba(242, 243, 245, 0) 0%, rgba(242, 243, 245, .22) 38%, rgba(242, 243, 245, .62) 66%, rgba(242, 243, 245, .92) 100%);--border: #E4E6EA;--border-strong: #B9C0C9;--border-control: #8A919B;--focus-ring: rgba(14, 116, 144, .28);--text-primary: #1B1D21;--text-secondary: #545A63;--text-muted: #676D75;--text-placeholder:#9AA1AB;--text-disabled: #A8AEB6;--text-inverse: #FFFFFF;--text-link: #0E7490;--brand: #0E7490;--brand-hover: #0B6079;--brand-active: #095468;--brand-bg: #E3F1F5;--brand-border: #A5CEDA;--brand-ink: #0A5A70;--success: #0E7490;--success-bg: #E3F1F5;--success-border: #A5CEDA;--success-ink: #0A5A70;--warning: #B45309;--warning-bg: #FEF3E2;--warning-border: #F0C999;--warning-ink: #8A3F07;--danger: #C62828;--danger-hover: #AE2323;--danger-active: #9E2020;--danger-bg: #FBEAEA;--danger-border: #E9B2B0;--danger-ink: #96201F;--info: #1D4ED8;--info-bg: #E8F0FD;--info-border: #B6CDF3;--info-ink: #1E3A8A;--agent: #6D28D9;--agent-bg: #F0EAFC;--agent-border: #D6C7F5;--agent-ink: #4C1D95;--shadow-0: none;--shadow-1: 0 1px 2px rgba(16, 24, 40, .05);--shadow-2: 0 4px 16px rgba(16, 24, 40, .08), 0 1px 3px rgba(16, 24, 40, .04);--shadow-3: 0 8px 28px rgba(16, 24, 40, .12), 0 2px 6px rgba(16, 24, 40, .06);--shadow-focus: 0 0 0 3px var(--focus-ring)}:root{--btn-height-sm: 34px;--btn-height-md: 44px;--btn-height-lg: 50px;--btn-radius: 10px;--btn-pad-x: 16px;--btn-font-size: 15px;--input-height: 44px;--input-radius: 8px;--input-font-size: 16px;--input-pad-x: 12px;--input-bg: #FFFFFF;--input-bg-filled: #F7F8FA;--chip-height: 34px;--chip-radius: 999px;--chip-pad-x: 12px;--chip-font-size: 13px;--badge-height: 20px;--badge-radius: 5px;--badge-pad-x: 7px;--badge-font-size: 11px;--row-height: 56px;--row-height-sm: 44px;--avatar-xs: 17px;--avatar-sm: 24px;--avatar-md: 32px;--avatar-lg: 48px;--tap-min: 44px;--appbar-height: 48px;--tabbar-height: 58px;--tabbar-radius: 18px;--tabbar-side: 10px;--tabbar-bottom: 10px;--dirbar-height: 3px;--dir-accent-width: 3px;--sheet-radius: 16px;--sheet-max-h: 78%;--toast-bottom: 180px;--z-base: 0;--z-appbar: 10;--z-sticky: 20;--z-draft: 30;--z-dock: 40;--z-sheet: 50;--z-sheet-content: 60;--z-toast: 70;--z-dialog: 80;--z-overlay: 100;--font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-numeric: "SF Pro Display", -apple-system, "PingFang SC", sans-serif;--fs-11: 11px;--lh-11: 15px;--fs-12: 12px;--lh-12: 17px;--fs-13: 13px;--lh-13: 19px;--fs-14: 14px;--lh-14: 21px;--fs-15: 15px;--lh-15: 23px;--fs-16: 16px;--lh-16: 24px;--fs-18: 18px;--lh-18: 27px;--fs-22: 22px;--lh-22: 30px}.t-in,.t-out{--dir-solid: #2E7D32;--dir-bg: #E8F3E9;--dir-border: #A8CDAB;--dir-ink: #1F5C23;--dir-deep: #1B4D1E;--dir-on-solid: #FFFFFF;--dir-bar: #2E7D32}.t-out{--dir-solid: #C62828;--dir-bg: #FBEAEA;--dir-border: #E9B2B0;--dir-ink: #96201F;--dir-deep: #7E1B1A;--dir-on-solid: #FFFFFF;--dir-bar: #C62828}[data-theme=dark] .t-in,[data-theme=dark].t-in{--dir-solid: #97C459;--dir-bg: rgba(151, 196, 89, .1);--dir-border: rgba(151, 196, 89, .3);--dir-ink: #C7E39A;--dir-deep: #B4D77A;--dir-on-solid: #0F0F0E;--dir-bar: #97C459}[data-theme=dark] .t-out,[data-theme=dark].t-out{--dir-solid: #F09595;--dir-bg: rgba(240, 149, 149, .1);--dir-border: rgba(240, 149, 149, .3);--dir-ink: #F5BEBE;--dir-deep: #FFAFAF;--dir-on-solid: #3D1010;--dir-bar: #F09595}uni-page-body,body{background:var(--bg);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-14);line-height:var(--lh-14)}uni-input,uni-textarea,.qinput,.searchbox,.ci-field{font-size:var(--input-font-size)!important}.btn{width:100%;min-height:var(--btn-height-md);padding:11px var(--btn-pad-x);border-radius:var(--btn-radius);font-size:var(--btn-font-size);font-weight:500;text-align:center;transition:filter .15s,background-color .15s,opacity .15s;display:flex;align-items:center;justify-content:center;gap:6px}.btn-p{background:var(--brand);color:var(--text-inverse)}.btn-p:hover{background:var(--brand-hover)}.btn-p:active{background:var(--brand-active)}.btn-s{background:var(--surface);border:1px solid var(--border-control);color:var(--text-secondary)}.btn-s:hover{background:var(--surface-2);color:var(--text-primary)}.btn-s:active{background:var(--surface-3)}.btn-danger{background:var(--danger);color:var(--text-inverse)}.btn-danger:hover{background:var(--danger-hover)}.btn-danger:active{background:var(--danger-active)}.btn:disabled,.btn.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn.is-loading{opacity:.75;pointer-events:none}.qinput,.input{width:100%;min-height:var(--input-height);padding:10px var(--input-pad-x);background:var(--input-bg);border:1px solid var(--border-control);border-radius:var(--input-radius);font-size:var(--input-font-size);color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s}.qinput::-moz-placeholder,.input::-moz-placeholder{color:var(--text-placeholder);font-size:var(--fs-14)}.qinput::placeholder,.input::placeholder{color:var(--text-placeholder);font-size:var(--fs-14)}.qinput:focus,.input:focus{border-color:var(--brand);box-shadow:var(--shadow-focus)}.qinput.is-error,.input.is-error{border-color:var(--danger);background:var(--danger-bg)}.qinput.is-error:focus,.input:focus.is-error{box-shadow:0 0 0 3px rgba(198,40,40,.18)}.searchbox{display:flex;align-items:center;gap:8px;min-height:var(--input-height);padding:0 var(--input-pad-x);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--input-radius);color:var(--text-muted);font-size:var(--input-font-size)}.chip{display:inline-flex;align-items:center;gap:5px;min-height:var(--chip-height);padding:0 var(--chip-pad-x);border:1px solid var(--border-control);border-radius:var(--chip-radius);background:var(--surface);color:var(--text-secondary);font-size:var(--chip-font-size);line-height:1;transition:background-color .15s,border-color .15s,color .15s}.chip:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-bg)}.chip.on{background:var(--brand-bg);border-color:var(--brand);color:var(--brand-ink);font-weight:500}.chip:after{content:"";position:absolute;top:-5px;right:0;bottom:-5px;left:0}.chip{position:relative}.pill{display:inline-flex;align-items:center;gap:4px;height:var(--badge-height);padding:0 var(--badge-pad-x);border-radius:var(--badge-radius);font-size:var(--badge-font-size);font-weight:500;line-height:1;white-space:nowrap}.pill.ok{background:var(--success-bg);color:var(--success-ink)}.pill.low{background:var(--warning-bg);color:var(--warning-ink)}.pill.miss{background:var(--danger-bg);color:var(--danger-ink)}.pill.src-form{background:var(--brand-bg);color:var(--brand-ink)}.pill.src-agent{background:var(--agent-bg);color:var(--agent-ink)}.pill.src-group{background:var(--warning-bg);color:var(--warning-ink)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--btn-radius);padding:13px;margin-bottom:10px;box-shadow:var(--shadow-1)}.li{display:flex;align-items:center;gap:10px;min-height:var(--row-height);padding:10px 13px;border-bottom:1px solid var(--border);font-size:var(--fs-15)}.li:last-child{border-bottom:none}.who-av{width:var(--avatar-xs);height:var(--avatar-xs);border-radius:50%;background:var(--surface-3);color:var(--text-secondary);font-size:9.5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.me-av{width:var(--avatar-lg);height:var(--avatar-lg);border-radius:50%;background:var(--brand-bg);color:var(--brand-ink);font-size:var(--fs-18);font-weight:500;display:flex;align-items:center;justify-content:center}.toast{position:fixed;left:50%;bottom:var(--toast-bottom);transform:translate(-50%);max-width:84%;padding:10px 15px;border-radius:12px;background:rgba(27,29,33,.95);color:var(--text-inverse);font-size:var(--fs-13);line-height:var(--lh-13);z-index:var(--z-toast);display:flex;align-items:center;gap:8px;opacity:0;pointer-events:none;transition:opacity .22s,bottom .22s}.toast.on{opacity:1;bottom:calc(var(--toast-bottom) + 10px)}.toast .t-icon{width:16px;height:16px;flex-shrink:0}.dircard{background:var(--dir-bg);border-bottom:1px solid var(--dir-border)}.t-in .dircard{background:#e8f3e9;border-bottom-color:#a8cdab}.t-out .dircard{background:#fbeaea;border-bottom-color:#e9b2b0}[data-theme=dark] .t-in .dircard,[data-theme=dark].t-in .dircard{background:rgba(151,196,89,.1);border-bottom-color:rgba(151,196,89,.3)}[data-theme=dark] .t-out .dircard,[data-theme=dark].t-out .dircard{background:rgba(240,149,149,.1);border-bottom-color:rgba(240,149,149,.3)}.dirbtn.on{background:var(--dir-bg);border-color:var(--dir-solid)}.dirbtn.on .db-ic{background:var(--dir-solid);color:var(--dir-on-solid)}.dirbtn.on .db-t{color:var(--dir-ink)}.t-in .dirbtn.on{background:#e8f3e9;border-color:#2e7d32}.t-in .dirbtn.on .db-ic{background:#2e7d32;color:#fff}.t-in .dirbtn.on .db-t{color:#1f5c23}.t-out .dirbtn.on{background:#fbeaea;border-color:#c62828}.t-out .dirbtn.on .db-ic{background:#c62828;color:#fff}.t-out .dirbtn.on .db-t{color:#96201f}[data-theme=dark] .t-in .dirbtn.on,[data-theme=dark].t-in .dirbtn.on{background:rgba(151,196,89,.1);border-color:#97c459}[data-theme=dark] .t-in .dirbtn.on .db-ic,[data-theme=dark].t-in .dirbtn.on .db-ic{background:#97c459;color:#0f0f0e}[data-theme=dark] .t-in .dirbtn.on .db-t,[data-theme=dark].t-in .dirbtn.on .db-t{color:#c7e39a}[data-theme=dark] .t-out .dirbtn.on,[data-theme=dark].t-out .dirbtn.on{background:rgba(240,149,149,.1);border-color:#f09595}[data-theme=dark] .t-out .dirbtn.on .db-ic,[data-theme=dark].t-out .dirbtn.on .db-ic{background:#f09595;color:#3d1010}[data-theme=dark] .t-out .dirbtn.on .db-t,[data-theme=dark].t-out .dirbtn.on .db-t{color:#f5bebe}.dirbar{height:var(--dirbar-height);background:var(--dir-bar)}.t-in .dirbar{background:#2e7d32}.t-out .dirbar{background:#c62828}[data-theme=dark] .t-in .dirbar,[data-theme=dark].t-in .dirbar{background:#97c459}[data-theme=dark] .t-out .dirbar,[data-theme=dark].t-out .dirbar{background:#f09595}.line{border-left:var(--dir-accent-width) solid var(--dir-solid)}.t-in .line{border-left-color:#2e7d32}.t-out .line{border-left-color:#c62828}[data-theme=dark] .t-in .line,[data-theme=dark].t-in .line{border-left-color:#97c459}[data-theme=dark] .t-out .line,[data-theme=dark].t-out .line{border-left-color:#f09595}.pill.in,.pill.out{background:var(--dir-bg);color:var(--dir-ink);border:1px solid var(--dir-border)}.t-in .pill.in,.t-in .pill.out{background:#e8f3e9;color:#1f5c23;border-color:#a8cdab}.t-out .pill.in,.t-out .pill.out{background:#fbeaea;color:#96201f;border-color:#e9b2b0}[data-theme=dark] .t-in .pill.in,[data-theme=dark].t-in .pill.in,[data-theme=dark] .t-in .pill.out,[data-theme=dark].t-in .pill.out{background:rgba(151,196,89,.16);color:#c7e39a;border-color:rgba(151,196,89,.3)}[data-theme=dark] .t-out .pill.in,[data-theme=dark].t-out .pill.in,[data-theme=dark] .t-out .pill.out,[data-theme=dark].t-out .pill.out{background:rgba(240,149,149,.16);color:#f5bebe;border-color:rgba(240,149,149,.3)}.btn-dir{background:var(--dir-solid);color:var(--dir-on-solid);font-weight:600}.btn-dir:hover{filter:brightness(1.08)}.t-in .btn-dir{background:#2e7d32;color:#fff}.t-out .btn-dir{background:#c62828;color:#fff}[data-theme=dark] .t-in .btn-dir,[data-theme=dark].t-in .btn-dir{background:#97c459;color:#0f0f0e}[data-theme=dark] .t-out .btn-dir,[data-theme=dark].t-out .btn-dir{background:#f09595;color:#3d1010}.confirmbox{background:var(--surface);border:1px solid var(--dir-border);border-radius:12px;padding:14px 15px;margin-bottom:11px}.confirmbox .cb-t,.confirmbox .cb-ar{color:var(--dir-ink)}.t-in .confirmbox{border-color:#a8cdab}.t-in .confirmbox .cb-t,.t-in .confirmbox .cb-ar{color:#1f5c23}.t-out .confirmbox{border-color:#e9b2b0}.t-out .confirmbox .cb-t,.t-out .confirmbox .cb-ar{color:#96201f}[data-theme=dark] .t-in .confirmbox,[data-theme=dark].t-in .confirmbox{border-color:rgba(151,196,89,.3)}[data-theme=dark] .t-in .confirmbox .cb-t,[data-theme=dark].t-in .confirmbox .cb-t,[data-theme=dark] .t-in .confirmbox .cb-ar,[data-theme=dark].t-in .confirmbox .cb-ar{color:#c7e39a}[data-theme=dark] .t-out .confirmbox,[data-theme=dark].t-out .confirmbox{border-color:rgba(240,149,149,.3)}[data-theme=dark] .t-out .confirmbox .cb-t,[data-theme=dark].t-out .confirmbox .cb-t,[data-theme=dark] .t-out .confirmbox .cb-ar,[data-theme=dark].t-out .confirmbox .cb-ar{color:#f5bebe}.dirpreview{background:var(--dir-bg);border:1px solid var(--dir-border);color:var(--text-secondary)}.dirpreview .dp-v{color:var(--dir-ink);font-weight:600}.t-in .dirpreview{background:#e8f3e9;border-color:#a8cdab}.t-in .dirpreview .dp-v{color:#1f5c23}.t-out .dirpreview{background:#fbeaea;border-color:#e9b2b0}.t-out .dirpreview .dp-v{color:#96201f}[data-theme=dark] .t-in .dirpreview,[data-theme=dark].t-in .dirpreview{background:rgba(151,196,89,.1);border-color:rgba(151,196,89,.3)}[data-theme=dark] .t-in .dirpreview .dp-v,[data-theme=dark].t-in .dirpreview .dp-v{color:#c7e39a}[data-theme=dark] .t-out .dirpreview,[data-theme=dark].t-out .dirpreview{background:rgba(240,149,149,.1);border-color:rgba(240,149,149,.3)}[data-theme=dark] .t-out .dirpreview .dp-v,[data-theme=dark].t-out .dirpreview .dp-v{color:#f5bebe}.voice-draft{border-top:2px solid var(--dir-solid)}.vd-dir{background:var(--dir-bg);color:var(--dir-ink);border:1px solid var(--dir-border)}.t-in .voice-draft{border-top-color:#2e7d32}.t-in .vd-dir{background:#e8f3e9;color:#1f5c23;border-color:#a8cdab}.t-out .voice-draft{border-top-color:#c62828}.t-out .vd-dir{background:#fbeaea;color:#96201f;border-color:#e9b2b0}[data-theme=dark] .t-in .voice-draft,[data-theme=dark].t-in .voice-draft{border-top-color:#97c459}[data-theme=dark] .t-in .vd-dir,[data-theme=dark].t-in .vd-dir{background:rgba(151,196,89,.18);color:#c7e39a;border-color:rgba(151,196,89,.3)}[data-theme=dark] .t-out .voice-draft,[data-theme=dark].t-out .voice-draft{border-top-color:#f09595}[data-theme=dark] .t-out .vd-dir,[data-theme=dark].t-out .vd-dir{background:rgba(240,149,149,.18);color:#f5bebe;border-color:rgba(240,149,149,.3)}.bubble.done{background:var(--dir-bg);border:1px solid var(--dir-border)}.t-in .bubble.done{background:#e8f3e9;border-color:#a8cdab}.t-out .bubble.done{background:#fbeaea;border-color:#e9b2b0}[data-theme=dark] .t-in .bubble.done,[data-theme=dark].t-in .bubble.done{background:rgba(151,196,89,.12);border-color:rgba(151,196,89,.3)}[data-theme=dark] .t-out .bubble.done,[data-theme=dark].t-out .bubble.done{background:rgba(240,149,149,.12);border-color:rgba(240,149,149,.3)}[data-theme=dark]{--bg: #0F0F0E;--bg-sunken: #131312;--surface: #1E1E1C;--surface-2: #262624;--surface-3: #303030;--surface-glass: rgba(34, 34, 32, .82);--surface-inverse: #F1EFE8;--mask: rgba(0, 0, 0, .6);--veil-grad: linear-gradient(to bottom, rgba(15, 15, 14, 0) 0%, rgba(15, 15, 14, .3) 38%, rgba(15, 15, 14, .72) 66%, rgba(15, 15, 14, .95) 100%);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--border-control: rgba(255, 255, 255, .28);--focus-ring: rgba(93, 202, 165, .28);--text-primary: #F1EFE8;--text-secondary: #A9A79F;--text-muted: #8E8C84;--text-placeholder:#7C7A74;--text-disabled: #55534E;--text-inverse: #1B1D21;--text-link: #5DCAA5;--brand: #5DCAA5;--brand-hover: #6FD6B1;--brand-active: #4FBE99;--brand-bg: rgba(95, 202, 165, .12);--brand-border: rgba(95, 202, 165, .32);--brand-ink: #5DCAA5;--success: #5DCAA5;--success-bg: rgba(95, 202, 165, .12);--success-border: rgba(95, 202, 165, .32);--success-ink: #5DCAA5;--warning: #EF9F27;--warning-bg: rgba(239, 159, 39, .12);--warning-border: rgba(239, 159, 39, .3);--warning-ink: #EF9F27;--danger: #F09595;--danger-hover: #F5B5B5;--danger-active: #E58080;--danger-bg: rgba(240, 149, 149, .12);--danger-border: rgba(240, 149, 149, .3);--danger-ink: #F09595;--info: #85B7EB;--info-bg: rgba(133, 183, 235, .12);--info-border: rgba(133, 183, 235, .3);--info-ink: #85B7EB;--agent: #AFA9EC;--agent-bg: rgba(175, 169, 236, .12);--agent-border: rgba(175, 169, 236, .3);--agent-ink: #AFA9EC;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 4px 16px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .35);--shadow-3: 0 8px 28px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .4);--shadow-focus: 0 0 0 3px rgba(93, 202, 165, .25);--input-bg: #262624;--input-bg-filled: #262624}/*!
 * ============================================================================
 * theme-vibrant.css — 视觉方向「明快活力 / 活力橙」覆盖层
 * ----------------------------------------------------------------------------
 * 辉总 2026-11-13 拍板：整套风格从 A 青绿商务换成活力橙（原方案 C），
 * 不是只换一个按钮，是全站配色 / 底色 / 渐变 / 图标色一起换。
 *
 * 只覆盖外观，前面几轮调好的结构全部保留：
 *   · 顶部品牌条 + 今日概览卡 + 分区小标题
 *   · 矢量线条图标（CSS mask + currentColor）
 *   · 吸底区左右内收 + 与页面同色的柔和渐隐（不穿帮）
 *   · 确认按钮按填写状态出现、收小成胶囊、活力橙、无流光
 *   · 入库绿 / 出库红方向四层防错完全不变
 *
 * 【跨端说明】本期只编译 H5。mask-image 在 H5 全系浏览器可用；
 * 后续平移小程序时把 .ico 系列换成 <image src="...svg"> 即可，
 * 方向色仍走 .t-in / .t-out 类名兜底，不依赖 :root 变量。
 * ============================================================================
 */:root{--bg: #FFF6EE;--bg-sunken: #FCEBD9;--surface: #FFFFFF;--surface-2: #FFF9F3;--surface-3: #FBEAD8;--surface-glass: rgba(255, 255, 255, .93);--veil-grad: linear-gradient(to bottom, rgba(255, 246, 238, 0) 0%, rgba(255, 246, 238, .22) 38%, rgba(255, 246, 238, .62) 66%, rgba(255, 246, 238, .92) 100%);--border: #F2E4D5;--border-strong: #E8CFB6;--border-control: #E8D2BC;--focus-ring: rgba(242, 101, 34, .28);--text-primary: #2A2118;--text-secondary: #7A6653;--text-muted: #9B8B7A;--text-placeholder:#BCA99A;--brand: #F26522;--brand-hover: #D9531A;--brand-active: #BE4515;--brand-bg: #FFF0E2;--brand-border: #FBC99F;--brand-ink: #C24D16;--success: #16A34A;--success-bg: #EAF7EC;--success-border: #BBE5C3;--success-ink: #166534;--shadow-1: 0 4px 14px rgba(180, 110, 50, .09);--shadow-2: 0 10px 28px rgba(180, 110, 50, .14);--shadow-3: 0 16px 40px rgba(180, 110, 50, .18);--btn-radius: 14px;--input-radius: 12px;--tabbar-radius: 20px;--sheet-radius: 22px;--v-grad: linear-gradient(135deg, #FB923C 0%, #F97316 45%, #F43F5E 100%);--v-in: linear-gradient(135deg, #16A34A 0%, #4ADE80 100%);--v-out: linear-gradient(135deg, #E11D48 0%, #FB7185 100%);--v-btn: linear-gradient(135deg, #FB923C 0%, #F97316 50%, #F43F5E 100%)}uni-page-body{background:var(--bg)}body{background:var(--bg)}.app{background:radial-gradient(120% 34% at 100% -4%,rgba(249,115,22,.1),transparent 62%),var(--bg)}.appbar{background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);--appbar-pad-top: calc(14px + max(env(safe-area-inset-top, 0px), var(--safe-top, 0px))) ;padding:14px 16px 13px;padding-top:var(--appbar-pad-top)}.appbar h3{font-size:18px;font-weight:700;letter-spacing:.2px}.appbar .sub{font-size:11.5px;color:var(--text-muted);margin-top:3px}.appbar.has-back{padding-left:52px}.backbtn{color:var(--brand-ink);font-size:0}.backbtn:after{content:"";display:block;width:22px;height:22px;background-color:currentColor;-webkit-mask:var(--ic-back) center / contain no-repeat;mask:var(--ic-back) center / contain no-repeat}.brandbar{display:flex;align-items:center;gap:11px}.logo-mini{width:38px;height:38px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--v-grad);color:#fff;font-size:16px;font-weight:800;box-shadow:0 6px 16px rgba(242,101,34,.26)}.brandtxt{flex:1;min-width:0}.brandtxt .bt{display:block;font-size:16px;font-weight:700;color:var(--text-primary)}.brandtxt .bs{display:block;font-size:11px;color:var(--text-muted);margin-top:2px}.warehouse-tag{flex-shrink:0;font-size:10.5px;color:var(--brand-ink);background:var(--brand-bg);border:1px solid var(--brand-border);border-radius:999px;padding:5px 10px}.seclabel{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);margin:22px 16px 9px}.seclabel .sl-b{font-size:13px;color:var(--text-primary);font-weight:700}.seclabel .more{margin-left:auto;color:var(--brand-ink);font-weight:600;font-size:11.5px}.dircard{gap:10px;padding:2px 14px 12px}.t-in .dircard,.t-out .dircard{background:transparent;border-bottom-color:transparent}.dirbtn{border-radius:18px;min-height:74px;padding:11px 12px;background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-1);transition:transform .2s,box-shadow .2s}.dirbtn:active{transform:translateY(1px)}.dirbtn .db-ic{width:34px;height:34px;border-radius:11px;background:var(--surface-3);color:var(--text-secondary);font-size:0}.dirbtn .db-t{font-size:14px;font-weight:700}.dirbtn .db-s{font-size:10.5px}.dirbtn .db-ic:after{content:"";display:block;width:19px;height:19px;background-color:currentColor;-webkit-mask:var(--ic-down) center / contain no-repeat;mask:var(--ic-down) center / contain no-repeat}.dircard .dirbtn:nth-child(2) .db-ic:after{-webkit-mask-image:var(--ic-up);mask-image:var(--ic-up)}.dirbtn.on{color:#fff;border-color:transparent}.t-in .dirbtn.on{background:var(--v-in);box-shadow:0 10px 26px rgba(22,163,74,.26)}.t-out .dirbtn.on{background:var(--v-out);box-shadow:0 10px 26px rgba(225,29,72,.26)}.t-in .dirbtn.on .db-ic,.t-out .dirbtn.on .db-ic{background:rgba(255,255,255,.22);color:#fff}.t-in .dirbtn.on .db-t,.t-out .dirbtn.on .db-t{color:#fff}.t-in .dirbtn.on .db-s,.t-out .dirbtn.on .db-s{color:rgba(255,255,255,.82)}.dirbtn.on:after{content:"✓";position:absolute;right:10px;top:6px;font-size:11px;color:rgba(255,255,255,.9)}.dircard .dirbtn{position:relative}.dirbar{height:4px;margin:0 14px;border-radius:0 0 4px 4px}.t-in .dirbar{background:var(--v-in)}.t-out .dirbar{background:var(--v-out)}.t-in .line{border-left-color:#4ade80}.t-out .line{border-left-color:#fb7185}.card{border-radius:18px;padding:14px;margin-bottom:11px;border:1px solid var(--border);box-shadow:var(--shadow-1)}.card.flat{box-shadow:none}.list{border-radius:18px;box-shadow:var(--shadow-1);border:1px solid var(--border);overflow:hidden}.li{min-height:54px;padding:13px 14px}.pill{border-radius:7px}.t-in .pill.in,.t-in .pill.out{background:#eaf7ec;color:#166534;border-color:#bbe5c3}.t-out .pill.in,.t-out .pill.out{background:#fff0f1;color:#9f1239;border-color:#fecdd3}.note{border-radius:14px;padding:12px 14px}.fchip{border-radius:999px;border-color:var(--border-control)}.fchip.on{background:var(--brand-bg);border-color:var(--brand);color:var(--brand-ink)}.searchbar .sb{border-radius:14px;border-color:var(--border)}.qinput,.input{border-radius:12px;border-color:var(--border-control)}.thumb{border-radius:12px;background:var(--v-grad);color:#fff}.fval{border-radius:12px;background:var(--surface-2);border-color:var(--border)}.fval .thumb.sm{border-radius:8px}.addline{border-radius:14px;border-color:var(--border-control)}.who-av,.me-av{background:var(--brand-bg);color:var(--brand-ink)}.sheet-in{border-radius:22px 22px 0 0}.sheet-h{padding:16px 18px 12px}.sheet-b{padding-left:18px;padding-right:18px}.pickrow.sel{background:var(--brand-bg);border-radius:0;box-shadow:inset 3px 0 0 var(--brand)}.empty .ei,.empty-card .ei{font-size:0;display:block;width:46px;height:46px;margin:0 auto 12px;border-radius:15px;background:var(--surface-3);position:relative;opacity:1}.empty-card .ei{margin-bottom:12px}.empty .ei:after,.empty-card .ei:after{content:"";position:absolute;top:13px;right:13px;bottom:13px;left:13px;background-color:var(--text-muted);-webkit-mask:var(--ic-box) center / contain no-repeat;mask:var(--ic-box) center / contain no-repeat}.btn{border-radius:14px;border-color:var(--border-control)}.btn-p{background:var(--v-grad);border-color:transparent;color:#fff;box-shadow:0 8px 20px rgba(242,101,34,.22)}.btn-s{border-color:var(--border)}.btn-dir{border-radius:999px;min-height:44px;position:relative;overflow:hidden;color:#fff;border-color:transparent}.t-in .btn-dir,.t-out .btn-dir{background:var(--v-btn);box-shadow:0 6px 16px rgba(249,115,22,.22)}.sticky-bottom .btn-dir{display:flex;width:80%;max-width:280px;margin:0 auto;font-size:14px}.t-in .btn-dir:before,.t-out .btn-dir:before{display:none}.sticky-bottom{border-top:none;background:linear-gradient(to bottom,rgba(255,246,238,0),rgba(255,246,238,.9) 18%,#fff6ee 45%,#fff6ee);box-shadow:none;pointer-events:none;padding-left:34px;padding-right:34px;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}.sticky-bottom .btn-dir,.sticky-bottom .mic-big{pointer-events:auto}.dirpreview{border-radius:12px;background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-1)}.summary .st{font-weight:600;color:var(--text-secondary)}.sb-ic{font-size:0;width:18px;height:18px;flex-shrink:0}.sb-ic:after{content:"";display:block;width:18px;height:18px;background-color:var(--text-muted);-webkit-mask:var(--ic-search) center / contain no-repeat;mask:var(--ic-search) center / contain no-repeat}.mic-big{border-radius:16px;background:var(--v-grad)}.mic-big .mi{font-size:0;width:20px;height:20px}.mic-big .mi:after{content:"";display:block;width:20px;height:20px;background-color:#fff;-webkit-mask:var(--ic-mic) center / contain no-repeat;mask:var(--ic-mic) center / contain no-repeat}.bubble{border-radius:16px}.bubble.user{border-radius:16px 16px 4px}.voice-draft{border-radius:18px;box-shadow:var(--shadow-1)}.tabbar-float{border-radius:20px;background:var(--surface-glass);border:1px solid var(--border);box-shadow:0 12px 32px rgba(180,110,50,.16),0 2px 6px rgba(180,110,50,.06)}.tab{font-size:10.5px}.tab.on{color:var(--brand-ink);font-weight:700}.tab.on:before{content:"";position:absolute;top:0;width:22px;height:3px;border-radius:0 0 4px 4px;background:var(--v-grad)}.tab.on .ti{opacity:1;text-shadow:none}.tab .ti{font-size:0;opacity:1}.tab .badge{background:var(--danger)}.ico{display:block;width:21px;height:21px;flex-shrink:0;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.ic-entry{-webkit-mask-image:var(--ic-home);mask-image:var(--ic-home)}.ic-stock{-webkit-mask-image:var(--ic-grid);mask-image:var(--ic-grid)}.ic-todo{-webkit-mask-image:var(--ic-check);mask-image:var(--ic-check)}.ic-me{-webkit-mask-image:var(--ic-user);mask-image:var(--ic-user)}:root{--ic-home: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMyAxMC41IDEyIDNsOSA3LjVWMjFIM3onLz48cGF0aCBkPSdNOSAyMXYtN2g2djcnLz48L3N2Zz4=);--ic-grid: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cmVjdCB4PSczJyB5PSczJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyByeD0nMicvPjxyZWN0IHg9JzEzJyB5PSczJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyByeD0nMicvPjxyZWN0IHg9JzMnIHk9JzEzJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyByeD0nMicvPjxyZWN0IHg9JzEzJyB5PScxMycgd2lkdGg9JzgnIGhlaWdodD0nOCcgcng9JzInLz48L3N2Zz4=);--ic-check: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdtNCAxMiA1IDVMMjAgNicvPjwvc3ZnPg==);--ic-user: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48Y2lyY2xlIGN4PScxMicgY3k9JzgnIHI9JzQnLz48cGF0aCBkPSdNNCAyMWE4IDggMCAwIDEgMTYgMCcvPjwvc3ZnPg==);--ic-down: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMTIgM3YxM20wIDAtNS01bTUgNSA1LTVNNCAyMGgxNicvPjwvc3ZnPg==);--ic-up: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMTIgMjBWN20wIDAtNSA1bTUtNSA1IDVNNCA0aDE2Jy8+PC9zdmc+);--ic-mic: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cmVjdCB4PSc5JyB5PSczJyB3aWR0aD0nNicgaGVpZ2h0PScxMScgcng9JzMnLz48cGF0aCBkPSdNNSAxMWE3IDcgMCAwIDAgMTQgME0xMiAxOHYzbS00IDBoOCcvPjwvc3ZnPg==);--ic-search: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48Y2lyY2xlIGN4PScxMScgY3k9JzExJyByPSc3Jy8+PHBhdGggZD0nbTE2IDE2IDUgNScvPjwvc3ZnPg==);--ic-box: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMyA3LjUgMTIgM2w5IDQuNXY5TDEyIDIxbC05LTQuNXonLz48cGF0aCBkPSdNMyA3LjUgMTIgMTJsOS00LjVNMTIgMTJ2OScvPjwvc3ZnPg==);--ic-back: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPScjMDAwMDAwJyBzdHJva2Utd2lkdGg9JzEuOCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdtMTUgNC04IDggOCA4Jy8+PC9zdmc+)}
