:root{color:#1d1d1f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand:#0071e3;--brand-dark:#06c;--brand-light:#f5f5f7;--brand-soft:#e8e8ed;--brand-glow:#0071e347;--brand-border:#0000001f;--brand-muted-bg:#0071e314;--gradient-navbar:#161617e0;--gradient-brand:linear-gradient(180deg, #1d1d1f 0%, #424245 100%);--gradient-progress:linear-gradient(90deg, #0071e3 0%, #42a1ec 100%);--gradient-primary:#0071e3;--gradient-bg:#f5f5f7;--gradient-surface:linear-gradient(180deg, #fff 0%, #fbfbfd 100%);--color-bg:#f5f5f7;--color-surface:#fff;--color-border:#d2d2d7;--color-text:#1d1d1f;--color-muted:#86868b;--color-primary:#0071e3;--color-primary-hover:#0077ed;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 24px #00000014;--shadow-lg:0 12px 40px #0000001f;--glow-primary:0 0 0 4px #0071e333;--status-info-bg:#e8f4fd;--status-info-text:#0071e3;--status-success-bg:#e8f8ed;--status-success-text:#248a3d;--status-warning-bg:#fff4e5;--status-warning-text:#bf4800;--status-danger-bg:#fff0f0;--status-danger-text:#d70015;--status-neutral-bg:#f5f5f7;--status-neutral-text:#6e6e73;--status-urgent-bg:#fff5f5;--status-urgent-border:#ffd6d6;--status-overdue-bg:#fff7ed;--status-overdue-border:#fed7aa;--status-overdue-text:#c2410c;--page-max-width:1200px;--page-form-max-width:720px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,PingFang SC,Helvetica Neue,sans-serif;font-weight:400;line-height:1.47059}*{box-sizing:border-box}body{background:var(--color-bg);min-width:320px;min-height:100vh;color:var(--color-text);margin:0;position:relative}#app{z-index:1;min-height:100vh;position:relative}button,input{font:inherit}a{color:inherit;text-decoration:none}.detail-page-title{max-width:var(--page-max-width);flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 auto 12px;display:flex}.detail-page-title--wide{max-width:var(--page-max-width)}.detail-page-title h1{margin:0;font-size:24px;font-weight:700;line-height:1.2}.detail-page-title .detail-nav-group{margin-left:4px}.detail-context-bar{max-width:var(--page-max-width);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:14px;flex-wrap:wrap;align-items:center;gap:14px;margin:0 auto 16px;padding:14px 18px;display:flex}.detail-context-bar--wide{max-width:var(--page-max-width)}.page-stack{max-width:var(--page-max-width);flex-direction:column;gap:16px;margin:0 auto;display:flex}.page-stack>.card,.page-stack>.banner,.page-stack>.empty{margin:0}.page-shell{max-width:var(--page-max-width);margin:0 auto}.detail-context-row{flex-wrap:wrap;flex:100%;align-items:center;gap:14px;min-width:0;display:flex}.detail-context-main{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.detail-context-actions{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.detail-nav-group{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.detail-nav-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;line-height:1.4}.detail-nav-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--status-info-bg)}.detail-nav-btn:disabled{opacity:.35;cursor:not-allowed}.detail-nav-position{color:var(--color-muted);text-align:center;white-space:nowrap;min-width:4.5em;padding:0 2px;font-size:12px;font-weight:500}.detail-context-extra{border-top:1px solid var(--color-border);flex-wrap:wrap;flex:100%;align-items:center;gap:10px 12px;margin-top:2px;padding-top:14px;display:flex}.detail-context-bar .title-wrap{flex-wrap:wrap;align-items:center;gap:10px;font-size:16px;font-weight:600;line-height:1.3;display:flex}.navbar[data-v-414cec92]{z-index:100;background:var(--gradient-navbar);-webkit-backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid #ffffff14;position:sticky;top:0;box-shadow:0 1px #00000029}.navbar-inner[data-v-414cec92]{max-width:var(--page-max-width);align-items:center;gap:40px;height:56px;margin:0 auto;padding:0 24px;display:flex;position:relative}.brand[data-v-414cec92]{letter-spacing:-.02em;color:#fff;text-shadow:0 1px 8px #0000001f;align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;transition:opacity .2s;display:inline-flex}.brand-logo[data-v-414cec92]{border-radius:6px;flex-shrink:0;width:28px;height:28px;display:block}.brand[data-v-414cec92]:hover{opacity:.9}.nav-menu[data-v-414cec92]{flex:1;align-items:center;gap:28px;margin:0;padding:0;list-style:none;display:flex}.nav-link[data-v-414cec92]{color:#ffffffc7;padding:6px 0;font-size:15px;font-weight:500;text-decoration:none;transition:color .2s;display:inline-block;position:relative}.nav-link[data-v-414cec92]:after{content:"";transform-origin:50%;background:#fff;border-radius:2px;width:100%;height:2px;transition:transform .25s;position:absolute;bottom:0;left:0;transform:scaleX(0);box-shadow:0 0 8px #fff9}.nav-link[data-v-414cec92]:hover{color:#fff}.nav-link[data-v-414cec92]:hover:after,.nav-link.active[data-v-414cec92]:after{transform:scaleX(1)}.nav-link.active[data-v-414cec92]{color:#fff;font-weight:600}.user-menu[data-v-414cec92]{flex-shrink:0;align-items:center;height:100%;margin-left:auto;display:flex;position:relative}.avatar-trigger[data-v-414cec92]{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:0;display:flex;position:relative}.avatar[data-v-414cec92]{object-fit:cover;border-radius:50%;flex-shrink:0;width:34px;height:34px;display:block}.avatar-badge[data-v-414cec92]{color:#fff;text-align:center;background:#ff3b30;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-3px;right:-3px}.dropdown[data-v-414cec92]{min-width:168px;box-shadow:var(--shadow-md);z-index:120;background:#fff;border-radius:12px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.dropdown-item[data-v-414cec92]{text-align:left;cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}.dropdown-item[data-v-414cec92]:hover{background:var(--brand-light)}.menu-badge[data-v-414cec92]{color:#fff;text-align:center;background:#ff3b30;border-radius:999px;flex-shrink:0;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:700;line-height:20px}.nav-toggle[data-v-414cec92]{cursor:pointer;background:#ffffff14;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-left:auto;margin-right:4px;display:none;position:relative}.nav-toggle-bar[data-v-414cec92]{background:#fff;border-radius:2px;width:18px;height:2px;transition:transform .25s,opacity .2s;position:absolute}.nav-toggle-bar[data-v-414cec92]:first-child{transform:translateY(-6px)}.nav-toggle-bar[data-v-414cec92]:nth-child(3){transform:translateY(6px)}.nav-drawer-open .nav-toggle-bar[data-v-414cec92]:first-child{transform:rotate(45deg)}.nav-drawer-open .nav-toggle-bar[data-v-414cec92]:nth-child(2){opacity:0}.nav-drawer-open .nav-toggle-bar[data-v-414cec92]:nth-child(3){transform:rotate(-45deg)}.nav-backdrop[data-v-414cec92]{display:none}@media (width<=768px){.navbar-inner[data-v-414cec92]{gap:12px;padding:0 16px}.brand-logo[data-v-414cec92]{display:none}.brand[data-v-414cec92]{min-width:0;font-size:18px}.nav-toggle[data-v-414cec92]{margin-left:0;margin-right:0;display:inline-flex}.user-menu[data-v-414cec92]{margin-left:auto}.nav-menu[data-v-414cec92]{z-index:110;-webkit-overflow-scrolling:touch;background:#161617f7;border-bottom:1px solid #ffffff14;flex-direction:column;align-items:stretch;gap:0;max-height:min(70vh,520px);padding:8px 12px 16px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000047}.nav-menu.open[data-v-414cec92]{display:flex}.nav-menu li[data-v-414cec92]{width:100%}.nav-link[data-v-414cec92]{border-radius:10px;width:100%;padding:12px 14px;font-size:16px;display:block}.nav-link[data-v-414cec92]:after{display:none}.nav-link.active[data-v-414cec92],.nav-link[data-v-414cec92]:hover{background:#ffffff1a}.nav-backdrop[data-v-414cec92]{z-index:90;cursor:pointer;background:#00000073;border:none;padding:0;display:block;position:fixed;inset:56px 0 0}.dropdown[data-v-414cec92]{min-width:180px;right:0}}.page[data-v-e0c35f3a]{background:var(--color-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.card[data-v-e0c35f3a]{background:var(--color-surface);border:1px solid var(--brand-border);width:min(100%,420px);box-shadow:var(--shadow-lg);border-radius:20px;padding:32px}h1[data-v-e0c35f3a]{margin:0 0 8px;font-size:22px}.hint[data-v-e0c35f3a]{color:var(--color-muted);margin:0 0 20px;font-size:14px}.form[data-v-e0c35f3a]{flex-direction:column;gap:16px;display:flex}.field[data-v-e0c35f3a]{flex-direction:column;gap:8px;font-size:14px;display:flex}.field input[data-v-e0c35f3a]{border:1px solid var(--color-border);border-radius:10px;height:44px;padding:0 14px}.error[data-v-e0c35f3a]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.submit[data-v-e0c35f3a]{background:var(--gradient-primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:46px;font-weight:600}.submit[data-v-e0c35f3a]:disabled{opacity:.7;cursor:not-allowed}.page[data-v-7bbca0da]{background:var(--gradient-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.card[data-v-7bbca0da]{background:var(--color-surface);border:1px solid var(--brand-border);width:min(100%,420px);box-shadow:var(--shadow-lg);border-radius:20px;padding:36px 32px}.brand[data-v-7bbca0da]{align-items:center;gap:14px;margin-bottom:32px;display:flex}.logo[data-v-7bbca0da]{display:none}.brand h1[data-v-7bbca0da]{background:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:24px}.brand p[data-v-7bbca0da]{color:var(--color-muted);margin:4px 0 0;font-size:14px}.form[data-v-7bbca0da]{flex-direction:column;gap:18px;display:flex}.field[data-v-7bbca0da]{color:var(--color-text);flex-direction:column;gap:8px;font-size:14px;display:flex}.field input[data-v-7bbca0da]{border:1px solid var(--color-border);width:100%;height:46px;color:var(--color-text);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.field input[data-v-7bbca0da]:focus{border-color:var(--brand);box-shadow:var(--glow-primary)}.password-wrap[data-v-7bbca0da]{position:relative}.password-wrap input[data-v-7bbca0da]{padding-right:64px}.toggle[data-v-7bbca0da]{color:var(--color-muted);cursor:pointer;background:0 0;border:none;font-size:13px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.toggle[data-v-7bbca0da]:hover{color:var(--brand)}.error[data-v-7bbca0da]{background:var(--status-danger-bg);border:1px solid var(--status-urgent-border);color:var(--status-danger-text);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.submit[data-v-7bbca0da]{background:var(--gradient-primary);color:#fff;cursor:pointer;height:48px;box-shadow:0 4px 16px var(--brand-glow);border:none;border-radius:12px;margin-top:4px;font-size:16px;font-weight:600;transition:transform .15s,box-shadow .15s}.submit[data-v-7bbca0da]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #0071e359}.submit[data-v-7bbca0da]:disabled{opacity:.7;cursor:not-allowed}.dialog-root[data-v-cbf388d7]{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog-panel[data-v-cbf388d7]{border:1px solid var(--color-border);background:var(--color-surface);width:min(420px,100%);box-shadow:var(--shadow-lg);text-align:center;border-radius:18px;padding:28px 28px 24px}.dialog-panel.urgent[data-v-cbf388d7]{border-color:var(--status-urgent-border);background:linear-gradient(#fffafb 0%,#fff 100%)}.dialog-icon[data-v-cbf388d7]{background:var(--brand-light);width:52px;height:52px;color:var(--brand-dark);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:24px;font-weight:700;display:flex}.dialog-icon.urgent[data-v-cbf388d7]{color:#b91c1c;background:#fee2e2}.dialog-title[data-v-cbf388d7]{color:var(--color-text);margin:0 0 10px;font-size:18px;font-weight:700}.dialog-message[data-v-cbf388d7]{color:var(--color-muted);white-space:pre-line;margin:0 0 24px;font-size:14px;line-height:1.6}.dialog-actions[data-v-cbf388d7]{gap:12px;display:flex}.btn[data-v-cbf388d7]{cursor:pointer;border-radius:12px;flex:1;height:42px;font-size:14px;font-weight:600;transition:background .2s,transform .15s}.btn[data-v-cbf388d7]:disabled{opacity:.65;cursor:not-allowed}.btn.cancel[data-v-cbf388d7]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.btn.cancel[data-v-cbf388d7]:hover:not(:disabled){background:#f8fafc}.btn.confirm[data-v-cbf388d7]{background:var(--gradient-primary);color:#fff;border:none;box-shadow:0 4px 14px #0071e340}.btn.confirm.primary[data-v-cbf388d7]{background:var(--gradient-primary);box-shadow:0 4px 14px #0071e340}.btn.confirm.danger[data-v-cbf388d7]{background:linear-gradient(135deg,#ef4444,#e11d48);box-shadow:0 4px 14px #e11d4859}.dialog-panel.danger[data-v-cbf388d7]{border-color:var(--status-urgent-border)}.dialog-icon.danger[data-v-cbf388d7]{color:#b91c1c;background:#fee2e2}.dialog-icon.primary[data-v-cbf388d7]{background:var(--brand-light);color:var(--brand-dark)}.btn.confirm[data-v-cbf388d7]:hover:not(:disabled){transform:translateY(-1px)}.dialog-enter-active[data-v-cbf388d7],.dialog-leave-active[data-v-cbf388d7]{transition:opacity .2s}.dialog-enter-active .dialog-panel[data-v-cbf388d7],.dialog-leave-active .dialog-panel[data-v-cbf388d7]{transition:transform .2s,opacity .2s}.dialog-enter-from[data-v-cbf388d7],.dialog-leave-to[data-v-cbf388d7]{opacity:0}.dialog-enter-from .dialog-panel[data-v-cbf388d7],.dialog-leave-to .dialog-panel[data-v-cbf388d7]{opacity:0;transform:scale(.96)translateY(8px)}.priority-mark[data-v-99dcb087]{flex-shrink:0;align-items:center;font-weight:600;line-height:1.2;display:inline-flex}.priority-mark.badge[data-v-99dcb087]{border:1px solid #0000;border-radius:999px;padding:2px 8px;font-size:12px}.priority-mark.tag[data-v-99dcb087]{border-radius:6px;padding:2px 7px;font-size:11px}.priority-mark.urgent.badge[data-v-99dcb087],.priority-mark.urgent.tag[data-v-99dcb087]{background:var(--status-urgent-bg);color:#b91c1c;border-color:var(--status-urgent-border)}.priority-mark.overdue.badge[data-v-99dcb087],.priority-mark.overdue.tag[data-v-99dcb087]{background:var(--status-overdue-bg);color:var(--status-overdue-text);border-color:var(--status-overdue-border)}.detail-page[data-v-69a0da1d]{background:var(--color-bg);min-height:calc(100vh - 60px);color:var(--color-text);padding:20px 24px 32px}.detail-page-title[data-v-69a0da1d],.detail-context-bar[data-v-69a0da1d],.banner[data-v-69a0da1d],.empty[data-v-69a0da1d]{max-width:var(--page-max-width);margin-left:auto;margin-right:auto}.detail-page-title[data-v-69a0da1d]{margin-bottom:12px}.detail-context-bar[data-v-69a0da1d]{margin-bottom:16px}.urgent-btn[data-v-69a0da1d]{background:var(--status-danger-bg);border-color:var(--status-urgent-border);color:var(--status-danger-text);font-weight:600}.btn[data-v-69a0da1d]{border:1px solid var(--color-border);background:var(--color-surface);height:38px;color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:10px;padding:0 16px}.btn[data-v-69a0da1d]:disabled{opacity:.6;cursor:not-allowed}.back-btn[data-v-69a0da1d]{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:#fff;border-radius:10px;height:36px;padding:0 14px}.card[data-v-69a0da1d]{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.card-compact[data-v-69a0da1d]{padding:16px 18px}.card-compact h2[data-v-69a0da1d]{margin:0 0 12px;font-size:15px}.work-orders-card[data-v-69a0da1d]{padding:22px}.section-head[data-v-69a0da1d]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.section-head h2[data-v-69a0da1d]{margin:0;font-size:18px}.section-hint[data-v-69a0da1d]{color:var(--color-muted);margin:0;font-size:13px}.urgent-card[data-v-69a0da1d]{border-color:var(--status-urgent-border);background:linear-gradient(180deg, var(--status-urgent-bg) 0%, #fff 100%)}.overdue-card[data-v-69a0da1d]{border-color:var(--status-overdue-border);background:linear-gradient(180deg, var(--status-overdue-bg) 0%, #fff 100%)}.info-grid[data-v-69a0da1d]{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.label[data-v-69a0da1d]{color:var(--color-muted);letter-spacing:.02em;margin-bottom:4px;font-size:11px;display:block}.meta p[data-v-69a0da1d]{margin:0 0 10px;font-size:13px;line-height:1.5}.meta p[data-v-69a0da1d]:last-child{margin-bottom:0}.meta .label[data-v-69a0da1d]{margin-right:6px;display:inline}.contact[data-v-69a0da1d]{border-top:1px solid var(--color-border);color:var(--color-muted);word-break:break-all;margin-top:14px;padding-top:12px;font-size:13px}.dot[data-v-69a0da1d]{margin:0 6px}.items[data-v-69a0da1d]{margin:0;padding:0;list-style:none}.items li[data-v-69a0da1d]{border-bottom:1px solid var(--color-border);padding:10px 0}.items li[data-v-69a0da1d]:last-child{border-bottom:none;padding-bottom:0}.item-name[data-v-69a0da1d]{font-size:14px;font-weight:600}.item-meta[data-v-69a0da1d],.sub[data-v-69a0da1d]{color:var(--color-muted);margin-top:4px;font-size:13px}.summary-zh[data-v-69a0da1d]{border:1px solid var(--color-border);white-space:pre-wrap;background:#f8fafc;border-radius:10px;max-height:120px;margin:10px 0 0;padding:10px 12px;font-family:inherit;font-size:12px;line-height:1.6;overflow-y:auto}.dispatch-error[data-v-69a0da1d]{color:#b91c1c;margin:8px 0 0;font-size:12px}.work-order-group+.work-order-group[data-v-69a0da1d]{margin-top:20px}.group-title[data-v-69a0da1d]{color:var(--color-muted);margin:0 0 10px;font-size:13px;font-weight:600}.work-orders[data-v-69a0da1d]{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.wo-card[data-v-69a0da1d]{border:1px solid var(--color-border);text-align:left;background:#fafafa;border-radius:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,background .15s}.wo-card--clickable[data-v-69a0da1d]{cursor:pointer}.wo-card--clickable[data-v-69a0da1d]:hover{border-color:var(--brand-border);box-shadow:var(--shadow-sm);background:#fff}.wo-card--clickable[data-v-69a0da1d]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.wo-card--disabled[data-v-69a0da1d]{cursor:default;opacity:.88}.wo-card.urgent-row[data-v-69a0da1d]{background:var(--status-urgent-bg);border-color:var(--status-urgent-border)}.wo-card.urgent-row.wo-card--clickable[data-v-69a0da1d]:hover{background:#fff}.wo-card.overdue-row[data-v-69a0da1d]{background:var(--status-overdue-bg);border-color:var(--status-overdue-border)}.wo-card.overdue-row.wo-card--clickable[data-v-69a0da1d]:hover{background:#fff}.pet-name[data-v-69a0da1d]{color:var(--color-text);font-size:13px;font-weight:600}.wo-head[data-v-69a0da1d]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.wo-number[data-v-69a0da1d]{color:var(--brand);font-size:15px}.wo-open-hint[data-v-69a0da1d]{color:var(--brand);margin-left:auto;font-size:12px;font-weight:600}.wo-pending-hint[data-v-69a0da1d]{color:var(--color-muted);margin-left:auto;font-size:12px}.address[data-v-69a0da1d]{margin:0;font-size:13px;line-height:1.7}.badge[data-v-69a0da1d]{color:var(--color-muted);background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.badge.urgent[data-v-69a0da1d]{color:#b91c1c;background:#fee2e2}.badge.order-status.pending[data-v-69a0da1d]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.order-status.in_production[data-v-69a0da1d]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.order-status.completed[data-v-69a0da1d]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.order-status.archived[data-v-69a0da1d]{color:#475569;background:#f1f5f9}.badge.wo-status.pending[data-v-69a0da1d]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.wo-status.in_production[data-v-69a0da1d]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.wo-status.info_missing[data-v-69a0da1d]{color:#c2410c;background:#ffedd5}.badge.wo-status.completed[data-v-69a0da1d]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.stage[data-v-69a0da1d]{background:var(--status-info-bg);color:#5b21b6}.badge.stage.reference_image[data-v-69a0da1d]{background:var(--brand-soft);color:var(--brand-dark)}.badge.stage.production_done[data-v-69a0da1d]{color:#166534;background:#dcfce7}.banner[data-v-69a0da1d]{margin-bottom:12px}.banner.error[data-v-69a0da1d]{border:1px solid var(--status-urgent-border);color:#991b1b;background:#fef2f2;border-radius:10px;padding:10px 14px}.empty[data-v-69a0da1d]{text-align:center;color:var(--color-muted);padding:40px}@media (width<=768px){.detail-page[data-v-69a0da1d]{padding:16px}.info-grid[data-v-69a0da1d]{grid-template-columns:1fr}.wo-open-hint[data-v-69a0da1d]{width:100%;margin-top:4px;margin-left:0}}.country-flag[data-v-4ed4eabc]{background:#fff;border:1.5px solid #0f172a14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 1px 4px #0f172a14}.country-flag img[data-v-4ed4eabc]{object-fit:cover;width:100%;height:100%;display:block}.country-flag svg[data-v-4ed4eabc]{width:100%;height:100%}.country-flag--empty[data-v-4ed4eabc]{background:#f8fafc}.orders-page[data-v-8220220c]{background:var(--color-bg);min-height:calc(100vh - 60px);color:var(--color-text);padding:24px}.page-header[data-v-8220220c],.toolbar[data-v-8220220c],.sync-panel[data-v-8220220c],.table-wrap[data-v-8220220c],.pager[data-v-8220220c]{max-width:var(--page-max-width);margin:0 auto}.filter-item[data-v-8220220c]{min-width:140px;color:var(--color-muted);flex-direction:column;flex-shrink:0;gap:6px;font-size:13px;display:flex}.select[data-v-8220220c]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);border-radius:10px;padding:0 12px}.select[data-v-8220220c]:focus{border-color:var(--brand);box-shadow:var(--glow-primary);outline:none}.page-header[data-v-8220220c]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.header-main[data-v-8220220c]{flex-direction:column;gap:4px;display:flex}.header-main h1[data-v-8220220c]{margin:0;font-size:24px}.header-actions[data-v-8220220c]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.selection-text[data-v-8220220c]{color:var(--brand-dark);margin:0;font-size:13px;font-weight:600}.status-text[data-v-8220220c]{color:var(--color-muted);margin:0;font-size:14px}.sync-panel[data-v-8220220c]{border:1px solid var(--brand-border);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#fff5f8f2,#fdf4ffe6);border-radius:14px;margin-bottom:16px;padding:16px 42px 16px 18px;position:relative}.sync-head[data-v-8220220c]{color:var(--brand-dark);justify-content:space-between;margin-bottom:10px;font-size:14px;font-weight:500;display:flex}.progress-track[data-v-8220220c]{background:var(--brand-muted-bg);border-radius:999px;height:8px;overflow:hidden}.progress-bar[data-v-8220220c]{background:var(--gradient-progress);border-radius:999px;height:100%;transition:width .4s}.progress-bar.dispatch-bar[data-v-8220220c]{background:linear-gradient(90deg,#0071e3,#42a1ec)}.dispatch-head-actions[data-v-8220220c]{align-items:center;gap:10px;display:flex}.cancel-task-btn[data-v-8220220c]{border:1px solid var(--status-urgent-border);background:var(--status-danger-bg);height:30px;color:var(--status-danger-text);cursor:pointer;border-radius:8px;padding:0 12px;font-size:12px}.cancel-task-btn[data-v-8220220c]:disabled{opacity:.6;cursor:not-allowed}.force-stop-btn[data-v-8220220c]{color:#c2410c;cursor:pointer;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;height:30px;padding:0 12px;font-size:12px}.force-stop-btn[data-v-8220220c]:disabled{opacity:.6;cursor:not-allowed}.stuck-hint[data-v-8220220c]{color:#c2410c}.sync-meta[data-v-8220220c],.sync-hint[data-v-8220220c]{color:var(--color-muted);margin:8px 0 0;font-size:13px}.toolbar[data-v-8220220c]{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.search[data-v-8220220c]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);border-radius:10px;flex:240px;padding:0 14px}.search[data-v-8220220c]:focus{border-color:var(--brand);box-shadow:var(--glow-primary);outline:none}.btn[data-v-8220220c]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;padding:0 16px;display:inline-flex}.btn.primary[data-v-8220220c]{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 16px var(--brand-glow);border:none}.btn.primary[data-v-8220220c]:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 8px 24px #0071e359}.btn[data-v-8220220c]:disabled{opacity:.6;cursor:not-allowed}.btn.danger-outline[data-v-8220220c]{border-color:var(--status-urgent-border);color:var(--status-danger-text);background:#fffafb}.btn.danger-outline[data-v-8220220c]:hover:not(:disabled){background:var(--status-danger-bg)}.btn.accent-outline[data-v-8220220c]{border-color:var(--brand-border);color:var(--brand-dark);background:var(--brand-light)}.btn.accent-outline[data-v-8220220c]:hover:not(:disabled){background:var(--brand-soft)}.col-check[data-v-8220220c]{width:44px;padding-left:14px;padding-right:8px}.col-country[data-v-8220220c]{text-align:center;width:44px;padding-left:12px;padding-right:8px}.col-order[data-v-8220220c]{width:22%}.col-customer[data-v-8220220c]{width:16%}.col-status[data-v-8220220c]{width:96px}.col-amount[data-v-8220220c]{white-space:nowrap;width:96px}.cell-ellipsis[data-v-8220220c]{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.header-flag[data-v-8220220c]{opacity:.85;justify-content:center;align-items:center;width:26px;height:26px;font-size:16px;line-height:1;display:inline-flex}.checkbox[data-v-8220220c]{width:16px;height:16px;accent-color:var(--brand);cursor:pointer}tbody tr.selected[data-v-8220220c]{background:#fdf2f8}tbody tr.selected[data-v-8220220c]:hover{background:var(--brand-light)}.link-btn[data-v-8220220c]{color:var(--brand);cursor:pointer;background:0 0;border:none;font-weight:600}.link-btn[data-v-8220220c]:hover{opacity:.8}.banner[data-v-8220220c]{max-width:var(--page-max-width);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;margin:0 auto 12px;padding:10px 14px;font-size:14px;display:flex}.dismiss-btn[data-v-8220220c]{width:24px;height:24px;color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:6px;flex-shrink:0;font-size:18px;line-height:1}.dismiss-btn[data-v-8220220c]:hover{opacity:1;background:#0000000d}.sync-panel .dismiss-btn[data-v-8220220c]{position:absolute;top:12px;right:12px}.banner.success[data-v-8220220c]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.banner.error[data-v-8220220c]{background:var(--status-danger-bg);border:1px solid var(--status-urgent-border);color:var(--status-danger-text)}.table-wrap[data-v-8220220c]{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-md);border-radius:14px;overflow:auto}table[data-v-8220220c]{border-collapse:collapse;table-layout:fixed;width:100%}th[data-v-8220220c],td[data-v-8220220c]{text-align:left;vertical-align:middle;border-bottom:1px solid #0000000a;padding:14px 16px}th[data-v-8220220c]{color:var(--color-muted);background:var(--brand-light);font-size:13px;font-weight:600}tbody tr[data-v-8220220c]:hover{background:var(--brand-light)}tbody tr.urgent-row[data-v-8220220c]{background:var(--status-urgent-bg)}tbody tr.urgent-row[data-v-8220220c]:hover{background:#ffebeb}tbody tr.overdue-row[data-v-8220220c]{background:var(--status-overdue-bg)}tbody tr.overdue-row[data-v-8220220c]:hover{background:#ffedd5}.order-name[data-v-8220220c]{align-items:center;gap:8px;min-width:0;font-weight:600;display:flex}.order-name .badge.urgent[data-v-8220220c]{flex-shrink:0}.order-name .cell-ellipsis[data-v-8220220c]{flex:1}.badge.urgent[data-v-8220220c]{color:#b91c1c;background:#fee2e2;font-weight:700}.sub[data-v-8220220c]{color:var(--color-muted);margin-top:4px;font-size:12px}.empty[data-v-8220220c]{text-align:center;color:var(--color-muted);padding:40px 16px}.badge[data-v-8220220c]{color:var(--color-muted);background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.badge.pending[data-v-8220220c]{color:#92400e;background:#fef3c7}.badge.in_production[data-v-8220220c]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.completed[data-v-8220220c]{color:#166534;background:#dcfce7}.badge.cancelled[data-v-8220220c]{color:#991b1b;background:#fee2e2}.badge.archived[data-v-8220220c]{color:#475569;background:#f1f5f9}.pager[data-v-8220220c]{color:var(--color-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:18px;font-size:14px;display:flex}.page-jump[data-v-8220220c]{align-items:center;gap:8px;display:flex}.page-input[data-v-8220220c]{border:1px solid var(--color-border);text-align:center;background:var(--color-surface);width:64px;height:36px;color:var(--color-text);border-radius:8px;padding:0 10px}.page-input[data-v-8220220c]:focus{border-color:var(--brand);box-shadow:var(--glow-primary);outline:none}@media (width<=768px){.page-header[data-v-8220220c]{flex-direction:column;align-items:flex-start}.header-actions[data-v-8220220c]{width:100%}.header-actions .btn[data-v-8220220c]{flex:auto}}.profile-page[data-v-5f7872f1]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-5f7872f1],.card[data-v-5f7872f1]{max-width:var(--page-form-max-width);margin:0 auto 16px}.page-header h1[data-v-5f7872f1]{margin:0;font-size:24px}.hint[data-v-5f7872f1]{color:var(--color-muted);margin:8px 0 0;font-size:14px}.card[data-v-5f7872f1]{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.card h2[data-v-5f7872f1]{margin:0 0 16px;font-size:16px}.avatar-row[data-v-5f7872f1]{align-items:center;gap:16px;display:flex}.avatar[data-v-5f7872f1]{object-fit:cover;border:2px solid var(--brand-border);border-radius:50%;width:72px;height:72px}.avatar-actions[data-v-5f7872f1]{flex-wrap:wrap;gap:8px;display:flex}.form[data-v-5f7872f1]{flex-direction:column;gap:12px;display:flex}.field[data-v-5f7872f1]{flex-direction:column;gap:6px;font-size:14px;display:flex}.field input[data-v-5f7872f1]{border:1px solid var(--color-border);border-radius:10px;height:42px;padding:0 12px}.btn[data-v-5f7872f1]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:40px;padding:0 16px}.btn.primary[data-v-5f7872f1]{background:var(--gradient-primary);color:#fff;border:none;font-weight:600}.banner[data-v-5f7872f1]{max-width:var(--page-form-max-width);border-radius:10px;margin:12px auto;padding:10px 12px;font-size:14px}.banner.success[data-v-5f7872f1]{color:#166534;background:#ecfdf5}.banner.error[data-v-5f7872f1]{background:var(--status-danger-bg);color:var(--status-danger-text)}.users-page[data-v-4aab8ed6]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-4aab8ed6],.toolbar[data-v-4aab8ed6],.table-wrap[data-v-4aab8ed6],.pager[data-v-4aab8ed6]{max-width:var(--page-max-width);margin:0 auto}.page-header[data-v-4aab8ed6]{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.page-header h1[data-v-4aab8ed6]{margin:0;font-size:24px}.hint[data-v-4aab8ed6]{color:var(--color-muted);margin:6px 0 0;font-size:14px}.toolbar[data-v-4aab8ed6]{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.search[data-v-4aab8ed6]{border:1px solid var(--color-border);border-radius:10px;flex:240px;height:40px;padding:0 14px}.filter-item[data-v-4aab8ed6]{color:var(--color-muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.select[data-v-4aab8ed6]{border:1px solid var(--color-border);border-radius:10px;height:40px;padding:0 12px}.btn[data-v-4aab8ed6]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:40px;padding:0 16px}.btn.primary[data-v-4aab8ed6]{background:var(--gradient-primary);color:#fff;border:none;font-weight:600}.table-wrap[data-v-4aab8ed6]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:auto}table[data-v-4aab8ed6]{border-collapse:collapse;width:100%}th[data-v-4aab8ed6],td[data-v-4aab8ed6]{text-align:left;vertical-align:middle;padding:14px 16px;font-size:14px;line-height:1.5}tbody td[data-v-4aab8ed6]{border-bottom:1px solid var(--color-border)}td.action-cell[data-v-4aab8ed6]{border-bottom:none}th[data-v-4aab8ed6]{color:var(--color-muted);border-bottom:1px solid var(--color-border);background:#fffafb;font-size:13px}.user-cell[data-v-4aab8ed6]{align-items:center;gap:10px;display:flex}.avatar[data-v-4aab8ed6]{object-fit:cover;border-radius:50%;flex-shrink:0;width:36px;height:36px}.badge[data-v-4aab8ed6]{border-radius:999px;padding:4px 10px;font-size:12px;line-height:1.4;display:inline-block}.badge.active[data-v-4aab8ed6]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.resigned[data-v-4aab8ed6]{color:#475569;background:#f1f5f9}.action-links[data-v-4aab8ed6]{align-items:center;gap:12px;display:flex}.action-link[data-v-4aab8ed6]{color:var(--brand);cursor:pointer;font:inherit;appearance:none;box-shadow:none;background:0 0;border:0;outline:none;margin:0;padding:0;font-weight:600;text-decoration:none}.action-link[data-v-4aab8ed6]:hover,.action-link[data-v-4aab8ed6]:focus,.action-link[data-v-4aab8ed6]:focus-visible,.action-link[data-v-4aab8ed6]:active{box-shadow:none;color:var(--brand-dark);border:0;outline:none;text-decoration:none}.empty[data-v-4aab8ed6]{text-align:center;color:var(--color-muted);padding:40px}.pager[data-v-4aab8ed6]{justify-content:center;align-items:center;gap:16px;margin-top:16px;display:flex}.banner[data-v-4aab8ed6]{max-width:var(--page-max-width);border-radius:10px;margin:0 auto 12px;padding:10px 12px;font-size:14px}.banner.success[data-v-4aab8ed6]{color:#166534;background:#ecfdf5}.banner.error[data-v-4aab8ed6]{background:var(--status-danger-bg);color:var(--status-danger-text)}.modal-backdrop[data-v-4aab8ed6]{z-index:200;background:#0f172a73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal[data-v-4aab8ed6]{width:min(100%,420px);box-shadow:var(--shadow-lg);background:#fff;border-radius:16px;padding:24px}.modal h2[data-v-4aab8ed6]{margin:0 0 16px;font-size:18px}.form[data-v-4aab8ed6]{flex-direction:column;gap:12px;display:flex}.field[data-v-4aab8ed6]{flex-direction:column;gap:6px;font-size:14px;display:flex}.field input[data-v-4aab8ed6]{border:1px solid var(--color-border);border-radius:10px;height:42px;padding:0 12px}.modal-actions[data-v-4aab8ed6]{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.password-box[data-v-4aab8ed6]{letter-spacing:2px;text-align:center;background:var(--brand-light);border-radius:12px;margin:12px 0;padding:16px;font-size:24px;font-weight:700}.user-detail-page[data-v-fbe45d45]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.detail-page-title[data-v-fbe45d45],.detail-context-bar[data-v-fbe45d45],.banner[data-v-fbe45d45],.card[data-v-fbe45d45],.empty[data-v-fbe45d45]{max-width:var(--page-max-width);margin:0 auto 16px}.detail-page-title[data-v-fbe45d45]{margin-bottom:12px}.back-btn[data-v-fbe45d45]{height:36px}.card[data-v-fbe45d45]{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-md);border-radius:14px;padding:18px 20px}.card h2[data-v-fbe45d45]{margin:0 0 12px;font-size:16px}.profile-head[data-v-fbe45d45]{align-items:flex-start;gap:16px;display:flex}.avatar[data-v-fbe45d45]{object-fit:cover;border-radius:50%;width:72px;height:72px}.profile-meta[data-v-fbe45d45]{flex-direction:column;flex:1;gap:8px;display:flex}.meta-row[data-v-fbe45d45]{gap:12px;font-size:14px;display:flex}.meta-row .label[data-v-fbe45d45]{width:72px;color:var(--color-muted);flex-shrink:0}.profile-actions[data-v-fbe45d45]{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.btn[data-v-fbe45d45]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:40px;padding:0 16px}.btn.primary[data-v-fbe45d45]{background:var(--gradient-primary);color:#fff;border:none;font-weight:600}.btn.danger[data-v-fbe45d45]{background:var(--status-danger-text);color:#fff;border:none;font-weight:600}.badge[data-v-fbe45d45]{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.active[data-v-fbe45d45]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.resigned[data-v-fbe45d45]{color:#475569;background:#f1f5f9}.hint[data-v-fbe45d45]{color:var(--color-muted);margin:0 0 8px;font-size:14px;line-height:1.5}.review-hint[data-v-fbe45d45]{border-top:1px solid var(--color-border);margin-top:10px;padding-top:10px}.stage-list[data-v-fbe45d45]{color:var(--color-text);margin:0;padding-left:20px;font-size:14px}.audit-list[data-v-fbe45d45]{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.audit-list li[data-v-fbe45d45]{font-size:14px;line-height:1.5}.audit-action[data-v-fbe45d45]{margin-right:8px;font-weight:600}.audit-detail[data-v-fbe45d45]{color:var(--color-text)}.audit-meta[data-v-fbe45d45]{color:var(--color-muted);margin-top:2px;font-size:12px;display:block}.banner[data-v-fbe45d45]{border-radius:10px;padding:10px 14px;font-size:14px}.banner.success[data-v-fbe45d45]{color:#166534;background:#ecfdf5}.banner.error[data-v-fbe45d45]{background:var(--status-danger-bg);color:var(--status-danger-text)}.empty[data-v-fbe45d45]{text-align:center;color:var(--color-muted);padding:40px}.modal-backdrop[data-v-fbe45d45]{z-index:200;background:#0f172a73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal[data-v-fbe45d45]{width:min(100%,420px);box-shadow:var(--shadow-lg);background:#fff;border-radius:16px;padding:24px}.modal h2[data-v-fbe45d45]{margin:0 0 16px;font-size:18px}.form[data-v-fbe45d45]{flex-direction:column;gap:12px;display:flex}.field[data-v-fbe45d45]{flex-direction:column;gap:6px;font-size:14px;display:flex}.field input[data-v-fbe45d45],.select[data-v-fbe45d45]{border:1px solid var(--color-border);border-radius:10px;height:42px;padding:0 12px}.modal-actions[data-v-fbe45d45]{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.user-chip[data-v-3ffc532c]{vertical-align:middle;align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.user-chip-avatar[data-v-3ffc532c]{object-fit:cover;background:var(--brand-light);border-radius:50%;flex-shrink:0}.user-chip.size-sm .user-chip-avatar[data-v-3ffc532c]{width:20px;height:20px}.user-chip.size-md .user-chip-avatar[data-v-3ffc532c]{width:24px;height:24px}.user-chip-name[data-v-3ffc532c]{text-overflow:ellipsis;white-space:nowrap;font-size:inherit;color:inherit;overflow:hidden}.user-chip-empty[data-v-3ffc532c]{color:var(--color-muted)}.reference-images-page[data-v-2217cd4f]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-2217cd4f],.sub-nav[data-v-2217cd4f],.toolbar[data-v-2217cd4f],.table-wrap[data-v-2217cd4f],.pager[data-v-2217cd4f],.banner[data-v-2217cd4f]{max-width:var(--page-max-width);margin:0 auto}.page-header[data-v-2217cd4f]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.page-header h1[data-v-2217cd4f]{margin:0;font-size:24px}.hint[data-v-2217cd4f]{color:var(--color-muted);margin:6px 0 0;font-size:14px}.header-actions[data-v-2217cd4f]{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;display:flex}.selection-text[data-v-2217cd4f]{color:var(--color-muted);font-size:13px}.sub-nav[data-v-2217cd4f]{background:var(--color-surface);border:1px solid var(--color-border);-webkit-overflow-scrolling:touch;border-radius:12px;flex-wrap:nowrap;gap:4px;width:100%;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.sub-nav-link[data-v-2217cd4f]{min-width:96px;color:var(--color-muted);text-align:center;white-space:nowrap;border-radius:8px;flex:1 0 auto;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.sub-nav-link[data-v-2217cd4f]:hover{color:var(--brand-dark)}.sub-nav-link.active[data-v-2217cd4f]{background:var(--brand-soft);color:var(--brand-dark);font-weight:600}.toolbar[data-v-2217cd4f]{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.search[data-v-2217cd4f]{border:1px solid var(--color-border);border-radius:10px;flex:240px;height:40px;padding:0 14px}.filter-item[data-v-2217cd4f]{color:var(--color-muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.select[data-v-2217cd4f]{border:1px solid var(--color-border);border-radius:10px;height:40px;padding:0 12px}.btn[data-v-2217cd4f]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;height:40px;color:inherit;border-radius:10px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;text-decoration:none;display:inline-flex}.btn.primary[data-v-2217cd4f]{background:var(--gradient-primary);color:#fff;border-color:#0000;font-weight:600}.btn.primary[data-v-2217cd4f]:disabled{opacity:.55;cursor:not-allowed}.table-wrap[data-v-2217cd4f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:auto}table[data-v-2217cd4f]{border-collapse:collapse;width:100%}th[data-v-2217cd4f],td[data-v-2217cd4f]{text-align:left;vertical-align:middle;padding:14px 16px;font-size:14px;line-height:1.5}tbody td[data-v-2217cd4f]{border-bottom:1px solid var(--color-border)}th[data-v-2217cd4f]{color:var(--color-muted);background:var(--brand-light);border-bottom:1px solid var(--color-border);font-size:13px;font-weight:600}.col-check[data-v-2217cd4f]{width:44px;padding-left:14px;padding-right:8px}.col-action[data-v-2217cd4f]{text-align:right;width:88px}.action-btn[data-v-2217cd4f]{color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.action-btn.primary[data-v-2217cd4f]{color:var(--brand-dark)}.action-btn[data-v-2217cd4f]:hover{opacity:.75}.checkbox[data-v-2217cd4f]{width:16px;height:16px;accent-color:var(--brand);cursor:pointer}.checkbox[data-v-2217cd4f]:disabled{cursor:not-allowed;opacity:.35}tbody tr.selected[data-v-2217cd4f]{background:#fdf2f8}.number-link[data-v-2217cd4f]{color:var(--color-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.number-link[data-v-2217cd4f]:hover{opacity:.75}.badge[data-v-2217cd4f]{border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.badge.work-order-ticket[data-v-2217cd4f]{background:var(--brand-soft);color:var(--brand-dark);font-weight:500}.badge.work-order-ticket.pending_assign[data-v-2217cd4f]{color:#475569;background:#f1f5f9}.badge.work-order-ticket.in_progress[data-v-2217cd4f]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.work-order-ticket.generating[data-v-2217cd4f]{color:#5b21b6;background:#ede9fe}.badge.work-order-ticket.pending_review[data-v-2217cd4f]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.generation-status.queued[data-v-2217cd4f]{color:#475569;background:#f1f5f9}.badge.generation-status.running[data-v-2217cd4f]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.generation-status.succeeded[data-v-2217cd4f]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.generation-status.failed[data-v-2217cd4f]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.work-order-ticket.approved[data-v-2217cd4f]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.work-order-ticket.rejected[data-v-2217cd4f]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.work-order-ticket.cancelled[data-v-2217cd4f]{color:#64748b;background:#f1f5f9}.urgent-row[data-v-2217cd4f]{background:var(--status-urgent-bg)}.overdue-row[data-v-2217cd4f]{background:var(--status-overdue-bg)}.urgent-tag[data-v-2217cd4f]{color:#b91c1c;background:#fee2e2;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.rework-tag[data-v-2217cd4f]{color:#92400e;background:#fef3c7;border-radius:999px;margin-top:4px;margin-left:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.info-missing-tag[data-v-2217cd4f]{color:#c2410c;background:#ffedd5;border-radius:999px;margin-top:4px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.empty[data-v-2217cd4f]{text-align:center;color:var(--color-muted);padding:40px 16px}.pager[data-v-2217cd4f]{color:var(--color-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:14px;display:flex}.banner.error[data-v-2217cd4f]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.banner.success[data-v-2217cd4f]{color:#047857;background:#ecfdf5;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.gallery-overlay[data-v-05f5e1fd]{z-index:500;background:#0f172ae6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.gallery-shell[data-v-05f5e1fd]{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:min(100%,1180px);display:grid}.gallery-stage[data-v-05f5e1fd]{touch-action:pan-y;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:12px;min-width:0;display:flex}.gallery-image[data-v-05f5e1fd]{object-fit:contain;background:#ffffff08;border-radius:16px;max-width:100%;max-height:min(76vh,960px);box-shadow:0 20px 60px #0f172a80}.gallery-caption[data-v-05f5e1fd]{color:#e2e8f0;flex-wrap:wrap;justify-content:center;gap:10px;font-size:14px;display:flex}.gallery-counter[data-v-05f5e1fd]{color:#fff;font-weight:700}.gallery-label[data-v-05f5e1fd]{opacity:.9}.gallery-close[data-v-05f5e1fd],.gallery-nav[data-v-05f5e1fd]{color:#fff;cursor:pointer;background:#ffffff24;border:none}.gallery-close[data-v-05f5e1fd]{z-index:1;border-radius:999px;padding:10px 16px;font-size:14px;position:fixed;top:20px;right:20px}.gallery-nav[data-v-05f5e1fd]{border-radius:999px;width:48px;height:48px;font-size:36px;line-height:1}.gallery-close[data-v-05f5e1fd]:hover,.gallery-nav[data-v-05f5e1fd]:hover{background:#ffffff3d}@media (width<=720px){.gallery-overlay[data-v-05f5e1fd]{padding:14px}.gallery-shell[data-v-05f5e1fd]{grid-template-columns:1fr}.gallery-nav[data-v-05f5e1fd]{width:44px;height:44px;position:fixed;bottom:18px}.gallery-nav--prev[data-v-05f5e1fd]{left:18px}.gallery-nav--next[data-v-05f5e1fd]{right:18px}.gallery-image[data-v-05f5e1fd]{max-height:72vh}}.reject-dialog-root[data-v-8941bcd3]{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.reject-dialog-panel[data-v-8941bcd3]{border:1px solid var(--color-border);background:var(--color-surface);width:min(520px,100%);max-height:min(90vh,720px);box-shadow:var(--shadow-lg);text-align:left;border-radius:16px;padding:24px;overflow:auto}.reject-dialog-title[data-v-8941bcd3]{color:var(--color-text);margin:0 0 8px;font-size:18px;font-weight:700}.reject-dialog-hint[data-v-8941bcd3]{color:var(--color-muted);white-space:pre-line;margin:0 0 20px;font-size:13px;line-height:1.65}.reject-dialog-field[data-v-8941bcd3]{margin-bottom:16px}.reject-dialog-label[data-v-8941bcd3]{color:var(--color-text);align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.reject-dialog-tag[data-v-8941bcd3]{border-radius:6px;padding:1px 6px;font-size:11px;font-weight:600}.reject-dialog-tag.required[data-v-8941bcd3]{color:#b91c1c;background:#fee2e2}.reject-dialog-tag.optional[data-v-8941bcd3]{background:var(--brand-light);color:var(--color-muted)}.reject-dialog-textarea[data-v-8941bcd3],select[data-v-8941bcd3-s],.reject-dialog-select[data-v-8941bcd3-s]{box-sizing:border-box;border:1px solid var(--color-border);width:100%;color:var(--color-text);background:#fff;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.5}.reject-dialog-textarea[data-v-8941bcd3]{resize:vertical;min-height:96px}.reject-dialog-textarea.invalid[data-v-8941bcd3]{border-color:#fca5a5}.reject-dialog-field-hint[data-v-8941bcd3-s]{color:var(--color-muted);margin:6px 0 0;font-size:12px;line-height:1.5;display:block}.reject-dialog-error[data-v-8941bcd3]{color:var(--status-danger-text);margin:0 0 12px;font-size:13px}.reject-dialog-actions[data-v-8941bcd3]{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.btn[data-v-8941bcd3]{cursor:pointer;border-radius:10px;min-width:96px;height:40px;padding:0 16px;font-size:14px;font-weight:600}.btn[data-v-8941bcd3]:disabled{opacity:.65;cursor:not-allowed}.btn.cancel[data-v-8941bcd3]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.btn.danger.confirm[data-v-8941bcd3]{color:#fff;background:linear-gradient(135deg,#ef4444,#e11d48);border:none;box-shadow:0 4px 14px #e11d4847}.reject-dialog-enter-active[data-v-8941bcd3],.reject-dialog-leave-active[data-v-8941bcd3]{transition:opacity .2s}.reject-dialog-enter-active .reject-dialog-panel[data-v-8941bcd3],.reject-dialog-leave-active .reject-dialog-panel[data-v-8941bcd3]{transition:transform .2s,opacity .2s}.reject-dialog-enter-from[data-v-8941bcd3],.reject-dialog-leave-to[data-v-8941bcd3]{opacity:0}.reject-dialog-enter-from .reject-dialog-panel[data-v-8941bcd3],.reject-dialog-leave-to .reject-dialog-panel[data-v-8941bcd3]{opacity:0;transform:scale(.96)translateY(8px)}.reject-dialog-field{margin-bottom:16px}.reject-dialog-field .reject-dialog-label{color:var(--color-text);align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.reject-dialog-select{box-sizing:border-box;border:1px solid var(--color-border);width:100%;color:var(--color-text);background:#fff;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.5}.reject-dialog-field-hint{color:var(--color-muted);margin:6px 0 0;font-size:12px;line-height:1.5;display:block}.ticket-readonly-banner[data-v-adedaf03]{background:var(--status-warning-bg,#fff8e6);color:var(--status-warning-text,#8a6d00);border-radius:10px;padding:10px 12px}.ticket-detail-page[data-v-6657092e]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:20px 24px 32px}.detail-page-title[data-v-6657092e],.detail-context-bar[data-v-6657092e],.page-layout[data-v-6657092e],.banner[data-v-6657092e],.empty[data-v-6657092e]{max-width:var(--page-max-width);margin:0 auto}.detail-page-title[data-v-6657092e]{margin-bottom:12px}.detail-context-bar[data-v-6657092e]{margin-bottom:20px}.page-layout[data-v-6657092e]{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.main-column[data-v-6657092e]{min-width:0}.aside-column[data-v-6657092e]{flex-direction:column;gap:16px;display:flex;position:sticky;top:72px}.back-btn[data-v-6657092e]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:10px;flex-shrink:0;height:36px;padding:0 14px;font-size:14px}.pet-name[data-v-6657092e]{color:var(--color-muted);font-size:15px;font-weight:500}.btn.primary[data-v-6657092e]{background:var(--gradient-primary);color:#fff;cursor:pointer;border:none;border-radius:10px;height:38px;padding:0 16px;font-weight:600}.card[data-v-6657092e]{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.card-compact[data-v-6657092e]{padding:16px 18px}.card-compact h2[data-v-6657092e]{margin:0 0 14px;font-size:16px}.card-logs[data-v-6657092e]{flex-direction:column;max-height:420px;display:flex}.card-logs .ticket-log-list[data-v-6657092e]{flex:1;min-height:0;padding-right:4px;overflow-y:auto}.workspace-card[data-v-6657092e]{padding:22px}.card-head[data-v-6657092e]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.card-head-text h2[data-v-6657092e]{margin:0;font-size:18px}.card-subtitle[data-v-6657092e]{color:var(--color-muted);max-width:56rem;margin:6px 0 0;font-size:13px;line-height:1.6}.card h2[data-v-6657092e]{margin:0 0 16px;font-size:18px}.card-head h2[data-v-6657092e]{margin:0}.section-title[data-v-6657092e]{color:var(--color-text);margin:0 0 12px;font-size:14px;font-weight:600}.info-grid[data-v-6657092e]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.info-grid-compact[data-v-6657092e]{grid-template-columns:1fr 1fr;gap:12px 14px}.info-span-2[data-v-6657092e]{grid-column:1/-1}.field-label[data-v-6657092e]{color:var(--color-muted);letter-spacing:.02em;margin-bottom:4px;font-size:11px;display:block}.link-btn[data-v-6657092e]{color:var(--brand);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.badge[data-v-6657092e]{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.urgent[data-v-6657092e]{color:#b91c1c;background:#fee2e2}.badge.info-missing[data-v-6657092e]{color:#c2410c;background:#ffedd5}.badge.work-order-ticket.pending_assign[data-v-6657092e]{color:#475569;background:#f1f5f9}.badge.work-order-ticket.in_progress[data-v-6657092e]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.work-order-ticket.generating[data-v-6657092e]{color:#5b21b6;background:#ede9fe}.badge.work-order-ticket.pending_review[data-v-6657092e]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.work-order-ticket.approved[data-v-6657092e]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.work-order-ticket.rejected[data-v-6657092e]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.work-order-ticket.cancelled[data-v-6657092e]{color:#64748b;background:#f1f5f9}.ticket-log-title[data-v-6657092e]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ticket-log-attempt[data-v-6657092e]{color:#92400e;background:#fef3c7;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.ticket-log-list[data-v-6657092e]{margin:0;padding:0;list-style:none}.ticket-log-item[data-v-6657092e]{border-bottom:1px solid var(--color-border);padding:10px 0}.ticket-log-item[data-v-6657092e]:last-child{border-bottom:none;padding-bottom:0}.ticket-log-head[data-v-6657092e]{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ticket-log-time[data-v-6657092e]{color:var(--color-muted);flex-shrink:0;font-size:11px}.ticket-log-message[data-v-6657092e]{white-space:pre-wrap;margin:6px 0 0;font-size:13px;line-height:1.55}.ticket-log-meta[data-v-6657092e]{color:var(--color-muted);align-items:center;gap:6px;margin:4px 0 0;font-size:11px;display:flex}.summary-text[data-v-6657092e]{border:1px solid var(--color-border);white-space:pre-wrap;background:#f8fafc;border-radius:10px;max-height:200px;margin:0 0 12px;padding:12px 14px;font-size:13px;line-height:1.65;overflow-y:auto}.toggle-btn[data-v-6657092e]{color:var(--brand);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:0;font-size:13px}.data-table[data-v-6657092e]{border-collapse:collapse;width:100%;margin-top:10px;font-size:12px}.data-table th[data-v-6657092e],.data-table td[data-v-6657092e]{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:8px 10px}.data-table th[data-v-6657092e]{width:38%;color:var(--color-muted);font-weight:500}.raw-table[data-v-6657092e]{max-height:240px;display:block;overflow:auto}.banner.warning[data-v-6657092e]{max-width:var(--page-max-width);color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;margin:0 auto 12px;padding:10px 14px;font-size:14px}.banner.error[data-v-6657092e]{max-width:var(--page-max-width);background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;align-items:center;gap:12px;margin:0 auto 12px;padding:10px 14px;font-size:14px;display:flex}.banner.success[data-v-6657092e]{max-width:var(--page-max-width);color:#047857;background:#ecfdf5;border-radius:10px;align-items:center;gap:12px;margin:0 auto 12px;padding:10px 14px;font-size:14px;display:flex}.banner-close[data-v-6657092e]{cursor:pointer;opacity:.7;background:0 0;border:none;margin-left:auto;font-size:18px;line-height:1}.banner-action[data-v-6657092e]{cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.workspace-editor[data-v-6657092e]{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;margin-bottom:8px;display:grid}.workspace-panel[data-v-6657092e]{min-width:0}.workspace-panel-prompt[data-v-6657092e]{flex-direction:column;display:flex}.generation-list[data-v-6657092e]{border-top:1px solid var(--color-border);margin-top:24px;padding-top:20px}.section-head[data-v-6657092e]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.section-head .section-title[data-v-6657092e]{margin:0}.section-hint[data-v-6657092e]{color:var(--color-muted);margin:0;font-size:12px}.attempt-tag[data-v-6657092e]{color:var(--status-warning-text);background:var(--status-warning-bg);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.version-tag[data-v-6657092e]{color:var(--color-muted);background:var(--brand-soft);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.workspace-hint.warn[data-v-6657092e]{color:#92400e;margin:8px 0 0;font-size:12px;line-height:1.5}.workspace-generating[data-v-6657092e]{background:var(--status-info-bg);color:#5b21b6;border-radius:10px;margin:0 0 16px;padding:10px 14px;font-size:13px;line-height:1.6}.selectable-photo-grid[data-v-6657092e]{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;display:grid}.generation-grid[data-v-6657092e]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.selectable-photo[data-v-6657092e]{background:#f8fafc;border:2px solid #0000;border-radius:12px;padding:6px;transition:border-color .15s,box-shadow .15s,background .15s}.selectable-photo.selected[data-v-6657092e]{border-color:var(--brand);background:var(--brand-light);box-shadow:0 0 0 1px var(--brand-border)}.selectable-photo.disabled[data-v-6657092e]{opacity:.5;cursor:not-allowed}.selectable-photo[data-v-6657092e]:not(.disabled){cursor:pointer}.selectable-photo[data-v-6657092e]:not(.disabled):hover{border-color:var(--brand-border);background:#fff}.photo-thumb[data-v-6657092e]{border-radius:8px;position:relative;overflow:hidden}.photo-check[data-v-6657092e]{background:var(--brand);color:#fff;border-radius:999px;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 6px #00000026}.photo-label[data-v-6657092e]{color:var(--color-muted);text-align:center;margin-top:6px;font-size:11px;line-height:1.35;display:block}.generation-item[data-v-6657092e]{border:2px solid var(--color-border);background:#fff;border-radius:12px;padding:8px;transition:border-color .15s,box-shadow .15s}.generation-item.selected[data-v-6657092e]{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand-border)}.generation-item.selectable[data-v-6657092e]{cursor:pointer}.generation-item.selectable[data-v-6657092e]:hover{border-color:var(--brand-border)}.generation-item-muted[data-v-6657092e]{opacity:.92}.generation-thumb-btn[data-v-6657092e]{cursor:zoom-in;background:0 0;border:none;border-radius:8px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.generation-thumb-btn img[data-v-6657092e]{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .2s;display:block}.generation-thumb-btn:hover img[data-v-6657092e]{transform:scale(1.02)}.zoom-hint[data-v-6657092e]{color:#fff;opacity:0;background:#0000008c;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600;transition:opacity .15s;position:absolute;bottom:6px;right:6px}.generation-thumb-btn:hover .zoom-hint[data-v-6657092e],.generation-thumb-btn:focus-visible .zoom-hint[data-v-6657092e],.customer-photo-thumb-btn:hover .zoom-hint[data-v-6657092e],.customer-photo-thumb-btn:focus-visible .zoom-hint[data-v-6657092e]{opacity:1}.customer-photos-card[data-v-6657092e]{margin-bottom:0}.customer-photo-grid[data-v-6657092e]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.customer-photo-card[data-v-6657092e]{min-width:0;margin:0}.customer-photo-card--selected .customer-photo-thumb-btn[data-v-6657092e]{box-shadow:0 0 0 2px var(--color-primary)}.customer-photo-thumb-btn[data-v-6657092e]{cursor:pointer;background:var(--color-bg);border:none;border-radius:8px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.customer-photo-thumb-btn img[data-v-6657092e]{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .2s;display:block}.customer-photo-thumb-btn:hover img[data-v-6657092e]{transform:scale(1.02)}.customer-photo-used-badge[data-v-6657092e]{color:#fff;background:#0071e3eb;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600;line-height:1.4;position:absolute;top:6px;left:6px}.image-preview-overlay[data-v-6657092e]{z-index:1000;-webkit-backdrop-filter:blur(4px);background:#000000d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.image-preview-img[data-v-6657092e]{object-fit:contain;border-radius:8px;width:auto;max-width:min(96vw,1200px);height:auto;max-height:90vh;box-shadow:0 20px 60px #00000073}.image-preview-close[data-v-6657092e]{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:999px;height:40px;padding:0 16px;font-size:14px;position:fixed;top:20px;right:20px}.image-preview-close[data-v-6657092e]:hover{background:#fff3}.workspace-feedback[data-v-6657092e]{border-radius:10px;margin:0 0 14px;padding:10px 14px;font-size:13px;line-height:1.5}.workspace-feedback.info[data-v-6657092e]{color:#1d4ed8;background:#eff6ff}.workspace-feedback.success[data-v-6657092e]{color:#047857;background:#ecfdf5}.workspace-feedback.error[data-v-6657092e]{background:var(--status-danger-bg);color:var(--status-danger-text)}.btn.primary.is-busy[data-v-6657092e]{opacity:.85}.selectable-photo img[data-v-6657092e],.generation-item .photo-placeholder[data-v-6657092e]{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%;display:block}.photo-unavailable[data-v-6657092e]{color:var(--status-danger-text);text-align:center;margin-top:4px;font-size:10px;line-height:1.3;display:block}.btn.primary[data-v-6657092e]:disabled{opacity:.55;cursor:not-allowed}.generation-meta[data-v-6657092e]{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:11px;display:flex}.gen-status.failed[data-v-6657092e]{color:var(--status-danger-text)}.gen-status.succeeded[data-v-6657092e]{color:#047857;font-weight:600}.gen-status.running[data-v-6657092e],.gen-status.queued[data-v-6657092e]{color:#92400e}.generation-failed-btn[data-v-6657092e]{aspect-ratio:1;width:100%;color:var(--status-danger-text);cursor:pointer;background:#fef2f2;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;transition:background .15s,box-shadow .15s;display:flex}.generation-failed-btn[data-v-6657092e]:hover,.generation-failed-btn[data-v-6657092e]:focus-visible{background:#fee2e2;box-shadow:inset 0 0 0 1px #b91c1c26}.generation-failed-label[data-v-6657092e]{font-size:14px;font-weight:600}.generation-failed-hint[data-v-6657092e]{color:#b91c1c;opacity:.85;font-size:11px}.generation-error-overlay[data-v-6657092e]{z-index:1000;-webkit-backdrop-filter:blur(4px);background:#0f172a73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.generation-error-dialog[data-v-6657092e]{background:#fff;border-radius:14px;flex-direction:column;width:min(560px,100%);max-height:min(80vh,640px);padding:18px 20px;display:flex;box-shadow:0 20px 60px #0f172a2e}.generation-error-head[data-v-6657092e]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.generation-error-head h3[data-v-6657092e]{color:var(--status-danger-text);margin:0;font-size:16px}.generation-error-close[data-v-6657092e]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:999px;height:32px;padding:0 12px;font-size:13px}.generation-error-meta[data-v-6657092e]{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;font-size:12px;display:flex}.generation-error-body[data-v-6657092e]{color:#7f1d1d;white-space:pre-wrap;word-break:break-word;background:#fef2f2;border-radius:10px;flex:1;min-height:0;margin:0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;overflow:auto}.photo-placeholder[data-v-6657092e]{aspect-ratio:1;width:100%;color:var(--color-muted);background:#f1f5f9;border-radius:8px;place-items:center;font-size:12px;display:grid}.prompt-input[data-v-6657092e]{border:1px solid var(--color-border);resize:vertical;box-sizing:border-box;background:#fafafa;border-radius:12px;flex:1;width:100%;min-height:220px;margin:0;padding:14px;font-size:14px;line-height:1.65;transition:border-color .15s,background .15s}.prompt-input[data-v-6657092e]:focus{border-color:var(--brand-border);background:#fff;outline:none}.workspace-actions[data-v-6657092e]{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.review-actions[data-v-6657092e]{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:18px;display:flex}.btn[data-v-6657092e]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:10px;height:38px;padding:0 16px;font-size:14px}.btn[data-v-6657092e]:disabled{opacity:.6;cursor:not-allowed}.btn.danger[data-v-6657092e]{border-color:var(--status-urgent-border);background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.generating[data-v-6657092e]{color:#92400e;background:#fef3c7;flex-shrink:0}.empty[data-v-6657092e],.empty-inline[data-v-6657092e]{color:var(--color-muted);font-size:13px}.empty[data-v-6657092e]{text-align:center;padding:40px 16px}.empty-inline[data-v-6657092e]{margin:0}@media (width<=1080px){.page-layout[data-v-6657092e]{grid-template-columns:1fr}.aside-column[data-v-6657092e]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid;position:static}.card-logs[data-v-6657092e]{grid-column:1/-1;max-height:none}.card-logs .ticket-log-list[data-v-6657092e]{max-height:280px}}@media (width<=768px){.ticket-detail-page[data-v-6657092e]{padding:16px}.workspace-editor[data-v-6657092e],.aside-column[data-v-6657092e],.info-grid-compact[data-v-6657092e]{grid-template-columns:1fr}.topbar[data-v-6657092e]{padding:12px 14px}.title-wrap[data-v-6657092e]{font-size:18px}}.ai-modeling-page[data-v-d658aa25]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-d658aa25],.sub-nav[data-v-d658aa25],.toolbar[data-v-d658aa25],.table-wrap[data-v-d658aa25],.pager[data-v-d658aa25],.banner[data-v-d658aa25],.batch-progress-panel[data-v-d658aa25]{max-width:var(--page-max-width);margin:0 auto}.page-header[data-v-d658aa25]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.page-header h1[data-v-d658aa25]{margin:0;font-size:24px}.header-actions[data-v-d658aa25]{align-items:center;gap:10px;display:flex}.selection-text[data-v-d658aa25]{color:var(--color-muted);font-size:13px}.hint[data-v-d658aa25]{color:var(--color-muted);margin:6px 0 0;font-size:14px}.sub-nav[data-v-d658aa25]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-wrap:nowrap;gap:4px;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.sub-nav-link[data-v-d658aa25]{min-width:96px;color:var(--color-muted);text-align:center;border-radius:8px;flex:1 0 auto;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none}.sub-nav-link.active[data-v-d658aa25]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.toolbar[data-v-d658aa25]{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.search[data-v-d658aa25]{border:1px solid var(--color-border);border-radius:10px;flex:1;min-width:200px;height:38px;padding:0 12px;font-size:14px}.filter-item[data-v-d658aa25]{color:var(--color-muted);align-items:center;gap:8px;font-size:13px;display:flex}.select[data-v-d658aa25]{border:1px solid var(--color-border);background:#fff;border-radius:10px;height:38px;padding:0 10px}.btn[data-v-d658aa25]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:38px;padding:0 14px;font-size:14px}.btn.primary[data-v-d658aa25]{background:var(--brand);border-color:var(--brand);color:#fff}.btn[data-v-d658aa25]:disabled{opacity:.6;cursor:not-allowed}tr.packaging-row[data-v-d658aa25]{opacity:.72}tr.packaging-row .col-check input[type=checkbox][data-v-d658aa25]{cursor:not-allowed}.banner[data-v-d658aa25]{white-space:pre-wrap;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.batch-task-panel[data-v-d658aa25]{max-width:var(--page-max-width);border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;margin:0 auto 14px;padding:12px}.batch-task-head[data-v-d658aa25]{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.batch-task-head h3[data-v-d658aa25]{margin:0;font-size:15px}.batch-task-actions[data-v-d658aa25]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.link-btn[data-v-d658aa25]{text-decoration:none}.batch-task-empty[data-v-d658aa25]{color:var(--color-muted);margin:0}.batch-task-table[data-v-d658aa25]{border-collapse:collapse;width:100%;font-size:13px}.batch-task-table th[data-v-d658aa25],.batch-task-table td[data-v-d658aa25]{border-top:1px solid var(--color-border);text-align:left;padding:8px 6px}.task-subtext[data-v-d658aa25]{color:var(--color-muted);margin-top:4px;font-size:12px}.mono[data-v-d658aa25]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.banner.error[data-v-d658aa25]{background:var(--status-danger-bg);color:var(--status-danger-text)}.banner.success[data-v-d658aa25]{background:var(--status-success-bg);color:var(--status-success-text)}.batch-progress-panel[data-v-d658aa25]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;margin-bottom:16px;padding:14px 16px}.batch-progress-head[data-v-d658aa25]{justify-content:space-between;gap:12px;margin-bottom:8px;font-size:14px;display:flex}.batch-progress-label[data-v-d658aa25]{color:var(--color-text)}.batch-progress-percent[data-v-d658aa25]{color:var(--brand);font-weight:600}.batch-progress-track[data-v-d658aa25]{background:#eef2f7;border-radius:999px;height:8px;overflow:hidden}.batch-progress-bar[data-v-d658aa25]{background:var(--brand);border-radius:999px;height:100%;transition:width .3s}.table-wrap[data-v-d658aa25]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:auto}table[data-v-d658aa25]{border-collapse:collapse;width:100%;font-size:14px}th[data-v-d658aa25],td[data-v-d658aa25]{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:12px 14px}th[data-v-d658aa25]{color:var(--color-muted);background:var(--brand-light);font-size:13px;font-weight:600}.col-check[data-v-d658aa25]{width:40px}.col-action[data-v-d658aa25]{text-align:right;width:88px}.action-btn[data-v-d658aa25]{color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.action-btn.primary[data-v-d658aa25]{color:var(--brand-dark)}.action-btn[data-v-d658aa25]:hover{opacity:.75}tr:last-child td[data-v-d658aa25]{border-bottom:none}.empty[data-v-d658aa25]{text-align:center;color:var(--color-muted);padding:32px 16px!important}.number-link[data-v-d658aa25]{color:var(--color-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.number-link[data-v-d658aa25]:hover{opacity:.75}.urgent-row[data-v-d658aa25]{background:#fffafb}.overdue-row[data-v-d658aa25]{background:var(--status-overdue-bg)}.urgent-tag[data-v-d658aa25],.rework-tag[data-v-d658aa25]{border-radius:999px;margin-top:4px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.urgent-tag[data-v-d658aa25]{color:#b91c1c;background:#fee2e2}.rework-tag[data-v-d658aa25]{color:#92400e;background:#fef3c7}.info-missing-tag[data-v-d658aa25]{color:#c2410c;background:#ffedd5;border-radius:999px;margin-top:4px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge[data-v-d658aa25]{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.work-order-ticket.pending_assign[data-v-d658aa25]{color:#475569;background:#f1f5f9}.badge.work-order-ticket.in_progress[data-v-d658aa25]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.work-order-ticket.packaging[data-v-d658aa25]{color:#6d28d9;background:#ede9fe}.badge.work-order-ticket.pending_review[data-v-d658aa25]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.work-order-ticket.approved[data-v-d658aa25]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.work-order-ticket.rejected[data-v-d658aa25]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.work-order-ticket.cancelled[data-v-d658aa25]{color:#64748b;background:#f1f5f9}.pager[data-v-d658aa25]{color:var(--color-muted);justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:14px;display:flex}.ai-modeling-detail-page[data-v-c284b449]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.detail-page-title[data-v-c284b449],.detail-context-bar[data-v-c284b449],.banner[data-v-c284b449],.page-layout[data-v-c284b449],.empty[data-v-c284b449]{max-width:var(--page-max-width);margin:0 auto}.detail-page-title[data-v-c284b449]{margin-bottom:12px}.detail-context-bar[data-v-c284b449]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.detail-context-main[data-v-c284b449]{flex-wrap:wrap;flex:1;align-items:center;gap:10px 16px;min-width:0;display:flex}.title-wrap[data-v-c284b449]{flex-wrap:wrap;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.detail-context-actions[data-v-c284b449]{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.pet-name[data-v-c284b449]{color:var(--color-muted);font-size:15px;font-weight:500}.back-btn[data-v-c284b449]{flex-shrink:0}.page-layout[data-v-c284b449]{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:16px;margin-bottom:24px;display:grid}.main-column[data-v-c284b449],.aside-column[data-v-c284b449]{flex-direction:column;gap:16px;min-width:0;display:flex}.aside-column[data-v-c284b449]{position:sticky;top:72px}.btn[data-v-c284b449]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:38px;padding:0 14px;font-size:14px}.btn.primary[data-v-c284b449]{background:var(--brand);border-color:var(--brand);color:#fff}.btn.success[data-v-c284b449]{background:var(--status-success-bg);color:var(--status-success-text);border-color:#86efac}.btn.danger[data-v-c284b449]{background:var(--status-danger-bg);color:var(--status-danger-text);border-color:#fca5a5}.btn[data-v-c284b449]:disabled{opacity:.6;cursor:not-allowed}.banner[data-v-c284b449]{border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.banner.error[data-v-c284b449]{background:var(--status-danger-bg);color:var(--status-danger-text)}.banner.success[data-v-c284b449]{background:var(--status-success-bg);color:var(--status-success-text)}.card[data-v-c284b449]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:18px 20px}.card-compact[data-v-c284b449]{padding:16px 18px}.card-title[data-v-c284b449]{margin:0;font-size:16px;font-weight:700}.section-title-spaced[data-v-c284b449],.section-head[data-v-c284b449]{margin-bottom:14px}.section-head .card-title[data-v-c284b449]{margin-bottom:4px}.section-hint[data-v-c284b449]{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.summary-text[data-v-c284b449]{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.toggle-btn[data-v-c284b449]{color:var(--brand);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:0;font-size:13px;font-weight:600}.data-table[data-v-c284b449]{border-collapse:collapse;width:100%;margin-top:12px;font-size:13px}.raw-table th[data-v-c284b449],.raw-table td[data-v-c284b449]{border:1px solid var(--color-border);text-align:left;vertical-align:top;word-break:break-word;padding:8px 10px}.raw-table th[data-v-c284b449]{width:36%;color:var(--color-muted);background:#f8fafc;font-weight:600}.info-grid[data-v-c284b449]{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.info-grid>div[data-v-c284b449]{flex-direction:column;gap:4px;min-width:0;display:flex}.info-span-2[data-v-c284b449]{grid-column:1/-1}.field-label[data-v-c284b449]{color:var(--color-muted);font-size:12px}.info-grid strong[data-v-c284b449]{word-break:break-word;font-size:14px;font-weight:600}.link-btn[data-v-c284b449]{color:var(--brand);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.link-btn.inline[data-v-c284b449]{font-size:inherit;display:inline}.view-grid[data-v-c284b449],.photo-grid[data-v-c284b449]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;display:grid}.view-card[data-v-c284b449],.photo-card[data-v-c284b449]{margin:0}.view-thumb-btn[data-v-c284b449],.photo-thumb-btn[data-v-c284b449]{aspect-ratio:1;border:1px solid var(--color-border);cursor:zoom-in;background:#fafafa;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.view-thumb-btn img[data-v-c284b449],.photo-thumb-btn img[data-v-c284b449]{object-fit:cover;width:100%;height:100%;display:block}.zoom-hint[data-v-c284b449]{color:#fff;opacity:0;background:#0f172aa8;border-radius:999px;padding:2px 8px;font-size:11px;transition:opacity .15s;position:absolute;bottom:8px;right:8px}.view-thumb-btn:hover .zoom-hint[data-v-c284b449],.photo-thumb-btn:hover .zoom-hint[data-v-c284b449]{opacity:1}.view-missing[data-v-c284b449],.photo-pending[data-v-c284b449]{aspect-ratio:1;border:1px dashed var(--color-border);color:var(--color-muted);background:#f8fafc;border-radius:12px;justify-content:center;align-items:center;font-size:13px;text-decoration:none;display:flex}.view-card figcaption[data-v-c284b449],.photo-label[data-v-c284b449]{text-align:center;word-break:break-word;margin-top:8px;font-size:13px;font-weight:600}.log-list[data-v-c284b449]{margin:0;padding:0;list-style:none}.log-item[data-v-c284b449]{border-bottom:1px solid var(--color-border);padding:12px 0}.log-item[data-v-c284b449]:last-child{border-bottom:none}.log-head[data-v-c284b449]{justify-content:space-between;gap:12px;font-size:14px;display:flex}.log-time[data-v-c284b449]{color:var(--color-muted);white-space:nowrap;font-size:12px}.log-message[data-v-c284b449],.log-actor[data-v-c284b449]{color:var(--color-muted);align-items:center;gap:6px;margin:6px 0 0;font-size:13px;display:flex}.badge[data-v-c284b449]{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.work-order-ticket.in_progress[data-v-c284b449]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.work-order-ticket.pending_review[data-v-c284b449]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.work-order-ticket.pending_assign[data-v-c284b449]{color:#475569;background:#f1f5f9}.badge.work-order-ticket.approved[data-v-c284b449]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.work-order-ticket.rejected[data-v-c284b449]{background:var(--status-danger-bg);color:var(--status-danger-text)}.tag[data-v-c284b449]{background:var(--brand-muted-bg,#eef2ff);color:var(--brand-dark,#3730a3);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.tag-warn[data-v-c284b449]{color:#c2410c;background:#ffedd5}.empty[data-v-c284b449],.empty-inline[data-v-c284b449]{color:var(--color-muted);font-size:14px}.empty[data-v-c284b449]{text-align:center;padding:32px 16px}.modal-root[data-v-c284b449]{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel[data-v-c284b449]{background:var(--color-surface);border:1px solid var(--color-border);width:min(480px,100%);box-shadow:var(--shadow-lg);border-radius:16px;padding:24px}.modal-title[data-v-c284b449]{margin:0 0 8px;font-size:18px}.modal-hint[data-v-c284b449]{color:var(--color-muted);margin:0 0 12px;font-size:13px;line-height:1.5}.modal-textarea[data-v-c284b449]{border:1px solid var(--color-border);resize:vertical;box-sizing:border-box;border-radius:10px;width:100%;min-height:120px;padding:12px;font-family:inherit;font-size:14px}.modal-textarea.invalid[data-v-c284b449]{border-color:#fca5a5}.modal-error[data-v-c284b449]{background:var(--status-danger-bg);color:var(--status-danger-text);text-align:left;border-radius:8px;margin:8px 0 0;padding:8px 10px;font-size:13px}.modal-actions[data-v-c284b449]{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.image-preview-overlay[data-v-c284b449]{z-index:1100;background:#0f172ad1;justify-content:center;align-items:center;padding:48px 24px;display:flex;position:fixed;inset:0}.image-preview-close[data-v-c284b449]{cursor:pointer;background:#ffffffeb;border:none;border-radius:999px;height:36px;padding:0 14px;font-size:14px;font-weight:600;position:absolute;top:20px;right:20px}.image-preview-img[data-v-c284b449]{object-fit:contain;border-radius:12px;max-width:min(960px,100%);max-height:calc(100vh - 96px)}@media (width<=960px){.page-layout[data-v-c284b449]{grid-template-columns:1fr}.aside-column[data-v-c284b449]{position:static}.info-grid[data-v-c284b449]{grid-template-columns:1fr 1fr}}@media (width<=640px){.ai-modeling-detail-page[data-v-c284b449]{padding:16px}.detail-context-actions[data-v-c284b449]{width:100%;margin-left:0}.info-grid[data-v-c284b449]{grid-template-columns:1fr}}.stage-module-page[data-v-f893fd16]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-f893fd16],.sub-nav[data-v-f893fd16],.toolbar[data-v-f893fd16],.table-wrap[data-v-f893fd16],.banner[data-v-f893fd16]{max-width:var(--page-max-width);margin:0 auto}.page-header[data-v-f893fd16]{max-width:var(--page-max-width);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 auto 12px;display:flex}.page-header h1[data-v-f893fd16]{margin:0 0 4px;font-size:24px}.hint[data-v-f893fd16]{color:var(--color-muted);margin:0;font-size:13px}.header-actions[data-v-f893fd16]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.selection-text[data-v-f893fd16]{color:var(--brand-dark);font-size:13px;font-weight:600}.assign-select[data-v-f893fd16]{border:1px solid var(--color-border);background:#fff;border-radius:10px;min-width:140px;height:38px;padding:0 10px}.sub-nav[data-v-f893fd16]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.sub-nav-link[data-v-f893fd16]{text-align:center;min-width:88px;color:var(--color-muted);border-radius:8px;flex:1 0 auto;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none}.sub-nav-link.active[data-v-f893fd16]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.toolbar[data-v-f893fd16]{gap:10px;margin-bottom:16px;display:flex}.search[data-v-f893fd16]{border:1px solid var(--color-border);border-radius:10px;flex:1;height:38px;padding:0 12px}.btn[data-v-f893fd16]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:38px;padding:0 14px}.btn.primary[data-v-f893fd16]{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.btn.danger[data-v-f893fd16]{background:var(--status-danger-text);border-color:var(--status-danger-text);color:#fff;font-weight:600}.btn[data-v-f893fd16]:disabled{opacity:.55;cursor:not-allowed}.banner.error[data-v-f893fd16]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;margin-bottom:12px;padding:10px 12px}.banner.success[data-v-f893fd16]{background:var(--status-success-bg);color:var(--status-success-text);border-radius:10px;margin-bottom:12px;padding:10px 12px}.table-wrap[data-v-f893fd16]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:auto}table[data-v-f893fd16]{border-collapse:collapse;width:100%;font-size:14px}th[data-v-f893fd16],td[data-v-f893fd16]{border-bottom:1px solid var(--color-border);text-align:left;padding:12px 14px}th[data-v-f893fd16]{color:var(--color-muted);background:var(--brand-light);font-size:13px;font-weight:600}.check-col[data-v-f893fd16]{text-align:center;width:44px}.empty[data-v-f893fd16]{text-align:center;color:var(--color-muted);padding:32px!important}.action-btn[data-v-f893fd16]{color:var(--brand);cursor:pointer;background:0 0;border:none;margin-right:10px;padding:0;font-weight:600}.action-btn[data-v-f893fd16]:last-child{margin-right:0}.badge[data-v-f893fd16]{color:#475569;background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.in_progress[data-v-f893fd16]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.pending_review[data-v-f893fd16]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.approved[data-v-f893fd16]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.rejected[data-v-f893fd16]{background:var(--status-danger-bg);color:var(--status-danger-text)}.info-missing-tag[data-v-f893fd16]{color:#c2410c;background:#ffedd5;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.copy-badge[data-v-f893fd16]{background:var(--brand-muted-bg);color:var(--brand-dark);border-radius:999px;margin-left:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}tbody tr.urgent-row[data-v-f893fd16]{background:var(--status-urgent-bg)}tbody tr.overdue-row[data-v-f893fd16]{background:var(--status-overdue-bg)}.stage-detail-page[data-v-ddf5ed54]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:20px 24px 32px}.detail-page-title[data-v-ddf5ed54],.detail-context-bar[data-v-ddf5ed54],.banner[data-v-ddf5ed54],.empty[data-v-ddf5ed54]{max-width:var(--page-max-width);margin-left:auto;margin-right:auto}.detail-page-title[data-v-ddf5ed54]{margin-bottom:12px}.detail-page-title h1[data-v-ddf5ed54]{margin:0}.detail-context-bar[data-v-ddf5ed54]{margin-bottom:16px}.page-shell[data-v-ddf5ed54]{max-width:var(--page-max-width);margin:0 auto}.page-shell .card[data-v-ddf5ed54],.page-shell .shell-banner[data-v-ddf5ed54]{max-width:none;margin-left:0;margin-right:0}.page-shell>.detail-context-bar[data-v-ddf5ed54],.page-shell>.shell-banner[data-v-ddf5ed54],.page-shell>.card-deliverable[data-v-ddf5ed54]{margin-bottom:16px}.page-shell>.detail-page-title[data-v-ddf5ed54]{margin-bottom:12px}.back-btn[data-v-ddf5ed54]{flex-shrink:0}.topbar-actions-secondary[data-v-ddf5ed54]{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.detail-context-extra .action-hint[data-v-ddf5ed54]{flex:100%;margin:0}.action-label[data-v-ddf5ed54]{color:var(--color-muted);white-space:nowrap;font-size:13px;font-weight:600}.page-layout[data-v-ddf5ed54]{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:16px;display:grid}.main-column[data-v-ddf5ed54]{flex-direction:column;grid-area:1/1/3;gap:16px;min-width:0;display:flex}.panel-custom[data-v-ddf5ed54]{grid-area:1/2}.panel-info[data-v-ddf5ed54]{grid-area:2/2;position:sticky;top:72px}.status-badge[data-v-ddf5ed54]{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.status-badge.pending_assign[data-v-ddf5ed54],.status-badge.pending[data-v-ddf5ed54]{color:#475569;background:#f1f5f9}.status-badge.generating[data-v-ddf5ed54]{background:var(--status-info-bg);color:var(--status-info-text)}.status-badge.completed[data-v-ddf5ed54]{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.failed[data-v-ddf5ed54]{background:var(--status-danger-bg);color:var(--status-danger-text)}.status-badge.in_progress[data-v-ddf5ed54]{background:var(--status-info-bg);color:var(--status-info-text)}.status-badge.pending_review[data-v-ddf5ed54]{background:var(--status-warning-bg);color:var(--status-warning-text)}.tag[data-v-ddf5ed54]{background:var(--brand-muted-bg);color:var(--brand-dark);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.tag-urgent[data-v-ddf5ed54]{color:#b91c1c;background:#fee2e2}.tag-warn[data-v-ddf5ed54]{color:#c2410c;background:#ffedd5}.tag-copy[data-v-ddf5ed54]{color:#0369a1;background:#e0f2fe}.link-btn[data-v-ddf5ed54]{color:var(--brand);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 0;font-weight:600}.card[data-v-ddf5ed54]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:18px 20px}.card-compact[data-v-ddf5ed54]{padding:16px 18px}.card-title[data-v-ddf5ed54]{margin:0;font-size:15px;font-weight:700}.section-title-spaced[data-v-ddf5ed54],.section-head[data-v-ddf5ed54]{margin-bottom:14px}.section-head .card-title[data-v-ddf5ed54]{margin-bottom:4px}.section-hint[data-v-ddf5ed54]{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.card-deliverable[data-v-ddf5ed54]{border-color:var(--brand-border);background:linear-gradient(#fff 0%,#fbfbfd 100%)}.deliverable-head[data-v-ddf5ed54]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.deliverable-head .section-head[data-v-ddf5ed54]{flex:1;min-width:200px;margin-bottom:0}.deliverable-empty[data-v-ddf5ed54]{text-align:center;border:1px dashed var(--color-border);background:#f8fafc;border-radius:12px;padding:28px 20px}.deliverable-empty p[data-v-ddf5ed54]{color:var(--color-muted);margin:0;font-size:14px;line-height:1.5}.deliverable-footer[data-v-ddf5ed54]{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:16px;padding-top:14px;display:flex}.deliverable-footer-actions[data-v-ddf5ed54]{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.attach-thumb-wrap[data-v-ddf5ed54]{position:relative}.attach-delete-btn[data-v-ddf5ed54]{z-index:2;color:#fff;cursor:pointer;background:#0f172ab8;border:none;border-radius:999px;width:26px;height:26px;font-size:18px;line-height:1;position:absolute;top:6px;right:6px}.attach-delete-btn[data-v-ddf5ed54]:hover:not(:disabled){background:#b91c1ceb}.attach-delete-btn[data-v-ddf5ed54]:disabled{opacity:.5;cursor:not-allowed}.rejection-feedback-banner[data-v-ddf5ed54]{background:linear-gradient(#fff5f5 0%,#fef2f2 100%);border:1px solid #fecaca;border-radius:12px;margin-top:16px;padding:14px 16px}.rejection-feedback-head[data-v-ddf5ed54]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.rejection-feedback-head strong[data-v-ddf5ed54]{color:#b91c1c;font-size:14px}.rejection-feedback-time[data-v-ddf5ed54]{color:var(--color-muted);flex-shrink:0;font-size:12px}.rejection-feedback-message[data-v-ddf5ed54]{color:#7f1d1d;white-space:pre-wrap;word-break:break-word;margin:0 0 10px;font-size:14px;line-height:1.55}.rejection-feedback-meta[data-v-ddf5ed54]{margin-top:4px}.info-grid[data-v-ddf5ed54]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 16px;display:grid}.info-grid-compact[data-v-ddf5ed54]{grid-template-columns:1fr;gap:12px}.info-grid-compact strong[data-v-ddf5ed54]{word-break:break-word;margin-top:4px;font-size:14px;display:block}.info-item[data-v-ddf5ed54]{min-width:0}.info-item>span[data-v-ddf5ed54]:last-child{word-break:break-word;margin-top:4px;display:block}.label[data-v-ddf5ed54]{color:var(--color-muted);margin-bottom:4px;font-size:12px;display:block}.summary-block[data-v-ddf5ed54]{border-top:1px solid var(--color-border);margin-top:16px;padding-top:14px}.summary-text[data-v-ddf5ed54]{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.empty-inline[data-v-ddf5ed54]{color:var(--color-muted);margin:0;font-size:13px}.view-grid[data-v-ddf5ed54]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.view-grid--four[data-v-ddf5ed54]{grid-template-columns:repeat(4,minmax(0,1fr))}.view-card[data-v-ddf5ed54],.photo-card[data-v-ddf5ed54],.attach-card[data-v-ddf5ed54]{min-width:0;margin:0}.view-card figcaption[data-v-ddf5ed54],.photo-label[data-v-ddf5ed54]{color:var(--color-muted);text-align:center;margin-top:8px;font-size:12px;line-height:1.4}.view-thumb-btn[data-v-ddf5ed54],.photo-thumb-btn[data-v-ddf5ed54]{border:1px solid var(--color-border);cursor:zoom-in;background:#f8fafc;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.view-thumb-btn img[data-v-ddf5ed54],.photo-thumb-btn img[data-v-ddf5ed54],.attach-grid img[data-v-ddf5ed54]{aspect-ratio:1;object-fit:cover;width:100%;display:block}.zoom-hint[data-v-ddf5ed54]{color:#fff;background:#0f172a9e;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;position:absolute;bottom:8px;right:8px}.view-missing[data-v-ddf5ed54],.photo-pending[data-v-ddf5ed54]{aspect-ratio:1;color:var(--color-muted);background:#f1f5f9;border-radius:12px;justify-content:center;align-items:center;font-size:13px;text-decoration:none;display:flex}.photo-grid[data-v-ddf5ed54]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.actions[data-v-ddf5ed54]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.action-hint[data-v-ddf5ed54]{color:var(--status-warning-text);font-size:13px}.assign-select[data-v-ddf5ed54]{flex:0 220px;width:min(220px,100%);min-width:160px}.btn[data-v-ddf5ed54]{box-sizing:border-box;border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;background:#fff;border-radius:10px;justify-content:center;align-items:center;height:38px;padding:0 14px;font-size:14px;line-height:1;display:inline-flex}label.btn input[type=file][data-v-ddf5ed54]{display:none}.btn.primary[data-v-ddf5ed54]{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.btn.danger[data-v-ddf5ed54]{background:var(--status-danger-bg);color:var(--status-danger-text);border-color:#fca5a5}.btn[data-v-ddf5ed54]:disabled{opacity:.55;cursor:not-allowed}.select[data-v-ddf5ed54],.search[data-v-ddf5ed54],.textarea[data-v-ddf5ed54]{border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;font-size:14px}.banner.error[data-v-ddf5ed54]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;padding:10px 12px}.banner.success[data-v-ddf5ed54]{background:var(--status-success-bg);color:var(--status-success-text);border-radius:10px;padding:10px 12px}.attach-grid[data-v-ddf5ed54]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.card-logs .log-list[data-v-ddf5ed54]{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.log-item[data-v-ddf5ed54]{min-width:0;margin:0;padding:0}.log-item[data-v-ddf5ed54]:not(.log-item--rejected){border-bottom:1px solid var(--color-border);padding:14px 0}.log-item[data-v-ddf5ed54]:not(.log-item--rejected):first-child{padding-top:0}.log-item[data-v-ddf5ed54]:not(.log-item--rejected):last-child{border-bottom:none;padding-bottom:0}.log-item--rejected[data-v-ddf5ed54]{box-sizing:border-box;background:linear-gradient(#fff5f5 0%,#fef2f2 100%);border:1px solid #fecaca;border-radius:12px;margin:10px 0;padding:14px 16px}.log-item--rejected .log-head[data-v-ddf5ed54]{margin-bottom:8px}.log-item--rejected .log-head strong[data-v-ddf5ed54]{color:#b91c1c}.log-item--rejected .log-message[data-v-ddf5ed54]{color:#7f1d1d;margin-bottom:10px;font-weight:500}.log-item--rejected .log-meta[data-v-ddf5ed54]{margin-top:0}.log-head[data-v-ddf5ed54]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.log-time[data-v-ddf5ed54]{color:var(--color-muted);flex-shrink:0;font-size:12px}.log-message[data-v-ddf5ed54]{word-break:break-word;margin:0 0 8px;font-size:14px;line-height:1.55}.log-meta[data-v-ddf5ed54]{margin-top:4px}.muted[data-v-ddf5ed54]{color:var(--color-muted);font-size:13px}.modal-root[data-v-ddf5ed54]{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel[data-v-ddf5ed54]{background:#fff;border-radius:14px;width:min(440px,100%);padding:20px}.field[data-v-ddf5ed54]{color:var(--color-muted);margin-bottom:10px;font-size:13px;display:block}.modal-actions[data-v-ddf5ed54]{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.modal-error[data-v-ddf5ed54]{color:var(--status-danger-text);font-size:13px}.search-list[data-v-ddf5ed54]{max-height:200px;margin:10px 0;padding:0;list-style:none;overflow:auto}.link[data-v-ddf5ed54]{color:var(--brand);cursor:pointer;background:0 0;border:none;padding:6px 0}.image-preview-overlay[data-v-ddf5ed54]{z-index:1100;background:#0f172ad1;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.image-preview-close[data-v-ddf5ed54]{color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:10px;height:40px;padding:0 16px;font-size:14px;position:absolute;top:20px;right:20px}.image-preview-img[data-v-ddf5ed54]{object-fit:contain;max-width:min(92vw,960px);max-height:88vh;box-shadow:var(--shadow-lg);border-radius:12px}@media (width<=1080px){.view-grid--four[data-v-ddf5ed54]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){.page-layout[data-v-ddf5ed54]{flex-direction:column;grid-template-rows:auto;grid-template-columns:1fr;display:flex}.main-column[data-v-ddf5ed54],.panel-custom[data-v-ddf5ed54],.panel-info[data-v-ddf5ed54]{grid-area:auto/1}.main-column[data-v-ddf5ed54]{order:2}.panel-custom[data-v-ddf5ed54]{order:1}.panel-info[data-v-ddf5ed54]{order:3;position:static}.topbar-actions-secondary[data-v-ddf5ed54]{width:100%;margin-left:0}}@media (width<=640px){.stage-detail-page[data-v-ddf5ed54]{padding:16px}.detail-context-extra[data-v-ddf5ed54]{flex-direction:column;align-items:stretch}.assign-select[data-v-ddf5ed54]{flex:none;width:100%;min-width:0}.topbar-actions-secondary[data-v-ddf5ed54]{flex-direction:column;align-items:stretch;width:100%;margin-left:0}.topbar-actions-secondary .btn[data-v-ddf5ed54],.topbar-actions-secondary label.btn[data-v-ddf5ed54]{justify-content:center;align-items:center;width:100%;display:inline-flex}}.page[data-v-3af9db3e]{padding:24px}.page-header[data-v-3af9db3e],.sub-nav[data-v-3af9db3e],.toolbar[data-v-3af9db3e],.table-wrap[data-v-3af9db3e],.banner[data-v-3af9db3e]{max-width:var(--page-max-width);margin:0 auto 16px}.sub-nav[data-v-3af9db3e]{border:1px solid var(--color-border);background:#fff;border-radius:12px;gap:4px;padding:4px;display:flex}.sub-nav-link[data-v-3af9db3e]{text-align:center;color:var(--color-muted);border-radius:8px;flex:1;padding:10px;text-decoration:none}.sub-nav-link.active[data-v-3af9db3e]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.toolbar[data-v-3af9db3e]{flex-wrap:wrap;gap:10px;display:flex}.search[data-v-3af9db3e]{border:1px solid var(--color-border);border-radius:10px;flex:1;min-width:180px;height:38px;padding:0 12px}.select[data-v-3af9db3e]{border:1px solid var(--color-border);background:#fff;border-radius:10px;height:38px;padding:0 12px}.btn[data-v-3af9db3e]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:10px;height:38px;padding:0 14px}.btn.primary[data-v-3af9db3e]{background:var(--brand);color:#fff;border-color:var(--brand)}.table-wrap[data-v-3af9db3e]{border:1px solid var(--color-border);background:#fff;border-radius:14px;overflow:auto}table[data-v-3af9db3e]{border-collapse:collapse;width:100%}th[data-v-3af9db3e],td[data-v-3af9db3e]{border-bottom:1px solid var(--color-border);text-align:left;padding:12px 14px}th[data-v-3af9db3e]{background:var(--brand-light);color:var(--color-muted);font-size:13px}.col-check[data-v-3af9db3e]{text-align:center;width:44px}.col-check input[type=checkbox][data-v-3af9db3e]{cursor:pointer}.row-disabled[data-v-3af9db3e]{color:var(--color-muted)}.row-disabled input[type=checkbox][data-v-3af9db3e]:disabled{cursor:not-allowed;opacity:.45}.status-badge[data-v-3af9db3e]{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.status-badge.pending[data-v-3af9db3e]{color:#475569;background:#f1f5f9}.status-badge.running[data-v-3af9db3e],.status-badge.generating[data-v-3af9db3e]{background:var(--status-info-bg);color:var(--status-info-text)}.status-badge.completed[data-v-3af9db3e]{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.failed[data-v-3af9db3e]{background:var(--status-danger-bg);color:var(--status-danger-text)}.link[data-v-3af9db3e]{color:var(--brand);cursor:pointer;background:0 0;border:none;font-weight:600;text-decoration:none}.banner.error[data-v-3af9db3e]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;padding:10px}.banner.success[data-v-3af9db3e]{background:var(--status-success-bg);color:var(--status-success-text);border-radius:10px;padding:10px}tbody tr.urgent-row[data-v-3af9db3e]{background:var(--status-urgent-bg)}tbody tr.overdue-row[data-v-3af9db3e]{background:var(--status-overdue-bg)}.page[data-v-db2dbb8b]{max-width:1100px;margin:0 auto;padding:20px}.page-header h1[data-v-db2dbb8b]{margin:0 0 4px;font-size:1.5rem}.muted[data-v-db2dbb8b]{color:var(--color-muted,#666)}.sub-nav[data-v-db2dbb8b]{border:1px solid var(--color-border);background:#fff;border-radius:12px;flex-wrap:wrap;gap:4px;margin:16px 0;padding:4px;display:flex}.sub-nav-link[data-v-db2dbb8b]{cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 12px}.sub-nav-link.active[data-v-db2dbb8b]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.panel[data-v-db2dbb8b]{border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:16px}.toolbar[data-v-db2dbb8b]{gap:8px;margin:12px 0;display:flex}.btn[data-v-db2dbb8b]{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:10px;height:38px;padding:0 14px}.btn.primary[data-v-db2dbb8b]{background:var(--brand);color:#fff;border-color:var(--brand)}.form-grid[data-v-db2dbb8b]{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0;display:grid}.form-grid label[data-v-db2dbb8b],.block[data-v-db2dbb8b]{flex-direction:column;gap:6px;font-size:14px;display:flex}input[data-v-db2dbb8b],select[data-v-db2dbb8b],textarea[data-v-db2dbb8b]{border:1px solid var(--color-border);border-radius:8px;padding:8px 10px}textarea[data-v-db2dbb8b]{width:100%;font-family:inherit}.card[data-v-db2dbb8b]{border:1px solid var(--color-border);border-radius:10px;margin:12px 0;padding:12px}.health-grid[data-v-db2dbb8b]{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.health-card[data-v-db2dbb8b]{border:1px solid var(--color-border);border-radius:10px;padding:12px}.health-card.ok[data-v-db2dbb8b]{border-color:#2f9e44}.health-card.warn[data-v-db2dbb8b]{border-color:#f08c00}.health-card.error[data-v-db2dbb8b]{border-color:#e03131}.alert[data-v-db2dbb8b]{border-radius:8px;padding:10px 12px}.alert.error[data-v-db2dbb8b]{color:#c92a2a;background:#fff5f5}.alert.success[data-v-db2dbb8b]{color:#2b8a3e;background:#ebfbee}.table[data-v-db2dbb8b]{border-collapse:collapse;width:100%}.table th[data-v-db2dbb8b],.table td[data-v-db2dbb8b]{border-bottom:1px solid var(--color-border);text-align:left;padding:10px}.status-badge.pending[data-v-db2dbb8b]{color:#868e96}.status-badge.running[data-v-db2dbb8b]{color:#1971c2}.status-badge.completed[data-v-db2dbb8b]{color:#2f9e44}.status-badge.failed[data-v-db2dbb8b]{color:#e03131}.confirm-dialog-root[data-v-ee44763c]{z-index:1200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a85;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.confirm-dialog-panel[data-v-ee44763c]{border:1px solid var(--brand-border);width:min(420px,100%);box-shadow:var(--shadow-lg);background:linear-gradient(165deg,#fff 0%,#f5f5f7 100%);border-radius:18px;padding:24px}.confirm-dialog-title[data-v-ee44763c]{color:var(--color-text);margin:0 0 10px;font-size:18px;font-weight:800}.confirm-dialog-message[data-v-ee44763c]{color:var(--color-muted);margin:0 0 20px;font-size:14px;line-height:1.6}.confirm-dialog-actions[data-v-ee44763c]{justify-content:flex-end;gap:10px;display:flex}.btn[data-v-ee44763c]{cursor:pointer;border-radius:10px;height:40px;padding:0 18px;font-size:14px;font-weight:600}.btn[data-v-ee44763c]:disabled{opacity:.55;cursor:not-allowed}.btn.ghost[data-v-ee44763c]{border:1px solid var(--color-border);color:var(--color-text);background:#fff}.btn.danger[data-v-ee44763c]{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);border:none}.confirm-dialog-enter-active[data-v-ee44763c],.confirm-dialog-leave-active[data-v-ee44763c]{transition:opacity .2s}.confirm-dialog-enter-from[data-v-ee44763c],.confirm-dialog-leave-to[data-v-ee44763c]{opacity:0}.log-dialog-root[data-v-625e055a]{z-index:1100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a85;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.log-dialog-panel[data-v-625e055a]{background:linear-gradient(165deg,#fff 0%,#f5f5f7 100%);border:1px solid #ffffffa6;border-radius:22px;width:min(520px,100%);padding:28px 28px 24px;position:relative;overflow:hidden;box-shadow:0 24px 60px #0000001f,0 8px 24px #0f172a14,inset 0 1px #ffffffe6}.log-dialog-glow[data-v-625e055a]{pointer-events:none;background:radial-gradient(circle,#00000014 0%,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-80px;right:-40px}.log-dialog-close[data-v-625e055a]{width:32px;height:32px;color:var(--color-muted);cursor:pointer;z-index:1;background:#ffffffb3;border:none;border-radius:10px;font-size:14px;transition:background .2s,color .2s;position:absolute;top:14px;right:14px}.log-dialog-close[data-v-625e055a]:hover:not(:disabled){color:var(--color-text);background:#fff}.log-dialog-close[data-v-625e055a]:disabled{opacity:.5;cursor:not-allowed}.log-dialog-header[data-v-625e055a]{align-items:center;gap:16px;margin-bottom:12px;display:flex}.log-dialog-icon[data-v-625e055a]{color:#fff;background:var(--gradient-primary);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 8px 22px #0071e347}.log-dialog-icon svg[data-v-625e055a]{width:26px;height:26px}.log-dialog-titles[data-v-625e055a]{min-width:0}.log-dialog-title[data-v-625e055a]{letter-spacing:-.02em;color:var(--color-text);margin:0;font-size:20px;font-weight:800}.log-dialog-subtitle[data-v-625e055a]{color:var(--brand);margin:4px 0 0;font-size:13px;font-weight:600}.log-dialog-hint[data-v-625e055a]{color:var(--color-muted);margin:0 0 16px;font-size:13px;line-height:1.6}.log-dialog-field[data-v-625e055a]{margin-bottom:20px;position:relative}.log-dialog-textarea[data-v-625e055a]{box-sizing:border-box;border:1px solid var(--brand-border);width:100%;min-height:148px;color:var(--color-text);resize:vertical;background:#ffffffd9;border-radius:14px;padding:14px 16px 36px;font-family:inherit;font-size:14px;line-height:1.65;transition:border-color .2s,box-shadow .2s;box-shadow:inset 0 1px 3px #0000000a}.log-dialog-textarea[data-v-625e055a]:focus{box-shadow:var(--glow-primary), inset 0 1px 3px #0000000a;border-color:#0071e359;outline:none}.log-dialog-textarea[data-v-625e055a]:disabled{opacity:.7;cursor:not-allowed}.log-dialog-textarea[data-v-625e055a]::placeholder{color:#94a3b8}.log-dialog-counter[data-v-625e055a]{color:var(--color-muted);pointer-events:none;font-size:11px;position:absolute;bottom:10px;right:12px}.log-dialog-counter.near[data-v-625e055a]{color:#e11d48;font-weight:600}.log-dialog-actions[data-v-625e055a]{justify-content:flex-end;gap:12px;display:flex}.btn[data-v-625e055a]{cursor:pointer;border-radius:12px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .2s,background .2s}.btn[data-v-625e055a]:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.ghost[data-v-625e055a]{border:1px solid var(--color-border);color:var(--color-text);background:#fffc}.btn.ghost[data-v-625e055a]:hover:not(:disabled){background:#fff}.btn.primary[data-v-625e055a]{background:var(--gradient-primary);color:#fff;border:none;min-width:128px;box-shadow:0 6px 18px #0071e347}.btn.primary[data-v-625e055a]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #0071e359}.log-dialog-enter-active[data-v-625e055a],.log-dialog-leave-active[data-v-625e055a]{transition:opacity .22s}.log-dialog-enter-active .log-dialog-panel[data-v-625e055a],.log-dialog-leave-active .log-dialog-panel[data-v-625e055a]{transition:transform .22s cubic-bezier(.34,1.4,.64,1),opacity .22s}.log-dialog-enter-from[data-v-625e055a],.log-dialog-leave-to[data-v-625e055a]{opacity:0}.log-dialog-enter-from .log-dialog-panel[data-v-625e055a],.log-dialog-leave-to .log-dialog-panel[data-v-625e055a]{opacity:0;transform:scale(.92)translateY(12px)}.log-dialog-root[data-v-d7a40cb7]{z-index:1100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a85;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.log-dialog-panel[data-v-d7a40cb7]{background:linear-gradient(165deg,#fff 0%,#f5f5f7 100%);border:1px solid #ffffffa6;border-radius:22px;width:min(520px,100%);padding:28px 28px 24px;position:relative;overflow:hidden;box-shadow:0 24px 60px #0000001f,0 8px 24px #0f172a14,inset 0 1px #ffffffe6}.log-dialog-glow[data-v-d7a40cb7]{pointer-events:none;background:radial-gradient(circle,#00000014 0%,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-80px;right:-40px}.log-dialog-close[data-v-d7a40cb7]{width:32px;height:32px;color:var(--color-muted);cursor:pointer;z-index:1;background:#ffffffb3;border:none;border-radius:10px;font-size:14px;position:absolute;top:14px;right:14px}.log-dialog-header[data-v-d7a40cb7]{align-items:center;gap:16px;margin-bottom:12px;display:flex}.log-dialog-icon[data-v-d7a40cb7]{color:#fff;background:var(--gradient-primary);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 8px 22px #0071e347}.log-dialog-icon svg[data-v-d7a40cb7]{width:26px;height:26px}.log-dialog-title[data-v-d7a40cb7]{color:var(--color-text);margin:0;font-size:20px;font-weight:800}.log-dialog-subtitle[data-v-d7a40cb7]{color:var(--brand);margin:4px 0 0;font-size:13px;font-weight:600}.log-dialog-hint[data-v-d7a40cb7]{color:var(--color-muted);margin:0 0 16px;font-size:13px;line-height:1.6}.upload-field[data-v-d7a40cb7]{margin-bottom:14px;display:block}.upload-field-label[data-v-d7a40cb7]{color:var(--color-text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.upload-input[data-v-d7a40cb7]{box-sizing:border-box;border:1px solid var(--brand-border);background:#ffffffd9;border-radius:12px;width:100%;height:42px;padding:0 14px;font-size:14px}.upload-input[data-v-d7a40cb7]:focus{box-shadow:var(--glow-primary);outline:none}.upload-picker[data-v-d7a40cb7]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.upload-picker-btn[data-v-d7a40cb7]{border:1px dashed var(--brand-border);background:var(--brand-light);height:38px;color:var(--brand-dark);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:600;display:inline-flex}.upload-file-input[data-v-d7a40cb7]{display:none}.upload-picker-hint[data-v-d7a40cb7]{color:var(--color-muted);font-size:12px}.upload-file-item[data-v-d7a40cb7]{border:1px solid var(--color-border);background:#fffc;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:8px 12px;display:flex}.upload-file-name[data-v-d7a40cb7]{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.upload-file-remove[data-v-d7a40cb7]{color:var(--brand);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:12px}.log-dialog-actions[data-v-d7a40cb7]{justify-content:flex-end;gap:12px;display:flex}.btn[data-v-d7a40cb7]{cursor:pointer;border-radius:12px;height:42px;padding:0 20px;font-size:14px;font-weight:600}.btn[data-v-d7a40cb7]:disabled{opacity:.55;cursor:not-allowed}.btn.ghost[data-v-d7a40cb7]{border:1px solid var(--color-border);color:var(--color-text);background:#fffc}.btn.primary[data-v-d7a40cb7]{background:var(--gradient-primary);color:#fff;border:none;min-width:128px;box-shadow:0 6px 18px #0071e347}.log-dialog-enter-active[data-v-d7a40cb7],.log-dialog-leave-active[data-v-d7a40cb7]{transition:opacity .22s}.log-dialog-enter-from[data-v-d7a40cb7],.log-dialog-leave-to[data-v-d7a40cb7]{opacity:0}.stage-progress[data-v-3226c785]{border:1px solid var(--brand-border);background:linear-gradient(135deg, #fff 0%, var(--brand-light) 100%);box-shadow:var(--shadow-md);border-radius:14px;padding:16px 18px}.stage-progress-head[data-v-3226c785]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.stage-progress-title[data-v-3226c785]{color:var(--color-text);font-size:14px;font-weight:600}.stage-progress-percent[data-v-3226c785]{background:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:800}.stage-progress-track[data-v-3226c785]{background:var(--brand-soft);border-radius:999px;height:8px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.stage-progress-fill[data-v-3226c785]{border-radius:inherit;background:var(--gradient-progress);height:100%;transition:width .6s cubic-bezier(.22,1,.36,1)}.stage-progress--complete .stage-progress-fill[data-v-3226c785]{background:linear-gradient(135deg, var(--brand) 0%, #34c759 100%)}.stage-steps[data-v-3226c785]{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:12px 0 0;padding:0;list-style:none;display:grid}.stage-step[data-v-3226c785]{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.stage-step-dot[data-v-3226c785]{background:var(--brand-muted-bg);border:2px solid var(--brand-border);border-radius:50%;flex-shrink:0;width:10px;height:10px;transition:background .2s,border-color .2s,transform .2s}.stage-step--done .stage-step-dot[data-v-3226c785]{background:var(--brand);border-color:var(--brand)}.stage-step--current .stage-step-dot[data-v-3226c785]{border-color:var(--brand);box-shadow:var(--glow-primary);background:#fff;transform:scale(1.15)}.stage-step-label[data-v-3226c785]{text-align:center;color:var(--color-muted);word-break:keep-all;font-size:10px;line-height:1.25}.stage-step--done .stage-step-label[data-v-3226c785]{color:var(--brand-dark);font-weight:500}.stage-step--current .stage-step-label[data-v-3226c785]{color:var(--brand-dark);font-weight:700}.stage-progress-current[data-v-3226c785]{border-top:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding-top:12px;font-size:13px;display:flex}.stage-current-label[data-v-3226c785]{color:var(--color-muted)}.stage-current-name[data-v-3226c785]{color:var(--brand-dark);font-size:14px;font-weight:700}.ticket-status-badge[data-v-3226c785]{border-radius:999px;align-items:center;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.3;display:inline-flex}.ticket-status-badge.pending_assign[data-v-3226c785]{color:#475569;background:#f1f5f9}.ticket-status-badge.in_progress[data-v-3226c785]{background:var(--status-info-bg);color:var(--status-info-text)}.ticket-status-badge.generating[data-v-3226c785]{color:#5b21b6;background:#ede9fe}.ticket-status-badge.pending_review[data-v-3226c785]{background:var(--status-warning-bg);color:var(--status-warning-text)}.ticket-status-badge.approved[data-v-3226c785]{background:var(--status-success-bg);color:var(--status-success-text)}.ticket-status-badge.rejected[data-v-3226c785]{background:var(--status-danger-bg);color:var(--status-danger-text)}.ticket-status-badge.cancelled[data-v-3226c785]{color:#64748b;background:#f1f5f9}.ticket-meta[data-v-3226c785]{color:var(--color-muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.parallel-hint[data-v-3226c785]{width:100%;color:var(--color-muted);margin-top:2px;font-size:12px}@media (width<=720px){.stage-steps[data-v-3226c785]{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}}.detail-page[data-v-50cd1d99]{background:var(--color-bg);min-height:calc(100vh - 60px);color:var(--color-text);padding:20px 24px 32px}.detail-page-title[data-v-50cd1d99],.detail-context-bar[data-v-50cd1d99],.stage-progress-wrap[data-v-50cd1d99],.page-layout[data-v-50cd1d99],.banner[data-v-50cd1d99],.empty[data-v-50cd1d99],.stage-tickets-card[data-v-50cd1d99]{max-width:var(--page-max-width);margin:0 auto}.detail-page-title[data-v-50cd1d99]{margin-bottom:12px}.detail-context-bar[data-v-50cd1d99]{margin-bottom:16px}.stage-tickets-card[data-v-50cd1d99]{margin-bottom:20px}.page-layout[data-v-50cd1d99]{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.main-column[data-v-50cd1d99]{flex-direction:column;gap:16px;min-width:0;display:flex}.aside-column[data-v-50cd1d99]{flex-direction:column;gap:16px;display:flex;position:sticky;top:72px}.stage-progress-wrap[data-v-50cd1d99]{margin-bottom:20px}.back-btn[data-v-50cd1d99]{flex-shrink:0}.lifecycle-btn[data-v-50cd1d99]{cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);height:36px;color:var(--color-text);border-radius:10px;padding:0 14px;font-size:13px;font-weight:600}.lifecycle-btn[data-v-50cd1d99]:hover:not(:disabled){background:var(--brand-light)}.lifecycle-btn.danger-outline[data-v-50cd1d99]{color:#b91c1c;background:#fff;border-color:#fecaca}.lifecycle-btn.danger-outline[data-v-50cd1d99]:hover:not(:disabled){background:#fef2f2}.lifecycle-btn[data-v-50cd1d99]:disabled{opacity:.6;cursor:not-allowed}.pet-name[data-v-50cd1d99]{color:var(--color-muted);font-size:18px;font-weight:500}.back-btn[data-v-50cd1d99]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;height:38px;box-shadow:var(--shadow-sm);border-radius:10px;padding:0 14px}.card[data-v-50cd1d99]{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.card-compact[data-v-50cd1d99]{padding:16px 18px}.card-compact h2[data-v-50cd1d99]{margin:0 0 12px;font-size:15px}.card-logs[data-v-50cd1d99]{flex-direction:column;max-height:520px;display:flex}.card-logs .log-list[data-v-50cd1d99]{flex:1;min-height:0;padding-right:4px;overflow-y:auto}.photos-card[data-v-50cd1d99],.ai-reference-card[data-v-50cd1d99]{padding:22px}.ai-reference-grid .photo-card[data-v-50cd1d99]{border-color:#dbeafe}.ai-view-badge[data-v-50cd1d99]{z-index:2;color:#fff;background:#0071e3eb;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.4;position:absolute;top:8px;left:8px}.ai-reference-card-item .photo-thumb-wrap[data-v-50cd1d99]{position:relative}.banner[data-v-50cd1d99]{margin-bottom:12px}.card h2[data-v-50cd1d99]{margin:0 0 14px;font-size:16px}.section-head[data-v-50cd1d99]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.section-head h2[data-v-50cd1d99]{margin:0}.section-actions[data-v-50cd1d99]{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.retranslate-btn[data-v-50cd1d99]{border:1px solid var(--color-border);background:var(--color-surface);height:34px;color:var(--brand);cursor:pointer;white-space:nowrap;border-radius:8px;padding:0 14px;font-size:13px;font-weight:600}.retranslate-btn[data-v-50cd1d99]:disabled{opacity:.6;cursor:not-allowed}.urgent-card[data-v-50cd1d99]{border-color:var(--status-urgent-border);background:linear-gradient(180deg, var(--status-urgent-bg) 0%, #fff 100%)}.overdue-card[data-v-50cd1d99]{border-color:var(--status-overdue-border);background:linear-gradient(180deg, var(--status-overdue-bg) 0%, #fff 100%)}.status-row[data-v-50cd1d99]{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.status-hint[data-v-50cd1d99]{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:13px}.resolve-info-actions[data-v-50cd1d99]{margin:0 0 14px}.resolve-info-actions .btn.primary[data-v-50cd1d99]{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:10px;height:36px;padding:0 14px;font-size:14px}.resolve-info-actions .btn.primary[data-v-50cd1d99]:disabled{opacity:.6;cursor:not-allowed}.summary-grid[data-v-50cd1d99],.info-grid[data-v-50cd1d99]{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.info-grid-compact[data-v-50cd1d99]{grid-template-columns:1fr 1fr;gap:12px 14px}.info-span-2[data-v-50cd1d99]{grid-column:1/-1}.text-break[data-v-50cd1d99]{word-break:break-all;font-size:13px}.meta-lines p[data-v-50cd1d99]{margin:0 0 10px;font-size:13px;line-height:1.5}.meta-lines p[data-v-50cd1d99]:last-child{margin-bottom:0}.meta-lines .label[data-v-50cd1d99]{margin-right:6px;display:inline}.meta-lines strong[data-v-50cd1d99]{font-weight:600}.stage-tickets-card .section-head[data-v-50cd1d99]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.stage-tickets-card .section-head h2[data-v-50cd1d99]{margin:0;font-size:16px}.stage-ticket-groups[data-v-50cd1d99]{flex-direction:column;gap:12px;display:flex}.stage-ticket-group[data-v-50cd1d99]{border:1px solid var(--color-border);background:#fafafa;border-radius:12px;overflow:hidden}.stage-ticket-group-head[data-v-50cd1d99]{color:var(--color-muted);background:var(--brand-light);border-bottom:1px solid var(--color-border);padding:8px 12px;font-size:13px;font-weight:600}.stage-ticket-list[data-v-50cd1d99]{background:var(--color-surface);margin:0;padding:0;list-style:none}.stage-ticket-row[data-v-50cd1d99]{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}.stage-ticket-row[data-v-50cd1d99]:last-child{border-bottom:none}.stage-ticket-row.active[data-v-50cd1d99]{background:#f0f7ff}.stage-ticket-row.muted[data-v-50cd1d99]{opacity:.78}.stage-ticket-meta-inline[data-v-50cd1d99]{min-width:120px;color:var(--color-muted);flex:1;font-size:12px}.stage-ticket-link[data-v-50cd1d99]{margin-left:auto;font-size:13px;font-weight:600}.current-tag[data-v-50cd1d99]{color:var(--brand);background:var(--brand-muted-bg);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.badge.small.work-order-ticket.pending_assign[data-v-50cd1d99]{color:#475569;background:#f1f5f9}.badge.small.work-order-ticket.in_progress[data-v-50cd1d99]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.small.work-order-ticket.generating[data-v-50cd1d99]{color:#3730a3;background:#e0e7ff}.badge.small.work-order-ticket.pending_review[data-v-50cd1d99]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.small.work-order-ticket.approved[data-v-50cd1d99]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.small.work-order-ticket.rejected[data-v-50cd1d99]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.small.work-order-ticket.cancelled[data-v-50cd1d99]{color:#64748b;background:#f1f5f9}.attempt-tag[data-v-50cd1d99]{color:#92400e;background:#fef3c7;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.copy-tag[data-v-50cd1d99]{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.badge.work-order-status.in_production[data-v-50cd1d99]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.work-order-status.info_missing[data-v-50cd1d99]{color:#c2410c;background:#fff7ed}.badge.work-order-status.completed[data-v-50cd1d99]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.work-order-status.pending[data-v-50cd1d99]{color:#475569;background:#f1f5f9}.badge.stage-badge[data-v-50cd1d99]{color:#0369a1;background:#f0f9ff}.badge.approved[data-v-50cd1d99]{background:var(--status-success-bg);color:var(--status-success-text)}.label[data-v-50cd1d99]{color:var(--color-muted);margin-bottom:6px;font-size:12px;display:block}.link-btn[data-v-50cd1d99]{color:var(--brand);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0}.sibling-list[data-v-50cd1d99]{flex-wrap:wrap;gap:10px;display:flex}.sibling-btn[data-v-50cd1d99]{border:1px solid var(--color-border);cursor:pointer;text-align:left;background:#fff;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;min-width:140px;padding:12px 14px;display:flex}.sibling-btn.active[data-v-50cd1d99]{border-color:var(--brand);background:#fff5f7}.sibling-btn .sub[data-v-50cd1d99]{color:var(--color-muted);font-size:12px}.summary-zh[data-v-50cd1d99]{border:1px solid var(--color-border);white-space:pre-wrap;background:#f8fafc;border-radius:10px;max-height:280px;margin:0 0 14px;padding:12px 14px;font-size:14px;line-height:1.7;overflow-y:auto}.data-table[data-v-50cd1d99]{border-collapse:collapse;width:100%;margin-top:12px;font-size:13px}.data-table th[data-v-50cd1d99],.data-table td[data-v-50cd1d99]{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:10px 12px}.data-table th[data-v-50cd1d99]{width:34%;color:var(--color-muted);font-weight:500}.raw-table[data-v-50cd1d99]{margin-top:10px}.toggle-btn[data-v-50cd1d99]{color:var(--brand);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:0;font-size:13px}.photo-grid[data-v-50cd1d99]{flex-wrap:wrap;gap:12px;display:flex}.photo-section-hint[data-v-50cd1d99]{color:var(--color-muted);margin:-6px 0 12px;font-size:13px}.photo-progress-panel[data-v-50cd1d99]{background:linear-gradient(180deg, var(--color-bg) 0%, #fff 100%);border:1px solid var(--brand-border);border-radius:12px;margin:0 0 14px;padding:14px 16px;box-shadow:0 4px 16px #0071e314}.photo-progress-head[data-v-50cd1d99]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.photo-progress-label[data-v-50cd1d99]{color:var(--color-text);font-size:13px;line-height:1.4}.photo-progress-percent[data-v-50cd1d99]{color:var(--brand-dark);flex-shrink:0;font-size:13px;font-weight:700}.photo-progress-track[data-v-50cd1d99]{background:var(--brand-soft);border-radius:999px;height:10px;overflow:hidden}.photo-progress-bar[data-v-50cd1d99]{background:var(--gradient-primary);border-radius:999px;height:100%;transition:width .35s;box-shadow:0 0 12px #0071e340}.photo-card[data-v-50cd1d99]{flex-direction:column;width:168px;margin:0;display:flex}.photo-card--manual .photo-link[data-v-50cd1d99]{border-color:var(--brand-border)}.photo-thumb-wrap[data-v-50cd1d99]{width:168px;position:relative}.photo-delete-btn[data-v-50cd1d99]{z-index:2;color:#fff;cursor:pointer;background:#0f172ab8;border:none;border-radius:999px;width:28px;height:28px;font-size:12px;font-weight:700;position:absolute;top:8px;right:8px;box-shadow:0 2px 8px #0f172a40}.photo-delete-btn[data-v-50cd1d99]:hover:not(:disabled){background:#dc2626}.photo-delete-btn[data-v-50cd1d99]:disabled{opacity:.5;cursor:not-allowed}.photo-link[data-v-50cd1d99]{border:1px solid var(--color-border);border-bottom:none;border-radius:12px 12px 0 0;width:168px;height:168px;display:block;overflow:hidden}.photo-link img[data-v-50cd1d99]{object-fit:cover;width:100%;height:100%}.photo-pending[data-v-50cd1d99]{color:var(--color-muted);background:#f8fafc;justify-content:center;align-items:center;font-size:13px;text-decoration:none;display:flex}.photo-label[data-v-50cd1d99]{border:1px solid var(--color-border);color:var(--color-text);word-break:break-word;text-align:center;background:#f8fafc;border-top:none;border-radius:0 0 12px 12px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 10px;font-size:12px;font-weight:600;line-height:1.45;display:flex}.dispatch-error[data-v-50cd1d99]{color:#b91c1c;margin:0;font-size:14px;line-height:1.6}.error-card[data-v-50cd1d99]{border-color:var(--status-urgent-border);background:var(--status-urgent-bg)}.sub[data-v-50cd1d99]{color:var(--color-muted);margin:0;font-size:13px}.meta p[data-v-50cd1d99]{color:var(--color-muted);margin:0 0 8px;font-size:13px}.badge[data-v-50cd1d99]{color:var(--color-muted);background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.badge.small[data-v-50cd1d99]{padding:2px 8px;font-size:11px}.badge.urgent[data-v-50cd1d99]{color:#b91c1c;background:#fee2e2;font-weight:700}.badge.pending[data-v-50cd1d99]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.in_production[data-v-50cd1d99]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.info_missing[data-v-50cd1d99]{color:#c2410c;background:#ffedd5}.badge.completed[data-v-50cd1d99]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.cancelled[data-v-50cd1d99]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.archived[data-v-50cd1d99]{color:#475569;background:#f1f5f9}.badge.stage[data-v-50cd1d99]{background:var(--status-info-bg);color:#5b21b6}.badge.stage.reference_image[data-v-50cd1d99]{background:var(--brand-soft);color:var(--brand-dark)}.badge.stage.production_done[data-v-50cd1d99]{color:#166534;background:#dcfce7}.banner.error[data-v-50cd1d99]{border:1px solid var(--status-urgent-border);color:#991b1b;background:#fef2f2;border-radius:10px;padding:10px 14px}.banner.success[data-v-50cd1d99]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:10px 14px}.banner[data-v-50cd1d99]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.banner-close[data-v-50cd1d99]{width:28px;height:28px;color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:6px;flex-shrink:0;font-size:20px;line-height:1}.banner-close[data-v-50cd1d99]:hover{opacity:1;background:#0000000f}.empty-inline[data-v-50cd1d99]{color:var(--color-muted);margin:0;font-size:14px}.log-list[data-v-50cd1d99]{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.log-item[data-v-50cd1d99]{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;padding:12px 14px}.log-item--manual[data-v-50cd1d99]{border-color:var(--brand-border);background:linear-gradient(135deg, var(--brand-light) 0%, #fff 72%);box-shadow:0 0 0 1px var(--brand-muted-bg), var(--shadow-sm)}.log-head[data-v-50cd1d99]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.log-action[data-v-50cd1d99]{font-size:14px;font-weight:600}.log-action--manual[data-v-50cd1d99]{color:var(--brand-dark);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:999px;padding:2px 10px;font-size:13px}.log-meta[data-v-50cd1d99]{color:var(--color-muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.log-meta-sep[data-v-50cd1d99]{opacity:.5}.log-meta-empty[data-v-50cd1d99]{color:var(--color-muted)}.stage-ticket-user[data-v-50cd1d99]{flex-shrink:0}.log-message[data-v-50cd1d99]{margin:8px 0 0;font-size:13px;line-height:1.5}.log-message--manual[data-v-50cd1d99]{color:var(--color-text);font-size:14px;font-weight:600}.log-pagination[data-v-50cd1d99]{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:16px;display:flex}.log-page-btn[data-v-50cd1d99]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:8px;padding:6px 14px;font-size:13px}.log-page-btn[data-v-50cd1d99]:hover:not(:disabled){border-color:var(--brand-border);color:var(--brand-dark)}.log-page-btn[data-v-50cd1d99]:disabled{opacity:.45;cursor:not-allowed}.log-page-info[data-v-50cd1d99]{color:var(--color-muted);font-size:12px}.log-changes[data-v-50cd1d99]{color:var(--color-muted);margin:8px 0 0;padding-left:18px;font-size:12px;line-height:1.6}.log-change-item[data-v-50cd1d99]{margin-bottom:6px}.log-change-part[data-v-50cd1d99]{word-break:break-word;display:inline}.log-change-arrow[data-v-50cd1d99]{color:var(--color-muted);margin:0 4px}.log-expand[data-v-50cd1d99]{color:var(--brand);cursor:pointer;white-space:nowrap;background:0 0;border:none;margin-left:4px;padding:0;font-size:12px}.log-expand[data-v-50cd1d99]:hover{text-decoration:underline}.add-log-btn[data-v-50cd1d99]{border:1px solid var(--brand-border);background:linear-gradient(180deg, #fff 0%, var(--brand-light) 100%);height:32px;color:var(--brand-dark);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 10px #0000000f}.add-log-btn[data-v-50cd1d99]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0071e326}.empty[data-v-50cd1d99]{text-align:center;color:var(--color-muted);padding:40px}@media (width<=1080px){.page-layout[data-v-50cd1d99]{grid-template-columns:1fr}.aside-column[data-v-50cd1d99]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid;position:static}.card-logs[data-v-50cd1d99]{grid-column:1/-1;max-height:none}.card-logs .log-list[data-v-50cd1d99]{max-height:320px}}@media (width<=768px){.detail-page[data-v-50cd1d99]{padding:16px}.summary-grid[data-v-50cd1d99],.info-grid[data-v-50cd1d99],.info-grid-compact[data-v-50cd1d99],.aside-column[data-v-50cd1d99]{grid-template-columns:1fr}.topbar[data-v-50cd1d99]{padding:12px 14px}}.work-orders-page[data-v-ad479fae]{background:var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.page-header[data-v-ad479fae],.sub-nav[data-v-ad479fae],.toolbar[data-v-ad479fae],.table-wrap[data-v-ad479fae],.pager[data-v-ad479fae]{max-width:var(--page-max-width);margin:0 auto}.page-header[data-v-ad479fae]{margin-bottom:12px}.page-header h1[data-v-ad479fae]{margin:0;font-size:24px}.hint[data-v-ad479fae]{color:var(--color-muted);margin:6px 0 0;font-size:14px}.sub-nav[data-v-ad479fae]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-wrap:nowrap;gap:4px;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.sub-nav-link[data-v-ad479fae]{min-width:96px;color:var(--color-muted);text-align:center;border-radius:8px;flex:1 0 auto;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none}.sub-nav-link.active[data-v-ad479fae]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.toolbar[data-v-ad479fae]{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.filter-item[data-v-ad479fae]{min-width:140px;color:var(--color-muted);flex-direction:column;flex-shrink:0;gap:6px;font-size:13px;display:flex}.search[data-v-ad479fae]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);border-radius:10px;flex:240px;padding:0 14px}.search[data-v-ad479fae]:focus{border-color:var(--brand);box-shadow:var(--glow-primary);outline:none}.select[data-v-ad479fae]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);border-radius:10px;padding:0 12px}.select[data-v-ad479fae]:focus{border-color:var(--brand);box-shadow:var(--glow-primary);outline:none}.btn[data-v-ad479fae]{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.table-wrap[data-v-ad479fae]{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:14px;overflow:auto}table[data-v-ad479fae]{border-collapse:collapse;width:100%}th[data-v-ad479fae],td[data-v-ad479fae]{text-align:left;border-bottom:1px solid var(--color-border);padding:14px 16px;font-size:14px}th[data-v-ad479fae]{color:var(--color-muted);background:var(--brand-light);font-size:13px;font-weight:600}tbody tr.urgent-row[data-v-ad479fae]{background:var(--status-urgent-bg)}tbody tr.urgent-row[data-v-ad479fae]:hover{background:#ffebeb}tbody tr.overdue-row[data-v-ad479fae]{background:var(--status-overdue-bg)}tbody tr.overdue-row[data-v-ad479fae]:hover{background:#ffedd5}.urgent-tag[data-v-ad479fae]{color:#b91c1c;background:#fee2e2;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.sub[data-v-ad479fae]{color:var(--color-muted);margin-top:4px;font-size:12px}.empty[data-v-ad479fae]{text-align:center;color:var(--color-muted);padding:40px 16px}.number-link[data-v-ad479fae]{color:var(--color-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.number-link[data-v-ad479fae]:hover{opacity:.75}.link-btn[data-v-ad479fae]{color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.badge[data-v-ad479fae]{border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.badge.pending[data-v-ad479fae]{background:var(--status-warning-bg);color:var(--status-warning-text)}.badge.in_production[data-v-ad479fae]{background:var(--status-info-bg);color:var(--status-info-text)}.badge.info_missing[data-v-ad479fae]{color:#c2410c;background:#ffedd5}.badge.completed[data-v-ad479fae]{background:var(--status-success-bg);color:var(--status-success-text)}.badge.cancelled[data-v-ad479fae]{background:var(--status-danger-bg);color:var(--status-danger-text)}.badge.archived[data-v-ad479fae]{color:#475569;background:#f1f5f9}.badge.stage[data-v-ad479fae]{background:var(--status-info-bg);color:#5b21b6;font-weight:500}.badge.stage.reference_image[data-v-ad479fae]{background:var(--brand-soft);color:var(--brand-dark)}.badge.stage.production_done[data-v-ad479fae]{color:#166534;background:#dcfce7}.pager[data-v-ad479fae]{color:var(--color-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:18px;font-size:14px;display:flex}.page-jump[data-v-ad479fae]{align-items:center;gap:8px;display:flex}.page-input[data-v-ad479fae]{border:1px solid var(--color-border);text-align:center;border-radius:8px;width:64px;height:36px;padding:0 10px}.banner.error[data-v-ad479fae]{max-width:var(--page-max-width);border:1px solid var(--status-urgent-border);color:#991b1b;background:#fef2f2;border-radius:10px;margin:0 auto 16px;padding:10px 14px}.notifications-page[data-v-c26f550c]{max-width:var(--page-max-width);margin:0 auto;padding:24px}.page-header[data-v-c26f550c]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.page-header h1[data-v-c26f550c]{margin:0 0 6px;font-size:24px;font-weight:700}.hint[data-v-c26f550c]{color:var(--color-muted);margin:0;font-size:14px}.header-actions[data-v-c26f550c]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-nav[data-v-c26f550c]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.filter-nav-link[data-v-c26f550c]{min-width:72px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.filter-nav-link[data-v-c26f550c]:hover{color:var(--color-text)}.filter-nav-link.active[data-v-c26f550c]{color:var(--brand);box-shadow:var(--shadow-sm);background:#fff}.action-btn[data-v-c26f550c]{border:1px solid var(--color-border);background:var(--color-surface);height:38px;color:var(--color-text);cursor:pointer;border-radius:10px;padding:0 14px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s}.action-btn[data-v-c26f550c]:hover:not(:disabled){background:var(--brand-light);border-color:var(--brand-soft)}.action-btn[data-v-c26f550c]:disabled{opacity:.55;cursor:not-allowed}.banner.error[data-v-c26f550c]{background:var(--status-danger-bg);color:var(--status-danger-text);border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.list-wrap[data-v-c26f550c]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;overflow:hidden}.empty[data-v-c26f550c]{text-align:center;color:var(--color-muted);margin:0;padding:28px;font-size:14px}.notification-list[data-v-c26f550c]{margin:0;padding:0;list-style:none}.notification-item[data-v-c26f550c]{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:16px 18px;display:block}.notification-item[data-v-c26f550c]:hover{background:var(--brand-light)}.notification-list li+li[data-v-c26f550c]{border-top:1px solid var(--color-border)}.notification-list li.unread[data-v-c26f550c]{background:#f8fbff}.item-head[data-v-c26f550c]{justify-content:space-between;gap:12px;margin-bottom:6px;display:flex}.event-label[data-v-c26f550c]{color:var(--brand);font-size:12px;font-weight:600}.item-time[data-v-c26f550c]{color:#94a3b8;font-size:12px}.item-title[data-v-c26f550c]{color:var(--color-text);font-size:15px;font-weight:600}.item-body[data-v-c26f550c]{color:var(--color-muted);margin-top:6px;font-size:14px;line-height:1.5}.item-actor[data-v-c26f550c]{color:#94a3b8;margin-top:8px;font-size:12px}.pager[data-v-c26f550c]{justify-content:center;align-items:center;gap:12px;margin-top:16px;display:flex}.pager-btn[data-v-c26f550c]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:10px;height:36px;padding:0 14px;font-size:14px}.pager-btn[data-v-c26f550c]:hover:not(:disabled){background:var(--brand-light)}.pager-btn[data-v-c26f550c]:disabled{opacity:.5;cursor:not-allowed}.pager-text[data-v-c26f550c]{color:var(--color-muted);font-size:14px}.leaderboard[data-v-74dbacc5]{background:var(--color-surface,#fff);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;min-height:160px;padding:16px 18px}.lb-head[data-v-74dbacc5]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.lb-head h3[data-v-74dbacc5]{margin:0;font-size:15px;font-weight:700}.count[data-v-74dbacc5]{color:var(--color-muted);flex-shrink:0;font-size:12px;font-weight:600}.lb-table[data-v-74dbacc5]{border:1px solid var(--color-border);background:#fff;border-radius:12px;flex-direction:column;gap:0;display:flex;overflow:hidden}.lb-row[data-v-74dbacc5]{border-top:1px solid var(--color-border);grid-template-columns:56px minmax(0,1fr) 112px;align-items:center;gap:12px;min-height:52px;padding:10px 14px;display:grid}.lb-row[data-v-74dbacc5]:first-child{border-top:none}.lb-header[data-v-74dbacc5]{background:var(--brand-light,#f5f8ff);border-top:none;min-height:40px;padding:8px 14px}.lb-header .col-rank[data-v-74dbacc5],.lb-header .col-user[data-v-74dbacc5],.lb-header .col-metric[data-v-74dbacc5]{color:var(--color-muted);letter-spacing:.02em;font-size:12px;font-weight:700}.col-rank[data-v-74dbacc5]{justify-content:center;align-items:center;display:flex}.col-user[data-v-74dbacc5]{align-items:center;gap:10px;min-width:0;display:flex}.col-metric[data-v-74dbacc5]{text-align:right;flex-direction:column;justify-content:center;align-items:flex-end;gap:2px;display:flex}.rank-badge[data-v-74dbacc5]{min-width:28px;height:28px;color:var(--color-muted);background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:13px;font-weight:800;display:inline-flex}.lb-row.rank-gold .rank-badge[data-v-74dbacc5]{color:#92400e;background:#fef3c7}.lb-row.rank-silver .rank-badge[data-v-74dbacc5]{color:#475569;background:#e2e8f0}.lb-row.rank-bronze .rank-badge[data-v-74dbacc5]{color:#9a3412;background:#ffedd5}.avatar[data-v-74dbacc5]{object-fit:cover;background:var(--brand-light);border:1px solid #0000000f;border-radius:50%;flex-shrink:0;width:36px;height:36px}.name[data-v-74dbacc5]{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text,#1e293b);font-size:14px;font-weight:600;overflow:hidden}.me-tag[data-v-74dbacc5]{color:var(--brand);background:var(--brand-muted-bg,#eef6ff);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.lb-row.is-me[data-v-74dbacc5]{background:linear-gradient(90deg,#0071e314 0%,#0071e305 100%)}.metric-value[data-v-74dbacc5]{color:var(--brand-dark,#005bb5);font-size:15px;font-weight:800;line-height:1.2}.metric-sub[data-v-74dbacc5]{color:var(--color-muted);white-space:nowrap;font-size:11px;line-height:1.3}.empty[data-v-74dbacc5]{text-align:center;color:var(--color-muted);margin:28px 0 8px;font-size:13px}@media (width<=640px){.lb-row[data-v-74dbacc5]{grid-template-columns:48px minmax(0,1fr) 92px;gap:8px;padding:10px 12px}.col-metric[data-v-74dbacc5]{align-items:flex-end}.metric-sub[data-v-74dbacc5]{white-space:normal;text-align:right;max-width:92px}}.personal-card[data-v-bde835bb]{border:1px solid var(--color-border);box-shadow:var(--shadow-md);background:linear-gradient(145deg,#fff 0%,#f5f8ff 100%);border-radius:16px;padding:18px 20px}.card-head[data-v-bde835bb]{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.card-head h3[data-v-bde835bb]{margin:0;font-size:16px}.badge[data-v-bde835bb]{background:var(--brand-muted-bg);color:var(--brand);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.metrics[data-v-bde835bb]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.metric[data-v-bde835bb]{background:#fffc;border:1px solid #0000000a;border-radius:12px;padding:10px 12px}.metric.primary[data-v-bde835bb]{background:linear-gradient(135deg,#0071e31f,#42a1ec14);border-color:#0071e326}.value[data-v-bde835bb]{color:var(--color-text);font-size:26px;font-weight:800;line-height:1.1;display:block}.label[data-v-bde835bb]{color:var(--color-muted);margin-top:4px;font-size:12px;display:block}.ranks[data-v-bde835bb]{color:var(--brand-dark);flex-wrap:wrap;gap:10px;margin-top:14px;font-size:12px;font-weight:600;display:flex}.muted[data-v-bde835bb]{color:var(--color-muted);font-weight:500}.range-picker[data-v-54547112]{flex-direction:column;gap:10px;display:flex}.presets[data-v-54547112]{flex-wrap:wrap;gap:8px;display:flex}.preset-btn[data-v-54547112]{border:1px solid var(--color-border);cursor:pointer;height:34px;color:var(--color-muted);background:#fff;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600;transition:all .15s}.preset-btn.active[data-v-54547112]{color:#fff;border-color:var(--brand);background:var(--brand);box-shadow:0 4px 14px var(--brand-glow)}.custom[data-v-54547112]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.date-input[data-v-54547112]{border:1px solid var(--color-border);background:#fff;border-radius:10px;height:36px;padding:0 10px}.sep[data-v-54547112]{color:var(--color-muted)}.apply-btn[data-v-54547112]{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:10px;height:36px;padding:0 16px;font-weight:600}.error[data-v-54547112]{color:var(--status-danger-text);margin:0;font-size:13px}.hint[data-v-54547112]{color:var(--color-muted);margin:0;font-size:12px}.dashboard-page[data-v-520869ec]{background:radial-gradient(1200px 400px at 10% -10%, #0071e31f, transparent 60%), radial-gradient(900px 300px at 90% 0%, #42a1ec1a, transparent 55%), var(--color-bg);min-height:calc(100vh - 56px);padding:24px}.hero[data-v-520869ec],.toolbar[data-v-520869ec],.banner[data-v-520869ec],.loading[data-v-520869ec],.stage-title[data-v-520869ec],.my-stats-row[data-v-520869ec],.leaderboard-grid[data-v-520869ec],.welcome-card[data-v-520869ec],.quick-card[data-v-520869ec]{max-width:var(--page-max-width);margin:0 auto 16px}.section-label[data-v-520869ec]{margin:0 0 12px;font-size:16px}.my-stats-grid[data-v-520869ec]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.leaderboard-grid[data-v-520869ec]{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (width<=980px){.leaderboard-grid[data-v-520869ec]{grid-template-columns:1fr}}.hero h1[data-v-520869ec]{margin:6px 0 4px;font-size:28px}.eyebrow[data-v-520869ec]{letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin:0;font-size:12px;font-weight:700}.range-label[data-v-520869ec]{color:var(--color-muted);margin:0;font-size:14px}.card[data-v-520869ec]{border:1px solid var(--color-border);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:16px;padding:16px 18px}.presets[data-v-520869ec]{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.preset-btn[data-v-520869ec]{border:1px solid var(--color-border);cursor:pointer;height:34px;color:var(--color-muted);background:#fff;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.preset-btn.active[data-v-520869ec]{color:#fff;border-color:var(--brand);background:var(--brand);box-shadow:0 4px 14px var(--brand-glow)}.custom[data-v-520869ec]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.date-input[data-v-520869ec]{border:1px solid var(--color-border);border-radius:10px;height:36px;padding:0 10px}.sep[data-v-520869ec]{color:var(--color-muted)}.apply-btn[data-v-520869ec]{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:10px;height:36px;padding:0 16px;font-weight:600}.range-error[data-v-520869ec]{color:var(--status-danger-text);margin:8px 0 0;font-size:13px}.banner.error[data-v-520869ec],.banner.notice[data-v-520869ec]{border-radius:12px;padding:12px 14px}.banner.error[data-v-520869ec]{background:var(--status-danger-bg);color:var(--status-danger-text)}.banner.notice[data-v-520869ec]{background:var(--status-warning-bg,#fff8e6);color:var(--status-warning-text,#8a6d00)}.loading[data-v-520869ec]{text-align:center;color:var(--color-muted);padding:40px}.stage-title[data-v-520869ec]{margin:8px auto 12px;font-size:18px}.collapsed-actions[data-v-520869ec]{max-width:var(--page-max-width);justify-content:center;margin:0 auto 16px;display:flex}.toggle-btn[data-v-520869ec]{border:1px solid var(--color-border);height:40px;color:var(--brand-dark);cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border-radius:999px;padding:0 20px;font-size:14px;font-weight:600;transition:background .2s,border-color .2s}.toggle-btn[data-v-520869ec]:hover{background:var(--brand-light);border-color:#0071e340}.toggle-btn--muted[data-v-520869ec]{color:var(--color-muted)}.toggle-btn--muted[data-v-520869ec]:hover{border-color:var(--color-border);background:#f8fafc}.unit-hint[data-v-520869ec]{color:var(--color-muted);font-size:14px;font-weight:500}.welcome-card h2[data-v-520869ec],.quick-card h3[data-v-520869ec]{margin:0 0 10px}.muted[data-v-520869ec]{color:var(--color-muted);margin:0 0 12px}.quick-links[data-v-520869ec]{flex-wrap:wrap;gap:10px;display:flex}.quick-link[data-v-520869ec]{background:var(--brand-muted-bg);height:34px;color:var(--brand-dark);border-radius:999px;align-items:center;padding:0 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}
