/* 基础重置 */
:root {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans",
    "Liberation Sans", sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #111827;
  background: #f6f7fb;
}

body {
  margin: 0;
  -webkit-text-size-adjust: 100%;
}

html,
body,
#app {
  height: 100%;
  overflow: hidden;
}

h1,
h2,
h3 {
  margin: 0;
  color: #111827;
}

p {
  margin: 0;
}

* {
  box-sizing: border-box;
}

button,
input,
select,
textarea {
  font: inherit;
  max-width: 100%;
}

/* ERP壳布局 */
.app-shell {
  display: flex;
  height: 100vh;
  min-height: 0;
  background: #f6f7fb;
}

.mobile-menu-btn,
.mobile-nav-mask {
  display: none;
}

.sidebar {
  width: 240px;
  background: #0f172a;
  color: #fff;
  padding: 16px;
  box-sizing: border-box;
  flex: none;
  min-height: 0;
  overflow: auto;
}

.sidebar-brand {
  padding: 8px 8px 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  margin-bottom: 12px;
}

.brand-title {
  font-weight: 700;
  font-size: 16px;
}

.brand-sub {
  font-size: 12px;
  opacity: 0.75;
  margin-top: 4px;
}

.sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 12px;
}

.nav-item {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  padding: 10px 10px;
  border-radius: 8px;
}

.nav-item.router-link-active {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.app-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
}

.topbar {
  flex: none;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  background: #ffffff;
  border-bottom: 1px solid #e8eaf0;
}

.topbar-title {
  font-weight: 700;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.topbar-user {
  font-size: 12px;
  color: #6b7280;
}

.app-content {
  flex: 1;
  min-height: 0;
  padding: 16px 16px 32px;
  overflow: auto;
  overflow-x: hidden;
}

/* 通用小组件 */
.card {
  background: #fff;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
  min-width: 0;
  padding: 14px;
}

.card h2 {
  font-size: 18px;
  margin-bottom: 6px;
}

.card h3 {
  font-size: 16px;
  margin-bottom: 6px;
}

.muted {
  color: #6b7280;
  font-size: 12px;
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid #d0d5dd;
  background: #fff;
  cursor: pointer;
  font: inherit;
  line-height: 1.35;
}

.btn-primary {
  background: #2563eb;
  border-color: #2563eb;
  color: #fff;
}

.btn-danger {
  background: #ef4444;
  border-color: #ef4444;
  color: #fff;
}

.row-actions,
.table-actions,
.actions-cell,
.attachment-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.table-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(132px, 1fr));
  margin: 0 auto;
  max-width: 340px;
  width: 100%;
}

.table-actions .btn,
.row-actions .btn,
.actions-cell .btn,
.attachment-actions .btn {
  flex: 0 0 auto;
  justify-content: center;
  min-height: 36px;
  white-space: nowrap;
}

.table-actions .btn {
  min-width: 0;
  width: 100%;
  white-space: normal;
}

td.actions-cell,
td.ops-cell,
td:has(> .table-actions),
td:has(> .row-actions) {
  max-width: none;
  min-width: 260px;
  text-align: center;
  vertical-align: middle;
  white-space: normal;
}

table td:last-child:has(> button),
table td:last-child:has(> .btn),
table td:last-child:has(> a.btn) {
  max-width: none;
  min-width: 180px;
  text-align: center;
  vertical-align: middle;
  white-space: normal;
}

table td:last-child > button,
table td:last-child > .btn,
table td:last-child > a.btn {
  justify-content: center;
  margin: 3px 4px;
  min-height: 34px;
  vertical-align: middle;
  white-space: nowrap;
}

th.ops-head,
th.col-actions {
  min-width: 320px;
  text-align: center;
}

.table-wrap,
.table-shell,
.table-card,
.import-issues-table {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.report-bottom-scroll {
  position: fixed;
  right: 16px;
  bottom: 8px;
  left: 256px;
  z-index: 62;
  height: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
  scrollbar-gutter: stable;
}

.report-bottom-scroll.is-hidden {
  visibility: hidden;
  pointer-events: none;
}

.report-bottom-scroll-inner {
  height: 1px;
}

table {
  max-width: 100%;
}

.modal,
.drawer,
.dialog,
[role="dialog"] {
  max-width: calc(100vw - 24px);
}

.global-loading-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  background: rgba(17, 24, 39, 0.28);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  cursor: wait;
}

.global-loading-panel {
  width: min(280px, calc(100vw - 48px));
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22);
}

.global-loading-title {
  color: #111827;
  font-size: 15px;
  font-weight: 700;
}

.global-loading-fade-enter-active,
.global-loading-fade-leave-active {
  transition: none;
}

.global-loading-fade-enter-from,
.global-loading-fade-leave-to {
  opacity: 0;
}



.flow-details {
  padding: 0;
}

.flow-details > summary {
  cursor: pointer;
  font-weight: 800;
  list-style: none;
  padding: 12px 16px;
}

.flow-details > summary::-webkit-details-marker {
  display: none;
}

.flow-details > summary::after {
  color: #6b7280;
  content: "展开";
  float: right;
  font-size: 12px;
  font-weight: 600;
}

.flow-details[open] > summary {
  border-bottom: 1px solid #e5e7eb;
}

.flow-details[open] > summary::after {
  content: "收起";
}

.flow-details > .section-title-row,
.flow-details > .flow-list {
  margin-left: 16px;
  margin-right: 16px;
}

.flow-details > .section-title-row {
  margin-top: 14px;
}

.flow-details > .flow-list {
  margin-bottom: 16px;
}

@media (max-width: 820px) {
  :root {
    font-size: 14px;
  }

  .app-shell {
    position: relative;
    display: block;
    height: 100dvh;
    overflow: hidden;
  }

  .mobile-menu-btn {
    position: fixed;
    left: 10px;
    top: 10px;
    z-index: 72;
    display: inline-grid;
    width: 36px;
    height: 32px;
    place-items: center;
    gap: 3px;
    border: 1px solid #d0d5dd;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
    cursor: pointer;
  }

  .mobile-menu-btn span {
    display: block;
    width: 16px;
    height: 2px;
    border-radius: 999px;
    background: #111827;
  }

  .mobile-nav-mask {
    position: fixed;
    inset: 0;
    z-index: 68;
    display: block;
    background: rgba(15, 23, 42, 0.42);
  }

  .sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 70;
    width: min(82vw, 300px);
    height: 100dvh;
    transform: translateX(-104%);
    transition: transform 0.18s ease;
    box-shadow: 18px 0 40px rgba(15, 23, 42, 0.24);
  }

  .mobile-nav-open .sidebar {
    transform: translateX(0);
  }

  .app-main {
    width: 100%;
    height: 100dvh;
  }

  .topbar {
    height: auto;
    min-height: 52px;
    align-items: flex-start;
    gap: 8px;
    padding: 9px 10px 9px 54px;
  }

  .topbar-title {
    max-width: 38vw;
    line-height: 32px;
  }

  .topbar-user {
    min-width: 0;
    justify-content: flex-end;
    flex-wrap: wrap;
    row-gap: 6px;
  }

  .topbar-me {
    display: none !important;
  }

  .action-btn,
  .logout-btn,
  .btn {
    min-height: 34px;
    border-radius: 8px;
    white-space: nowrap;
  }

  .app-content {
    padding: 12px 10px 24px;
    overflow: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .card {
    border-radius: 8px;
    padding: 12px;
  }

  .card h2 {
    font-size: 16px;
  }

  .card h3 {
    font-size: 15px;
  }

  .bell-pop {
    position: fixed;
    left: 8px;
    right: 8px;
    top: 54px;
    width: auto;
    max-height: calc(100dvh - 70px);
  }

  .bell-list {
    max-height: calc(100dvh - 130px);
  }

  .pr-strong-mask {
    padding: 12px;
  }

  .pr-strong-modal {
    width: 100%;
    max-height: calc(100dvh - 24px);
    overflow: auto;
    padding: 16px;
    border-radius: 10px;
  }

  .pr-strong-actions {
    flex-direction: column-reverse;
  }

  .pr-strong-actions .action-btn {
    width: 100%;
    justify-content: center;
  }

  .flow-details > .section-title-row,
  .flow-details > .flow-list {
    margin-left: 10px;
    margin-right: 10px;
  }
}

.app-shell.mobile-shell {
  position: relative;
  display: block;
  height: 100dvh;
  overflow: hidden;
}

.app-shell.mobile-shell .mobile-menu-btn {
  position: fixed;
  left: 10px;
  top: 10px;
  z-index: 72;
  display: inline-grid;
  width: 36px;
  height: 32px;
  place-items: center;
  gap: 3px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
  cursor: pointer;
}

.app-shell.mobile-shell .mobile-menu-btn span {
  display: block;
  width: 16px;
  height: 2px;
  border-radius: 999px;
  background: #111827;
}

.app-shell.mobile-shell .mobile-nav-mask {
  position: fixed;
  inset: 0;
  z-index: 68;
  display: block;
  background: rgba(15, 23, 42, 0.42);
}

.app-shell.mobile-shell .sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 70;
  width: min(82vw, 300px);
  height: 100dvh;
  transform: translateX(-104%);
  transition: transform 0.18s ease;
  box-shadow: 18px 0 40px rgba(15, 23, 42, 0.24);
}

.app-shell.mobile-shell.mobile-nav-open .sidebar {
  transform: translateX(0);
}

.app-shell.mobile-shell .app-main {
  width: 100%;
  height: 100dvh;
}

.app-shell.mobile-shell .topbar {
  height: auto;
  min-height: 52px;
  align-items: flex-start;
  gap: 8px;
  padding: 9px 10px 9px 54px;
}

.app-shell.mobile-shell .topbar-title {
  max-width: 38vw;
  line-height: 32px;
}

.app-shell.mobile-shell .topbar-user {
  min-width: 0;
  justify-content: flex-end;
  flex-wrap: wrap;
  row-gap: 6px;
}

.app-shell.mobile-shell .topbar-me {
  display: none !important;
}

.app-shell.mobile-shell .app-content {
  padding: 12px 10px 24px;
  overflow: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

.app-shell.mobile-shell .report-bottom-scroll {
  right: 10px;
  left: 10px;
}

.ai-float-orb-wrap[data-v-b13660b9]{position:fixed;z-index:94;transition:left .28s ease,right .28s ease,top .2s ease;touch-action:none}.ai-float-orb[data-v-b13660b9]{position:relative;width:58px;height:58px;border:0;border-radius:50%;background:radial-gradient(circle at 33% 20%,#d8f7ff 0 4%,#4bcdf4 10%,#173c7f 48%,#0d143b 100%);box-shadow:0 0 0 2px rgba(135,228,255,.62),0 0 20px rgba(67,191,255,.85),0 12px 24px rgba(11,23,74,.4);cursor:grab;isolation:isolate;transition:transform .22s ease,box-shadow .22s ease}.ai-float-orb[data-v-b13660b9]:focus-visible{outline:3px solid #ffba28;outline-offset:4px}.ai-float-orb[data-v-b13660b9]:hover,.ai-float-orb[data-v-b13660b9]:focus-visible{transform:scale(1.24);box-shadow:0 0 0 2px rgba(255,218,112,.86),0 0 30px rgba(80,218,255,.95),0 14px 28px rgba(11,23,74,.46)}.is-dragging .ai-float-orb[data-v-b13660b9]{cursor:grabbing;transform:scale(1.08)}.orb-glass[data-v-b13660b9]{position:absolute;inset:4px;border-radius:inherit;background:radial-gradient(ellipse at 30% 18%,rgba(255,255,255,.94),rgba(255,255,255,0) 29%),linear-gradient(140deg,rgba(255,255,255,.25),rgba(255,255,255,0) 48%);z-index:-1}.orb-orbit[data-v-b13660b9]{position:absolute;inset:8px;border:1px solid rgba(135,241,255,.58);border-radius:50%;animation:orb-spin 7s linear infinite}.orbit-one[data-v-b13660b9]{transform:rotateX(65deg) rotateZ(20deg)}.orbit-two[data-v-b13660b9]{transform:rotateY(62deg) rotateZ(-45deg);animation-duration:10s;animation-direction:reverse}.orb-sun[data-v-b13660b9]{position:absolute;inset:15px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff9b3,#e69b1a 45%,#7d3b08 100%);box-shadow:0 0 11px rgba(255,205,76,.95);color:#fff8dc;text-shadow:0 1px 3px #5f2600;z-index:2}.orb-sun strong[data-v-b13660b9]{font-size:15px;letter-spacing:0;font-weight:900}.orb-ray[data-v-b13660b9]{position:absolute;left:50%;top:-10px;width:3px;height:12px;border-radius:99px;background:linear-gradient(#fff2ad,#c87913);transform-origin:50% 28px;box-shadow:0 0 4px rgba(255,225,120,.85)}.orb-status[data-v-b13660b9]{position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);width:max-content;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(12,24,65,.88);box-shadow:0 4px 12px rgba(14,26,78,.25);color:#fff;font-size:10px;font-weight:800;line-height:20px;padding:0 8px;pointer-events:none;opacity:0;transition:opacity .18s ease}.ai-float-orb:hover .orb-status[data-v-b13660b9],.ai-float-orb:focus-visible .orb-status[data-v-b13660b9]{opacity:1}.is-collapsed .ai-float-orb[data-v-b13660b9]{opacity:.84}.is-collapsed .ai-float-orb[data-v-b13660b9]:hover{transform:scale(1.24)}
.orb-art[data-v-b13660b9]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.24);animation:orb-art-drift-b13660b9 6s ease-in-out infinite alternate;z-index:0}.ai-float-orb[data-v-b13660b9]{overflow:hidden;background:#102056;box-shadow:0 0 0 2px rgba(133,225,255,.72),0 0 24px rgba(56,185,255,.88),0 12px 24px rgba(11,23,74,.42)}.orb-glass[data-v-b13660b9]{inset:0;background:radial-gradient(ellipse at 28% 17%,rgba(255,255,255,.82),rgba(255,255,255,0) 31%),linear-gradient(135deg,rgba(164,244,255,.2),rgba(0,0,0,0) 55%);pointer-events:none;z-index:2}.orb-status[data-v-b13660b9]{z-index:3}.is-collapsed.is-docked-left[data-v-b13660b9]{transform:translateX(-40px)}.is-collapsed.is-docked-right[data-v-b13660b9]{transform:translateX(40px)}.is-collapsed .ai-float-orb[data-v-b13660b9]{opacity:.93}@keyframes orb-art-drift-b13660b9{from{filter:saturate(1.03) brightness(1);scale:1.24}to{filter:saturate(1.16) brightness(1.1);scale:1.3}}.ai-float-card[data-v-b13660b9]{position:fixed;z-index:95;width:min(430px,calc(100vw - 32px));max-height:min(520px,calc(100vh - 32px));display:flex;flex-direction:column;overflow:hidden;border:2px solid rgba(255,255,255,.84);border-radius:16px;background:linear-gradient(148deg,#fffdf8,#f2fbff 48%,#fff8f2);box-shadow:0 28px 78px rgba(19,42,101,.34),0 0 0 4px rgba(255,183,52,.18)}.ai-card-header[data-v-b13660b9]{align-items:center;display:flex;justify-content:space-between;gap:12px;min-height:58px;padding:0 14px;background:linear-gradient(105deg,#1962c9 0%,#6453d8 43%,#e85b74 100%);color:#fff;cursor:grab;touch-action:none}.is-card-dragging .ai-card-header[data-v-b13660b9]{cursor:grabbing}.ai-card-brand[data-v-b13660b9]{align-items:center;display:flex;gap:9px;min-width:0}.ai-card-brand svg[data-v-b13660b9]{color:#ffdc58;filter:drop-shadow(0 1px 2px rgba(78,35,0,.42))}.ai-card-brand div[data-v-b13660b9]{display:grid;gap:1px}.ai-card-brand strong[data-v-b13660b9]{font-size:14px}.ai-card-brand span[data-v-b13660b9]{font-size:10px;opacity:.88}.ai-card-header-actions[data-v-b13660b9]{display:flex;gap:6px}.ai-card-icon-btn[data-v-b13660b9]{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.38);border-radius:8px;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;text-decoration:none}.ai-card-icon-btn[data-v-b13660b9]:hover{background:rgba(255,216,84,.28)}.ai-card-body[data-v-b13660b9]{min-height:236px;max-height:330px;overflow:auto;padding:18px}.ai-card-welcome[data-v-b13660b9]{display:grid;gap:9px;place-content:center;min-height:205px;text-align:center;color:#3a4a69}.ai-card-welcome strong[data-v-b13660b9]{color:#182a56;font-size:18px}.ai-card-welcome p[data-v-b13660b9]{margin:0;font-size:13px;line-height:1.6}.welcome-dot[data-v-b13660b9]{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 3px}.coral[data-v-b13660b9]{background:#f76a62}.gold[data-v-b13660b9]{background:#f9be39}.mint[data-v-b13660b9]{background:#23b99a}.ai-float-answer p[data-v-b13660b9]{margin:0;white-space:pre-wrap;color:#1c2c4b;font-size:14px;line-height:1.75}.ai-float-updated[data-v-b13660b9],.ai-float-hint[data-v-b13660b9]{margin-top:12px!important;color:#66748b;font-size:11px!important}.ai-float-sources[data-v-b13660b9]{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.ai-float-sources>span[data-v-b13660b9]{align-self:center;color:#69758a;font-size:11px;font-weight:800}.ai-float-source[data-v-b13660b9]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #b7e4ed;border-radius:8px;background:#e9fbf9;color:#056d78;font-size:11px;padding:5px 7px;text-decoration:none}.ai-card-loading[data-v-b13660b9]{align-items:center;color:#2c6da8;display:flex;gap:6px;font-size:13px;min-height:90px}.ai-card-loading span[data-v-b13660b9]{width:7px;height:7px;border-radius:50%;background:#2bbba9;animation:loading-bounce-b13660b9 .9s infinite alternate}.ai-card-loading span[data-v-b13660b9]:nth-child(2){animation-delay:.16s;background:#f0b43e}.ai-card-loading span[data-v-b13660b9]:nth-child(3){animation-delay:.32s;background:#ee6a70}.ai-card-error[data-v-b13660b9]{color:#b42318;font-size:13px;line-height:1.6}.ai-card-form[data-v-b13660b9]{display:flex;gap:10px;padding:12px 14px;border-top:1px solid #dce8f2;background:#fff}.ai-card-form textarea[data-v-b13660b9]{box-sizing:border-box;flex:1;min-height:58px;border:1px solid #bed1e5;border-radius:10px;background:#fbfdff;color:#1d2b48;font:inherit;font-size:13px;line-height:1.5;padding:9px;resize:none}.ai-card-form textarea[data-v-b13660b9]:focus{border-color:#4b8ce0;box-shadow:0 0 0 3px rgba(75,140,224,.14);outline:0}.ai-send-btn[data-v-b13660b9]{align-self:flex-end;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:10px;background:linear-gradient(135deg,#16a99b,#266bd6);box-shadow:0 5px 12px rgba(28,105,192,.25);color:#fff;cursor:pointer}.ai-send-btn[data-v-b13660b9]:disabled{cursor:not-allowed;opacity:.55}.ai-card-safety[data-v-b13660b9]{margin:0;padding:0 14px 12px;color:#768398;font-size:10px;line-height:1.5;background:#fff}.is-docked-left .ai-float-orb[data-v-b13660b9]{border-top-left-radius:0;border-bottom-left-radius:0}.is-docked-right .ai-float-orb[data-v-b13660b9]{border-top-right-radius:0;border-bottom-right-radius:0}@keyframes loading-bounce-b13660b9{to{transform:translateY(-5px)}}
.is-docked-left .ai-float-orb[data-v-b13660b9],.is-docked-right .ai-float-orb[data-v-b13660b9]{border-radius:50%}@media(max-width:700px){.ai-float-orb-wrap[data-v-b13660b9]{top:auto!important;right:14px!important;left:auto!important;bottom:88px}.ai-float-orb[data-v-b13660b9]{width:54px;height:54px}.ai-float-card[data-v-b13660b9]{inset:0;width:100vw;max-height:none;border:0;border-radius:0;box-shadow:none}.ai-card-header[data-v-b13660b9]{min-height:62px;cursor:default}.ai-card-body[data-v-b13660b9]{flex:1;max-height:none}.ai-card-form[data-v-b13660b9]{padding-bottom:max(14px,env(safe-area-inset-bottom))}.is-collapsed .ai-float-orb[data-v-b13660b9]{opacity:1}}
.ai-float-orb[data-v-b13660b9]{aspect-ratio:1 / 1;border-radius:50%!important;clip-path:circle(50%)}
.orb-gold-ring[data-v-b13660b9]{position:absolute;inset:1px;border:2px solid rgba(255,220,116,.9);border-radius:50%;box-shadow:inset 0 0 7px rgba(255,246,198,.55),0 0 8px rgba(250,196,66,.72);pointer-events:none;z-index:3;animation:orb-gold-ring-pulse-b13660b9 2.6s ease-in-out infinite alternate}
.ai-float-orb:hover .orb-gold-ring[data-v-b13660b9],.ai-float-orb:focus-visible .orb-gold-ring[data-v-b13660b9]{animation-duration:1.15s;box-shadow:inset 0 0 9px rgba(255,255,221,.76),0 0 14px rgba(255,205,66,.94)}
@keyframes orb-gold-ring-pulse-b13660b9{from{opacity:.62;transform:scale(.965)}to{opacity:1;transform:scale(1)}}
.ai-float-orb-wrap[data-v-b13660b9]{user-select:none;-webkit-user-select:none}
.ai-float-orb[data-v-b13660b9]{background:radial-gradient(circle at 35% 22%,#c7f8ff 0 3%,#5bd5fb 10%,#225bb7 42%,#111d5a 73%,#09112e 100%);isolation:isolate}
.orb-art[data-v-b13660b9]{opacity:0;pointer-events:none;user-select:none;-webkit-user-drag:none}
.orb-blue-glass[data-v-b13660b9]{position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 29% 18%,rgba(255,255,255,.82) 0 4%,rgba(159,242,255,.38) 13%,rgba(57,174,237,.18) 39%,rgba(2,18,94,.18) 70%,rgba(2,6,37,.46) 100%),linear-gradient(145deg,rgba(165,249,255,.18),rgba(8,39,129,.04) 55%,rgba(2,4,30,.24));box-shadow:inset -9px -12px 18px rgba(2,8,55,.46),inset 6px 5px 12px rgba(151,244,255,.25);pointer-events:none;z-index:1;animation:orb-blue-breathe-b13660b9 2.85s ease-in-out infinite alternate}
.orb-gold-core[data-v-b13660b9]{position:absolute;inset:18px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff9c1 0 9%,#ffe188 20%,#efad28 45%,#8b4706 73%,#442001 100%);box-shadow:inset 3px 3px 4px rgba(255,255,239,.55),0 0 8px rgba(255,202,71,.95),0 0 16px rgba(255,178,40,.55);pointer-events:none;z-index:3;animation:orb-core-pulse-b13660b9 2.1s ease-in-out infinite alternate}
.orb-electron-ring[data-v-b13660b9]{position:absolute;inset:7px;border:1px solid rgba(112,244,255,.8);border-radius:50%;box-shadow:0 0 6px rgba(47,209,255,.82),inset 0 0 4px rgba(109,239,255,.42);pointer-events:none;transform-origin:center;z-index:4}.orb-electron-particle[data-v-b13660b9]{position:absolute;top:-2px;left:50%;width:5px;height:5px;border-radius:50%;background:#e8ffff;box-shadow:0 0 5px 2px #62edff;transform:translateX(-50%)}.orbit-one[data-v-b13660b9]{animation:orb-orbit-one-b13660b9 3.7s linear infinite}.orbit-two[data-v-b13660b9]{inset:11px;border-color:rgba(255,213,92,.72);box-shadow:0 0 5px rgba(255,205,74,.74),inset 0 0 3px rgba(255,244,181,.35);animation:orb-orbit-two-b13660b9 4.8s linear infinite reverse}.orbit-two .orb-electron-particle[data-v-b13660b9]{background:#fff4bd;box-shadow:0 0 5px 2px #ffd05c}.orb-spark[data-v-b13660b9]{position:absolute;width:3px;height:3px;border-radius:50%;background:#d7ffff;box-shadow:0 0 6px 2px rgba(104,238,255,.9);pointer-events:none;z-index:5;animation:orb-sparkle-b13660b9 1.7s ease-in-out infinite alternate}.spark-one[data-v-b13660b9]{top:16px;right:12px;animation-delay:.1s}.spark-two[data-v-b13660b9]{bottom:14px;left:13px;animation-delay:.58s}.spark-three[data-v-b13660b9]{top:28px;left:10px;width:2px;height:2px;animation-delay:1.1s}@keyframes orb-blue-breathe-b13660b9{from{filter:brightness(.92) saturate(.98);transform:scale(.985)}to{filter:brightness(1.14) saturate(1.14);transform:scale(1)}}@keyframes orb-core-pulse-b13660b9{from{filter:brightness(.92);transform:scale(.92)}to{filter:brightness(1.18);transform:scale(1.06)}}@keyframes orb-orbit-one-b13660b9{from{transform:rotate(-31deg) scaleY(.46) rotate(0deg)}to{transform:rotate(-31deg) scaleY(.46) rotate(360deg)}}@keyframes orb-orbit-two-b13660b9{from{transform:rotate(56deg) scaleY(.56) rotate(0deg)}to{transform:rotate(56deg) scaleY(.56) rotate(360deg)}}@keyframes orb-sparkle-b13660b9{from{opacity:.25;transform:scale(.65)}to{opacity:1;transform:scale(1.35)}}
.orb-glass[data-v-b13660b9]{z-index:6;animation:orb-glass-breathe-b13660b9 2.85s ease-in-out infinite alternate}.orb-gold-ring[data-v-b13660b9]{z-index:7}.orb-status[data-v-b13660b9]{z-index:8}@keyframes orb-glass-breathe-b13660b9{from{opacity:.58}to{opacity:1}}.is-dragging .ai-float-orb[data-v-b13660b9]{transform:scale(1)}.is-collapsed.is-docked-left[data-v-b13660b9]{transform:translateX(-36px)}.is-collapsed.is-docked-right[data-v-b13660b9]{transform:translateX(36px)}
.orb-ai-mark[data-v-b13660b9]{position:absolute;inset:0;display:grid;place-items:center;color:#fff9d6;font-family:Arial,sans-serif;font-size:14px;font-weight:900;letter-spacing:0;text-shadow:0 1px 2px #4a2500,0 0 6px rgba(255,231,137,.9);pointer-events:none;z-index:9}.ai-float-card[data-v-b13660b9]{min-width:340px;min-height:370px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);resize:both}.ai-float-card .ai-card-body[data-v-b13660b9]{flex:1}.ai-float-card .ai-card-form[data-v-b13660b9]{flex:0 0 auto}.ai-card-resize-grip[data-v-b13660b9]{position:absolute;right:7px;bottom:7px;width:12px;height:12px;background:repeating-linear-gradient(135deg,transparent 0 3px,rgba(37,106,173,.55) 3px 4px);pointer-events:none;z-index:9}@media(max-width:700px){.ai-float-card[data-v-b13660b9]{min-width:0;min-height:0;resize:none}.ai-card-resize-grip[data-v-b13660b9]{display:none}}

.nav-section-title[data-v-f59dec3b] {
  margin-top: 14px;
  padding: 10px 10px 6px;
  font-size: 12px;
  opacity: 0.7;
}
.sidebar.collapsed[data-v-f59dec3b] { width: 72px; padding-left: 10px; padding-right: 10px; overflow-x: hidden;
}
.sidebar-brand[data-v-f59dec3b] { position: relative;
}
.brand-home[data-v-f59dec3b] { align-items: center; color: #fff; display: flex; gap: 9px; min-width: 0; text-decoration: none;
}
.brand-mark[data-v-f59dec3b] { align-items: center; background: #fff; border-radius: 5px; color: #172033; display: inline-flex; flex: 0 0 30px; font-size: 11px; font-weight: 900; height: 30px; justify-content: center;
}
.collapse-btn[data-v-f59dec3b] { align-items: center; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.13); border-radius: 5px; color: #fff; cursor: pointer; display: inline-flex; height: 30px; justify-content: center; position: absolute; right: 0; top: 8px; width: 30px;
}
.collapsed .sidebar-brand[data-v-f59dec3b] { padding-left: 0; padding-right: 0;
}
.collapsed .brand-home[data-v-f59dec3b] { justify-content: center;
}
.collapsed .collapse-btn[data-v-f59dec3b] { margin-top: 10px; position: static; width: 100%;
}
.collapsed .nav-item[data-v-f59dec3b] { align-items: center; display: flex; justify-content: center; padding: 10px;
}
.nav-item[data-v-f59dec3b] { align-items: center; display: flex; gap: 10px;
}
@media (max-width: 900px) {
.collapse-btn[data-v-f59dec3b] { display: none;
}
}

.honor-badge[data-v-121e9789] {
  --badge-size: 52px;
  position: relative;
  display: inline-grid;
  width: var(--badge-size);
  height: var(--badge-size);
  flex: 0 0 var(--badge-size);
  place-items: center;
  color: #fff;
  filter: drop-shadow(0 3px 5px rgba(89, 62, 15, 0.2));
}
.size-small[data-v-121e9789] { --badge-size: 30px;
}
.size-large[data-v-121e9789] { --badge-size: 92px;
}
.honor-badge[data-v-121e9789]::before,
.badge-core[data-v-121e9789] {
  position: absolute;
  inset: 0;
  content: "";
}
.honor-badge[data-v-121e9789]::before {
  background: linear-gradient(145deg, #fff0a6 0%, #d39b2f 38%, #8a5a14 70%, #f4d36a 100%);
}
.badge-core[data-v-121e9789] {
  inset: 3px;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, color-mix(in srgb, var(--badge-color) 72%, white), var(--badge-color));
  border: 1px solid rgba(255, 255, 255, 0.38);
}
.sun[data-v-121e9789]::before,
.sun .badge-core[data-v-121e9789] { border-radius: 50%;
}
.shield[data-v-121e9789]::before,
.shield .badge-core[data-v-121e9789] { clip-path: polygon(25% 4%, 75% 4%, 98% 28%, 86% 76%, 50% 98%, 14% 76%, 2% 28%);
}
.star[data-v-121e9789]::before,
.star .badge-core[data-v-121e9789] { clip-path: polygon(50% 0%, 62% 33%, 98% 35%, 69% 57%, 79% 94%, 50% 73%, 21% 94%, 31% 57%, 2% 35%, 38% 33%);
}
.diamond[data-v-121e9789]::before,
.diamond .badge-core[data-v-121e9789] { clip-path: polygon(50% 0%, 96% 26%, 96% 74%, 50% 100%, 4% 74%, 4% 26%);
}
.level-excellent[data-v-121e9789]::after,
.level-lifetime[data-v-121e9789]::after {
  position: absolute;
  inset: -2px;
  border: 1px solid rgba(255, 231, 147, 0.85);
  border-radius: 50%;
  content: "";
}
.shield.level-excellent[data-v-121e9789]::after,
.shield.level-lifetime[data-v-121e9789]::after,
.star.level-excellent[data-v-121e9789]::after,
.star.level-lifetime[data-v-121e9789]::after,
.diamond.level-excellent[data-v-121e9789]::after,
.diamond.level-lifetime[data-v-121e9789]::after { border-radius: 4px;
}
.badge-stars[data-v-121e9789] {
  position: absolute;
  right: -3px;
  bottom: -3px;
  min-width: 15px;
  padding: 1px 3px;
  border: 1px solid #f6df8a;
  border-radius: 8px;
  background: #8a5a14;
  color: #fff2aa;
  font-family: Arial, sans-serif;
  font-size: 7px;
  line-height: 11px;
  text-align: center;
  white-space: nowrap;
}
.size-medium .badge-stars[data-v-121e9789] { font-size: 9px; line-height: 13px;
}
.size-large .badge-stars[data-v-121e9789] { right: 0; bottom: 0; font-size: 12px; line-height: 17px;
}

.overlay[data-v-b3fb0f15] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 80;
}
.modal[data-v-b3fb0f15] {
  width: min(860px, 100%);
  max-height: calc(100vh - 32px);
  overflow: auto;
}
.k[data-v-b3fb0f15] {
  display: inline-block;
  min-width: 76px;
  color: #64748b;
  font-weight: 800;
}
.lead-info-grid[data-v-b3fb0f15] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
  margin-top: 8px;
}
.lead-info-item[data-v-b3fb0f15] {
  min-width: 0;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.lead-info-wide[data-v-b3fb0f15] {
  grid-column: 1 / -1;
}
@media (max-width: 760px) {
.lead-info-grid[data-v-b3fb0f15] {
    grid-template-columns: 1fr;
}
}
.pick[data-v-b3fb0f15] {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 10px;
  border: 1px solid #e8eaf0;
  border-radius: 10px;
  background: #fff;
}
.err[data-v-b3fb0f15] {
  color: #b91c1c;
  font-size: 12px;
  font-weight: 800;
}
.warn[data-v-b3fb0f15] {
  color: #92400e;
  font-size: 12px;
  font-weight: 800;
}

.overlay[data-v-c076ef36] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.36);
  display: grid;
  place-items: center;
  z-index: 80;
  padding: 18px;
}
.modal[data-v-c076ef36] {
  width: min(760px, 96vw);
  max-height: min(88vh, 860px);
  overflow: auto;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  box-shadow: 0 22px 80px rgba(15, 23, 42, 0.25);
}
.grid2[data-v-c076ef36] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 12px;
}
.k[data-v-c076ef36] {
  display: inline-block;
  width: 86px;
  color: rgba(0, 0, 0, 0.55);
}
.amount-grid > div[data-v-c076ef36]{
  align-items: baseline;
  display: flex;
  gap: 8px;
  min-width: 0;
}
.amount-grid .k[data-v-c076ef36]{
  flex: 0 0 108px;
  white-space: nowrap;
  width: auto;
}
.procure-reminder-card[data-v-c076ef36] {
  border-color: #bfdbfe;
  background: #eff6ff;
}
.procure-reminder-grid[data-v-c076ef36] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 12px;
  margin-top: 10px;
}
.procure-reminder-grid > div[data-v-c076ef36] {
  background: #fff;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  padding: 8px 10px;
}
.procure-reminder-span[data-v-c076ef36] {
  grid-column: 1 / -1;
}
.table[data-v-c076ef36] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-c076ef36],
.table td[data-v-c076ef36] {
  border-bottom: 1px solid #e5e7eb;
  padding: 8px;
  text-align: left;
  vertical-align: top;
}
.thumbs[data-v-c076ef36] {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.thumb[data-v-c076ef36] {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 8px;
  background: #fff;
  text-decoration: none;
  color: inherit;
}
.thumb img[data-v-c076ef36] {
  width: 100%;
  height: 86px;
  object-fit: contain;
  background: #f8fafc;
  border-radius: 10px;
}
.thumb-empty[data-v-c076ef36] {
  width: 100%;
  height: 86px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #f8fafc;
  color: #94a3b8;
  font-size: 12px;
}
.thumb-name[data-v-c076ef36] {
  margin-top: 6px;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.thumb-btn[data-v-c076ef36] {
  width: 100%;
  margin-top: 8px;
  min-height: 32px;
}
.payment-breakdown[data-v-c076ef36]{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}
.payment-pill[data-v-c076ef36]{
  align-items: center;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: inline-flex;
  gap: 8px;
  min-height: 32px;
  padding: 5px 10px;
}
.payment-pill b[data-v-c076ef36]{
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.payment-pill strong[data-v-c076ef36]{
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}
.image-preview-mask[data-v-c076ef36] {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, 0.72);
  padding: 18px;
}
.image-preview-dialog[data-v-c076ef36] {
  width: min(980px, calc(100vw - 36px));
  max-height: calc(100vh - 36px);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.32);
}
.image-preview-head[data-v-c076ef36] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid #e5e7eb;
}
.image-preview-body[data-v-c076ef36] {
  min-height: 220px;
  display: grid;
  place-items: center;
  padding: 12px;
  background: #f8fafc;
}
.image-preview-body img[data-v-c076ef36] {
  max-width: 100%;
  max-height: calc(100vh - 130px);
  object-fit: contain;
}
.item-table[data-v-c076ef36]{
  width: 100%;
  min-width: 700px;
  table-layout: fixed;
}
.item-col-name[data-v-c076ef36]{ width: 32%;
}
.item-col-spec[data-v-c076ef36]{ width: 30%;
}
.item-col-uom[data-v-c076ef36]{ width: 12%;
}
.item-col-qty[data-v-c076ef36]{ width: 13%;
}
.item-col-price[data-v-c076ef36]{ width: 13%;
}
.item-table th[data-v-c076ef36],
.item-table td[data-v-c076ef36]{
  padding: 10px 12px;
  vertical-align: middle;
}
.item-name[data-v-c076ef36],
.item-spec[data-v-c076ef36]{
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.item-uom[data-v-c076ef36]{
  text-align: center;
}
.item-num[data-v-c076ef36]{
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.item-strong[data-v-c076ef36]{
  font-weight: 800;
}
.step[data-v-c076ef36] {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px;
  background: #fff;
}
.step-signature[data-v-c076ef36] {
  margin-top: 8px;
  display: inline-flex;
  max-width: 220px;
  padding: 6px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}
.step-signature img[data-v-c076ef36] {
  width: 200px;
  height: 58px;
  object-fit: contain;
}
.step-signature-empty[data-v-c076ef36] {
  margin-top: 6px;
  font-size: 12px;
  color: #92400e;
}
.badge[data-v-c076ef36] {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}
.badge-warn[data-v-c076ef36] {
  background: #fff7ed;
  color: #9a3412;
  border: 1px solid #fed7aa;
}
.err[data-v-c076ef36] {
  color: #b91c1c;
}
.req-star[data-v-c076ef36] {
  color: #dc2626;
  font-weight: 900;
}

.topbar-title[data-v-ed815c5d] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.env-badge[data-v-ed815c5d] {
  flex: none;
  display: inline-flex;
  align-items: center;
  height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(22, 163, 74, 0.28);
  background: rgba(22, 163, 74, 0.08);
  color: #166534;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}
.env-badge.test[data-v-ed815c5d] {
  border-color: rgba(37, 99, 235, 0.32);
  background: rgba(37, 99, 235, 0.1);
  color: #1d4ed8;
}
.topbar-user[data-v-ed815c5d] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.muted[data-v-ed815c5d] {
  color: rgba(0, 0, 0, 0.6);
}
.topbar-me[data-v-ed815c5d]{
  display:flex;
  flex-direction: column;
  line-height: 1.1;
  margin-left: 6px;
  margin-right: 6px;
}
.me-name[data-v-ed815c5d]{
  color: #111827;
  font-weight: 800;
  font-size: 12px;
}
.me-sub[data-v-ed815c5d]{
  font-size: 11px;
}
.action-btn[data-v-ed815c5d],
.logout-btn[data-v-ed815c5d] {
  height: 26px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: #fff;
  cursor: pointer;
  font-size: 12px;
}
.action-btn[data-v-ed815c5d]:hover,
.logout-btn[data-v-ed815c5d]:hover {
  border-color: rgba(25, 118, 210, 0.7);
  color: #1976d2;
}
.bell-btn[data-v-ed815c5d]{
  position: relative;
  height: 28px;
  width: 34px;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: #fff;
  cursor: pointer;
  display: grid;
  place-items: center;
  color: #0f172a;
}
.bell-btn[data-v-ed815c5d]:hover{
  border-color: rgba(37, 99, 235, 0.35);
  color: #2563eb;
}
.bell-ico svg[data-v-ed815c5d]{ width: 18px; height: 18px;
}
.bell-badge[data-v-ed815c5d]{
  position:absolute;
  top: -6px;
  right: -6px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: #ef4444;
  color: #fff;
  font-size: 11px;
  display:flex;
  align-items:center;
  justify-content:center;
  border: 2px solid #fff;
  font-weight: 800;
}
.bell-pop[data-v-ed815c5d]{
  position: absolute;
  top: 44px;
  right: 16px;
  width: min(420px, 92vw);
  background: #fff;
  border: 1px solid rgba(15,23,42,0.10);
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(15,23,42,0.14);
  z-index: 60;
  overflow: hidden;
}
.bell-head[data-v-ed815c5d]{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 10px;
  border-bottom: 1px solid rgba(15,23,42,0.08);
}
.mini-btn[data-v-ed815c5d]{
  height: 26px;
  padding: 0 10px;
  border-radius: 10px;
  border: 1px solid rgba(15,23,42,0.14);
  background: #fff;
  cursor: pointer;
  font-size: 12px;
}
.mini-btn[data-v-ed815c5d]:hover{ border-color: rgba(37, 99, 235, 0.35); color:#2563eb;
}
.bell-list[data-v-ed815c5d]{
  max-height: min(520px, 60vh);
  overflow: auto;
  padding: 10px;
  display: grid;
  gap: 12px;
}
.bell-group-title[data-v-ed815c5d]{
  font-weight: 900;
  font-size: 12px;
  color: rgba(15,23,42,0.72);
  margin-bottom: 8px;
}
.bell-item[data-v-ed815c5d]{
  width: 100%;
  text-align: left;
  border: 1px solid rgba(15,23,42,0.10);
  background: #fff;
  border-radius: 12px;
  padding: 10px 10px;
  display:flex;
  align-items:center;
  gap: 10px;
  cursor: pointer;
}
.bell-item[data-v-ed815c5d]:hover{
  border-color: rgba(37, 99, 235, 0.28);
  background: rgba(37, 99, 235, 0.04);
}
.bell-item-title[data-v-ed815c5d]{
  font-weight: 900;
  font-size: 13px;
  overflow:hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bell-item-sub[data-v-ed815c5d]{
  margin-top: 2px;
  font-size: 12px;
  color: rgba(15,23,42,0.55);
  overflow:hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bell-item-chev[data-v-ed815c5d]{
  margin-left: auto;
  color: rgba(15, 23, 42, 0.35);
  font-size: 18px;
}
.honor-strip[data-v-ed815c5d] {
  display: flex;
  align-items: center;
  gap: 3px;
  min-height: 32px;
  padding: 1px 5px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.honor-strip[data-v-ed815c5d]:hover { background: rgba(184, 135, 45, 0.08);
}
.honor-more[data-v-ed815c5d] {
  min-width: 24px;
  border: 1px solid #d8b45d;
  border-radius: 8px;
  background: #fff9e7;
  color: #79551c;
  font-size: 10px;
  font-weight: 800;
  line-height: 20px;
}
.bell-item-delete[data-v-ed815c5d]{
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #c2410c;
  border-radius: 8px;
  cursor: pointer;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  padding: 5px 8px;
  white-space: nowrap;
}
.bell-item-delete[data-v-ed815c5d]:disabled{
  cursor: not-allowed;
  opacity: .65;
}
.bell-item-handle[data-v-ed815c5d]{
  border: 1px solid #a7f3d0;
  background: #ecfdf5;
  color: #047857;
  border-radius: 6px;
  cursor: pointer;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  padding: 5px 8px;
  white-space: nowrap;
}
.pr-strong-mask[data-v-ed815c5d]{
  position: fixed;
  inset: 0;
  z-index: 90;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, 0.42);
  backdrop-filter: blur(4px);
  padding: 20px;
}
.pr-strong-modal[data-v-ed815c5d]{
  width: min(520px, 92vw);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.26);
  padding: 22px;
}
.pr-strong-modal h2[data-v-ed815c5d]{
  margin: 0 0 8px;
  font-size: 24px;
  color: #111827;
}
.pr-reject-reason[data-v-ed815c5d]{
  margin-top: 14px;
  padding: 12px;
  border-radius: 10px;
  background: rgba(239, 68, 68, 0.08);
  color: #991b1b;
  white-space: pre-wrap;
}
.profile-urge-reason[data-v-ed815c5d]{
  margin-top: 14px;
  padding: 12px;
  border-radius: 10px;
  background: rgba(37, 99, 235, 0.08);
  color: #1e3a8a;
  line-height: 1.7;
}
.pr-strong-actions[data-v-ed815c5d]{
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
}
.action-btn.primary[data-v-ed815c5d]{
  background: #2563eb;
  color: #fff;
  border-color: #2563eb;
}
.hr-notice-modal[data-v-ed815c5d] { width: min(620px, calc(100vw - 28px));
}
.hr-notice-head[data-v-ed815c5d] { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
}
.hr-notice-eyebrow[data-v-ed815c5d] { margin: 0 0 5px; color: #2563eb; font-size: 12px; font-weight: 800;
}
.hr-notice-content[data-v-ed815c5d] {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  background: #f8fafc;
  color: #1f2937;
  line-height: 1.75;
  white-space: pre-wrap;
}
@media (max-width: 700px) {
.honor-chip[data-v-ed815c5d]:nth-of-type(n + 2) { display: none;
}
.honor-more[data-v-ed815c5d] { min-width: 20px; padding: 0 3px;
}
}

.home-dashboard[data-v-026eab10] {
  min-height: 100%;
  padding: clamp(8px, 2vw, 24px);
  color: #17201b;
}
.briefing-panel[data-v-026eab10] {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.72fr);
  width: min(1180px, 100%);
  min-height: min(690px, calc(100vh - 132px));
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid #dfe4df;
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(25, 48, 36, 0.09);
}
.accent-strip[data-v-026eab10] {
  position: absolute;
  inset: 0 0 auto;
  z-index: 2;
  display: grid;
  grid-template-columns: 5fr 2fr 1fr;
  height: 4px;
}
.accent-strip span[data-v-026eab10]:nth-child(1) { background: #15563b;
}
.accent-strip span[data-v-026eab10]:nth-child(2) { background: #e3b341;
}
.accent-strip span[data-v-026eab10]:nth-child(3) { background: #d96c5c;
}
.briefing-main[data-v-026eab10] {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(28px, 4vw, 58px);
}
.briefing-header[data-v-026eab10] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 28px;
  border-bottom: 1px solid #e8ece9;
}
.briefing-kicker[data-v-026eab10],
.section-kicker[data-v-026eab10],
.weather-kicker[data-v-026eab10] {
  margin-bottom: 8px;
  color: #547064;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
}
.briefing-header h1[data-v-026eab10] {
  font-size: clamp(27px, 3.2vw, 42px);
  line-height: 1.22;
  font-weight: 760;
}
.briefing-date[data-v-026eab10] {
  margin-top: 10px;
  color: #6d776f;
  font-size: 14px;
}
.training-home-link[data-v-026eab10] {
  display: inline-flex;
  margin-top: 14px;
  color: #174e8d;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.training-home-link[data-v-026eab10]:hover { text-decoration: underline;
}
.live-clock[data-v-026eab10] {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 2px 8px;
  flex: none;
  min-width: 132px;
  padding-top: 4px;
  text-align: right;
}
.live-clock strong[data-v-026eab10] {
  font-size: 22px;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
}
.live-clock small[data-v-026eab10] {
  grid-column: 1 / -1;
  color: #7c857f;
  font-size: 11px;
}
.live-dot[data-v-026eab10] {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #2f7a58;
  box-shadow: 0 0 0 4px rgba(47, 122, 88, 0.1);
}
.message-block[data-v-026eab10] {
  padding: clamp(34px, 6vh, 72px) 0 42px;
}
.message-index[data-v-026eab10] {
  display: inline-block;
  padding-bottom: 5px;
  border-bottom: 2px solid #e3b341;
  color: #6b756e;
  font-size: 12px;
  font-weight: 700;
}
.daily-quote[data-v-026eab10] {
  max-width: 760px;
  margin-top: 20px;
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 730;
  line-height: 1.45;
}
.daily-tip[data-v-026eab10] {
  max-width: 650px;
  margin-top: 16px;
  color: #6a746d;
  font-size: 15px;
  line-height: 1.8;
}
.tenure-section[data-v-026eab10] {
  margin-top: auto;
  padding: 24px 26px;
  border-radius: 6px;
  color: #f5f8f6;
  background: #184d37;
}
.section-heading[data-v-026eab10] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.section-kicker[data-v-026eab10] { color: #a9c6b8;
}
.section-heading h2[data-v-026eab10] { color: #ffffff; font-size: 19px;
}
.tenure-total[data-v-026eab10] {
  padding: 4px 0;
  color: #d9e7df;
  font-size: 13px;
  white-space: nowrap;
}
.tenure-track[data-v-026eab10] {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-top: 24px;
}
.tenure-marker[data-v-026eab10] {
  position: relative;
  width: 4px;
  height: 58px;
  border-radius: 4px;
  background: #e3b341;
}
.tenure-marker[data-v-026eab10]::before,
.tenure-marker[data-v-026eab10]::after {
  position: absolute;
  left: 50%;
  width: 10px;
  height: 10px;
  border: 2px solid #184d37;
  border-radius: 50%;
  background: #f5f8f6;
  content: "";
  transform: translateX(-50%);
}
.tenure-marker[data-v-026eab10]::before { top: 0;
}
.tenure-marker[data-v-026eab10]::after { bottom: 0; background: #e3b341;
}
.tenure-stat[data-v-026eab10],
.anniversary-stat[data-v-026eab10] {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.tenure-stat strong[data-v-026eab10],
.anniversary-stat strong[data-v-026eab10] {
  color: #ffffff;
  font-size: 24px;
  font-variant-numeric: tabular-nums;
}
.tenure-stat span[data-v-026eab10],
.anniversary-stat span[data-v-026eab10],
.profile-empty span[data-v-026eab10],
.profile-loading[data-v-026eab10] {
  color: #bfd2c8;
  font-size: 12px;
}
.profile-empty[data-v-026eab10] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 22px;
}
.profile-empty div[data-v-026eab10] { display: flex; flex-direction: column; gap: 5px;
}
.profile-empty a[data-v-026eab10] { color: #fff0bd; font-weight: 700; white-space: nowrap;
}
.profile-loading[data-v-026eab10] { margin-top: 22px;
}
.weather-panel[data-v-026eab10] {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(28px, 3vw, 44px) clamp(22px, 3vw, 36px);
  border-left: 1px solid #e4e8e5;
  background: #f7f8f5;
}
.weather-heading[data-v-026eab10] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.weather-heading h2[data-v-026eab10] { font-size: 20px;
}
.city-picker select[data-v-026eab10] {
  height: 34px;
  padding: 0 28px 0 9px;
  border: 1px solid #cfd7d1;
  border-radius: 4px;
  color: #294c3b;
  background: #ffffff;
  cursor: pointer;
}
.weather-current[data-v-026eab10] {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 54px;
}
.weather-temperature[data-v-026eab10] {
  font-size: clamp(58px, 7vw, 82px);
  font-weight: 720;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.weather-current > div[data-v-026eab10]:last-child { display: flex; flex-direction: column; gap: 4px;
}
.weather-current strong[data-v-026eab10] { font-size: 21px;
}
.weather-current span[data-v-026eab10] { color: #738078; font-size: 12px;
}
.weather-fallback[data-v-026eab10] {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 128px;
  margin-top: 40px;
  border-top: 1px solid #dfe4df;
  border-bottom: 1px solid #dfe4df;
}
.weather-fallback strong[data-v-026eab10] { font-size: 18px;
}
.weather-fallback span[data-v-026eab10] { margin-top: 5px; color: #7c857f; font-size: 12px;
}
.weather-fallback.loading[data-v-026eab10] { color: #547064;
}
.weather-grid[data-v-026eab10] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 36px;
  border-top: 1px solid #dde3de;
  border-left: 1px solid #dde3de;
}
.weather-metric[data-v-026eab10] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 18px 14px;
  border-right: 1px solid #dde3de;
  border-bottom: 1px solid #dde3de;
}
.weather-metric span[data-v-026eab10] { color: #77817a; font-size: 12px;
}
.weather-metric strong[data-v-026eab10] { font-size: 17px; font-variant-numeric: tabular-nums;
}
.weather-note[data-v-026eab10] {
  margin-top: auto;
  padding-top: 28px;
}
.weather-note span[data-v-026eab10] { color: #9b7020; font-size: 12px; font-weight: 700;
}
.weather-note p[data-v-026eab10] { margin-top: 8px; color: #59645d; font-size: 13px; line-height: 1.7;
}
.sr-only[data-v-026eab10] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 900px) {
.home-dashboard[data-v-026eab10] { padding: 0;
}
.briefing-panel[data-v-026eab10] { grid-template-columns: 1fr; min-height: auto;
}
.briefing-main[data-v-026eab10] { padding: 30px 24px 24px;
}
.weather-panel[data-v-026eab10] { border-top: 1px solid #e4e8e5; border-left: 0;
}
.weather-current[data-v-026eab10] { margin-top: 34px;
}
.weather-note[data-v-026eab10] { margin-top: 30px;
}
}
@media (max-width: 560px) {
.briefing-main[data-v-026eab10],
  .weather-panel[data-v-026eab10] { padding: 26px 18px 20px;
}
.briefing-header[data-v-026eab10] { flex-direction: column; gap: 18px; padding-bottom: 22px;
}
.live-clock[data-v-026eab10] { grid-template-columns: auto auto; min-width: 0; text-align: left;
}
.message-block[data-v-026eab10] { padding: 30px 0;
}
.daily-quote[data-v-026eab10] { font-size: 25px;
}
.tenure-section[data-v-026eab10] { padding: 20px 18px;
}
.section-heading[data-v-026eab10],
  .profile-empty[data-v-026eab10] { align-items: flex-start; flex-direction: column;
}
.tenure-total[data-v-026eab10] { white-space: normal;
}
.tenure-track[data-v-026eab10] { grid-template-columns: 10px 1fr;
}
.anniversary-stat[data-v-026eab10] { grid-column: 2;
}
.tenure-marker[data-v-026eab10] { grid-row: 1 / span 2; height: 100%; min-height: 92px;
}
.weather-heading[data-v-026eab10] { align-items: center;
}
.weather-current[data-v-026eab10] { gap: 14px;
}
.weather-grid[data-v-026eab10] { margin-top: 28px;
}
}

.workbench[data-v-c52078df] {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.workbench-header[data-v-c52078df],
.panel[data-v-c52078df] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
}
.workbench-header[data-v-c52078df] {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}
.eyebrow[data-v-c52078df] {
  color: #2563eb;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 2px;
}
.workbench-header h1[data-v-c52078df] {
  font-size: 24px;
  line-height: 1.25;
}
.header-subtitle[data-v-c52078df] {
  color: #4b5563;
  margin-top: 4px;
}
.header-action[data-v-c52078df] {
  flex: 0 0 auto;
  text-decoration: none;
}
.metric-strip[data-v-c52078df] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-c52078df] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-left-width: 4px;
  border-radius: 8px;
  color: inherit;
  padding: 12px 14px;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
.metric-item[data-v-c52078df]:hover {
  border-color: #cbd5e1;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  transform: translateY(-1px);
}
.metric-blue[data-v-c52078df] { border-left-color: #2563eb;
}
.metric-amber[data-v-c52078df] { border-left-color: #d97706;
}
.metric-green[data-v-c52078df] { border-left-color: #059669;
}
.metric-red[data-v-c52078df] { border-left-color: #dc2626;
}
.metric-value[data-v-c52078df] {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.1;
}
.metric-label[data-v-c52078df],
.flow-copy span[data-v-c52078df],
.workarea-item p[data-v-c52078df] {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}
.section-title-row[data-v-c52078df] {
  margin-bottom: 12px;
}
.section-title-row h2[data-v-c52078df] {
  font-size: 17px;
}
.flow-list[data-v-c52078df] {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}
.flow-step[data-v-c52078df],
.workarea-item[data-v-c52078df] {
  background: #fafafa;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 10px;
}
.flow-step[data-v-c52078df] {
  min-height: 86px;
}
.flow-index[data-v-c52078df] {
  background: #111827;
  border-radius: 50%;
  color: #fff;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  height: 24px;
  margin-bottom: 8px;
  place-items: center;
  width: 24px;
}
.flow-copy[data-v-c52078df] {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.workarea-grid[data-v-c52078df] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.workarea-item[data-v-c52078df] {
  color: inherit;
  min-height: 96px;
  text-decoration: none;
}
.workarea-title-row[data-v-c52078df] {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 8px;
}
.workarea-title-row h3[data-v-c52078df] {
  font-size: 16px;
}
.workarea-title-row span[data-v-c52078df] {
  background: #e0f2fe;
  border-radius: 999px;
  color: #0369a1;
  font-size: 12px;
  padding: 2px 8px;
}
.flow-details summary[data-v-c52078df] {
  color: #2563eb;
  cursor: pointer;
  font-weight: 700;
}
.flow-details[open] summary[data-v-c52078df] {
  margin-bottom: 12px;
}
@media (max-width: 900px) {
.workbench-header[data-v-c52078df] {
    align-items: flex-start;
    flex-direction: column;
}
.metric-strip[data-v-c52078df],
  .flow-list[data-v-c52078df],
  .workarea-grid[data-v-c52078df] {
    grid-template-columns: 1fr;
}
}

.workbench[data-v-4d9e85ef] { display: flex; flex-direction: column; gap: 14px;
}
.workbench-header[data-v-4d9e85ef], .panel[data-v-4d9e85ef] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.workbench-header[data-v-4d9e85ef] { align-items: center; display: flex; gap: 16px; justify-content: space-between;
}
.eyebrow[data-v-4d9e85ef] { color: #2563eb; font-size: 12px; font-weight: 700; margin-bottom: 2px;
}
.workbench-header h1[data-v-4d9e85ef] { font-size: 24px; line-height: 1.25;
}
.header-subtitle[data-v-4d9e85ef] { color: #4b5563; margin-top: 4px;
}
.header-action[data-v-4d9e85ef] { flex: 0 0 auto; text-decoration: none;
}
.metric-strip[data-v-4d9e85ef] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-4d9e85ef] { background: #fff; border: 1px solid #e5e7eb; border-left-width: 4px; border-radius: 8px; padding: 12px 14px;
}
.metric-link[data-v-4d9e85ef] { color: inherit; text-decoration: none;
}
.metric-link[data-v-4d9e85ef]:hover { border-color: #9ca3af;
}
.metric-blue[data-v-4d9e85ef] { border-left-color: #2563eb;
}
.metric-amber[data-v-4d9e85ef] { border-left-color: #d97706;
}
.metric-green[data-v-4d9e85ef] { border-left-color: #059669;
}
.metric-red[data-v-4d9e85ef] { border-left-color: #dc2626;
}
.metric-value[data-v-4d9e85ef] { font-size: 24px; font-weight: 800; line-height: 1.1;
}
.metric-label[data-v-4d9e85ef], .flow-copy span[data-v-4d9e85ef], .workarea-item p[data-v-4d9e85ef] { color: #6b7280; font-size: 12px; line-height: 1.45;
}
.section-title-row[data-v-4d9e85ef] { margin-bottom: 12px;
}
.section-title-row h2[data-v-4d9e85ef] { font-size: 17px;
}
.flow-list[data-v-4d9e85ef] { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(150px, 1fr));
}
.flow-step[data-v-4d9e85ef], .workarea-item[data-v-4d9e85ef] { background: #fafafa; border: 1px solid #e5e7eb; border-radius: 8px; padding: 10px;
}
.flow-step[data-v-4d9e85ef] { min-height: 86px;
}
.flow-index[data-v-4d9e85ef] { background: #111827; border-radius: 50%; color: #fff; display: grid; font-size: 12px; font-weight: 700; height: 24px; margin-bottom: 8px; place-items: center; width: 24px;
}
.flow-copy[data-v-4d9e85ef] { display: flex; flex-direction: column; gap: 4px;
}
.workarea-grid[data-v-4d9e85ef] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(180px, 1fr));
}
.workarea-item[data-v-4d9e85ef] { color: inherit; min-height: 104px; text-decoration: none; background: #fff;
}
.workarea-item[data-v-4d9e85ef]:hover { border-color: #9ca3af;
}
.workarea-title-row[data-v-4d9e85ef] { align-items: center; display: flex; gap: 8px; justify-content: space-between;
}
.workarea-title-row h3[data-v-4d9e85ef] { font-size: 15px;
}
.workarea-title-row span[data-v-4d9e85ef] { border: 1px solid #d1d5db; border-radius: 999px; color: #4b5563; font-size: 11px; padding: 1px 7px; white-space: nowrap;
}
.workarea-item p[data-v-4d9e85ef] { margin-top: 8px;
}
.flow-details summary[data-v-4d9e85ef] { color: #2563eb; cursor: pointer; font-weight: 700;
}
@media (max-width: 1100px) {
.flow-list[data-v-4d9e85ef], .workarea-grid[data-v-4d9e85ef] { grid-template-columns: repeat(2, minmax(220px, 1fr));
}
}
@media (max-width: 760px) {
.workbench-header[data-v-4d9e85ef] { align-items: flex-start; flex-direction: column;
}
.metric-strip[data-v-4d9e85ef], .flow-list[data-v-4d9e85ef], .workarea-grid[data-v-4d9e85ef] { grid-template-columns: 1fr;
}
}

.workbench[data-v-3ba2c164] { display: flex; flex-direction: column; gap: 14px;
}
.workbench-header[data-v-3ba2c164], .panel[data-v-3ba2c164] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.workbench-header[data-v-3ba2c164] { align-items: center; display: flex; gap: 16px; justify-content: space-between;
}
.eyebrow[data-v-3ba2c164] { color: #2563eb; font-size: 12px; font-weight: 700; margin-bottom: 2px;
}
.workbench-header h1[data-v-3ba2c164] { font-size: 24px; line-height: 1.25;
}
.header-subtitle[data-v-3ba2c164] { color: #4b5563; margin-top: 4px;
}
.header-action[data-v-3ba2c164] { flex: 0 0 auto; text-decoration: none;
}
.metric-strip[data-v-3ba2c164] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-3ba2c164] { background: #fff; border: 1px solid #e5e7eb; border-left-width: 4px; border-radius: 8px; padding: 12px 14px;
}
.metric-link[data-v-3ba2c164] { color: inherit; text-decoration: none;
}
.metric-link[data-v-3ba2c164]:hover { border-color: #9ca3af;
}
.metric-blue[data-v-3ba2c164] { border-left-color: #2563eb;
}
.metric-amber[data-v-3ba2c164] { border-left-color: #d97706;
}
.metric-green[data-v-3ba2c164] { border-left-color: #059669;
}
.metric-red[data-v-3ba2c164] { border-left-color: #dc2626;
}
.metric-value[data-v-3ba2c164] { font-size: 24px; font-weight: 800; line-height: 1.1;
}
.metric-label[data-v-3ba2c164] { color: #6b7280; font-size: 12px; margin-top: 4px;
}
.section-title-row[data-v-3ba2c164] { display: flex; gap: 12px; justify-content: space-between; margin-bottom: 12px;
}
.section-title-row h2[data-v-3ba2c164], .panel h2[data-v-3ba2c164] { font-size: 17px;
}
.flow-list[data-v-3ba2c164] { display: grid; gap: 8px; grid-template-columns: repeat(5, minmax(130px, 1fr));
}
.flow-step[data-v-3ba2c164] { background: #fafafa; border: 1px solid #e5e7eb; border-radius: 8px; min-height: 86px; padding: 10px;
}
.flow-index[data-v-3ba2c164] { background: #111827; border-radius: 50%; color: #fff; display: grid; font-size: 12px; font-weight: 700; height: 24px; margin-bottom: 8px; place-items: center; width: 24px;
}
.flow-copy[data-v-3ba2c164] { display: flex; flex-direction: column; gap: 2px;
}
.flow-copy strong[data-v-3ba2c164] { font-size: 13px;
}
.flow-copy span[data-v-3ba2c164], .workarea-item p[data-v-3ba2c164] { color: #6b7280; font-size: 12px; line-height: 1.45;
}
.action-grid[data-v-3ba2c164] { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(180px, 1fr));
}
.action-panel[data-v-3ba2c164], .workarea-item[data-v-3ba2c164] { color: inherit; text-decoration: none;
}
.action-panel[data-v-3ba2c164] { background: #111827; border-radius: 8px; color: #fff; display: flex; flex-direction: column; gap: 4px; min-height: 78px; padding: 14px;
}
.panel-title[data-v-3ba2c164] { font-weight: 800;
}
.panel-desc[data-v-3ba2c164] { color: rgba(255, 255, 255, 0.72); font-size: 12px; line-height: 1.45;
}
.workarea-grid[data-v-3ba2c164] { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(220px, 1fr));
}
.workarea-item[data-v-3ba2c164] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; min-height: 104px; padding: 12px;
}
.workarea-title-row[data-v-3ba2c164] { align-items: center; display: flex; gap: 8px; justify-content: space-between;
}
.workarea-title-row h3[data-v-3ba2c164] { font-size: 15px;
}
.workarea-title-row span[data-v-3ba2c164] { border: 1px solid #d1d5db; border-radius: 999px; color: #4b5563; font-size: 11px; padding: 1px 7px; white-space: nowrap;
}
.workarea-item p[data-v-3ba2c164] { margin-top: 8px;
}
.workarea-item[data-v-3ba2c164]:hover { border-color: #9ca3af;
}
.flow-details summary[data-v-3ba2c164] { color: #2563eb; cursor: pointer; font-weight: 700;
}
@media (max-width: 1100px) {
.flow-list[data-v-3ba2c164], .workarea-grid[data-v-3ba2c164] { grid-template-columns: repeat(2, minmax(220px, 1fr));
}
}
@media (max-width: 760px) {
.workbench-header[data-v-3ba2c164] { align-items: flex-start; flex-direction: column;
}
.metric-strip[data-v-3ba2c164], .action-grid[data-v-3ba2c164], .flow-list[data-v-3ba2c164], .workarea-grid[data-v-3ba2c164] { grid-template-columns: 1fr;
}
}

.btn[data-v-4be832cb] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-4be832cb] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.field[data-v-4be832cb] {
  display: grid;
}
.table[data-v-4be832cb] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-4be832cb],
.table td[data-v-4be832cb] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
  white-space: nowrap;
}
.table th[data-v-4be832cb] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
}
.cell-mono[data-v-4be832cb] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.modal-mask[data-v-4be832cb] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 50;
}
.modal[data-v-4be832cb] {
  width: min(560px, 92vw);
  background: #fff;
  border-radius: 14px;
  border: 1px solid #e5e7eb;
  padding: 14px;
  box-sizing: border-box;
}

.btn[data-v-23be2ab1] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-23be2ab1] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.field[data-v-23be2ab1] {
  display: grid;
}
.table[data-v-23be2ab1] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-23be2ab1],
.table td[data-v-23be2ab1] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
  white-space: nowrap;
}
.table th[data-v-23be2ab1] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
}
.cell-mono[data-v-23be2ab1] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.modal-mask[data-v-23be2ab1] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 50;
}
.modal[data-v-23be2ab1] {
  width: min(560px, 92vw);
  background: #fff;
  border-radius: 14px;
  border: 1px solid #e5e7eb;
  padding: 14px;
  box-sizing: border-box;
}

.btn[data-v-8f8a3a65] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-8f8a3a65] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.textarea[data-v-8f8a3a65] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  resize: vertical;
}
.field[data-v-8f8a3a65] {
  display: grid;
}
.table[data-v-8f8a3a65] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-8f8a3a65],
.table td[data-v-8f8a3a65] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
  white-space: nowrap;
}
.table th[data-v-8f8a3a65] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
}
.cell-mono[data-v-8f8a3a65] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.badge[data-v-8f8a3a65] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid transparent;
  white-space: nowrap;
}
.badge-ok[data-v-8f8a3a65] {
  background: rgba(34, 197, 94, 0.12);
  border-color: rgba(34, 197, 94, 0.28);
  color: #166534;
}
.badge-warn[data-v-8f8a3a65] {
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(245, 158, 11, 0.28);
  color: #92400e;
}
.badge-bad[data-v-8f8a3a65] {
  background: rgba(239, 68, 68, 0.12);
  border-color: rgba(239, 68, 68, 0.28);
  color: #991b1b;
}
.badge-dim[data-v-8f8a3a65] {
  background: rgba(148, 163, 184, 0.14);
  border-color: rgba(148, 163, 184, 0.35);
  color: #334155;
}
.drawer-mask[data-v-8f8a3a65] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.35);
  display: flex;
  justify-content: flex-end;
  z-index: 50;
}
.drawer[data-v-8f8a3a65] {
  width: min(640px, 96vw);
  height: 100%;
  background: #fff;
  padding: 14px;
  overflow: auto;
  box-sizing: border-box;
}

.workbench[data-v-f189c35c] { display: flex; flex-direction: column; gap: 14px;
}
.workbench-header[data-v-f189c35c], .panel[data-v-f189c35c] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.workbench-header[data-v-f189c35c] { align-items: center; display: flex; gap: 16px; justify-content: space-between;
}
.eyebrow[data-v-f189c35c] { color: #2563eb; font-size: 12px; font-weight: 700; margin-bottom: 2px;
}
.workbench-header h1[data-v-f189c35c] { font-size: 24px; line-height: 1.25;
}
.header-subtitle[data-v-f189c35c] { color: #4b5563; margin-top: 4px;
}
.header-action[data-v-f189c35c] { flex: 0 0 auto; text-decoration: none;
}
.metric-strip[data-v-f189c35c] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-f189c35c] { background: #fff; border: 1px solid #e5e7eb; border-left-width: 4px; border-radius: 8px; padding: 12px 14px;
}
.metric-link[data-v-f189c35c] { color: inherit; text-decoration: none;
}
.metric-link[data-v-f189c35c]:hover { border-color: #9ca3af;
}
.metric-blue[data-v-f189c35c] { border-left-color: #2563eb;
}
.metric-amber[data-v-f189c35c] { border-left-color: #d97706;
}
.metric-green[data-v-f189c35c] { border-left-color: #059669;
}
.metric-red[data-v-f189c35c] { border-left-color: #dc2626;
}
.metric-value[data-v-f189c35c] { font-size: 24px; font-weight: 800; line-height: 1.1;
}
.metric-label[data-v-f189c35c], .flow-copy span[data-v-f189c35c], .workarea-item p[data-v-f189c35c] { color: #6b7280; font-size: 12px; line-height: 1.45;
}
.section-title-row[data-v-f189c35c] { display: flex; gap: 12px; justify-content: space-between; margin-bottom: 12px;
}
.section-title-row h2[data-v-f189c35c] { font-size: 17px;
}
.flow-list[data-v-f189c35c] { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(130px, 1fr));
}
.flow-step[data-v-f189c35c] { background: #fafafa; border: 1px solid #e5e7eb; border-radius: 8px; min-height: 86px; padding: 10px;
}
.flow-index[data-v-f189c35c] { background: #111827; border-radius: 50%; color: #fff; display: grid; font-size: 12px; font-weight: 700; height: 24px; margin-bottom: 8px; place-items: center; width: 24px;
}
.flow-copy[data-v-f189c35c] { display: grid; gap: 4px;
}
.workarea-grid[data-v-f189c35c] { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(220px, 1fr));
}
.workarea-item[data-v-f189c35c] { border: 1px solid #e5e7eb; border-radius: 8px; color: inherit; display: grid; gap: 8px; min-height: 104px; padding: 14px; text-decoration: none;
}
.workarea-item[data-v-f189c35c]:hover { border-color: #2563eb;
}
.workarea-title-row[data-v-f189c35c] { align-items: center; display: flex; gap: 10px; justify-content: space-between;
}
.workarea-title-row h3[data-v-f189c35c] { font-size: 16px;
}
.workarea-title-row span[data-v-f189c35c] { border: 1px solid #d1d5db; border-radius: 999px; color: #4b5563; font-size: 12px; padding: 2px 8px;
}
.flow-details summary[data-v-f189c35c] { color: #2563eb; cursor: pointer; font-weight: 700;
}
@media (max-width: 900px) {
.metric-strip[data-v-f189c35c], .workarea-grid[data-v-f189c35c], .flow-list[data-v-f189c35c] { grid-template-columns: 1fr;
}
.workbench-header[data-v-f189c35c] { align-items: flex-start; flex-direction: column;
}
}

.admin-import-link[data-v-f54b88ba] {
  border-color: rgba(37, 99, 235, 0.35);
  color: #1d4ed8;
  text-decoration: none;
}

.danger-ghost[data-v-1cefaa2d] {
  border-color: rgba(220, 38, 38, 0.34);
  color: #b91c1c;
}
.danger-ghost[data-v-1cefaa2d]:disabled {
  border-color: #e5e7eb;
  color: #9ca3af;
}
.count[data-v-1cefaa2d] {
  background: rgba(220, 38, 38, 0.08);
  border-radius: 999px;
  font-size: 11px;
  margin-left: 6px;
  padding: 1px 6px;
}

.finance-page[data-v-6d3649f4] {
  display: grid;
  gap: 12px;
}
.page-head[data-v-6d3649f4],
.panel[data-v-6d3649f4],
.notice[data-v-6d3649f4] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-6d3649f4] {
  color: #2563eb;
  font-size: 13px;
  text-decoration: none;
}
.head-row[data-v-6d3649f4] {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: 8px;
}
h1[data-v-6d3649f4] {
  font-size: 22px;
}
.page-head p[data-v-6d3649f4],
.muted[data-v-6d3649f4] {
  color: #6b7280;
  font-size: 12px;
}
.head-actions[data-v-6d3649f4],
.ops-cell[data-v-6d3649f4],
.modal-actions[data-v-6d3649f4] {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.refresh-btn[data-v-6d3649f4] {
  min-width: 92px;
}
.mini-spinner[data-v-6d3649f4] {
  animation: spin-6d3649f4 .8s linear infinite;
  border: 2px solid #cbd5e1;
  border-top-color: #2563eb;
  border-radius: 999px;
  display: inline-block;
  height: 12px;
  margin-right: 6px;
  vertical-align: -2px;
  width: 12px;
}
@keyframes spin-6d3649f4 {
to {
    transform: rotate(360deg);
}
}
.notice.ok[data-v-6d3649f4] {
  border-color: rgba(16, 185, 129, .35);
  background: rgba(16, 185, 129, .08);
}
.finance-toast[data-v-6d3649f4] {
  box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
  max-width: min(520px, calc(100vw - 32px));
  position: fixed;
  right: 24px;
  top: 92px;
  z-index: 1200;
}
.notice.err[data-v-6d3649f4] {
  border-color: rgba(239, 68, 68, .35);
  background: rgba(239, 68, 68, .06);
  color: #b91c1c;
}
.btn-danger-soft[data-v-6d3649f4] {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}
.form-panel[data-v-6d3649f4] {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}
.voucher-filter-panel[data-v-6d3649f4] {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(180px, 260px) 1fr;
}
.collection-status-panel[data-v-6d3649f4],
.collection-form-panel[data-v-6d3649f4],
.report-section[data-v-6d3649f4] {
  display: grid;
  gap: 12px;
}
.section-title-row[data-v-6d3649f4] {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.section-title-row h2[data-v-6d3649f4] {
  font-size: 17px;
}
.period-controls[data-v-6d3649f4] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.metric-strip[data-v-6d3649f4] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(160px, 1fr));
}
.metric-item[data-v-6d3649f4] {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-left-width: 4px;
  border-radius: 8px;
  padding: 12px 14px;
}
.metric-blue[data-v-6d3649f4] {
  border-left-color: #2563eb;
}
.metric-green[data-v-6d3649f4] {
  border-left-color: #059669;
}
.metric-amber[data-v-6d3649f4] {
  border-left-color: #d97706;
}
.metric-value[data-v-6d3649f4] {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
}
.metric-label[data-v-6d3649f4] {
  color: #64748b;
  font-size: 12px;
  margin-top: 4px;
}
.collection-form-grid[data-v-6d3649f4] {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
}
.collection-form-grid .wide-field[data-v-6d3649f4] {
  grid-column: span 2;
}
.mini-table[data-v-6d3649f4] {
  overflow: auto;
}
.mini-table table[data-v-6d3649f4] {
  min-width: 860px;
}
.po-card-grid[data-v-6d3649f4] {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}
.po-card[data-v-6d3649f4] {
  background: #fff;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}
.po-card-head[data-v-6d3649f4] {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.po-card-head h3[data-v-6d3649f4] {
  font-size: 18px;
}
.po-payable-amount[data-v-6d3649f4] {
  align-items: flex-end;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 190px;
  padding: 10px 12px;
}
.po-payable-amount span[data-v-6d3649f4] {
  color: #1e40af;
  font-size: 12px;
  font-weight: 800;
}
.po-payable-amount strong[data-v-6d3649f4] {
  color: #1d4ed8;
  font-size: 24px;
  line-height: 1.1;
  white-space: nowrap;
}
.pay-info-grid[data-v-6d3649f4] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.pay-info-grid > div[data-v-6d3649f4] {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
}
.pay-info-grid > .pay-info-wide[data-v-6d3649f4] {
  grid-column: 1 / -1;
}
.pay-info-grid span[data-v-6d3649f4] {
  color: #64748b;
  font-size: 12px;
}
.pay-info-grid strong[data-v-6d3649f4] {
  color: #0f172a;
  font-size: 16px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.copy-btn[data-v-6d3649f4] {
  justify-self: start;
  border: 1px solid #cbd5e1;
  background: #fff;
  border-radius: 6px;
  color: #1f2937;
  cursor: pointer;
  padding: 4px 8px;
}
.po-card-actions[data-v-6d3649f4] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.po-attachment-field[data-v-6d3649f4] {
  align-items: center;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  display: flex;
  gap: 8px;
  padding: 6px 8px;
}
.po-attachment-field span[data-v-6d3649f4] {
  color: #475569;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.po-attachment-field input[data-v-6d3649f4] {
  border: 0;
  font-size: 12px;
  min-height: 28px;
  padding: 0;
}
.upload-progress[data-v-6d3649f4] {
  color: #2563eb;
  font-size: 12px;
}
label[data-v-6d3649f4] {
  display: grid;
  gap: 4px;
  font-size: 12px;
  color: #6b7280;
}
input[data-v-6d3649f4],
select[data-v-6d3649f4],
textarea[data-v-6d3649f4] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  padding: 8px 10px;
}
.table-panel[data-v-6d3649f4] {
  overflow: auto;
}
table[data-v-6d3649f4] {
  border-collapse: collapse;
  min-width: 980px;
  width: 100%;
}
th[data-v-6d3649f4],
td[data-v-6d3649f4] {
  border-bottom: 1px solid #e5e7eb;
  font-size: 13px;
  padding: 9px 10px;
  max-width: 220px;
  text-align: center;
  white-space: nowrap;
}
th.ops-head[data-v-6d3649f4] {
  min-width: 340px;
}
td.ops-cell[data-v-6d3649f4] {
  max-width: none;
  min-width: 340px;
  white-space: normal;
}
td.ops-cell .table-actions[data-v-6d3649f4] {
  max-width: 320px;
}
th[data-v-6d3649f4] {
  background: #f9fafb;
  color: #374151;
  font-weight: 700;
}
.mono[data-v-6d3649f4] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.cell-clip[data-v-6d3649f4] {
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font: inherit;
  max-width: 200px;
  overflow: hidden;
  padding: 0;
  text-align: center;
  text-decoration: underline;
  text-decoration-color: #cbd5e1;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}
.cell-clip[data-v-6d3649f4]:hover {
  color: #2563eb;
  text-decoration-color: #2563eb;
}
.collection-status-badge[data-v-6d3649f4] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 76px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 8px;
}
.collection-status-confirmed[data-v-6d3649f4] {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
}
.collection-status-pending_finance_confirm[data-v-6d3649f4] {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}
.collection-status-rejected[data-v-6d3649f4] {
  border-color: #fca5a5;
  background: #fef2f2;
  color: #991b1b;
}
.empty[data-v-6d3649f4] {
  color: #6b7280;
  padding: 18px 12px;
  text-align: center;
}
.modal-mask[data-v-6d3649f4] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, .35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 70;
}
.modal[data-v-6d3649f4] {
  background: #fff;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 14px;
  width: min(560px, 92vw);
}
.cell-detail-modal[data-v-6d3649f4] {
  width: min(680px, 92vw);
}
.cell-detail-modal pre[data-v-6d3649f4] {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  color: #111827;
  font: 13px/1.6 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  margin: 0;
  max-height: 56vh;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
  word-break: break-word;
}
.voucher-preview-modal[data-v-6d3649f4] {
  max-height: 88vh;
  overflow: auto;
  width: min(920px, 94vw);
}
.voucher-preview-frame[data-v-6d3649f4] {
  width: 100%;
  height: min(68vh, 720px);
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}
.voucher-preview-image[data-v-6d3649f4] {
  display: block;
  max-width: 100%;
  max-height: 68vh;
  margin: 0 auto;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  object-fit: contain;
}
.voucher-preview-fallback[data-v-6d3649f4] {
  display: grid;
  gap: 12px;
  place-items: center;
  min-height: 220px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
}
.so-preview-modal[data-v-6d3649f4] {
  max-height: 86vh;
  overflow: auto;
  width: min(980px, 92vw);
}
.preview-section-title[data-v-6d3649f4] {
  font-size: 14px;
  margin-top: 6px;
}
.so-preview-grid[data-v-6d3649f4] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
}
.so-preview-grid > div[data-v-6d3649f4] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}
.so-preview-grid strong[data-v-6d3649f4] {
  overflow-wrap: anywhere;
  white-space: normal;
}
.so-preview-table[data-v-6d3649f4] {
  overflow: auto;
}
.so-preview-table table[data-v-6d3649f4] {
  min-width: 900px;
}
.modal h2[data-v-6d3649f4] {
  font-size: 18px;
}
@media (max-width: 1100px) {
.head-row[data-v-6d3649f4] {
    align-items: flex-start;
    flex-direction: column;
}
.form-panel[data-v-6d3649f4] {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
}
.voucher-filter-panel[data-v-6d3649f4],
  .collection-form-grid[data-v-6d3649f4],
  .metric-strip[data-v-6d3649f4] {
    grid-template-columns: 1fr;
}
.so-preview-grid[data-v-6d3649f4] {
    grid-template-columns: 1fr;
}
.collection-form-grid .wide-field[data-v-6d3649f4] {
    grid-column: auto;
}
.section-title-row[data-v-6d3649f4] {
    flex-direction: column;
}
.period-controls[data-v-6d3649f4] {
    justify-content: flex-start;
}
}


.btn[data-v-7fb356d1] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-7fb356d1] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.textarea[data-v-7fb356d1] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  resize: vertical;
}
.field[data-v-7fb356d1] {
  display: grid;
}
.table[data-v-7fb356d1] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-7fb356d1],
.table td[data-v-7fb356d1] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
  white-space: nowrap;
}
.table th[data-v-7fb356d1] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
}
.cell-mono[data-v-7fb356d1] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.modal-mask[data-v-7fb356d1] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 50;
}
.modal[data-v-7fb356d1] {
  width: min(640px, 92vw);
  background: #fff;
  border-radius: 14px;
  border: 1px solid #e5e7eb;
  padding: 14px;
  box-sizing: border-box;
}
.box[data-v-7fb356d1] {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px;
  background: #fff;
}
.req-star[data-v-7fb356d1] {
  color: #dc2626;
  font-weight: 900;
}

.page[data-v-8fe72888] { display:grid; gap:12px;
}
.page-head[data-v-8fe72888],.table-panel[data-v-8fe72888],.notice[data-v-8fe72888],.summary-strip[data-v-8fe72888] { background:#fff; border:1px solid #e5e7eb; border-radius:8px;
}
.page-head[data-v-8fe72888] { align-items:center; display:flex; justify-content:space-between; padding:16px;
}
.page-head h1[data-v-8fe72888] { font-size:22px; margin:6px 0;
}
.page-head p[data-v-8fe72888],.drawer p[data-v-8fe72888],.modal p[data-v-8fe72888] { color:#6b7280; font-size:12px;
}
.back-link[data-v-8fe72888] { color:#2563eb; font-size:12px; text-decoration:none;
}
.actions[data-v-8fe72888],.row-actions[data-v-8fe72888],.modal-actions[data-v-8fe72888] { display:flex; gap:8px; flex-wrap:wrap;
}
.summary-strip[data-v-8fe72888] { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:12px;
}
.summary-strip div[data-v-8fe72888] { border-right:1px solid #e5e7eb; display:grid; gap:4px; padding:4px 14px;
}
.summary-strip div[data-v-8fe72888]:last-child { border-right:0;
}
.summary-strip span[data-v-8fe72888] { color:#6b7280; font-size:12px;
}
.summary-strip strong[data-v-8fe72888] { font-size:22px;
}
.table-panel[data-v-8fe72888] { padding:0;
}
.table-wrap[data-v-8fe72888] { overflow:auto;
}
table[data-v-8fe72888] { border-collapse:collapse; min-width:1050px; width:100%;
}
th[data-v-8fe72888],td[data-v-8fe72888] { border-bottom:1px solid #eef0f5; padding:11px; text-align:center;
}
th[data-v-8fe72888] { background:#f8fafc; font-size:12px; white-space:nowrap;
}
.amount[data-v-8fe72888] { font-weight:800;
}
.danger[data-v-8fe72888] { color:#b91c1c;
}
.income[data-v-8fe72888] { color:#047857;
}
.danger-button[data-v-8fe72888] { color:#b91c1c;
}
.empty[data-v-8fe72888] { color:#6b7280; padding:24px !important; text-align:center;
}
.notice[data-v-8fe72888] { padding:12px;
}.error[data-v-8fe72888] { color:#b91c1c;
}
.drawer-mask[data-v-8fe72888],.modal-mask[data-v-8fe72888] { background:rgba(15,23,42,.36); inset:0; position:fixed; z-index:80;
}
.drawer[data-v-8fe72888] { background:#fff; height:100%; margin-left:auto; overflow:auto; padding:18px; width:min(720px,94vw);
}
.drawer header[data-v-8fe72888] { align-items:flex-start; display:flex; justify-content:space-between;
}
.transaction-list[data-v-8fe72888] { display:grid; gap:8px; margin-top:14px;
}
.transaction-list article[data-v-8fe72888] { border:1px solid #e5e7eb; border-radius:8px; display:grid; gap:6px; grid-template-columns:1fr auto; padding:12px;
}
.transaction-list article div[data-v-8fe72888]:first-child { display:grid; gap:3px;
}.transaction-list span[data-v-8fe72888],.transaction-list small[data-v-8fe72888] { color:#6b7280; font-size:12px;
}.transaction-list p[data-v-8fe72888],.transaction-list small[data-v-8fe72888] { grid-column:1/-1;
}.tx-amount[data-v-8fe72888] { font-size:17px; font-weight:800;
}
.modal-mask[data-v-8fe72888] { display:grid; padding:20px; place-items:center;
}
.modal[data-v-8fe72888] { background:#fff; border-radius:8px; max-height:90vh; overflow:auto; padding:18px; width:min(720px,94vw);
}.modal.compact[data-v-8fe72888] { width:min(480px,94vw);
}
.form-grid[data-v-8fe72888] { display:grid; gap:12px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:14px;
}.wide[data-v-8fe72888] { grid-column:1/-1;
}
label[data-v-8fe72888] { display:grid; gap:6px; margin-top:12px;
}
label span[data-v-8fe72888] { font-size:12px; font-weight:700;
}
input[data-v-8fe72888],select[data-v-8fe72888],textarea[data-v-8fe72888] { border:1px solid #d0d5dd; border-radius:8px; box-sizing:border-box; font:inherit; padding:9px 10px; width:100%;
}
.modal-actions[data-v-8fe72888] { justify-content:flex-end; margin-top:16px;
}
@media(max-width:760px){.page-head[data-v-8fe72888]{align-items:flex-start;flex-direction:column}.summary-strip[data-v-8fe72888]{grid-template-columns:1fr}.summary-strip div[data-v-8fe72888]{border-bottom:1px solid #e5e7eb;border-right:0}.form-grid[data-v-8fe72888]{grid-template-columns:1fr}.wide[data-v-8fe72888]{grid-column:auto}}

.page[data-v-e97797f7] { display:grid; gap:14px; min-width:0;
}
.page-head[data-v-e97797f7],.content-section[data-v-e97797f7],.tabs[data-v-e97797f7],.notice[data-v-e97797f7] { background:#fff; border:1px solid #e5e7eb; border-radius:8px;
}
.page-head[data-v-e97797f7] { align-items:center; display:flex; justify-content:space-between; padding:16px;
}.page-head h1[data-v-e97797f7] { font-size:24px; margin:4px 0;
}.page-head p[data-v-e97797f7],.modal p[data-v-e97797f7],.drawer p[data-v-e97797f7] { color:#64748b; font-size:13px; line-height:1.5;
}.back-link[data-v-e97797f7],.eyebrow[data-v-e97797f7] { color:#2563eb; font-size:12px; font-weight:700; text-decoration:none;
}
.icon-btn[data-v-e97797f7],.btn[data-v-e97797f7],.small-btn[data-v-e97797f7],.field-action[data-v-e97797f7] { align-items:center; background:#fff; border:1px solid #cbd5e1; border-radius:6px; cursor:pointer; display:inline-flex; gap:6px; justify-content:center; min-height:32px; padding:6px 10px;
}.icon-btn[data-v-e97797f7],.field-action[data-v-e97797f7] { padding:6px; width:32px;
}.icon-btn[data-v-e97797f7]:hover,.btn[data-v-e97797f7]:hover,.small-btn[data-v-e97797f7]:hover,.field-action[data-v-e97797f7]:hover { border-color:#2563eb; color:#1d4ed8;
}.btn-primary[data-v-e97797f7] { background:#2563eb; border-color:#2563eb; color:#fff;
}.btn[data-v-e97797f7]:disabled,.field-action[data-v-e97797f7]:disabled,.icon-btn[data-v-e97797f7]:disabled { cursor:not-allowed; opacity:.5;
}
.tabs[data-v-e97797f7] { display:flex; gap:0; overflow:hidden; padding:4px; width:max-content;
}.tabs button[data-v-e97797f7] { background:transparent; border:0; border-radius:6px; color:#475569; cursor:pointer; font-weight:700; min-height:34px; padding:0 16px;
}.tabs button.active[data-v-e97797f7] { background:#e8f0ff; color:#1d4ed8;
}
.content-section[data-v-e97797f7] { display:grid; gap:12px; padding:14px;
}.toolbar[data-v-e97797f7] { align-items:center; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between;
}.toolbar label[data-v-e97797f7] { align-items:center; display:flex; font-size:13px; font-weight:700; gap:8px;
}.toolbar input[data-v-e97797f7] { border:1px solid #cbd5e1; border-radius:6px; font:inherit; min-height:34px; padding:4px 8px;
}.hint[data-v-e97797f7] { color:#64748b; font-size:12px;
}
.summary-strip[data-v-e97797f7] { display:grid; grid-template-columns:repeat(6,minmax(130px,1fr)); overflow:auto;
}.summary-strip div[data-v-e97797f7] { border:1px solid #e2e8f0; border-right:0; display:grid; gap:4px; min-width:138px; padding:10px 12px;
}.summary-strip div[data-v-e97797f7]:last-child { border-right:1px solid #e2e8f0;
}.summary-strip span[data-v-e97797f7] { color:#64748b; font-size:12px;
}.summary-strip strong[data-v-e97797f7] { font-size:17px; text-align:right;
}.profit[data-v-e97797f7] { color:#047857;
}.staff-summary[data-v-e97797f7] { grid-template-columns:repeat(3,minmax(180px,1fr));
}
.table-panel[data-v-e97797f7] { border:1px solid #e2e8f0; min-width:0;
}.table-wrap[data-v-e97797f7] { max-width:100%; overflow:auto;
}.branch-table[data-v-e97797f7] { border-collapse:separate; border-spacing:0; min-width:6280px; width:max-content;
}.staff-table[data-v-e97797f7] { border-collapse:collapse; min-width:1500px; width:100%;
}
th[data-v-e97797f7],td[data-v-e97797f7] { border-bottom:1px solid #e2e8f0; border-right:1px solid #e2e8f0; box-sizing:border-box; min-width:130px; padding:10px 9px; text-align:center; vertical-align:middle; white-space:nowrap;
}
th[data-v-e97797f7] { background:#f8fafc; font-size:12px; font-weight:800; position:sticky; top:0; z-index:4;
}.branch-table thead tr:first-child th[data-v-e97797f7] { top:0;
}.branch-table thead tr:nth-child(2) th[data-v-e97797f7] { top:37px;
}.group-sales[data-v-e97797f7] { background:#eff6ff; color:#1d4ed8;
}.group-procure[data-v-e97797f7] { background:#fff7ed; color:#c2410c;
}.group-finance[data-v-e97797f7] { background:#ecfdf5; color:#047857;
}.operation-head[data-v-e97797f7] { min-width:86px;
}.operation-cell[data-v-e97797f7] { background:#fff; min-width:86px; position:sticky; right:0; z-index:2;
}.amount[data-v-e97797f7] { font-variant-numeric:tabular-nums; text-align:right;
}.truncate[data-v-e97797f7] { display:block; max-width:170px; overflow:hidden; text-overflow:ellipsis;
}.frozen[data-v-e97797f7] { background:#fff; position:sticky; z-index:3;
}.branch-table thead .frozen[data-v-e97797f7] { background:#f8fafc; z-index:6;
}.frozen-0[data-v-e97797f7] { left:0; min-width:150px;
}.frozen-1[data-v-e97797f7] { left:150px; min-width:130px;
}.frozen-2[data-v-e97797f7] { left:280px; min-width:130px;
}.frozen-3[data-v-e97797f7] { left:410px; min-width:74px;
}.branch-table td.frozen[data-v-e97797f7] { box-shadow:1px 0 0 #cbd5e1;
}.empty[data-v-e97797f7] { color:#64748b; padding:28px !important; text-align:center !important;
}
.notice[data-v-e97797f7] { margin:0; padding:12px;
}.error[data-v-e97797f7] { border-color:#fecaca; color:#b91c1c;
}.drawer-mask[data-v-e97797f7],.modal-mask[data-v-e97797f7] { background:rgba(15,23,42,.38); inset:0; position:fixed; z-index:80;
}.drawer-mask[data-v-e97797f7] { display:flex; justify-content:flex-end;
}.drawer[data-v-e97797f7] { background:#fff; box-sizing:border-box; height:100vh; overflow:auto; padding:18px; width:min(780px,96vw);
}.drawer-head[data-v-e97797f7] { align-items:flex-start; display:flex; gap:12px; justify-content:space-between;
}.drawer-head h2[data-v-e97797f7],.modal h2[data-v-e97797f7] { font-size:19px; margin:0;
}.drawer-actions[data-v-e97797f7],.modal-actions[data-v-e97797f7] { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0;
}.detail-section[data-v-e97797f7] { border-top:1px solid #e2e8f0; padding:14px 0;
}.detail-section h3[data-v-e97797f7] { font-size:15px; margin:0 0 10px;
}.text-sales[data-v-e97797f7] { color:#1d4ed8;
}.text-procure[data-v-e97797f7] { color:#c2410c;
}.text-finance[data-v-e97797f7] { color:#047857;
}.detail-grid[data-v-e97797f7] { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr));
}.detail-item[data-v-e97797f7] { border:1px solid #e2e8f0; display:grid; gap:5px; grid-template-columns:1fr auto auto; min-height:70px; padding:9px;
}.detail-item span[data-v-e97797f7] { color:#64748b; font-size:12px; grid-column:1/-1;
}.detail-item strong[data-v-e97797f7] { font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}.field-action[data-v-e97797f7] { align-self:end; min-height:28px; padding:4px; width:28px;
}
.modal-mask[data-v-e97797f7] { display:grid; padding:18px; place-items:center;
}.modal[data-v-e97797f7] { background:#fff; border-radius:8px; max-height:90vh; overflow:auto; padding:18px; width:min(520px,96vw);
}.modal label[data-v-e97797f7] { display:grid; gap:6px; margin-top:12px;
}.modal label span[data-v-e97797f7] { font-size:13px; font-weight:700;
}.modal input[data-v-e97797f7],.modal select[data-v-e97797f7],.modal textarea[data-v-e97797f7] { border:1px solid #cbd5e1; border-radius:6px; box-sizing:border-box; font:inherit; padding:8px; width:100%;
}.modal-actions[data-v-e97797f7] { justify-content:flex-end;
}.history-modal[data-v-e97797f7] { width:min(700px,96vw);
}.history-list[data-v-e97797f7] { display:grid; gap:8px; margin-top:14px;
}.history-list article[data-v-e97797f7] { border:1px solid #e2e8f0; display:grid; gap:4px; padding:10px;
}.history-list article div[data-v-e97797f7] { align-items:center; display:flex; justify-content:space-between;
}.history-list span[data-v-e97797f7],.history-list small[data-v-e97797f7] { color:#64748b; font-size:12px;
}.history-list p[data-v-e97797f7] { margin:0;
}
@media (max-width:800px) {
.page-head[data-v-e97797f7] { align-items:flex-start; flex-direction:column;
}.summary-strip[data-v-e97797f7] { grid-template-columns:repeat(2,minmax(150px,1fr));
}.staff-summary[data-v-e97797f7] { grid-template-columns:1fr;
}.detail-grid[data-v-e97797f7] { grid-template-columns:1fr;
}.tabs[data-v-e97797f7] { width:100%;
}.tabs button[data-v-e97797f7] { flex:1;
}
}

.workbench[data-v-396889b4] { display: flex; flex-direction: column; gap: 14px;
}
.workbench-header[data-v-396889b4], .panel[data-v-396889b4] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.workbench-header[data-v-396889b4] { align-items: center; display: flex; gap: 16px; justify-content: space-between;
}
.eyebrow[data-v-396889b4] { color: #2563eb; font-size: 12px; font-weight: 700; margin-bottom: 2px;
}
.workbench-header h1[data-v-396889b4] { font-size: 24px; line-height: 1.25;
}
.header-subtitle[data-v-396889b4] { color: #4b5563; margin-top: 4px;
}
.header-actions[data-v-396889b4] { display: flex; flex: 0 0 auto; gap: 8px;
}
.header-actions a[data-v-396889b4] { text-decoration: none;
}
.metric-strip[data-v-396889b4] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-396889b4] { background: #fff; border: 1px solid #e5e7eb; border-left-width: 4px; border-radius: 8px; padding: 12px 14px;
}
.metric-link[data-v-396889b4] { color: inherit; text-decoration: none;
}
.metric-link[data-v-396889b4]:hover { border-color: #9ca3af;
}
.metric-blue[data-v-396889b4] { border-left-color: #2563eb;
}
.metric-amber[data-v-396889b4] { border-left-color: #d97706;
}
.metric-green[data-v-396889b4] { border-left-color: #059669;
}
.metric-red[data-v-396889b4] { border-left-color: #dc2626;
}
.metric-value[data-v-396889b4] { font-size: 22px; font-weight: 800; line-height: 1.1;
}
.metric-label[data-v-396889b4], .flow-copy span[data-v-396889b4], .workarea-item p[data-v-396889b4] { color: #6b7280; font-size: 12px; line-height: 1.45;
}
.section-title-row[data-v-396889b4] { margin-bottom: 12px;
}
.section-title-row h2[data-v-396889b4] { font-size: 17px;
}
.flow-list[data-v-396889b4] { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(150px, 1fr)); margin-top: 12px;
}
.flow-step[data-v-396889b4], .workarea-item[data-v-396889b4] { background: #fafafa; border: 1px solid #e5e7eb; border-radius: 8px; padding: 10px;
}
.flow-step[data-v-396889b4] { min-height: 86px;
}
.flow-index[data-v-396889b4] { background: #111827; border-radius: 50%; color: #fff; display: grid; font-size: 12px; font-weight: 700; height: 24px; margin-bottom: 8px; place-items: center; width: 24px;
}
.flow-copy[data-v-396889b4] { display: flex; flex-direction: column; gap: 2px;
}
.flow-copy strong[data-v-396889b4] { font-size: 13px;
}
.workarea-grid[data-v-396889b4] { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(220px, 1fr));
}
.workarea-item[data-v-396889b4] { background: #fff; color: inherit; min-height: 104px; text-decoration: none;
}
.workarea-item[data-v-396889b4]:hover { border-color: #9ca3af;
}
.workarea-title-row[data-v-396889b4] { align-items: center; display: flex; gap: 8px; justify-content: space-between;
}
.workarea-title-row h3[data-v-396889b4] { font-size: 15px;
}
.workarea-title-row span[data-v-396889b4] { border: 1px solid #d1d5db; border-radius: 999px; color: #4b5563; font-size: 11px; padding: 1px 7px; white-space: nowrap;
}
.workarea-item p[data-v-396889b4] { margin-top: 8px;
}
.flow-details summary[data-v-396889b4] { color: #2563eb; cursor: pointer; font-weight: 700;
}
@media (max-width: 1100px) {
.flow-list[data-v-396889b4], .workarea-grid[data-v-396889b4] { grid-template-columns: repeat(2, minmax(220px, 1fr));
}
}
@media (max-width: 760px) {
.workbench-header[data-v-396889b4] { align-items: flex-start; flex-direction: column;
}
.header-actions[data-v-396889b4] { flex-wrap: wrap;
}
.metric-strip[data-v-396889b4], .flow-list[data-v-396889b4], .workarea-grid[data-v-396889b4] { grid-template-columns: 1fr;
}
}

.signature-page[data-v-fe69125d] { display: grid; gap: 12px;
}
.page-head[data-v-fe69125d], .panel[data-v-fe69125d], .admin-strip[data-v-fe69125d], .message[data-v-fe69125d] { border: 1px solid #e5e7eb; border-radius: 8px; background: #fff;
}
.page-head[data-v-fe69125d] { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px;
}
.page-head h1[data-v-fe69125d], h2[data-v-fe69125d] { margin: 0; color: #111827;
}
.page-head p[data-v-fe69125d] { margin: 6px 0 0; color: #6b7280; font-size: 13px;
}
.eyebrow[data-v-fe69125d] { color: #2563eb !important; font-size: 12px !important; font-weight: 800;
}
.summary[data-v-fe69125d] { display: grid; grid-template-columns: repeat(3, 108px); gap: 8px;
}
.summary div[data-v-fe69125d] { padding: 10px; border: 1px solid #e5e7eb; background: #f8fafc; text-align: center;
}
.summary span[data-v-fe69125d], .toolbar span[data-v-fe69125d], small[data-v-fe69125d], .muted[data-v-fe69125d] { display: block; color: #6b7280; font-size: 11px;
}
.summary strong[data-v-fe69125d] { display: block; margin-top: 4px; font-size: 22px;
}
.message[data-v-fe69125d] { padding: 10px 12px; font-size: 13px;
}
.message.success[data-v-fe69125d] { border-color: #a7f3d0; color: #047857; background: #ecfdf5;
}
.message.danger[data-v-fe69125d] { border-color: #fecaca; color: #b91c1c; background: #fef2f2;
}
.admin-strip[data-v-fe69125d] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-color: #fde68a; background: #fffbeb;
}
.admin-strip div[data-v-fe69125d]:first-child { display: grid; gap: 3px;
}
.admin-strip span[data-v-fe69125d] { color: #78716c; font-size: 12px;
}
.unlock-form[data-v-fe69125d] { display: flex; gap: 8px;
}
.panel[data-v-fe69125d] { overflow: hidden;
}
.toolbar[data-v-fe69125d] { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(260px, 360px) 130px auto; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid #e5e7eb;
}
.toolbar h2[data-v-fe69125d] { font-size: 16px;
}
.input[data-v-fe69125d], .select[data-v-fe69125d], .textarea[data-v-fe69125d] { border: 1px solid #d1d5db; border-radius: 8px; background: #fff; font: inherit;
}
.input[data-v-fe69125d], .select[data-v-fe69125d] { height: 36px; padding: 0 10px;
}
.textarea[data-v-fe69125d] { width: 100%; padding: 10px; resize: vertical;
}
.table-wrap[data-v-fe69125d] { overflow: auto;
}
.signature-table[data-v-fe69125d] { min-width: 1120px;
}
.signature-table th[data-v-fe69125d], .signature-table td[data-v-fe69125d] { text-align: center; vertical-align: middle;
}
.signature-table td strong[data-v-fe69125d], .signature-table td span[data-v-fe69125d] { display: block;
}
.status[data-v-fe69125d] { display: inline-flex !important; align-items: center; height: 24px; padding: 0 9px; border-radius: 999px; font-size: 12px; font-weight: 700;
}
.status-not_set[data-v-fe69125d] { color: #475569; background: #e2e8f0;
}
.status-pending[data-v-fe69125d] { color: #92400e; background: #fef3c7;
}
.status-active[data-v-fe69125d] { color: #047857; background: #d1fae5;
}
.status-rejected[data-v-fe69125d] { color: #b91c1c; background: #fee2e2;
}
.preview-button[data-v-fe69125d] { width: 120px; height: 46px; padding: 4px; border: 1px solid #e5e7eb; background: #fff; cursor: pointer;
}
.preview-button img[data-v-fe69125d] { max-width: 100%; max-height: 100%; object-fit: contain;
}
.empty[data-v-fe69125d] { padding: 34px !important; color: #6b7280;
}
.modal-mask[data-v-fe69125d] { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 20px; background: rgba(15, 23, 42, .48);
}
.detail-modal[data-v-fe69125d] { width: min(720px, 100%); max-height: calc(100vh - 40px); overflow: auto; padding: 16px; border-radius: 8px; background: #fff; box-shadow: 0 24px 80px rgba(15, 23, 42, .25);
}
.detail-modal header[data-v-fe69125d], .detail-modal footer[data-v-fe69125d] { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
}
.detail-modal header p[data-v-fe69125d] { margin: 4px 0 0; color: #6b7280; font-size: 12px;
}
.signature-large[data-v-fe69125d] { display: grid; place-items: center; min-height: 190px; margin: 14px 0; border: 1px solid #e5e7eb; background: #fafafa; color: #6b7280;
}
.signature-large img[data-v-fe69125d] { max-width: 100%; max-height: 240px; object-fit: contain;
}
.detail-grid[data-v-fe69125d] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin: 0 0 14px;
}
.detail-grid div[data-v-fe69125d] { padding: 10px; border: 1px solid #e5e7eb;
}
.detail-grid .full[data-v-fe69125d] { grid-column: 1 / -1;
}
.detail-grid dt[data-v-fe69125d] { color: #6b7280; font-size: 11px;
}
.detail-grid dd[data-v-fe69125d] { margin: 5px 0 0; font-size: 13px;
}
.decision[data-v-fe69125d] { display: inline-flex; margin-bottom: 10px; border: 1px solid #d1d5db; border-radius: 8px; overflow: hidden;
}
.decision button[data-v-fe69125d] { min-width: 90px; height: 34px; border: 0; background: #fff; cursor: pointer;
}
.decision button.active[data-v-fe69125d] { color: #fff; background: #2563eb;
}
.detail-modal footer[data-v-fe69125d] { justify-content: flex-end; margin-top: 12px;
}
.btn-warning[data-v-fe69125d] { color: #fff; background: #d97706;
}
@media (max-width: 900px) {
.page-head[data-v-fe69125d], .admin-strip[data-v-fe69125d] { align-items: stretch; flex-direction: column;
}
.summary[data-v-fe69125d] { grid-template-columns: repeat(3, 1fr);
}
.toolbar[data-v-fe69125d] { grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 640px) {
.summary[data-v-fe69125d], .toolbar[data-v-fe69125d], .detail-grid[data-v-fe69125d] { grid-template-columns: 1fr;
}
.unlock-form[data-v-fe69125d] { flex-direction: column;
}
.detail-grid .full[data-v-fe69125d] { grid-column: auto;
}
}

.notice-page[data-v-db416875] { display: grid; gap: 12px;
}
.page-head[data-v-db416875], .workspace[data-v-db416875], .message[data-v-db416875] { border: 1px solid #e5e7eb; border-radius: 8px; background: #fff;
}
.page-head[data-v-db416875] { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 20px;
}
.page-head h1[data-v-db416875], h2[data-v-db416875] { margin: 0; color: #111827;
}
.page-head p[data-v-db416875] { margin: 6px 0 0; color: #6b7280; font-size: 13px;
}
.eyebrow[data-v-db416875] { color: #2563eb !important; font-size: 12px !important; font-weight: 800;
}
.count-box[data-v-db416875] { min-width: 130px; padding: 12px 16px; border: 1px solid #dbeafe; background: #eff6ff; text-align: center;
}
.count-box strong[data-v-db416875] { display: block; color: #1d4ed8; font-size: 24px;
}
.count-box span[data-v-db416875] { color: #64748b; font-size: 12px;
}
.message[data-v-db416875] { padding: 10px 12px; font-size: 13px;
}
.message.danger[data-v-db416875] { border-color: #fecaca; color: #b91c1c; background: #fef2f2;
}
.message.success[data-v-db416875] { border-color: #a7f3d0; color: #047857; background: #ecfdf5;
}
.workspace[data-v-db416875] { display: grid; grid-template-columns: minmax(360px, .9fr) minmax(420px, 1.1fr); overflow: hidden;
}
.recipient-panel[data-v-db416875], .compose-panel[data-v-db416875] { min-width: 0; padding: 16px;
}
.recipient-panel[data-v-db416875] { border-right: 1px solid #e5e7eb;
}
.panel-head[data-v-db416875] { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px;
}
.panel-head h2[data-v-db416875] { font-size: 16px;
}
.panel-head span[data-v-db416875] { color: #6b7280; font-size: 12px;
}
.mode-switch[data-v-db416875] { display: inline-flex; margin-bottom: 10px; border: 1px solid #d1d5db; border-radius: 8px; overflow: hidden;
}
.mode-switch button[data-v-db416875] { height: 34px; padding: 0 16px; border: 0; background: #fff; cursor: pointer;
}
.mode-switch button.active[data-v-db416875] { color: #fff; background: #2563eb;
}
.input[data-v-db416875], .textarea[data-v-db416875] { width: 100%; border: 1px solid #d1d5db; border-radius: 8px; background: #fff; font: inherit;
}
.input[data-v-db416875] { height: 38px; padding: 0 10px;
}
.textarea[data-v-db416875] { min-height: 260px; resize: vertical; padding: 10px;
}
.recipient-list[data-v-db416875] { max-height: 430px; margin-top: 10px; overflow: auto; border: 1px solid #e5e7eb;
}
.recipient-row[data-v-db416875] { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 10px; border-bottom: 1px solid #f1f5f9; cursor: pointer;
}
.recipient-row[data-v-db416875]:last-child { border-bottom: 0;
}
.person[data-v-db416875] { display: grid; min-width: 0;
}
.person strong[data-v-db416875] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px;
}
.person small[data-v-db416875], .branch[data-v-db416875] { color: #6b7280; font-size: 11px;
}
.branch[data-v-db416875] { white-space: nowrap;
}
.empty[data-v-db416875], .all-summary[data-v-db416875] { padding: 24px 12px; color: #6b7280; text-align: center; font-size: 13px;
}
.compose-panel[data-v-db416875] { display: grid; align-content: start; gap: 14px;
}
.compose-panel label[data-v-db416875] { display: grid; gap: 7px; color: #374151; font-size: 12px; font-weight: 700;
}
.form-foot[data-v-db416875] { display: flex; align-items: center; justify-content: space-between; color: #6b7280; font-size: 12px;
}
.notice-history[data-v-db416875] { border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; padding: 16px;
}
.notice-list[data-v-db416875] { border: 1px solid #e5e7eb; max-height: 280px; overflow: auto;
}
.notice-row[data-v-db416875] { display: grid; grid-template-columns: minmax(180px, 1.5fr) repeat(4, minmax(84px, .65fr)) minmax(130px, .8fr); width: 100%; gap: 8px; align-items: center; border: 0; border-bottom: 1px solid #eef2f7; background: #fff; color: #374151; cursor: pointer; padding: 10px; text-align: center; font: inherit; font-size: 12px;
}
.notice-row[data-v-db416875]:hover, .notice-row.active[data-v-db416875] { background: #eff6ff;
}
.notice-title[data-v-db416875] { overflow: hidden; text-align: left; text-overflow: ellipsis; white-space: nowrap; font-weight: 700;
}
.receipt-panel[data-v-db416875] { margin-top: 12px; border: 1px solid #dbeafe; background: #f8fbff; padding: 12px;
}
.receipt-title[data-v-db416875] { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; color: #1e3a8a;
}
.receipt-table-wrap[data-v-db416875] { max-height: 260px; overflow: auto; border: 1px solid #dbeafe; background: #fff;
}
.receipt-table-wrap table[data-v-db416875] { width: 100%; min-width: 620px; border-collapse: collapse;
}
.receipt-table-wrap th[data-v-db416875], .receipt-table-wrap td[data-v-db416875] { padding: 9px; border-bottom: 1px solid #eef2f7; text-align: center; white-space: nowrap; font-size: 12px;
}
.receipt-table-wrap th[data-v-db416875] { background: #eff6ff; color: #1e3a8a;
}
@media (max-width: 900px) {
.workspace[data-v-db416875] { grid-template-columns: 1fr;
}
.recipient-panel[data-v-db416875] { border-right: 0; border-bottom: 1px solid #e5e7eb;
}
}
@media (max-width: 640px) {
.page-head[data-v-db416875] { align-items: stretch; flex-direction: column;
}
.workspace[data-v-db416875] { display: block;
}
.notice-row[data-v-db416875] { grid-template-columns: minmax(180px, 1fr) repeat(2, minmax(84px, auto));
}
}

.china-address[data-v-557e5f7a] {
  display: grid;
  grid-template-columns: minmax(0, 160px) minmax(0, 180px) minmax(0, 1fr);
  gap: 8px;
  margin-top: 8px;
}
.china-address .input[data-v-557e5f7a] {
  margin-top: 0;
  height: 40px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box;
  font: inherit;
  width: 100%;
}
@media (max-width: 720px) {
.china-address[data-v-557e5f7a] {
    grid-template-columns: 1fr;
}
}

.hr-page[data-v-0c0c8ca2] {
  display: grid;
  gap: 12px;
}
.page-head[data-v-0c0c8ca2],
.panel[data-v-0c0c8ca2],
.notice[data-v-0c0c8ca2] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-0c0c8ca2] {
  color: #2563eb;
  font-size: 13px;
  text-decoration: none;
}
.head-row[data-v-0c0c8ca2] {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: 8px;
}
h1[data-v-0c0c8ca2] {
  font-size: 22px;
}
.page-head p[data-v-0c0c8ca2],
.muted[data-v-0c0c8ca2] {
  color: #6b7280;
  font-size: 12px;
}
.head-actions[data-v-0c0c8ca2],
.ops-cell[data-v-0c0c8ca2],
.modal-actions[data-v-0c0c8ca2] {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  white-space: nowrap;
}
.notice[data-v-0c0c8ca2] {
  border-color: rgba(16, 185, 129, .35);
  background: rgba(16, 185, 129, .08);
}
.btn-danger[data-v-0c0c8ca2] {
  background: #dc2626;
  border-color: #dc2626;
  color: #fff;
}
.btn-danger-soft[data-v-0c0c8ca2] {
  border-color: #fecaca;
  color: #b91c1c;
}
.btn-danger-soft[data-v-0c0c8ca2]:hover {
  background: #fef2f2;
}
.form-panel[data-v-0c0c8ca2] {
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}
.worktime-panel[data-v-0c0c8ca2] {
  grid-template-columns: repeat(3, minmax(160px, 220px)) auto;
  justify-content: start;
}
label[data-v-0c0c8ca2] {
  display: grid;
  gap: 4px;
  font-size: 12px;
  color: #6b7280;
}
input[data-v-0c0c8ca2],
select[data-v-0c0c8ca2],
textarea[data-v-0c0c8ca2] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  padding: 8px 10px;
}
input[data-v-0c0c8ca2]:disabled {
  background: #f9fafb;
  color: #6b7280;
}
.table-panel[data-v-0c0c8ca2] {
  max-height: calc(100vh - 260px);
  overflow: auto;
  padding-bottom: 8px;
}
.org-tree-panel[data-v-0c0c8ca2] {
  display: grid;
  gap: 10px;
}
.review-panel[data-v-0c0c8ca2] {
  display: grid;
  gap: 12px;
}
.review-head[data-v-0c0c8ca2] {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.review-head h2[data-v-0c0c8ca2] {
  margin: 0;
  font-size: 18px;
}
.review-head p[data-v-0c0c8ca2] {
  margin: 6px 0 0;
}
.review-count[data-v-0c0c8ca2] {
  flex: none;
  border: 1px solid #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 800;
}
.review-card-grid[data-v-0c0c8ca2] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 10px;
}
.review-card[data-v-0c0c8ca2] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 12px;
  background: #fff;
  display: grid;
  gap: 10px;
}
.review-card-title[data-v-0c0c8ca2] {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.review-card-title strong[data-v-0c0c8ca2] {
  font-size: 16px;
  color: #111827;
}
.review-card-title span[data-v-0c0c8ca2] {
  color: #6b7280;
  font-size: 12px;
}
.review-card-meta[data-v-0c0c8ca2] {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 8px;
  color: #374151;
  font-size: 12px;
  max-height: 330px;
  overflow: auto;
  padding-right: 4px;
}
.review-field[data-v-0c0c8ca2] {
  border: 1px solid #eef2f7;
  border-radius: 8px;
  background: #f9fafb;
  padding: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
}
.review-field-label[data-v-0c0c8ca2] {
  color: #6b7280;
}
.review-field strong[data-v-0c0c8ca2] {
  color: #111827;
  font-weight: 700;
  white-space: normal;
  overflow-wrap: anywhere;
}
.review-card-actions[data-v-0c0c8ca2] {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}
.status-remind-btn[data-v-0c0c8ca2] {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #c2410c;
  border-radius: 999px;
  padding: 4px 10px;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
}
.status-remind-btn[data-v-0c0c8ca2]:hover {
  border-color: #fb923c;
  background: #ffedd5;
}
.tree-title[data-v-0c0c8ca2] {
  color: #111827;
  font-size: 14px;
  font-weight: 700;
}
.org-tree[data-v-0c0c8ca2] {
  display: grid;
  gap: 6px;
}
.tree-row[data-v-0c0c8ca2] {
  align-items: center;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: flex;
  gap: 8px;
  min-height: 36px;
  padding-bottom: 7px;
  padding-right: 10px;
  padding-top: 7px;
}
.tree-branch[data-v-0c0c8ca2] {
  border-bottom: 1px solid #9ca3af;
  border-left: 1px solid #9ca3af;
  display: inline-block;
  height: 14px;
  width: 14px;
}
.tree-type[data-v-0c0c8ca2] {
  background: #eef2ff;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  color: #3730a3;
  flex: 0 0 auto;
  font-size: 12px;
  padding: 2px 8px;
}
.tree-code[data-v-0c0c8ca2] {
  color: #6b7280;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12px;
  margin-left: auto;
}
table[data-v-0c0c8ca2] {
  border-collapse: collapse;
  min-width: 960px;
  width: 100%;
}
th[data-v-0c0c8ca2],
td[data-v-0c0c8ca2] {
  border-bottom: 1px solid #e5e7eb;
  font-size: 13px;
  padding: 9px 10px;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
}
th[data-v-0c0c8ca2] {
  background: #f9fafb;
  color: #374151;
  font-weight: 700;
}
.empty[data-v-0c0c8ca2] {
  color: #6b7280;
  padding: 18px 12px;
  text-align: center;
}
.modal-mask[data-v-0c0c8ca2] {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, .35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 70;
}
.modal[data-v-0c0c8ca2] {
  background: #fff;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 14px;
  width: min(760px, 94vw);
}
.profile-edit-modal[data-v-0c0c8ca2] {
  max-height: min(82vh, 760px);
  overflow: auto;
  width: min(1120px, 94vw);
}
.small-modal[data-v-0c0c8ca2] {
  width: min(460px, 94vw);
}
.delete-warning[data-v-0c0c8ca2] {
  color: #111827;
  font-size: 14px;
}
.modal h2[data-v-0c0c8ca2] {
  font-size: 18px;
}
.edit-grid[data-v-0c0c8ca2] {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 10px;
}
.profile-edit-grid[data-v-0c0c8ca2] {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 10px;
}
.profile-edit-grid .wide[data-v-0c0c8ca2] {
  grid-column: 1 / -1;
}
.profile-photo-editor[data-v-0c0c8ca2] {
  display: flex;
  align-items: center;
  gap: 10px;
}
.profile-photo-preview[data-v-0c0c8ca2] {
  width: 72px;
  height: 72px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  overflow: hidden;
  background: #f9fafb;
  display: flex;
  align-items: center;
  justify-content: center;
}
.profile-photo-preview img[data-v-0c0c8ca2] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 900px) {
.head-row[data-v-0c0c8ca2] {
    align-items: flex-start;
    flex-direction: column;
}
.form-panel[data-v-0c0c8ca2],
  .worktime-panel[data-v-0c0c8ca2],
  .edit-grid[data-v-0c0c8ca2],
  .profile-edit-grid[data-v-0c0c8ca2],
  .review-card-meta[data-v-0c0c8ca2] {
    grid-template-columns: 1fr;
}
}

.hr-center-page[data-v-30b2af64]{display:grid;gap:12px}.sr-only[data-v-30b2af64]{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.center-head[data-v-30b2af64],.summary-band[data-v-30b2af64],.panel[data-v-30b2af64],.feedback[data-v-30b2af64],.tab-bar[data-v-30b2af64]{background:#fff;border:1px solid #e5e7eb;border-radius:8px}.center-head[data-v-30b2af64]{align-items:end;display:flex;gap:16px;justify-content:space-between;padding:14px}.center-head h1[data-v-30b2af64]{font-size:22px;margin-top:6px}.back-link[data-v-30b2af64]{color:#2563eb;font-size:12px;text-decoration:none}.filters[data-v-30b2af64],.adjust-row[data-v-30b2af64],.rule-footer[data-v-30b2af64]{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.filters select[data-v-30b2af64]{min-width:220px}select[data-v-30b2af64],input[data-v-30b2af64]{border:1px solid #d1d5db;border-radius:8px;min-height:38px;padding:7px 10px}.feedback[data-v-30b2af64]{padding:11px 14px}.feedback.success[data-v-30b2af64]{border-color:#a7f3d0;color:#047857}.feedback.error[data-v-30b2af64]{border-color:#fecaca;color:#b91c1c}.summary-band[data-v-30b2af64]{display:grid;grid-template-columns:1.4fr repeat(4,1fr);overflow:hidden}.primary-total[data-v-30b2af64],.snapshot[data-v-30b2af64]{display:grid;gap:5px;padding:14px}.snapshot[data-v-30b2af64]{border-left:1px solid #e5e7eb}.primary-total[data-v-30b2af64]{border-left:4px solid #2563eb}.primary-total span[data-v-30b2af64],.primary-total small[data-v-30b2af64],.snapshot span[data-v-30b2af64],.section-head p[data-v-30b2af64]{color:#667085;font-size:12px}.primary-total strong[data-v-30b2af64]{font-size:26px}.snapshot strong[data-v-30b2af64]{font-size:17px}.tab-bar[data-v-30b2af64]{display:flex;gap:3px;padding:5px}.tab-bar button[data-v-30b2af64]{background:transparent;border:0;border-radius:6px;color:#475467;padding:8px 14px}.tab-bar button.active[data-v-30b2af64]{background:#eef4ff;color:#1d4ed8;font-weight:800}.panel[data-v-30b2af64]{min-width:0;padding:14px}.section-head[data-v-30b2af64]{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.section-head h2[data-v-30b2af64]{font-size:17px}.metric-grid[data-v-30b2af64]{display:grid;gap:8px;grid-template-columns:repeat(6,1fr);margin-bottom:16px}.metric-grid div[data-v-30b2af64]{background:#f8fafc;border:1px solid #eef2f7;border-radius:6px;display:grid;gap:4px;padding:10px;text-align:center}.metric-grid span[data-v-30b2af64]{color:#667085;font-size:12px}.metric-grid strong[data-v-30b2af64]{font-size:20px}.formula-list[data-v-30b2af64]{display:grid;gap:8px;margin-bottom:14px}.formula-list>div[data-v-30b2af64]{border-left:3px solid #16a34a;display:grid;gap:3px;padding:7px 10px}.formula-list span[data-v-30b2af64],.formula-list small[data-v-30b2af64]{color:#667085;font-size:12px}.adjust-row[data-v-30b2af64]{margin-bottom:10px}.adjust-row input[data-v-30b2af64]:nth-child(2){flex:1;min-width:260px}.table-wrap[data-v-30b2af64]{border:1px solid #eef0f5;border-radius:8px;max-width:100%;overflow:auto}table[data-v-30b2af64]{border-collapse:collapse;min-width:820px;width:100%}th[data-v-30b2af64],td[data-v-30b2af64]{border-bottom:1px solid #eef2f7;padding:9px;text-align:center;white-space:nowrap}th[data-v-30b2af64]{background:#f8fafc;color:#475467;font-size:12px}td input[data-v-30b2af64],td select[data-v-30b2af64]{max-width:180px;min-height:34px;width:100%}.empty[data-v-30b2af64]{color:#667085;padding:24px}.status-chip[data-v-30b2af64]{background:#eef6ff;border-radius:999px;color:#1d4ed8;padding:3px 8px}.rule-meta[data-v-30b2af64]{display:grid;gap:10px;grid-template-columns:1fr 1fr 2fr;margin-bottom:12px}.rule-meta label[data-v-30b2af64]{display:grid;gap:5px}.rule-meta span[data-v-30b2af64]{font-size:12px;font-weight:700}.rule-footer[data-v-30b2af64]{justify-content:space-between;margin-top:12px}.version-list[data-v-30b2af64]{display:flex;flex-wrap:wrap;gap:6px}.version-list span[data-v-30b2af64]{background:#f2f4f7;border-radius:999px;font-size:12px;padding:4px 8px}.icon-btn[data-v-30b2af64]{align-items:center;background:#fff;border:1px solid #d0d5dd;border-radius:6px;display:inline-flex;height:34px;justify-content:center;width:34px}.btn[data-v-30b2af64]{align-items:center;display:inline-flex;gap:6px}@media(max-width:1050px){.center-head[data-v-30b2af64]{align-items:flex-start;flex-direction:column}.summary-band[data-v-30b2af64]{grid-template-columns:repeat(2,1fr)}.snapshot[data-v-30b2af64]{border-top:1px solid #e5e7eb}.metric-grid[data-v-30b2af64]{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.summary-band[data-v-30b2af64],.metric-grid[data-v-30b2af64],.rule-meta[data-v-30b2af64]{grid-template-columns:1fr}.filters[data-v-30b2af64]>*{width:100%}.tab-bar[data-v-30b2af64]{overflow:auto}.tab-bar button[data-v-30b2af64]{white-space:nowrap}}

.group-editor[data-v-92690275],.child-list[data-v-92690275]{display:grid;gap:12px}.group-toolbar[data-v-92690275],.group-head[data-v-92690275],.child-toolbar[data-v-92690275],.child-head[data-v-92690275],.range-head[data-v-92690275],.legacy-note[data-v-92690275]{align-items:center;display:flex;gap:12px;justify-content:space-between}.group-toolbar>strong[data-v-92690275],.group-head span[data-v-92690275]{color:#047857;font-size:12px}.group-toolbar>strong.invalid[data-v-92690275],.group-head span.invalid[data-v-92690275],.inline-error[data-v-92690275]{color:#b91c1c}.group-panel[data-v-92690275]{border:1px solid #cbd5e1;border-radius:8px;padding:12px}.group-head[data-v-92690275]{border-bottom:1px solid #e2e8f0;padding-bottom:10px}.group-head>div[data-v-92690275]{align-items:center;display:flex;gap:12px;min-width:0}.group-head>div>strong[data-v-92690275]{font-size:16px}.group-fields[data-v-92690275]{display:grid;gap:10px;grid-template-columns:minmax(220px,2fr) minmax(160px,1fr);margin:12px 0}.child-toolbar[data-v-92690275]{margin:4px 0 8px}.child-editor[data-v-92690275]{border:1px solid #dbe3ee;border-radius:6px;padding:12px}.child-head[data-v-92690275]{border-bottom:1px solid #eef2f7;margin-bottom:10px;padding-bottom:8px}.child-main-grid[data-v-92690275]{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.description-grid[data-v-92690275]{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:10px 0}.formula-block[data-v-92690275]{background:#f8fafc;border-left:3px solid #0284c7;padding:10px}.formula-grid[data-v-92690275]{align-items:start;display:grid;gap:10px;grid-template-columns:minmax(150px,1fr) minmax(180px,1.2fr) minmax(130px,.8fr) minmax(180px,1.2fr) minmax(120px,.7fr)}.formula-grid.direct[data-v-92690275]{grid-template-columns:minmax(150px,1fr) minmax(220px,1.5fr) minmax(150px,1fr) minmax(140px,.8fr)}label[data-v-92690275]{align-content:start;display:grid;gap:4px;grid-template-rows:18px minmax(40px,auto) auto}label>span[data-v-92690275],.formula-preview span[data-v-92690275],.range-head small[data-v-92690275]{color:#64748b;font-size:12px}label>small[data-v-92690275]{color:#64748b;font-size:11px;line-height:1.35;min-height:30px}input[data-v-92690275],select[data-v-92690275],textarea[data-v-92690275]{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font:inherit;min-height:40px;padding:7px 9px;width:100%}textarea[data-v-92690275]{resize:vertical}.legacy-note[data-v-92690275]{border:1px solid #f2d28b;background:#fffaf0;color:#7c5b12;margin-top:10px;padding:8px 10px}.legacy-note span[data-v-92690275]{font-size:12px}.target-field[data-v-92690275]{margin-top:10px;max-width:260px}.formula-preview[data-v-92690275]{display:grid;gap:3px;margin-top:10px}.formula-preview strong[data-v-92690275]{color:#075985}.range-head[data-v-92690275]{margin:10px 0 6px}.range-head>div[data-v-92690275]{display:grid}.range-table[data-v-92690275]{border:1px solid #e2e8f0}.range-row[data-v-92690275]{align-items:center;display:grid;gap:8px;grid-template-columns:110px 55px 110px 55px 100px 38px;padding:7px}.range-row+.range-row[data-v-92690275]{border-top:1px solid #eef2f7}.range-row input[type=checkbox][data-v-92690275]{height:18px;min-height:18px}.range-title[data-v-92690275]{background:#f8fafc;color:#475569;font-size:12px;font-weight:700}.icon-text-btn[data-v-92690275],.small-btn[data-v-92690275],.icon-btn[data-v-92690275]{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;cursor:pointer;display:inline-flex;font:inherit;gap:6px;justify-content:center}.icon-text-btn[data-v-92690275]{min-height:34px;padding:6px 10px}.small-btn[data-v-92690275]{font-size:12px;min-height:32px;padding:5px 9px}.icon-btn[data-v-92690275]{height:36px;width:36px}.icon-btn.danger[data-v-92690275]{border-color:#fecaca;color:#b91c1c}.icon-btn[data-v-92690275]:disabled{cursor:not-allowed;opacity:.45}@media(max-width:1100px){.formula-grid[data-v-92690275],.formula-grid.direct[data-v-92690275],.child-main-grid[data-v-92690275]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.group-toolbar[data-v-92690275],.group-head[data-v-92690275],.legacy-note[data-v-92690275]{align-items:flex-start;flex-direction:column}.group-head>div[data-v-92690275]{align-items:flex-start;display:grid;gap:4px}.group-fields[data-v-92690275],.description-grid[data-v-92690275],.formula-grid[data-v-92690275],.formula-grid.direct[data-v-92690275],.child-main-grid[data-v-92690275]{grid-template-columns:1fr}.range-table[data-v-92690275]{overflow-x:auto}.range-row[data-v-92690275]{min-width:520px}}

.performance-page[data-v-db01440f]{display:grid;gap:12px}.page-head[data-v-db01440f],.panel[data-v-db01440f],.feedback[data-v-db01440f]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px}.page-head[data-v-db01440f],.section-head[data-v-db01440f],.toolbar[data-v-db01440f],.scorer-head[data-v-db01440f],.indicator-head[data-v-db01440f],.range-head[data-v-db01440f]{align-items:center;display:flex;gap:12px;justify-content:space-between}.page-head h1[data-v-db01440f]{font-size:23px;margin:2px 0}.page-head p[data-v-db01440f],.section-head p[data-v-db01440f]{color:#64748b;font-size:12px}.back-link[data-v-db01440f],.eyebrow[data-v-db01440f]{color:#2563eb;font-size:12px;text-decoration:none}.eyebrow[data-v-db01440f]{font-weight:800;margin-top:5px}.feedback.success[data-v-db01440f]{border-color:#a7f3d0;color:#047857}.feedback.error[data-v-db01440f],.inline-error[data-v-db01440f]{color:#b91c1c}.tabs[data-v-db01440f]{border-bottom:1px solid #cbd5e1;display:flex;gap:4px;overflow-x:auto}.tabs button[data-v-db01440f]{background:transparent;border:0;border-bottom:3px solid transparent;color:#64748b;cursor:pointer;font-weight:700;padding:10px 14px;white-space:nowrap}.tabs button.active[data-v-db01440f]{border-bottom-color:#2563eb;color:#1d4ed8}.salary-rule[data-v-db01440f]{align-items:center;border-left:4px solid #0f766e;display:grid;grid-template-columns:170px minmax(260px,1fr) auto}.salary-rule span[data-v-db01440f]{color:#0f766e;font-size:18px;font-weight:800}.salary-rule small[data-v-db01440f]{color:#64748b}.section-head h2[data-v-db01440f]{font-size:17px}.section-head select[data-v-db01440f]{max-width:360px}.subhead[data-v-db01440f]{border-top:1px solid #e5e7eb;margin-top:14px;padding-top:14px}.subhead h3[data-v-db01440f]{font-size:14px}.form-grid[data-v-db01440f]{display:grid;gap:9px;margin:12px 0}.form-grid.two[data-v-db01440f]{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three[data-v-db01440f]{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four[data-v-db01440f]{grid-template-columns:repeat(4,minmax(150px,1fr))}.formula-grid[data-v-db01440f]{grid-template-columns:repeat(6,minmax(120px,1fr))}.compact[data-v-db01440f]{margin:0}label[data-v-db01440f]{display:grid;gap:4px}label span[data-v-db01440f],.detail-grid span[data-v-db01440f]{color:#64748b;font-size:12px}input[data-v-db01440f],select[data-v-db01440f],textarea[data-v-db01440f]{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font:inherit;min-height:38px;padding:7px 9px;width:100%}textarea[data-v-db01440f]{resize:vertical}.indicator-list[data-v-db01440f],.subject-list[data-v-db01440f],.scorer-list[data-v-db01440f]{display:grid;gap:10px}.indicator-editor[data-v-db01440f],.subject-editor[data-v-db01440f]{border:1px solid #dbe3ee;border-radius:6px;padding:12px}.indicator-head[data-v-db01440f]{border-bottom:1px solid #eef2f7;margin-bottom:10px;padding-bottom:8px}.formula-block[data-v-db01440f]{background:#f8fafc;border-left:3px solid #0284c7;padding:10px}.formula-preview[data-v-db01440f]{display:grid;gap:3px}.formula-preview span[data-v-db01440f],.formula-preview small[data-v-db01440f],.range-head small[data-v-db01440f]{color:#64748b;font-size:12px}.formula-preview strong[data-v-db01440f]{color:#075985}.range-head[data-v-db01440f]{margin:10px 0 6px}.range-head>div[data-v-db01440f]{display:grid}.range-table[data-v-db01440f]{border:1px solid #e2e8f0}.range-row[data-v-db01440f]{align-items:center;display:grid;gap:8px;grid-template-columns:110px 55px 110px 55px 100px 38px;padding:7px}.range-row+.range-row[data-v-db01440f]{border-top:1px solid #eef2f7}.range-row input[type=checkbox][data-v-db01440f]{height:18px;min-height:18px}.range-title[data-v-db01440f]{background:#f8fafc;color:#475569;font-size:12px;font-weight:700}.grade-grid[data-v-db01440f]{display:grid;gap:8px}.grade-row[data-v-db01440f]{align-items:end;display:grid;gap:8px;grid-template-columns:140px 140px 38px;max-width:360px}.member-picker[data-v-db01440f]{border:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;padding:10px}.member-picker>span[data-v-db01440f]{font-size:12px;font-weight:700;width:100%}.member-option[data-v-db01440f]{align-items:center;border:1px solid #e2e8f0;display:flex;gap:6px;padding:6px 8px}.member-option input[data-v-db01440f]{height:16px;min-height:16px;width:16px}.scorer-head[data-v-db01440f]{margin:10px 0 6px}.scorer-head strong[data-v-db01440f]{color:#047857;font-size:12px}.scorer-head strong.invalid[data-v-db01440f]{color:#b91c1c}.scorer-row[data-v-db01440f]{align-items:end;display:grid;gap:8px;grid-template-columns:minmax(240px,1fr) 120px 38px;max-width:650px}.toolbar[data-v-db01440f]{margin-top:12px}.toolbar.end[data-v-db01440f]{justify-content:flex-end}.primary-btn[data-v-db01440f],.icon-text-btn[data-v-db01440f],.small-btn[data-v-db01440f],.icon-btn[data-v-db01440f]{align-items:center;border-radius:6px;cursor:pointer;display:inline-flex;font:inherit;gap:6px;justify-content:center}.primary-btn[data-v-db01440f]{background:#1d4ed8;border:1px solid #1d4ed8;color:#fff;font-weight:700;min-height:38px;padding:7px 12px}.icon-text-btn[data-v-db01440f],.small-btn[data-v-db01440f]{background:#fff;border:1px solid #cbd5e1;color:#334155;min-height:34px;padding:6px 10px}.small-btn[data-v-db01440f]{font-size:12px}.icon-btn[data-v-db01440f]{background:#fff;border:1px solid #cbd5e1;height:36px;width:36px}.icon-btn.danger[data-v-db01440f]{border-color:#fecaca;color:#b91c1c}.danger-text[data-v-db01440f]{color:#b91c1c}.table-wrap[data-v-db01440f]{margin-top:10px;overflow:auto}table[data-v-db01440f]{border-collapse:collapse;min-width:760px;width:100%}th[data-v-db01440f],td[data-v-db01440f]{border-bottom:1px solid #eef2f7;padding:9px;text-align:center;white-space:nowrap}th[data-v-db01440f]{background:#f8fafc;color:#475569;font-size:12px}.empty[data-v-db01440f]{color:#64748b}.status-tag[data-v-db01440f]{background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700;padding:4px 8px}.detail-grid[data-v-db01440f]{display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:12px 0}.detail-grid>div[data-v-db01440f]{border-left:3px solid #94a3b8;padding:6px 10px}.detail-grid strong[data-v-db01440f]{display:block;margin-top:3px}.score-editor[data-v-db01440f],.review-editor[data-v-db01440f]{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:8px}.score-row[data-v-db01440f]{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(260px,1fr) 120px minmax(220px,1fr);margin-bottom:8px}.score-row div[data-v-db01440f]{display:grid;gap:3px}.score-row span[data-v-db01440f],.score-row small[data-v-db01440f]{color:#64748b;font-size:12px}.grouped-result-detail[data-v-db01440f]{border-top:1px solid #e5e7eb;margin-top:14px;padding-top:10px}.grouped-result-detail h3[data-v-db01440f]{font-size:14px}.group-result+.group-result[data-v-db01440f]{border-top:1px solid #cbd5e1;margin-top:14px;padding-top:14px}.group-result-summary[data-v-db01440f]{align-items:center;background:#f8fafc;border-left:4px solid #0f766e;display:grid;gap:8px;grid-template-columns:minmax(180px,1fr) repeat(3,minmax(120px,auto));padding:10px 12px}.group-result-summary span[data-v-db01440f]{color:#475569;font-size:12px;text-align:center}.group-result-summary b[data-v-db01440f]{color:#0f172a;display:block;font-size:15px;margin-top:2px}.compact-table[data-v-db01440f]{margin-top:0}.grouped-result-table[data-v-db01440f]{min-width:1380px}.grouped-result-table th[data-v-db01440f],.grouped-result-table td[data-v-db01440f]{text-align:center}.result-note[data-v-db01440f]{margin:0 auto;max-width:260px;text-align:left;white-space:normal}.result-note summary[data-v-db01440f]{cursor:pointer;max-width:260px}.result-note summary .truncate[data-v-db01440f]{display:inline-block;max-width:220px;vertical-align:middle;white-space:nowrap}.result-note-detail[data-v-db01440f]{background:#f8fafc;border-left:3px solid #0f766e;color:#334155;margin-top:6px;max-width:320px;padding:7px 8px;white-space:normal;word-break:break-word}.metric-panel[data-v-db01440f]{min-height:320px}.metric-definition[data-v-db01440f]{background:#f8fafc;display:grid;gap:4px;margin:8px 0;padding:10px}.metric-definition span[data-v-db01440f]{color:#64748b;font-size:12px}.metric-result[data-v-db01440f]{border-left:4px solid #7c3aed;display:grid;margin-top:16px;padding:10px 12px}.metric-result span[data-v-db01440f],.metric-result small[data-v-db01440f]{color:#64748b;font-size:12px}.metric-result strong[data-v-db01440f]{font-size:30px}.truncate[data-v-db01440f]{max-width:260px;overflow:hidden;text-overflow:ellipsis}.primary-btn[data-v-db01440f]:disabled,.icon-text-btn[data-v-db01440f]:disabled{cursor:not-allowed;opacity:.55}@media(max-width:1180px){.formula-grid[data-v-db01440f]{grid-template-columns:repeat(3,1fr)}.form-grid.four[data-v-db01440f],.detail-grid[data-v-db01440f]{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.page-head[data-v-db01440f],.section-head[data-v-db01440f],.salary-rule[data-v-db01440f]{align-items:flex-start;display:flex;flex-direction:column}.form-grid.two[data-v-db01440f],.form-grid.three[data-v-db01440f],.form-grid.four[data-v-db01440f],.formula-grid[data-v-db01440f],.detail-grid[data-v-db01440f],.grade-row[data-v-db01440f],.scorer-row[data-v-db01440f],.score-row[data-v-db01440f]{grid-template-columns:1fr}.group-result-summary[data-v-db01440f]{grid-template-columns:repeat(2,minmax(0,1fr))}.group-result-summary strong[data-v-db01440f]{grid-column:1/-1}.range-table[data-v-db01440f]{overflow-x:auto}.range-row[data-v-db01440f]{min-width:520px}.toolbar[data-v-db01440f]{align-items:stretch;flex-direction:column}.primary-btn[data-v-db01440f]{width:100%}.icon-text-btn[data-v-db01440f]{max-width:100%;width:auto}}

.training-manage[data-v-e390be2c] { display:grid; gap:14px;
}.page-head[data-v-e390be2c],.section-head[data-v-e390be2c] { align-items:flex-start; display:flex; gap:16px; justify-content:space-between;
}.page-head h1[data-v-e390be2c] { font-size:25px;
}.page-head p[data-v-e390be2c],.section-head p[data-v-e390be2c] { color:#667085; margin-top:5px;
}.eyebrow[data-v-e390be2c] { color:#b17a12; font-size:12px; font-weight:700;
}.panel[data-v-e390be2c] { background:#fff; border:1px solid #e0e5ee; border-radius:7px; padding:16px;
}.panel h2[data-v-e390be2c] { font-size:17px;
}.form-grid[data-v-e390be2c] { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); margin:16px 0;
}.publish-field[data-v-e390be2c] { display:grid; gap:6px; min-width:0;
}.publish-field>span[data-v-e390be2c] { color:#536179; font-size:13px; font-weight:600;
}.publish-field>input[data-v-e390be2c],.file-picker[data-v-e390be2c] { box-sizing:border-box; height:48px; width:100%;
}.publish-field>input[data-v-e390be2c] { border:1px solid #cfd7e4; border-radius:5px; padding:0 12px;
}.file-picker[data-v-e390be2c] { align-items:center; border:1px solid #cfd7e4; border-radius:5px; display:flex; gap:10px; overflow:hidden; padding:0 10px; position:relative;
}.file-picker input[data-v-e390be2c] { cursor:pointer; inset:0; opacity:0; position:absolute;
}.file-picker b[data-v-e390be2c] { background:#f4f6f9; border:1px solid #d5dce7; border-radius:4px; color:#2c3e59; font-size:13px; line-height:28px; padding:0 9px;
}.file-picker em[data-v-e390be2c] { color:#667085; font-size:13px; font-style:normal; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}.primary-btn[data-v-e390be2c],.icon-text-btn[data-v-e390be2c] { align-items:center; background:#194b96; border:1px solid #194b96; border-radius:5px; color:#fff; cursor:pointer; display:inline-flex; gap:7px; min-height:36px; padding:0 12px;
}.primary-btn[data-v-e390be2c]:disabled,.icon-text-btn[data-v-e390be2c]:disabled { opacity:.55;
}.icon-text-btn[data-v-e390be2c] { background:#fff; border-color:#d3dbe8; color:#263650;
}.error[data-v-e390be2c] { background:#fff4f3; border:1px solid #f1c5c1; color:#aa3028; padding:11px 12px;
}.table-wrap[data-v-e390be2c] { overflow:auto;
}table[data-v-e390be2c] { border-collapse:collapse; min-width:780px; width:100%;
}th[data-v-e390be2c],td[data-v-e390be2c] { border-bottom:1px solid #e6eaf0; padding:11px 10px; text-align:center;
}th[data-v-e390be2c] { background:#f6f8fb; color:#4e5d74; font-size:13px;
}td[data-v-e390be2c] { color:#293750; font-size:13px;
}.failure[data-v-e390be2c] { color:#a33b31; max-width:230px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}@media(max-width:700px){.page-head[data-v-e390be2c],.section-head[data-v-e390be2c]{flex-direction:column}.form-grid[data-v-e390be2c]{grid-template-columns:1fr}}

.payroll-page[data-v-b85daf80]{display:grid;gap:12px}.page-head[data-v-b85daf80],.panel[data-v-b85daf80],.summary-strip[data-v-b85daf80],.feedback[data-v-b85daf80]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px}.page-head[data-v-b85daf80],.panel-title[data-v-b85daf80],.modal-actions[data-v-b85daf80]{align-items:center;display:flex;gap:16px;justify-content:space-between}.back-link[data-v-b85daf80],.eyebrow[data-v-b85daf80]{color:#2563eb;font-size:12px;text-decoration:none}.eyebrow[data-v-b85daf80]{font-weight:800;margin-top:6px}.page-head h1[data-v-b85daf80]{font-size:23px}.page-head p[data-v-b85daf80],.panel-title p[data-v-b85daf80]{color:#6b7280;font-size:12px}.feedback.success[data-v-b85daf80]{border-color:#a7f3d0;color:#047857}.feedback.error[data-v-b85daf80]{border-color:#fecaca;color:#b91c1c}.summary-strip[data-v-b85daf80]{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.summary-strip article[data-v-b85daf80]{border-left:4px solid #94a3b8;padding:4px 12px}.summary-strip span[data-v-b85daf80]{color:#6b7280;display:block;font-size:12px}.summary-strip strong[data-v-b85daf80]{font-size:22px}.summary-strip .money-summary[data-v-b85daf80]{border-left-color:#16a34a}.tabs[data-v-b85daf80]{border-bottom:1px solid #d1d5db;display:flex;gap:4px}.tabs button[data-v-b85daf80]{background:transparent;border:0;border-bottom:3px solid transparent;color:#6b7280;cursor:pointer;font-weight:700;padding:10px 14px}.tabs button.active[data-v-b85daf80]{border-bottom-color:#2563eb;color:#1d4ed8}.profile-form[data-v-b85daf80],.plan-form[data-v-b85daf80]{align-items:end;display:grid;gap:9px;grid-template-columns:repeat(4,minmax(150px,1fr));margin-bottom:14px}.profile-form label[data-v-b85daf80],.plan-form label[data-v-b85daf80],.modal label[data-v-b85daf80]{display:grid;gap:4px}.profile-form span[data-v-b85daf80],.plan-form span[data-v-b85daf80],.modal label span[data-v-b85daf80]{color:#6b7280;font-size:12px}.profile-form .remark[data-v-b85daf80]{grid-column:span 2}.tier-editor[data-v-b85daf80]{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:8px;margin:0 0 12px;padding:10px}.tier-head[data-v-b85daf80]{align-items:center;display:flex;justify-content:space-between}.tier-row[data-v-b85daf80]{align-items:center;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr)) 34px}select[data-v-b85daf80],input[data-v-b85daf80],textarea[data-v-b85daf80]{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font:inherit;min-height:38px;padding:7px 10px;width:100%}.table-wrap[data-v-b85daf80]{overflow:auto}table[data-v-b85daf80]{border-collapse:collapse;min-width:940px;width:100%}.commission-table[data-v-b85daf80]{min-width:1580px}th[data-v-b85daf80],td[data-v-b85daf80]{border-bottom:1px solid #eef2f7;padding:9px;text-align:center;white-space:nowrap}th[data-v-b85daf80]{background:#f8fafc;font-size:12px}.truncate[data-v-b85daf80]{max-width:220px;overflow:hidden;text-overflow:ellipsis}.empty[data-v-b85daf80]{color:#6b7280}.status-chip[data-v-b85daf80]{background:#ecfdf5;border-radius:999px;color:#047857;padding:3px 8px}.icon-btn[data-v-b85daf80]{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.modal-mask[data-v-b85daf80]{align-items:center;background:rgba(15,23,42,.44);display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal[data-v-b85daf80]{background:#fff;border-radius:8px;display:grid;gap:12px;max-width:440px;padding:18px;width:calc(100% - 32px)}.modal h2[data-v-b85daf80]{font-size:18px}.modal p[data-v-b85daf80]{color:#6b7280;font-size:12px}.modal-actions[data-v-b85daf80]{justify-content:flex-end}@media(max-width:900px){.summary-strip[data-v-b85daf80]{grid-template-columns:1fr}.profile-form[data-v-b85daf80],.plan-form[data-v-b85daf80]{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.page-head[data-v-b85daf80]{align-items:flex-start;flex-direction:column}.profile-form[data-v-b85daf80],.plan-form[data-v-b85daf80],.tier-row[data-v-b85daf80]{grid-template-columns:1fr}.profile-form .remark[data-v-b85daf80]{grid-column:auto}}

.training-player[data-v-f015c501] { background:#111827; color:#edf3ff; min-height:min(68vh, 720px); overflow:hidden; position:relative;
}
.training-thumbnails[data-v-f015c501] { background:#0a1020; bottom:0; box-sizing:border-box; box-shadow:12px 0 28px rgba(0,0,0,.26); display:flex; flex-direction:column; gap:10px; left:0; overflow-x:hidden; overflow-y:auto; padding:58px 10px 72px; position:absolute; scrollbar-color:#a88842 #111a2c; scrollbar-gutter:stable; scrollbar-width:thin; top:0; width:154px; z-index:4;
}
.training-thumbnails[data-v-f015c501]::-webkit-scrollbar { width:8px;
}
.training-thumbnails[data-v-f015c501]::-webkit-scrollbar-thumb { background:#a88842; border:2px solid #111a2c; border-radius:8px;
}
.training-thumbnails[data-v-f015c501]::-webkit-scrollbar-track { background:#111a2c;
}
.thumbnail-button[data-v-f015c501] { aspect-ratio:16/9; background:#26334b; border:1px solid #51607a; border-radius:4px; color:#dce7ff; cursor:pointer; flex:0 0 74px; height:74px; min-height:74px; overflow:hidden; padding:0; position:relative; width:100%;
}
.thumbnail-preview[data-v-f015c501] { display:block; height:100%; object-fit:cover; opacity:.8; width:100%;
}
.thumbnail-page[data-v-f015c501] { align-items:center; background:rgba(10,16,32,.78); border-radius:3px; bottom:4px; display:flex; font-size:11px; font-weight:700; height:18px; justify-content:center; position:absolute; right:4px; width:18px;
}
.thumbnail-button.active[data-v-f015c501] { border-color:#e0b34b; box-shadow:0 0 0 1px #e0b34b; color:#ffeab0;
}
.training-stage[data-v-f015c501] { align-items:center; display:flex; justify-content:center; min-height:min(68vh, 720px); padding:24px 76px 64px;
}
.training-slide[data-v-f015c501] { background:#1d293f; box-shadow:0 18px 42px rgba(0,0,0,.32); max-height:calc(min(68vh, 720px) - 88px); max-width:100%; object-fit:contain; width:auto;
}
.training-controls[data-v-f015c501] { align-items:center; background:rgba(10,16,32,.94); bottom:0; display:flex; justify-content:space-between; left:0; min-height:56px; padding:0 16px; position:absolute; right:0;
}
.training-controls strong[data-v-f015c501] { font-size:13px; font-weight:600;
}
.control-actions[data-v-f015c501] { display:flex; gap:8px;
}
.icon-btn[data-v-f015c501] { align-items:center; background:transparent; border:1px solid #65738e; border-radius:5px; color:#eef4ff; cursor:pointer; display:inline-flex; height:32px; justify-content:center; width:34px;
}
.icon-btn[data-v-f015c501]:disabled { cursor:not-allowed; opacity:.35;
}
.outline-toggle[data-v-f015c501] { background:rgba(10,16,32,.88); left:14px; position:absolute; top:14px; transition:opacity .18s ease; z-index:5;
}
.presentation-hidden[data-v-f015c501] { opacity:0; pointer-events:none;
}
.training-empty[data-v-f015c501] { align-items:center; color:#b7c3d8; display:flex; grid-column:1/-1; justify-content:center; min-height:280px;
}
:fullscreen.training-player[data-v-f015c501] { background:#05070d; height:100vh; min-height:0; width:100vw;
}
:fullscreen .training-stage[data-v-f015c501] { height:100vh; min-height:0; padding:0;
}
:fullscreen .training-slide[data-v-f015c501] { box-shadow:none; height:100vh; max-height:none; max-width:none; object-fit:contain; width:100vw;
}
.mobile-presentation[data-v-f015c501] { background:#05070d; height:100dvh; inset:0; min-height:0; position:fixed; width:100vw; z-index:2147483647;
}
.mobile-presentation .training-stage[data-v-f015c501] { height:100%; min-height:0; padding:0;
}
.mobile-presentation .training-slide[data-v-f015c501] { box-shadow:none; height:100%; max-height:none; max-width:none; object-fit:contain; width:100%;
}
body.training-mobile-presentation { overflow:hidden; overscroll-behavior:none;
}
@media (max-width:700px) {
.training-thumbnails[data-v-f015c501] { width:128px;
}.thumbnail-button[data-v-f015c501] { flex-basis:61px; height:61px; min-height:61px;
}.training-stage[data-v-f015c501] { min-height:62vh; padding:16px 14px 60px;
}
}

.training-page[data-v-29c15a01] { display:grid; gap:14px; margin:0 auto; max-width:1400px; padding:18px;
}
.training-page-head[data-v-29c15a01] { align-items:center; display:flex; gap:16px; justify-content:space-between;
}
.eyebrow[data-v-29c15a01] { color:#b17a12; font-size:12px; font-weight:700; margin-bottom:4px;
}
h1[data-v-29c15a01] { font-size:24px;
}
.head-actions[data-v-29c15a01] { display:flex; gap:8px;
}
.icon-text-btn[data-v-29c15a01],.icon-btn[data-v-29c15a01] { align-items:center; background:#fff; border:1px solid #d3d9e5; border-radius:5px; color:#243047; cursor:pointer; display:inline-flex; gap:6px; min-height:34px; padding:0 10px;
}
.icon-btn[data-v-29c15a01] { justify-content:center; padding:0; width:34px;
}
.hint[data-v-29c15a01],.error[data-v-29c15a01] { background:#fff; border:1px solid #dfe4ed; color:#65718a; padding:18px;
}
.error[data-v-29c15a01] { border-color:#f2b8b5; color:#ad3029;
}

.training-center[data-v-62e30f70] { display: grid; gap: 14px; margin: 0 auto; max-width: 1440px; padding: 18px;
}
.page-head[data-v-62e30f70], .my-task-band[data-v-62e30f70], .group-panel[data-v-62e30f70], .temporary-band[data-v-62e30f70] { background: #fff; border: 1px solid #dde4ee; border-radius: 8px;
}
.page-head[data-v-62e30f70], .my-task-band[data-v-62e30f70], .temporary-band[data-v-62e30f70] { align-items: center; display: flex; gap: 18px; justify-content: space-between; padding: 18px;
}.my-task-actions[data-v-62e30f70]{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.eyebrow[data-v-62e30f70] { color: #0f7a69; font-size: 12px; font-weight: 800; margin-bottom: 4px;
}
h1[data-v-62e30f70] { color: #1b2638; font-size: 25px;
}
h2[data-v-62e30f70] { color: #25344d; font-size: 17px;
}
h3[data-v-62e30f70] { color: #263650; font-size: 15px;
}
.page-head p[data-v-62e30f70], .my-task-band p[data-v-62e30f70], .temporary-band p[data-v-62e30f70], .training-card p[data-v-62e30f70] { color: #64748b; line-height: 1.55; margin-top: 5px;
}
.primary-link[data-v-62e30f70], .temporary-band a[data-v-62e30f70] { background: #0f766e; border-radius: 5px; color: #fff; flex: 0 0 auto; padding: 9px 13px; text-decoration: none;
}
.my-task-band[data-v-62e30f70] { background: #f0f8f7; border-color: #c7e5e0;
}
.status-chip[data-v-62e30f70] { background: #e6f3f1; border: 1px solid #b8ded8; border-radius: 999px; color: #0f766e; font-size: 12px; font-weight: 700; padding: 4px 9px; white-space: nowrap;
}
.group-panel[data-v-62e30f70] { padding: 16px;
}.group-panel h2[data-v-62e30f70] { margin-bottom: 12px;
}
.tone-green[data-v-62e30f70] { border-top: 3px solid #0f9d7a;
}.tone-blue[data-v-62e30f70] { border-top: 3px solid #3478c8;
}.tone-amber[data-v-62e30f70] { border-top: 3px solid #c98915;
}
.card-grid[data-v-62e30f70] { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}
.training-card[data-v-62e30f70] { background: #fbfcfe; border: 1px solid #e1e8f0; border-radius: 6px; color: inherit; display: grid; gap: 7px; min-height: 132px; padding: 13px; text-decoration: none;
}
.training-card[data-v-62e30f70]:hover { border-color: #7ea9d9; box-shadow: 0 7px 16px rgba(42, 73, 110, .08);
}.training-card span[data-v-62e30f70] { color: #1769aa; font-size: 12px; font-weight: 700;
}
.temporary-band[data-v-62e30f70] { background: #fffaf0; border-color: #f0d9a7;
}.temporary-band a[data-v-62e30f70] { background: #a86810;
}
@media (max-width: 720px) {
.page-head[data-v-62e30f70], .my-task-band[data-v-62e30f70], .temporary-band[data-v-62e30f70] { align-items: flex-start; flex-direction: column;
}.primary-link[data-v-62e30f70], .temporary-band a[data-v-62e30f70] { width: 100%; text-align: center;
}
}

.course-page[data-v-f128ae46] { display: grid; gap: 14px; margin: 0 auto; max-width: 1440px; padding: 18px;
}.page-head[data-v-f128ae46],.form-panel[data-v-f128ae46],.table-panel[data-v-f128ae46] { background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px;
}.page-head[data-v-f128ae46],.section-head[data-v-f128ae46],.head-actions[data-v-f128ae46] { align-items:center;display:flex;gap:12px;justify-content:space-between;
}.eyebrow[data-v-f128ae46] { color:#19766c;font-size:12px;font-weight:800;margin-bottom:4px;
}h1[data-v-f128ae46]{font-size:25px;color:#1e293b;}h2[data-v-f128ae46]{font-size:17px;color:#29384f;}.page-head p[data-v-f128ae46]{color:#64748b;margin-top:5px;}.head-actions a[data-v-f128ae46],.head-actions button[data-v-f128ae46],.primary-btn[data-v-f128ae46],td button[data-v-f128ae46],.operations a[data-v-f128ae46],.selected-files button[data-v-f128ae46]{border:1px solid #cdd7e5;border-radius:5px;background:#fff;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none;}.primary-btn[data-v-f128ae46]{background:#0f766e;border-color:#0f766e;color:#fff;margin-top:12px;}.form-grid[data-v-f128ae46]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;}.form-grid label[data-v-f128ae46],.attachment-picker[data-v-f128ae46]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px;}.form-grid input[data-v-f128ae46],.form-grid textarea[data-v-f128ae46],.form-grid select[data-v-f128ae46]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px;}.attachment-picker[data-v-f128ae46]{border:1px dashed #aac8c0;border-radius:6px;padding:12px}.attachment-picker input[data-v-f128ae46]{font:inherit}.attachment-picker small[data-v-f128ae46]{color:#718096;font-weight:400}.selected-files[data-v-f128ae46]{display:flex;flex-wrap:wrap;gap:8px}.selected-files span[data-v-f128ae46]{align-items:center;background:#eef8f5;border:1px solid #cce8df;border-radius:5px;color:#236551;display:inline-flex;gap:7px;padding:5px 7px}.selected-files button[data-v-f128ae46]{border:0;color:#9a3a34;padding:1px 3px}.wide[data-v-f128ae46]{grid-column:1/-1;}.notice[data-v-f128ae46]{border-radius:6px;margin:0;padding:10px 12px;}.error[data-v-f128ae46]{background:#fff3f2;color:#a4342d;}.success[data-v-f128ae46]{background:#eef9f6;color:#166957;}.table-wrap[data-v-f128ae46]{overflow:auto;}table[data-v-f128ae46]{border-collapse:collapse;min-width:1060px;width:100%;}th[data-v-f128ae46],td[data-v-f128ae46]{border-bottom:1px solid #e5ebf2;padding:11px 10px;text-align:center;}th[data-v-f128ae46]{background:#f5f8fb;color:#52627a;font-size:13px;}td[data-v-f128ae46]{color:#2f4059;font-size:13px;}.truncate[data-v-f128ae46]{max-width:240px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;}.operations[data-v-f128ae46]{align-items:center;display:flex;flex-wrap:wrap;gap:7px;justify-content:center;min-width:160px}.status[data-v-f128ae46]{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px;}.DRAFT[data-v-f128ae46]{background:#edf2f7;color:#536175;}.PUBLISHED[data-v-f128ae46]{background:#e8f7ef;color:#17724d;}.ARCHIVED[data-v-f128ae46]{background:#f7eee7;color:#92631d;}@media(max-width:760px){.page-head[data-v-f128ae46]{align-items:flex-start;flex-direction:column}.form-grid[data-v-f128ae46]{grid-template-columns:1fr;}.wide[data-v-f128ae46]{grid-column:auto;}}

.learning-plan-page[data-v-70fce085]{display:grid;gap:14px;margin:0 auto;max-width:1440px;padding:18px}.page-head[data-v-70fce085],.form-panel[data-v-70fce085],.table-panel[data-v-70fce085]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-70fce085],.section-head[data-v-70fce085],.head-actions[data-v-70fce085]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-70fce085]{color:#176b96;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-70fce085]{color:#1e293b;font-size:25px}h2[data-v-70fce085]{color:#29384f;font-size:17px}.page-head p[data-v-70fce085]{color:#64748b;margin-top:5px}.head-actions a[data-v-70fce085],.head-actions button[data-v-70fce085],.primary-btn[data-v-70fce085],td button[data-v-70fce085]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary-btn[data-v-70fce085]{background:#176b96;border-color:#176b96;color:#fff;margin-top:12px}.form-grid[data-v-70fce085]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.form-grid label[data-v-70fce085]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px}.form-grid input[data-v-70fce085],.form-grid select[data-v-70fce085],.manual-targets>input[data-v-70fce085]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px}.manual-targets[data-v-70fce085]{color:#475569;display:grid;gap:7px}.field-label[data-v-70fce085]{font-size:13px;font-weight:700}.learner-list[data-v-70fce085]{background:#fafcfd;border:1px solid #d9e3ee;border-radius:5px;display:grid;gap:1px;max-height:198px;overflow:auto}.learner-option[data-v-70fce085]{align-items:center;background:#fff;cursor:pointer;display:flex!important;gap:9px!important;padding:8px 10px}.learner-option[data-v-70fce085]:hover{background:#eef7f5}.learner-option input[data-v-70fce085]{margin:0}.learner-option strong[data-v-70fce085]{display:block;font-size:13px}.learner-option small[data-v-70fce085],.manual-targets>small[data-v-70fce085]{color:#718096;font-size:12px;font-weight:400}.learner-list p[data-v-70fce085]{color:#718096;font-size:13px;margin:10px}.checkbox[data-v-70fce085]{align-items:center;display:flex!important;gap:8px!important;padding-top:24px}.notice[data-v-70fce085]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-70fce085]{background:#fff3f2;color:#a4342d}.success[data-v-70fce085]{background:#eef9f6;color:#166957}.table-wrap[data-v-70fce085]{overflow:auto}table[data-v-70fce085]{border-collapse:collapse;min-width:1060px;width:100%}th[data-v-70fce085],td[data-v-70fce085]{border-bottom:1px solid #e5ebf2;padding:11px 10px;text-align:center}th[data-v-70fce085]{background:#f5f8fb;color:#52627a;font-size:13px}td[data-v-70fce085]{color:#2f4059;font-size:13px}.truncate[data-v-70fce085]{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status[data-v-70fce085]{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px}.DRAFT[data-v-70fce085]{background:#edf2f7;color:#536175}.PUBLISHED[data-v-70fce085]{background:#e8f7ef;color:#17724d}.CLOSED[data-v-70fce085]{background:#f7eee7;color:#92631d}@media(max-width:760px){.page-head[data-v-70fce085]{align-items:flex-start;flex-direction:column}.form-grid[data-v-70fce085]{grid-template-columns:1fr}.checkbox[data-v-70fce085]{padding-top:0}}

.my-learning-page[data-v-daa1ca6d]{display:grid;gap:14px;margin:0 auto;max-width:1160px;padding:18px}.page-head[data-v-daa1ca6d],.task-card[data-v-daa1ca6d]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-daa1ca6d],.head-actions[data-v-daa1ca6d],.task-card[data-v-daa1ca6d],.task-side[data-v-daa1ca6d],.task-actions[data-v-daa1ca6d]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-daa1ca6d]{color:#176b96;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-daa1ca6d]{color:#1e293b;font-size:25px}h2[data-v-daa1ca6d]{color:#29384f;font-size:17px}.page-head p[data-v-daa1ca6d],.task-card p[data-v-daa1ca6d]{color:#64748b;margin-top:5px}.head-actions a[data-v-daa1ca6d],.head-actions button[data-v-daa1ca6d],.task-actions button[data-v-daa1ca6d]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.task-list[data-v-daa1ca6d]{display:grid;gap:10px}.task-id[data-v-daa1ca6d]{font-size:12px;font-weight:800}.complete[data-v-daa1ca6d]{background:#176b96!important;border-color:#176b96!important;color:#fff!important}.status[data-v-daa1ca6d]{border-radius:999px;font-size:12px;font-weight:700;padding:4px 9px}.ASSIGNED[data-v-daa1ca6d]{background:#fff7df;color:#99620c}.IN_PROGRESS[data-v-daa1ca6d]{background:#e5f2ff;color:#16629a}.COMPLETED[data-v-daa1ca6d]{background:#e8f7ef;color:#17724d}.notice[data-v-daa1ca6d],.empty[data-v-daa1ca6d]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px 12px}.empty[data-v-daa1ca6d]{background:#f7fafc;color:#64748b}@media(max-width:680px){.page-head[data-v-daa1ca6d],.task-card[data-v-daa1ca6d]{align-items:flex-start;flex-direction:column}.task-side[data-v-daa1ca6d]{align-items:flex-start;flex-direction:column}}

iframe[data-v-09dfc567],video[data-v-09dfc567] { border:1px solid #dbe3ec; height:520px; width:100%;
}
.article-material[data-v-09dfc567] { color:#334155; line-height:1.8; margin:0; min-height:320px; white-space:pre-wrap;
}
.material-hint[data-v-09dfc567],.material-error[data-v-09dfc567] { border-radius:6px; margin:0; padding:14px;
}
.material-hint[data-v-09dfc567] { background:#eff8ff; color:#176b96;
}.material-error[data-v-09dfc567] { background:#fff3f2; color:#a4342d;
}
.image-material[data-v-09dfc567] { display:block; margin:auto; max-height:70vh; max-width:100%; object-fit:contain;
}
@media(max-width:760px){
iframe[data-v-09dfc567],video[data-v-09dfc567] { height:55vh;
}
}
.player[data-v-4994cf39]{display:grid;gap:14px;max-width:1280px;margin:auto;padding:18px}header[data-v-4994cf39],.body[data-v-4994cf39]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-4994cf39]{align-items:center;display:flex;justify-content:space-between;gap:12px}header p[data-v-4994cf39]{color:#176b96;font-size:12px;font-weight:800}h1[data-v-4994cf39]{color:#1e293b;font-size:25px}h2[data-v-4994cf39]{color:#29384f;font-size:19px}small[data-v-4994cf39]{color:#64748b}header button[data-v-4994cf39],.actions button[data-v-4994cf39]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px}.body[data-v-4994cf39]{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;min-height:560px}aside[data-v-4994cf39]{border-right:1px solid #e3e8ef;display:grid;align-content:start;gap:7px;padding-right:12px}aside button[data-v-4994cf39]{background:#f8fafc;border:1px solid #e1e7ef;border-radius:5px;color:#43536b;cursor:pointer;padding:9px;text-align:left}aside button.active[data-v-4994cf39]{background:#e8f5f3;border-color:#80c8bf;color:#11685f;font-weight:700}.content[data-v-4994cf39]{display:grid;grid-template-rows:auto 1fr auto;gap:15px;min-width:0}.article[data-v-4994cf39]{white-space:pre-wrap;color:#334155;line-height:1.8}.content iframe[data-v-4994cf39],.content video[data-v-4994cf39]{border:1px solid #dbe3ec;height:420px;width:100%}.content a[data-v-4994cf39]{color:#176b96}.actions[data-v-4994cf39]{display:flex;gap:8px;justify-content:flex-end}.actions .finish[data-v-4994cf39]{background:#176b96;border-color:#176b96;color:#fff}.error[data-v-4994cf39],.empty[data-v-4994cf39]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px}@media(max-width:760px){header[data-v-4994cf39]{align-items:flex-start;flex-direction:column}.body[data-v-4994cf39]{grid-template-columns:1fr}aside[data-v-4994cf39]{border-bottom:1px solid #e3e8ef;border-right:0;padding:0 0 12px}.content iframe[data-v-4994cf39],.content video[data-v-4994cf39]{height:280px}}
.material-page[data-v-cdb29e4a]{display:grid;gap:14px;max-width:1400px;margin:auto;padding:18px}header[data-v-cdb29e4a],.body[data-v-cdb29e4a]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-cdb29e4a]{align-items:center;display:flex;gap:12px;justify-content:space-between}header p[data-v-cdb29e4a]{color:#176b96;font-size:12px;font-weight:800}h1[data-v-cdb29e4a]{color:#1e293b;font-size:25px}small[data-v-cdb29e4a]{color:#64748b}header button[data-v-cdb29e4a]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px}.body[data-v-cdb29e4a]{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;min-height:560px}aside[data-v-cdb29e4a]{border-right:1px solid #e3e8ef;display:grid;align-content:start;gap:7px;padding-right:12px}aside button[data-v-cdb29e4a]{background:#f8fafc;border:1px solid #e1e7ef;border-radius:5px;color:#43536b;cursor:pointer;padding:9px;text-align:left}aside button.active[data-v-cdb29e4a]{background:#e8f5f3;border-color:#80c8bf;color:#11685f;font-weight:700}.hint[data-v-cdb29e4a],.error[data-v-cdb29e4a]{border-radius:6px;margin:0;padding:12px}.hint[data-v-cdb29e4a]{background:#eff8ff;color:#176b96}.error[data-v-cdb29e4a]{background:#fff3f2;color:#a4342d}@media(max-width:760px){header[data-v-cdb29e4a]{align-items:flex-start;flex-direction:column}.body[data-v-cdb29e4a]{grid-template-columns:1fr}aside[data-v-cdb29e4a]{border-bottom:1px solid #e3e8ef;border-right:0;padding:0 0 12px}}

.offline-page[data-v-180cf356]{display:grid;gap:14px;margin:0 auto;max-width:1440px;padding:18px}.page-head[data-v-180cf356],.form-panel[data-v-180cf356],.table-panel[data-v-180cf356]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-180cf356],.section-head[data-v-180cf356],.head-actions[data-v-180cf356]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-180cf356]{color:#28704d;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-180cf356]{color:#1e293b;font-size:25px}h2[data-v-180cf356]{color:#29384f;font-size:17px}.page-head p[data-v-180cf356]{color:#64748b;margin-top:5px}.head-actions a[data-v-180cf356],.head-actions button[data-v-180cf356],.primary-btn[data-v-180cf356],td button[data-v-180cf356]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary-btn[data-v-180cf356]{background:#28704d;border-color:#28704d;color:#fff;margin-top:12px}.form-grid[data-v-180cf356]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.form-grid label[data-v-180cf356]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px}.form-grid input[data-v-180cf356],.form-grid textarea[data-v-180cf356]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px}.wide[data-v-180cf356]{grid-column:1/-1}.checkbox[data-v-180cf356]{align-items:center;display:flex!important;gap:8px!important;padding-top:24px}.notice[data-v-180cf356]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-180cf356]{background:#fff3f2;color:#a4342d}.success[data-v-180cf356]{background:#eef9f6;color:#166957}.table-wrap[data-v-180cf356]{overflow:auto}table[data-v-180cf356]{border-collapse:collapse;min-width:1220px;width:100%}th[data-v-180cf356],td[data-v-180cf356]{border-bottom:1px solid #e5ebf2;padding:11px 10px;text-align:center}th[data-v-180cf356]{background:#f5f8fb;color:#52627a;font-size:13px}td[data-v-180cf356]{color:#2f4059;font-size:13px}.truncate[data-v-180cf356]{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status[data-v-180cf356]{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px}.DRAFT[data-v-180cf356]{background:#edf2f7;color:#536175}.NOT_STARTED[data-v-180cf356]{background:#fff7df;color:#99620c}.IN_PROGRESS[data-v-180cf356]{background:#e5f2ff;color:#16629a}.PAUSED[data-v-180cf356]{background:#f9eee7;color:#8f5b29}.COMPLETED[data-v-180cf356]{background:#e8f7ef;color:#17724d}.links[data-v-180cf356]{display:flex;gap:8px;justify-content:center}.links a[data-v-180cf356]{color:#176b96;white-space:nowrap}@media(max-width:760px){.page-head[data-v-180cf356]{align-items:flex-start;flex-direction:column}.form-grid[data-v-180cf356]{grid-template-columns:1fr}.wide[data-v-180cf356]{grid-column:auto}.checkbox[data-v-180cf356]{padding-top:0}}
.schedule-page[data-v-a2a8b026]{display:grid;gap:14px;margin:0 auto;max-width:1320px;padding:18px}.page-head[data-v-a2a8b026],.panel[data-v-a2a8b026]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-a2a8b026],.head-actions[data-v-a2a8b026]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-a2a8b026]{color:#28704d;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-a2a8b026]{color:#1e293b;font-size:25px}h2[data-v-a2a8b026]{color:#29384f;font-size:17px}.page-head p[data-v-a2a8b026]{color:#64748b;margin-top:5px}.head-actions a[data-v-a2a8b026],.head-actions button[data-v-a2a8b026],.primary[data-v-a2a8b026]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary[data-v-a2a8b026]{background:#28704d;border-color:#28704d;color:#fff;margin-top:12px}.form-grid[data-v-a2a8b026]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label[data-v-a2a8b026]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px}.form-grid input[data-v-a2a8b026],.form-grid select[data-v-a2a8b026]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px}.notice[data-v-a2a8b026]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px 12px}.table-wrap[data-v-a2a8b026]{overflow:auto}table[data-v-a2a8b026]{border-collapse:collapse;min-width:880px;width:100%}th[data-v-a2a8b026],td[data-v-a2a8b026]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-a2a8b026]{background:#f5f8fb;color:#52627a;font-size:13px}@media(max-width:760px){.page-head[data-v-a2a8b026]{align-items:flex-start;flex-direction:column}.form-grid[data-v-a2a8b026]{grid-template-columns:1fr}}.record-page[data-v-3edc65b1]{display:grid;gap:14px;margin:0 auto;max-width:1320px;padding:18px}.page-head[data-v-3edc65b1],.panel[data-v-3edc65b1]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-3edc65b1],.head-actions[data-v-3edc65b1]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-3edc65b1]{color:#28704d;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-3edc65b1]{color:#1e293b;font-size:25px}.page-head p[data-v-3edc65b1]{color:#64748b;margin-top:5px}.head-actions a[data-v-3edc65b1],.head-actions button[data-v-3edc65b1],.actions button[data-v-3edc65b1]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:7px 9px;text-decoration:none}.panel label[data-v-3edc65b1]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px;max-width:440px}.panel select[data-v-3edc65b1]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px}.notice[data-v-3edc65b1]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px 12px}.table-wrap[data-v-3edc65b1]{overflow:auto}table[data-v-3edc65b1]{border-collapse:collapse;min-width:1020px;width:100%}th[data-v-3edc65b1],td[data-v-3edc65b1]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-3edc65b1]{background:#f5f8fb;color:#52627a;font-size:13px}.status[data-v-3edc65b1]{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px}.PENDING[data-v-3edc65b1]{background:#fff7df;color:#99620c}.PRESENT[data-v-3edc65b1]{background:#e8f7ef;color:#17724d}.LEAVE[data-v-3edc65b1]{background:#e5f2ff;color:#16629a}.ABSENT[data-v-3edc65b1]{background:#fff0f0;color:#a4342d}.truncate[data-v-3edc65b1]{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actions[data-v-3edc65b1]{display:flex;gap:6px;justify-content:center}@media(max-width:760px){.page-head[data-v-3edc65b1]{align-items:flex-start;flex-direction:column}}.page[data-v-c196781f]{display:grid;gap:14px;max-width:1440px;margin:auto;padding:18px}header[data-v-c196781f],.panel[data-v-c196781f]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-c196781f]{display:flex;align-items:center;justify-content:space-between;gap:12px}header p[data-v-c196781f]{color:#a45b12;font-size:12px;font-weight:800}h1[data-v-c196781f]{font-size:25px;color:#1e293b}h2[data-v-c196781f]{font-size:17px;color:#29384f}small[data-v-c196781f]{color:#64748b}header a[data-v-c196781f],header button[data-v-c196781f],button[data-v-c196781f]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary[data-v-c196781f]{margin-top:12px;background:#a45b12;border-color:#a45b12;color:#fff}.grid[data-v-c196781f]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.grid label[data-v-c196781f]{display:grid;gap:6px;color:#475569;font-size:13px;font-weight:700}.grid input[data-v-c196781f],.grid select[data-v-c196781f],.grid textarea[data-v-c196781f]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px}.wide[data-v-c196781f]{grid-column:1/-1}.error[data-v-c196781f]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px}.table[data-v-c196781f]{overflow:auto}table[data-v-c196781f]{border-collapse:collapse;min-width:1060px;width:100%}th[data-v-c196781f],td[data-v-c196781f]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-c196781f]{background:#f5f8fb;color:#52627a;font-size:13px}.truncate[data-v-c196781f]{max-width:400px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){header[data-v-c196781f]{align-items:flex-start;flex-direction:column}.grid[data-v-c196781f]{grid-template-columns:1fr}.wide[data-v-c196781f]{grid-column:auto}}.page[data-v-b4419331]{display:grid;gap:14px;max-width:1440px;margin:auto;padding:18px}header[data-v-b4419331],.panel[data-v-b4419331]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-b4419331]{display:flex;align-items:center;justify-content:space-between;gap:12px}header p[data-v-b4419331]{color:#a45b12;font-size:12px;font-weight:800}h1[data-v-b4419331]{font-size:25px;color:#1e293b}h2[data-v-b4419331]{font-size:17px;color:#29384f}small[data-v-b4419331]{color:#64748b}header a[data-v-b4419331],header button[data-v-b4419331],button[data-v-b4419331]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary[data-v-b4419331]{margin-top:12px;background:#a45b12;border-color:#a45b12;color:#fff}.grid[data-v-b4419331]{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.grid>label[data-v-b4419331]{display:grid;gap:6px;color:#475569;font-size:13px;font-weight:700}.grid input[data-v-b4419331]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px}.questions[data-v-b4419331]{grid-column:1/-1}.checklist[data-v-b4419331]{border:1px solid #cfd9e6;display:grid;gap:7px;max-height:180px;overflow:auto;padding:9px}.checklist label[data-v-b4419331]{font-weight:400}.error[data-v-b4419331]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px}.table[data-v-b4419331]{overflow:auto}table[data-v-b4419331]{border-collapse:collapse;min-width:950px;width:100%}th[data-v-b4419331],td[data-v-b4419331]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-b4419331]{background:#f5f8fb;color:#52627a;font-size:13px}@media(max-width:760px){header[data-v-b4419331]{align-items:flex-start;flex-direction:column}.grid[data-v-b4419331]{grid-template-columns:1fr}}.page[data-v-a7465558]{display:grid;gap:14px;max-width:1440px;margin:auto;padding:18px}header[data-v-a7465558],.panel[data-v-a7465558]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-a7465558]{display:flex;align-items:center;justify-content:space-between;gap:12px}header p[data-v-a7465558]{color:#a45b12;font-size:12px;font-weight:800}h1[data-v-a7465558]{font-size:25px;color:#1e293b}h2[data-v-a7465558]{font-size:17px;color:#29384f}small[data-v-a7465558]{color:#64748b}header a[data-v-a7465558],header button[data-v-a7465558],button[data-v-a7465558]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary[data-v-a7465558]{margin-top:12px;background:#a45b12;border-color:#a45b12;color:#fff}.grid[data-v-a7465558]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.grid label[data-v-a7465558]{display:grid;gap:6px;color:#475569;font-size:13px;font-weight:700}.grid input[data-v-a7465558],.grid select[data-v-a7465558]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px}.error[data-v-a7465558]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px}.table[data-v-a7465558]{overflow:auto}table[data-v-a7465558]{border-collapse:collapse;min-width:1180px;width:100%}th[data-v-a7465558],td[data-v-a7465558]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-a7465558]{background:#f5f8fb;color:#52627a;font-size:13px}.truncate[data-v-a7465558]{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td a[data-v-a7465558]{color:#176b96}@media(max-width:760px){header[data-v-a7465558]{align-items:flex-start;flex-direction:column}.grid[data-v-a7465558]{grid-template-columns:1fr}}.page[data-v-9e7933b8]{display:grid;gap:14px;max-width:1440px;margin:auto;padding:18px}header[data-v-9e7933b8],.panel[data-v-9e7933b8]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}header[data-v-9e7933b8]{display:flex;align-items:center;justify-content:space-between;gap:12px}header p[data-v-9e7933b8]{color:#a45b12;font-size:12px;font-weight:800}h1[data-v-9e7933b8]{font-size:25px;color:#1e293b}small[data-v-9e7933b8]{color:#64748b}header a[data-v-9e7933b8],header button[data-v-9e7933b8],.review button[data-v-9e7933b8]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.panel label[data-v-9e7933b8]{display:grid;gap:6px;max-width:500px;color:#475569;font-size:13px;font-weight:700}.panel select[data-v-9e7933b8],.review input[data-v-9e7933b8]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px}.error[data-v-9e7933b8]{background:#fff3f2;border-radius:6px;color:#a4342d;margin:0;padding:10px}.table[data-v-9e7933b8]{overflow:auto}table[data-v-9e7933b8]{border-collapse:collapse;min-width:1400px;width:100%}th[data-v-9e7933b8],td[data-v-9e7933b8]{border-bottom:1px solid #e5ebf2;padding:11px;text-align:center}th[data-v-9e7933b8]{background:#f5f8fb;color:#52627a;font-size:13px}.answers[data-v-9e7933b8]{max-width:220px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.review[data-v-9e7933b8]{display:flex;gap:6px;justify-content:center}.review input[data-v-9e7933b8]{max-width:78px}@media(max-width:760px){header[data-v-9e7933b8]{align-items:flex-start;flex-direction:column}}
.live-page[data-v-a8451bec]{display:grid;gap:14px;margin:0 auto;max-width:1180px;padding:18px}.page-head[data-v-a8451bec],.live-card[data-v-a8451bec]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-a8451bec],.head-actions[data-v-a8451bec],.live-card[data-v-a8451bec],.actions[data-v-a8451bec]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-a8451bec],.live-no[data-v-a8451bec]{color:#176b96;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-a8451bec]{color:#1e293b;font-size:25px}h2[data-v-a8451bec]{color:#29384f;font-size:18px}.page-head p[data-v-a8451bec],.live-card p[data-v-a8451bec]{color:#64748b;margin-top:5px}.live-list[data-v-a8451bec]{display:grid;gap:10px}.live-main[data-v-a8451bec]{min-width:0}.live-main dl[data-v-a8451bec]{display:flex;gap:28px;margin-top:12px}.live-main dl div[data-v-a8451bec]{display:grid;gap:3px}.live-main dt[data-v-a8451bec]{color:#7b8799;font-size:12px}.live-main dd[data-v-a8451bec]{color:#344258;font-size:13px;margin:0}.head-actions a[data-v-a8451bec],.head-actions button[data-v-a8451bec],.actions button[data-v-a8451bec]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.actions[data-v-a8451bec]{flex-wrap:wrap;justify-content:flex-end}.actions .join[data-v-a8451bec]{background:#176b96;border-color:#176b96;color:#fff}.notice[data-v-a8451bec],.empty[data-v-a8451bec]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-a8451bec]{background:#fff3f2;color:#a4342d}.success[data-v-a8451bec]{background:#eef9f6;color:#166957}.empty[data-v-a8451bec]{background:#f7fafc;color:#64748b}@media(max-width:760px){.page-head[data-v-a8451bec],.live-card[data-v-a8451bec]{align-items:flex-start;flex-direction:column}.actions[data-v-a8451bec]{justify-content:flex-start}.live-main dl[data-v-a8451bec]{flex-direction:column;gap:8px}}

.live-manage-page[data-v-85427d48]{display:grid;gap:14px;margin:0 auto;max-width:1440px;padding:18px}.page-head[data-v-85427d48],.form-panel[data-v-85427d48],.table-panel[data-v-85427d48]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-85427d48],.section-head[data-v-85427d48],.head-actions[data-v-85427d48]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-85427d48]{color:#176b96;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-85427d48]{color:#1e293b;font-size:25px}h2[data-v-85427d48]{color:#29384f;font-size:17px}.page-head p[data-v-85427d48]{color:#64748b;margin-top:5px}.head-actions a[data-v-85427d48],.head-actions button[data-v-85427d48],.primary[data-v-85427d48],td button[data-v-85427d48]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.primary[data-v-85427d48]{background:#176b96;border-color:#176b96;color:#fff;margin-top:12px}.form-grid[data-v-85427d48]{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.form-grid label[data-v-85427d48]{color:#475569;display:grid;font-size:13px;font-weight:700;gap:6px}.form-grid input[data-v-85427d48]{border:1px solid #cfd9e6;border-radius:5px;font:inherit;padding:8px 10px}.wide[data-v-85427d48]{grid-column:1/-1}.notice[data-v-85427d48]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-85427d48]{background:#fff3f2;color:#a4342d}.success[data-v-85427d48]{background:#eef9f6;color:#166957}.table-wrap[data-v-85427d48]{overflow:auto}table[data-v-85427d48]{border-collapse:collapse;min-width:1100px;width:100%}th[data-v-85427d48],td[data-v-85427d48]{border-bottom:1px solid #e5ebf2;padding:11px 10px;text-align:center}th[data-v-85427d48]{background:#f5f8fb;color:#52627a;font-size:13px}td[data-v-85427d48]{color:#2f4059;font-size:13px}.truncate[data-v-85427d48]{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status[data-v-85427d48]{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px}.DRAFT[data-v-85427d48]{background:#edf2f7;color:#536175}.PUBLISHED[data-v-85427d48]{background:#e8f7ef;color:#17724d}@media(max-width:760px){.page-head[data-v-85427d48]{align-items:flex-start;flex-direction:column}.form-grid[data-v-85427d48]{grid-template-columns:1fr}.wide[data-v-85427d48]{grid-column:auto}}
.my-exams-page[data-v-e8dbd68d]{display:grid;gap:14px;margin:0 auto;max-width:1120px;padding:18px}.page-head[data-v-e8dbd68d],.exam-card[data-v-e8dbd68d]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-e8dbd68d],.head-actions[data-v-e8dbd68d],.exam-card[data-v-e8dbd68d]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-e8dbd68d],.exam-no[data-v-e8dbd68d]{color:#a45b12;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-e8dbd68d]{color:#1e293b;font-size:25px}h2[data-v-e8dbd68d]{color:#29384f;font-size:18px}.page-head p[data-v-e8dbd68d],.exam-card p[data-v-e8dbd68d]{color:#64748b;margin-top:5px}.head-actions a[data-v-e8dbd68d],.head-actions button[data-v-e8dbd68d],.start[data-v-e8dbd68d]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px;text-decoration:none}.start[data-v-e8dbd68d]{background:#a45b12;border-color:#a45b12;color:#fff}.exam-list[data-v-e8dbd68d]{display:grid;gap:10px}.notice[data-v-e8dbd68d],.empty[data-v-e8dbd68d]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-e8dbd68d]{background:#fff3f2;color:#a4342d}.empty[data-v-e8dbd68d]{background:#f7fafc;color:#64748b}@media(max-width:720px){.page-head[data-v-e8dbd68d],.exam-card[data-v-e8dbd68d]{align-items:flex-start;flex-direction:column}.start[data-v-e8dbd68d]{width:100%;text-align:center}}.exam-player[data-v-5b81fdb2]{display:grid;gap:14px;margin:0 auto;max-width:980px;padding:18px}.page-head[data-v-5b81fdb2],.question[data-v-5b81fdb2],.result[data-v-5b81fdb2]{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:16px}.page-head[data-v-5b81fdb2]{align-items:center;display:flex;gap:12px;justify-content:space-between}.eyebrow[data-v-5b81fdb2]{color:#a45b12;font-size:12px;font-weight:800;margin-bottom:4px}h1[data-v-5b81fdb2]{color:#1e293b;font-size:25px}h2[data-v-5b81fdb2]{color:#29384f;font-size:17px;line-height:1.55}.page-head p[data-v-5b81fdb2],.result p[data-v-5b81fdb2]{color:#64748b;margin-top:5px}.page-head button[data-v-5b81fdb2],.submit[data-v-5b81fdb2]{background:#fff;border:1px solid #cdd7e5;border-radius:5px;color:#294562;cursor:pointer;padding:8px 11px}.questions[data-v-5b81fdb2]{display:grid;gap:10px}.question span[data-v-5b81fdb2]{color:#7a8799;font-size:13px;font-weight:500}.choices[data-v-5b81fdb2]{display:grid;gap:8px;margin-top:12px}.choices label[data-v-5b81fdb2]{align-items:center;color:#3f4f66;display:flex;gap:8px}.question input[type=text][data-v-5b81fdb2],.question textarea[data-v-5b81fdb2]{border:1px solid #cfd9e6;border-radius:5px;box-sizing:border-box;font:inherit;margin-top:12px;padding:9px;width:100%}.submit[data-v-5b81fdb2]{background:#a45b12;border-color:#a45b12;color:#fff;justify-self:end}.notice[data-v-5b81fdb2]{border-radius:6px;margin:0;padding:10px 12px}.error[data-v-5b81fdb2]{background:#fff3f2;color:#a4342d}.success[data-v-5b81fdb2],.result[data-v-5b81fdb2]{background:#eef9f6;color:#166957}@media(max-width:720px){.page-head[data-v-5b81fdb2]{align-items:flex-start;flex-direction:column}.page-head button[data-v-5b81fdb2],.submit[data-v-5b81fdb2]{width:100%}}
.reminder-page[data-v-06facc2a]{display:grid;gap:12px}.page-head[data-v-06facc2a],.panel[data-v-06facc2a],.error[data-v-06facc2a]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:15px}.page-head[data-v-06facc2a],.rows article[data-v-06facc2a]{align-items:center;display:flex;gap:12px;justify-content:space-between}.page-head h1[data-v-06facc2a]{font-size:23px}.page-head p[data-v-06facc2a],.page-head a[data-v-06facc2a]{color:#2563eb;font-size:12px}.page-head span[data-v-06facc2a],.rows span[data-v-06facc2a]{color:#64748b;font-size:12px}.page-head button[data-v-06facc2a],.rows button[data-v-06facc2a]{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;display:inline-flex;gap:6px;min-height:36px;padding:7px 10px}.rows[data-v-06facc2a]{display:grid;gap:8px;margin-top:10px}.rows article[data-v-06facc2a]{border-top:1px solid #eef2f7;padding-top:9px}.rows article>div[data-v-06facc2a]{display:grid}.error[data-v-06facc2a]{color:#b91c1c}.table-wrap[data-v-06facc2a]{overflow:auto}table[data-v-06facc2a]{border-collapse:collapse;min-width:600px;width:100%}th[data-v-06facc2a],td[data-v-06facc2a]{border-bottom:1px solid #eef2f7;padding:9px;text-align:center}th[data-v-06facc2a]{background:#f8fafc;color:#475569;font-size:12px}.empty[data-v-06facc2a]{color:#64748b;text-align:center}@media(max-width:700px){.page-head[data-v-06facc2a],.rows article[data-v-06facc2a]{align-items:stretch;flex-direction:column}}

.deal-page[data-v-61334d1a] {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.deal-header[data-v-61334d1a],
.panel[data-v-61334d1a] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
}
.deal-header[data-v-61334d1a] {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}
.eyebrow[data-v-61334d1a] {
  color: #2563eb;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 2px;
}
.deal-header h1[data-v-61334d1a] {
  font-size: 24px;
  line-height: 1.25;
}
.header-subtitle[data-v-61334d1a] {
  color: #4b5563;
  margin-top: 4px;
}
.header-actions[data-v-61334d1a],
.segmented[data-v-61334d1a],
.filter-panel[data-v-61334d1a] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.segmented[data-v-61334d1a] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 4px;
}
.metric-strip[data-v-61334d1a] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
}
.metric-strip-finance[data-v-61334d1a] {
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-61334d1a] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-left-width: 4px;
  border-radius: 8px;
  padding: 12px 14px;
}
.metric-blue[data-v-61334d1a] {
  border-left-color: #2563eb;
}
.metric-green[data-v-61334d1a] {
  border-left-color: #059669;
}
.metric-amber[data-v-61334d1a] {
  border-left-color: #d97706;
}
.metric-red[data-v-61334d1a] {
  border-left-color: #dc2626;
}
.metric-value[data-v-61334d1a] {
  font-size: 20px;
  font-weight: 900;
  line-height: 1.15;
}
.metric-label[data-v-61334d1a] {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}
.input[data-v-61334d1a] {
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  box-sizing: border-box;
  color: #111827;
  min-height: 36px;
  padding: 7px 10px;
}
.filter-panel .input[data-v-61334d1a]:first-child {
  min-width: 340px;
}
.input.compact[data-v-61334d1a] {
  min-width: 128px;
}
.input.date[data-v-61334d1a] {
  width: 150px;
}
.message-card[data-v-61334d1a] {
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  padding: 10px 12px;
}
.error-card[data-v-61334d1a] {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #b91c1c;
}
.success-card[data-v-61334d1a] {
  background: #ecfdf3;
  border: 1px solid #bbf7d0;
  color: #047857;
}
.btn-danger-soft[data-v-61334d1a] {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}
.table-panel[data-v-61334d1a] {
  padding: 0;
}
.table-scroll[data-v-61334d1a],
.export-panel[data-v-61334d1a] {
  overflow: auto;
}
.deal-table[data-v-61334d1a],
.export-table[data-v-61334d1a] {
  border-collapse: collapse;
  width: 100%;
}
.deal-table[data-v-61334d1a] {
  min-width: 1280px;
}
.export-table[data-v-61334d1a] {
  min-width: 4300px;
  table-layout: fixed;
}
.deal-table th[data-v-61334d1a],
.deal-table td[data-v-61334d1a],
.export-table th[data-v-61334d1a],
.export-table td[data-v-61334d1a] {
  border-bottom: 1px solid #eef0f5;
  font-size: 12px;
  padding: 9px 10px;
  text-align: left;
  vertical-align: middle;
}
.export-table th[data-v-61334d1a],
.export-table td[data-v-61334d1a] {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.export-table th.col-dealAmountCny[data-v-61334d1a],
.export-table td.col-dealAmountCny[data-v-61334d1a],
.export-table th.col-salesInvoiceType[data-v-61334d1a],
.export-table td.col-salesInvoiceType[data-v-61334d1a],
.export-table th.col-salesFreightAmountCny[data-v-61334d1a],
.export-table td.col-salesFreightAmountCny[data-v-61334d1a],
.export-table th.col-salesInstallAmountCny[data-v-61334d1a],
.export-table td.col-salesInstallAmountCny[data-v-61334d1a],
.export-table th.col-purchaseCostCny[data-v-61334d1a],
.export-table td.col-purchaseCostCny[data-v-61334d1a],
.export-table th.col-freightCostCny[data-v-61334d1a],
.export-table td.col-freightCostCny[data-v-61334d1a],
.export-table th.col-taxCostCny[data-v-61334d1a],
.export-table td.col-taxCostCny[data-v-61334d1a],
.export-table th.col-installCostCny[data-v-61334d1a],
.export-table td.col-installCostCny[data-v-61334d1a],
.export-table th.col-totalCostCny[data-v-61334d1a],
.export-table td.col-totalCostCny[data-v-61334d1a],
.export-table th.col-purchaseDepositCny[data-v-61334d1a],
.export-table td.col-purchaseDepositCny[data-v-61334d1a],
.export-table th.col-purchaseBalanceCny[data-v-61334d1a],
.export-table td.col-purchaseBalanceCny[data-v-61334d1a],
.export-table th.col-grossProfitCny[data-v-61334d1a],
.export-table td.col-grossProfitCny[data-v-61334d1a] {
  min-width: 118px;
  text-align: center;
  width: 118px;
}
.export-table th.col-invoiceType[data-v-61334d1a],
.export-table td.col-invoiceType[data-v-61334d1a],
.export-table th.col-qty[data-v-61334d1a],
.export-table td.col-qty[data-v-61334d1a],
.export-table th.col-unitPrice[data-v-61334d1a],
.export-table td.col-unitPrice[data-v-61334d1a] {
  min-width: 96px;
  text-align: center;
  width: 96px;
}
.deal-table th[data-v-61334d1a],
.export-table th[data-v-61334d1a] {
  background: #f8fafc;
  color: #475467;
  font-weight: 800;
  position: sticky;
  top: 0;
  white-space: nowrap;
  z-index: 1;
}
.export-table .cell[data-v-61334d1a] {
  color: #344054;
  line-height: 1.35;
}
.export-table .cell-number[data-v-61334d1a] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-align: center;
}
.export-table .cell-center[data-v-61334d1a] {
  text-align: center;
}
.export-table .cell-date[data-v-61334d1a] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.export-table th.group-sales[data-v-61334d1a],
.export-table td.group-sales[data-v-61334d1a] {
  background: #fbfdff;
}
.export-table th.col-dealAmountCny[data-v-61334d1a],
.export-table td.col-dealAmountCny[data-v-61334d1a] {
  border-left: 2px solid #60a5fa;
}
.export-table th.group-purchase[data-v-61334d1a],
.export-table td.group-purchase[data-v-61334d1a] {
  background: #fffdf7;
}
.export-table th.group-finance[data-v-61334d1a],
.export-table td.group-finance[data-v-61334d1a] {
  background: #f8fffb;
}
.export-table th.col-purchaseCostCny[data-v-61334d1a],
.export-table td.col-purchaseCostCny[data-v-61334d1a] {
  border-left: 2px solid #fbbf24;
}
.export-table th.col-grossProfitCny[data-v-61334d1a],
.export-table td.col-grossProfitCny[data-v-61334d1a] {
  border-left: 2px solid #34d399;
}
.export-table th.col-receivedAmountCny[data-v-61334d1a],
.export-table td.col-receivedAmountCny[data-v-61334d1a] {
  min-width: 118px;
  text-align: center;
  width: 118px;
}
.order-note-select[data-v-61334d1a] {
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  color: #111827;
  font: inherit;
  min-height: 30px;
  min-width: 92px;
  padding: 4px 8px;
}
.ledger-inline-input[data-v-61334d1a] {
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  color: #111827;
  font: inherit;
  min-height: 30px;
  min-width: 130px;
  padding: 4px 8px;
  text-align: center;
}
.detail-order-note[data-v-61334d1a] {
  width: 100%;
}
.detail-ledger-input[data-v-61334d1a] {
  width: 100%;
}
.export-table .action-cell[data-v-61334d1a] {
  background: #fff;
  position: sticky;
  right: 0;
  text-align: center;
  width: 92px;
  z-index: 2;
}
.export-table th[data-v-61334d1a]:last-child {
  background: #f8fafc;
  position: sticky;
  right: 0;
  text-align: center;
  width: 92px;
  z-index: 3;
}
.deal-table tr[data-v-61334d1a]:hover,
.export-table tr[data-v-61334d1a]:hover {
  background: #f9fafb;
}
.main-cell[data-v-61334d1a] {
  display: grid;
  gap: 2px;
  min-width: 150px;
}
.main-cell strong[data-v-61334d1a] {
  font-size: 12px;
}
.main-cell span[data-v-61334d1a],
.export-hint[data-v-61334d1a],
.detail-card p[data-v-61334d1a] {
  color: #667085;
  font-size: 12px;
}
.money[data-v-61334d1a],
.mono[data-v-61334d1a] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  white-space: nowrap;
}
.money[data-v-61334d1a] {
  font-weight: 800;
}
.nowrap[data-v-61334d1a] {
  white-space: nowrap;
}
.ellipsis[data-v-61334d1a] {
  max-width: 160px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.status-pill[data-v-61334d1a] {
  background: #f2f4f7;
  border: 1px solid #e4e7ec;
  border-radius: 999px;
  color: #344054;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  padding: 5px 8px;
  white-space: nowrap;
}
.btn-sm[data-v-61334d1a] {
  border-radius: 8px;
  padding: 6px 8px;
}
.empty-state[data-v-61334d1a] {
  align-items: center;
  color: #667085;
  display: grid;
  gap: 6px;
  justify-items: center;
  min-height: 160px;
  padding: 20px;
  text-align: center;
}
.bottom-scroll[data-v-61334d1a] {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid #e8eaf0;
  border-radius: 999px;
  bottom: 8px;
  height: 16px;
  left: 12px;
  overflow-x: auto;
  overflow-y: hidden;
  position: fixed;
  right: 12px;
  z-index: 60;
}
.bottom-scroll-inner[data-v-61334d1a] {
  height: 1px;
}
.drawer-mask[data-v-61334d1a] {
  background: rgba(15, 23, 42, 0.36);
  display: flex;
  justify-content: flex-end;
  position: fixed;
  inset: 0;
  z-index: 50;
}
.detail-drawer[data-v-61334d1a] {
  background: #fff;
  border-left: 1px solid #e5e7eb;
  box-shadow: -12px 0 32px rgba(15, 23, 42, 0.12);
  box-sizing: border-box;
  height: 100vh;
  overflow: auto;
  padding: 16px;
  width: min(560px, 94vw);
}
.drawer-head[data-v-61334d1a] {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.detail-grid[data-v-61334d1a] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 14px;
}
.detail-ledger-grid[data-v-61334d1a] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.detail-sections[data-v-61334d1a] {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.detail-section[data-v-61334d1a] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 12px;
}
.detail-section h3[data-v-61334d1a] {
  font-size: 15px;
  line-height: 1.4;
  margin: 0;
}
.detail-section-head[data-v-61334d1a] {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-bottom: 10px;
}
.btn-small[data-v-61334d1a] {
  border-radius: 8px;
  font-size: 12px;
  padding: 6px 10px;
}
.detail-sales[data-v-61334d1a] {
  border-left: 4px solid #60a5fa;
}
.detail-purchase[data-v-61334d1a] {
  border-left: 4px solid #f59e0b;
}
.detail-finance[data-v-61334d1a] {
  border-left: 4px solid #10b981;
}
.detail-ledger-item[data-v-61334d1a] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px 12px;
}
.detail-ledger-item span[data-v-61334d1a] {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}
.detail-ledger-item strong[data-v-61334d1a] {
  color: #111827;
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.payment-detail-lines[data-v-61334d1a] {
  background: #f8fafc;
  border-radius: 6px;
  display: block;
  padding: 8px;
}
.link-button[data-v-61334d1a] {
  background: transparent;
  border: 0;
  color: #2563eb;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  padding: 0;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.preview-mask[data-v-61334d1a] {
  align-items: center;
  background: rgba(15, 23, 42, 0.42);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 20px;
  position: fixed;
  z-index: 80;
}
.preview-dialog[data-v-61334d1a] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.22);
  display: grid;
  gap: 10px;
  grid-template-rows: auto minmax(0, 1fr);
  height: min(92vh, 980px);
  padding: 12px;
  width: min(980px, 96vw);
}
.change-dialog[data-v-61334d1a] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.22);
  box-sizing: border-box;
  max-height: 92vh;
  overflow: auto;
  padding: 16px;
  width: min(620px, 94vw);
}
.change-form[data-v-61334d1a] {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.change-form label[data-v-61334d1a] {
  display: grid;
  gap: 6px;
}
.change-form span[data-v-61334d1a] {
  color: #475467;
  font-size: 12px;
  font-weight: 800;
}
.change-form input[data-v-61334d1a],
.change-form textarea[data-v-61334d1a] {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  box-sizing: border-box;
  color: #111827;
  font: inherit;
  line-height: 1.5;
  padding: 9px 10px;
  width: 100%;
}
.change-form textarea[data-v-61334d1a] {
  resize: vertical;
}
.dialog-actions[data-v-61334d1a] {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 14px;
}
.btn.primary[data-v-61334d1a] {
  background: #2563eb;
  border-color: #2563eb;
  color: #fff;
}
.preview-dialog .drawer-head[data-v-61334d1a] {
  align-items: flex-start;
  min-height: 0;
}
.preview-dialog .eyebrow[data-v-61334d1a] {
  margin-bottom: 0;
}
.preview-dialog h2[data-v-61334d1a] {
  font-size: 20px;
  line-height: 1.25;
  margin: 0;
}
.preview-actions[data-v-61334d1a] {
  display: flex;
  gap: 8px;
}
.contract-frame[data-v-61334d1a] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  height: 100%;
  min-height: 0;
  width: 100%;
}
.detail-card[data-v-61334d1a] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}
.detail-card.wide[data-v-61334d1a] {
  grid-column: 1 / -1;
}
.detail-card span[data-v-61334d1a] {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}
.detail-card strong[data-v-61334d1a] {
  font-size: 14px;
}
@media (max-width: 900px) {
.deal-header[data-v-61334d1a] {
    align-items: flex-start;
    flex-direction: column;
}
.metric-strip[data-v-61334d1a] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.filter-panel .input[data-v-61334d1a]:first-child,
  .input.compact[data-v-61334d1a],
  .input.date[data-v-61334d1a] {
    min-width: 0;
    width: 100%;
}
}

.blue-ocean-page[data-v-55d1deec] { display: grid; gap: 12px;
}
.blue-ocean-header[data-v-55d1deec] { align-items: flex-start; display: flex; gap: 16px; justify-content: space-between;
}
.eyebrow[data-v-55d1deec] { color: #2563eb; font-size: 12px; font-weight: 800; margin-bottom: 4px;
}
.blue-ocean-actions[data-v-55d1deec], .toolbar-card[data-v-55d1deec] { align-items: center; display: flex; flex-wrap: wrap; gap: 8px;
}
select[data-v-55d1deec], input[data-v-55d1deec] { background: #fff; border: 1px solid #d0d5dd; border-radius: 8px; box-sizing: border-box; color: #111827; min-height: 38px; padding: 8px 10px;
}
input[data-v-55d1deec] { min-width: 320px;
}
.blue-ocean-stats[data-v-55d1deec] { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr));
}
.stat-tile[data-v-55d1deec] { background: #fff; border: 1px solid #e4e7ec; border-radius: 8px; padding: 14px;
}
.stat-tile span[data-v-55d1deec] { color: #667085; display: block; font-size: 13px; font-weight: 700;
}
.stat-tile strong[data-v-55d1deec] { color: #111827; display: block; font-size: 24px; margin-top: 6px;
}
.message-card[data-v-55d1deec] { border-radius: 8px; font-weight: 700; padding: 12px 14px;
}
.error-card[data-v-55d1deec] { background: #fff1f2; border: 1px solid #fecdd3; color: #b42318;
}
.success-card[data-v-55d1deec] { background: #ecfdf3; border: 1px solid #bbf7d0; color: #027a48;
}
.table-card[data-v-55d1deec] { overflow: hidden;
}
.table-scroll[data-v-55d1deec] { overflow-x: auto;
}
.blue-ocean-table[data-v-55d1deec] { border-collapse: collapse; min-width: 1180px; width: 100%;
}
.blue-ocean-table th[data-v-55d1deec], .blue-ocean-table td[data-v-55d1deec] { border-bottom: 1px solid #eef2f7; padding: 12px; text-align: left; vertical-align: top;
}
.blue-ocean-table th[data-v-55d1deec] { background: #f8fafc; color: #475467; font-size: 12px; font-weight: 800;
}
.mono[data-v-55d1deec] { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.strong-cell[data-v-55d1deec] { color: #111827; font-weight: 800;
}
.tag[data-v-55d1deec] { background: #eef4ff; border-radius: 999px; color: #3538cd; display: inline-flex; font-size: 12px; font-weight: 800; padding: 4px 8px;
}
.tag.auto[data-v-55d1deec] { background: #fff7ed; color: #c2410c;
}
.claimer-list[data-v-55d1deec], .customer-cell[data-v-55d1deec], .row-actions[data-v-55d1deec] { display: grid; gap: 6px;
}
.shop-cell[data-v-55d1deec] { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.empty-state[data-v-55d1deec] { align-items: center; color: #667085; display: grid; gap: 10px; justify-items: center; padding: 36px 12px; text-align: center;
}
@media (max-width: 760px) {
.blue-ocean-header[data-v-55d1deec] { display: grid;
}
.blue-ocean-stats[data-v-55d1deec] { grid-template-columns: 1fr;
}
input[data-v-55d1deec] { min-width: 0; width: 100%;
}
}

.honor-page[data-v-d8df3d1a] { padding: 22px; color: #172033;
}
.honor-header[data-v-d8df3d1a] { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px;
}
.honor-header h1[data-v-d8df3d1a] { margin: 2px 0 5px; font-size: 28px; letter-spacing: 0;
}
.eyebrow[data-v-d8df3d1a] { margin: 0; color: #94651c; font-size: 12px; font-weight: 800;
}
.muted[data-v-d8df3d1a] { color: #6b7280;
}
.refresh-btn[data-v-d8df3d1a], .primary-btn[data-v-d8df3d1a], .approve-btn[data-v-d8df3d1a], .reject-btn[data-v-d8df3d1a], .form-actions button[data-v-d8df3d1a], .rule-row button[data-v-d8df3d1a] { min-height: 36px; border: 1px solid #cbd5e1; border-radius: 6px; background: #fff; padding: 7px 13px; cursor: pointer;
}
.primary-btn[data-v-d8df3d1a], .approve-btn[data-v-d8df3d1a] { border-color: #1f6b55; background: #1f6b55; color: #fff;
}
.reject-btn[data-v-d8df3d1a] { border-color: #b42318; color: #b42318;
}
.honor-tabs[data-v-d8df3d1a] { display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid #d9dee8; margin-bottom: 18px;
}
.honor-tabs button[data-v-d8df3d1a] { border: 0; border-bottom: 3px solid transparent; background: transparent; padding: 10px 16px; white-space: nowrap; cursor: pointer;
}
.honor-tabs button.active[data-v-d8df3d1a] { border-bottom-color: #b8872d; color: #7c5310; font-weight: 800;
}
.notice[data-v-d8df3d1a] { margin-bottom: 14px; border-radius: 6px; padding: 10px 12px;
}
.notice.error[data-v-d8df3d1a] { background: #fff0ee; color: #a12b20;
}.notice.success[data-v-d8df3d1a] { background: #eaf7f1; color: #176149;
}
.empty-state[data-v-d8df3d1a] { padding: 38px 18px; border: 1px dashed #cbd5e1; text-align: center; color: #667085;
}
.award-grid[data-v-d8df3d1a] { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 14px;
}
.award-card[data-v-d8df3d1a] { display: flex; gap: 18px; align-items: center; min-height: 164px; border: 1px solid #d7dce5; border-radius: 8px; background: #fff; padding: 20px; box-shadow: 0 7px 20px rgba(31, 41, 55, 0.07);
}
.award-copy[data-v-d8df3d1a] { min-width: 0; flex: 1;
}.award-copy h2[data-v-d8df3d1a] { margin: 7px 0; font-size: 22px;
}.award-copy p[data-v-d8df3d1a] { margin: 0 0 12px; color: #4b5563;
}
.award-labels[data-v-d8df3d1a] { display: flex; gap: 6px;
}.award-labels span[data-v-d8df3d1a] { border: 1px solid #dfc682; border-radius: 4px; background: #fff9e9; padding: 2px 6px; color: #79551c; font-size: 12px;
}
dl[data-v-d8df3d1a] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0;
}
dt[data-v-d8df3d1a] { color: #7b8495; font-size: 11px;
}
dd[data-v-d8df3d1a] { margin: 2px 0 0; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.table-wrap[data-v-d8df3d1a] { overflow-x: auto; border: 1px solid #d9dee8;
}.table-wrap table[data-v-d8df3d1a] { width: 100%; min-width: 920px; border-collapse: collapse; background: #fff;
}
th[data-v-d8df3d1a], td[data-v-d8df3d1a] { border-bottom: 1px solid #e4e7ec; padding: 10px 9px; text-align: center;
}
th[data-v-d8df3d1a] { background: #f5f7fa; color: #495366; font-size: 13px;
}
td small[data-v-d8df3d1a] { display: block; color: #7b8495;
}.truncate[data-v-d8df3d1a] { max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.danger-link[data-v-d8df3d1a] { border: 0; background: transparent; color: #b42318; cursor: pointer;
}
.form-band[data-v-d8df3d1a] { margin-bottom: 18px; border-top: 3px solid #c89b3c; background: #f8f9fb; padding: 18px;
}.form-band h2[data-v-d8df3d1a] { margin: 0 0 14px; font-size: 18px;
}
.form-grid[data-v-d8df3d1a] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;
}.form-grid label[data-v-d8df3d1a] { display: grid; gap: 5px; color: #4b5563; font-size: 13px;
}.form-grid .wide[data-v-d8df3d1a] { grid-column: span 3;
}.form-grid .check[data-v-d8df3d1a] { display: flex; align-items: center; gap: 7px;
}
input[data-v-d8df3d1a], select[data-v-d8df3d1a], textarea[data-v-d8df3d1a] { width: 100%; border: 1px solid #cbd5e1; border-radius: 5px; background: #fff; padding: 8px 9px; font: inherit;
}.check input[data-v-d8df3d1a] { width: auto;
}
.form-actions[data-v-d8df3d1a] { display: flex; gap: 8px; margin-top: 12px;
}
.candidate-list[data-v-d8df3d1a], .rule-grid[data-v-d8df3d1a] { display: grid; gap: 10px;
}.candidate-row[data-v-d8df3d1a], .rule-row[data-v-d8df3d1a] { display: flex; align-items: flex-start; gap: 14px; border: 1px solid #d9dee8; border-radius: 7px; background: #fff; padding: 14px;
}
.candidate-main[data-v-d8df3d1a] { min-width: 0; flex: 1;
}.candidate-title[data-v-d8df3d1a] { display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
}.candidate-title em[data-v-d8df3d1a] { border-radius: 4px; background: #eef2f7; padding: 3px 7px; color: #4b5563; font-size: 12px; font-style: normal;
}.candidate-main p[data-v-d8df3d1a] { margin: 6px 0;
}.candidate-actions[data-v-d8df3d1a] { display: flex; gap: 6px;
}
.rule-row > div[data-v-d8df3d1a] { min-width: 0; flex: 1;
}.rule-row p[data-v-d8df3d1a] { margin: 5px 0; color: #4b5563;
}.rule-row .rule-reward[data-v-d8df3d1a] { color: #7c5310;
}.rule-row small[data-v-d8df3d1a] { color: #7b8495;
}
@media (max-width: 760px) {
.honor-page[data-v-d8df3d1a] { padding: 14px;
}.honor-header[data-v-d8df3d1a] { align-items: center;
}.form-grid[data-v-d8df3d1a] { grid-template-columns: 1fr;
}.form-grid .wide[data-v-d8df3d1a] { grid-column: span 1;
}.award-grid[data-v-d8df3d1a] { grid-template-columns: 1fr;
}.award-card[data-v-d8df3d1a] { align-items: flex-start; padding: 15px;
}
dl[data-v-d8df3d1a] { grid-template-columns: 1fr 1fr;
}.candidate-row[data-v-d8df3d1a], .rule-row[data-v-d8df3d1a] { flex-wrap: wrap;
}.candidate-actions[data-v-d8df3d1a] { width: 100%; justify-content: flex-end;
}
}

.workbench[data-v-bd677261] { display: flex; flex-direction: column; gap: 14px;
}
.workbench-header[data-v-bd677261],
.panel[data-v-bd677261] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.workbench-header[data-v-bd677261] { display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.eyebrow[data-v-bd677261] { color: #2563eb; font-size: 12px; font-weight: 700; margin-bottom: 2px;
}
.workbench-header h1[data-v-bd677261] { font-size: 24px; line-height: 1.25;
}
.header-subtitle[data-v-bd677261] { color: #4b5563; font-size: 14px; line-height: 1.65; margin-top: 4px;
}
.header-actions[data-v-bd677261] { display: flex; flex: 0 0 auto; gap: 8px;
}
.header-actions a[data-v-bd677261] { text-decoration: none;
}
.metric-strip[data-v-bd677261] { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 10px;
}
.metric-item[data-v-bd677261] { background: #fff; border: 1px solid #e5e7eb; border-left-width: 4px; border-radius: 8px; padding: 12px 14px;
}
.metric-blue[data-v-bd677261] { border-left-color: #2563eb;
}
.metric-amber[data-v-bd677261] { border-left-color: #d97706;
}
.metric-green[data-v-bd677261] { border-left-color: #059669;
}
.metric-red[data-v-bd677261] { border-left-color: #dc2626;
}
.metric-value[data-v-bd677261] { font-size: 22px; font-weight: 800; line-height: 1.22;
}
.metric-label[data-v-bd677261],
.flow-copy span[data-v-bd677261],
.workarea-item p[data-v-bd677261] { color: #6b7280; font-size: 14px; line-height: 1.65;
}
.section-title-row[data-v-bd677261] { margin-bottom: 12px;
}
.section-title-row h2[data-v-bd677261] { font-size: 17px;
}
.flow-list[data-v-bd677261] { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)); gap: 8px; margin-top: 12px;
}
.flow-step[data-v-bd677261],
.workarea-item[data-v-bd677261] { border: 1px solid #e5e7eb; border-radius: 8px; background: #fafafa; padding: 10px;
}
.flow-step[data-v-bd677261] { min-height: 86px;
}
.flow-index[data-v-bd677261] { width: 24px; height: 24px; border-radius: 50%; background: #111827; color: #fff; display: grid; place-items: center; font-size: 12px; font-weight: 700; margin-bottom: 8px;
}
.flow-copy[data-v-bd677261] { display: flex; flex-direction: column; gap: 2px;
}
.flow-copy strong[data-v-bd677261] { font-size: 14px; line-height: 1.45;
}
.workarea-grid[data-v-bd677261] { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: 10px;
}
.workarea-item[data-v-bd677261] { min-height: 104px; color: inherit; text-decoration: none; background: #fff;
}
.workarea-item[data-v-bd677261]:hover { border-color: #9ca3af;
}
.workarea-title-row[data-v-bd677261] { display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.workarea-title-row h3[data-v-bd677261] { font-size: 16px; line-height: 1.45;
}
.workarea-title-row span[data-v-bd677261] { border: 1px solid #d1d5db; border-radius: 999px; color: #4b5563; font-size: 13px; line-height: 1.35; padding: 2px 8px; white-space: nowrap;
}
.workarea-item p[data-v-bd677261] { margin-top: 8px;
}
.flow-details summary[data-v-bd677261] { color: #2563eb; cursor: pointer; font-weight: 700;
}
@media (max-width: 1100px) {
.flow-list[data-v-bd677261],
  .workarea-grid[data-v-bd677261] { grid-template-columns: repeat(2, minmax(220px, 1fr));
}
}
@media (max-width: 760px) {
.workbench-header[data-v-bd677261] { align-items: flex-start; flex-direction: column;
}
.header-actions[data-v-bd677261] { flex-wrap: wrap;
}
.metric-strip[data-v-bd677261],
  .flow-list[data-v-bd677261],
  .workarea-grid[data-v-bd677261] { grid-template-columns: 1fr;
}
}

.leave-page[data-v-9125be92] {
  display: grid;
  gap: 12px;
}
.page-head[data-v-9125be92],
.panel[data-v-9125be92],
.notice[data-v-9125be92] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-9125be92] {
  color: #2563eb;
  font-size: 13px;
  text-decoration: none;
}
.head-row[data-v-9125be92],
.section-title-row[data-v-9125be92] {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}
.head-row[data-v-9125be92] {
  margin-top: 8px;
}
h1[data-v-9125be92] {
  font-size: 22px;
}
h2[data-v-9125be92] {
  font-size: 17px;
}
.page-head p[data-v-9125be92],
.muted[data-v-9125be92] {
  color: #6b7280;
  font-size: 12px;
}
.notice[data-v-9125be92] {
  border-color: rgba(16, 185, 129, .35);
  background: rgba(16, 185, 129, .08);
}
.day-counter[data-v-9125be92] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  min-width: 92px;
  padding: 8px 10px;
  text-align: center;
}
.day-counter strong[data-v-9125be92] {
  display: block;
  font-size: 22px;
}
.day-counter span[data-v-9125be92] {
  color: #6b7280;
  font-size: 12px;
}
.form-grid[data-v-9125be92] {
  display: grid;
  grid-template-columns: 1.1fr repeat(4, minmax(130px, 1fr));
  gap: 10px;
  margin-top: 12px;
}
label[data-v-9125be92] {
  display: grid;
  gap: 4px;
  font-size: 12px;
  color: #6b7280;
}
input[data-v-9125be92],
select[data-v-9125be92],
textarea[data-v-9125be92] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  padding: 8px 10px;
}
.reason-field[data-v-9125be92] {
  grid-column: 1 / -1;
}
.form-actions[data-v-9125be92],
.review-actions[data-v-9125be92] {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}
.form-actions[data-v-9125be92] {
  margin-top: 10px;
}
.review-list[data-v-9125be92] {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.review-card[data-v-9125be92] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  grid-template-columns: 1fr minmax(360px, .6fr);
  gap: 12px;
  padding: 10px;
}
.review-actions input[data-v-9125be92] {
  min-width: 180px;
}
.table-wrap[data-v-9125be92] {
  overflow: auto;
}
table[data-v-9125be92] {
  border-collapse: collapse;
  min-width: 1080px;
  width: 100%;
}
th[data-v-9125be92],
td[data-v-9125be92] {
  border-bottom: 1px solid #e5e7eb;
  font-size: 13px;
  padding: 9px 10px;
  text-align: left;
  vertical-align: top;
}
th[data-v-9125be92] {
  background: #f9fafb;
  color: #374151;
  font-weight: 700;
  white-space: nowrap;
}
.approval-chain[data-v-9125be92] {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.approval-chain span[data-v-9125be92] {
  border: 1px solid #d1d5db;
  border-radius: 999px;
  color: #4b5563;
  font-size: 12px;
  padding: 2px 8px;
  white-space: nowrap;
}
.approval-chain .step-approved[data-v-9125be92] {
  border-color: #86efac;
  color: #166534;
}
.approval-chain .step-pending[data-v-9125be92] {
  border-color: #fbbf24;
  color: #92400e;
}
.approval-chain .step-rejected[data-v-9125be92] {
  border-color: #fca5a5;
  color: #991b1b;
}
.reason-cell[data-v-9125be92] {
  max-width: 280px;
  white-space: normal;
}
.empty[data-v-9125be92] {
  color: #6b7280;
  padding: 18px 12px;
  text-align: center;
}
.req-star[data-v-9125be92] {
  color: #dc2626;
  font-weight: 900;
}
@media (max-width: 980px) {
.head-row[data-v-9125be92],
  .section-title-row[data-v-9125be92],
  .review-card[data-v-9125be92] {
    align-items: flex-start;
    grid-template-columns: 1fr;
}
.form-grid[data-v-9125be92] {
    grid-template-columns: 1fr;
}
.review-actions[data-v-9125be92] {
    justify-content: flex-start;
    flex-wrap: wrap;
}
}

.manual-page[data-v-51c84881] { display: flex; flex-direction: column; gap: 14px;
}
.hero[data-v-51c84881],
.panel[data-v-51c84881],
.chapter[data-v-51c84881] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.hero[data-v-51c84881] { display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.hero-actions[data-v-51c84881] { display: flex; flex: 0 0 auto; gap: 8px;
}
.eyebrow[data-v-51c84881] { color: #2563eb; font-size: 12px; font-weight: 800; margin-bottom: 2px;
}
h1[data-v-51c84881] { font-size: 26px; line-height: 1.25;
}
h2[data-v-51c84881] { font-size: 18px; line-height: 1.35;
}
.sub[data-v-51c84881],
.section-title-row p[data-v-51c84881],
.principles span[data-v-51c84881],
.chapter li[data-v-51c84881],
.flow-card span[data-v-51c84881],
.tips li[data-v-51c84881] { color: #4b5563; line-height: 1.7;
}
.btn[data-v-51c84881] { text-decoration: none; white-space: nowrap;
}
.section-title-row[data-v-51c84881] { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px;
}
.principles[data-v-51c84881] { display: grid; grid-template-columns: repeat(4, minmax(160px, 1fr)); gap: 10px;
}
.principles div[data-v-51c84881],
.flow-card[data-v-51c84881] { border: 1px solid #e5e7eb; border-radius: 8px; padding: 12px; display: flex; flex-direction: column; gap: 4px; background: #fafafa;
}
.chapter-grid[data-v-51c84881] { display: grid; grid-template-columns: repeat(2, minmax(280px, 1fr)); gap: 10px;
}
.chapter h2[data-v-51c84881] { margin-bottom: 8px;
}
.chapter ul[data-v-51c84881],
.tips[data-v-51c84881] { margin: 0; padding-left: 18px;
}
.flow-grid[data-v-51c84881] { display: grid; grid-template-columns: repeat(4, minmax(160px, 1fr)); gap: 10px;
}
@media (max-width: 1100px) {
.principles[data-v-51c84881],
  .flow-grid[data-v-51c84881] { grid-template-columns: repeat(2, minmax(180px, 1fr));
}
}
@media (max-width: 800px) {
.hero[data-v-51c84881],
  .section-title-row[data-v-51c84881] { align-items: flex-start; flex-direction: column;
}
.principles[data-v-51c84881],
  .chapter-grid[data-v-51c84881],
  .flow-grid[data-v-51c84881] { grid-template-columns: 1fr;
}
}

.tool-page[data-v-be95c5da] { display: flex; flex-direction: column; gap: 14px;
}
.hero[data-v-be95c5da],
.panel[data-v-be95c5da],
.preview-card[data-v-be95c5da] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.hero[data-v-be95c5da] { display: flex; justify-content: space-between; gap: 16px; align-items: center;
}
.eyebrow[data-v-be95c5da] { color: #2563eb; font-size: 12px; font-weight: 800; margin-bottom: 2px;
}
h1[data-v-be95c5da] { font-size: 24px;
}
.sub[data-v-be95c5da],
.muted[data-v-be95c5da] { color: #6b7280;
}
.controls[data-v-be95c5da] { display: flex; flex-wrap: wrap; gap: 10px; align-items: end;
}
.controls label[data-v-be95c5da] { display: flex; flex-direction: column; gap: 4px; color: #374151; font-weight: 700;
}
.controls input[type="number"][data-v-be95c5da] { width: 100px;
}
.upload input[data-v-be95c5da] { max-width: 240px;
}
.preview-grid[data-v-be95c5da] { display: grid; grid-template-columns: repeat(2, minmax(260px, 1fr)); gap: 12px;
}
.preview-card img[data-v-be95c5da] { display: block; max-width: 100%; max-height: 560px; margin-top: 10px; border: 1px solid #e5e7eb; border-radius: 8px; object-fit: contain;
}
.status[data-v-be95c5da] { color: #374151; font-weight: 700;
}
.download-tip[data-v-be95c5da] { color: #2563eb; font-weight: 800;
}
@media (max-width: 900px) {
.hero[data-v-be95c5da] { align-items: flex-start; flex-direction: column;
}
.preview-grid[data-v-be95c5da] { grid-template-columns: 1fr;
}
}

.tool-page[data-v-46a43835] { display: flex; flex-direction: column; gap: 14px;
}
.hero[data-v-46a43835],
.panel[data-v-46a43835] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px;
}
.hero[data-v-46a43835] { display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.eyebrow[data-v-46a43835] { color: #2563eb; font-size: 12px; font-weight: 800; margin-bottom: 2px;
}
h1[data-v-46a43835] { font-size: 24px;
}
h2[data-v-46a43835] { font-size: 18px; margin-bottom: 10px;
}
.sub[data-v-46a43835],
.status[data-v-46a43835],
.hint[data-v-46a43835] { color: #4b5563;
}
.download-tip[data-v-46a43835] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #374151;
}
.download-tip a[data-v-46a43835] { color: #2563eb; font-weight: 800;
}
.controls[data-v-46a43835] { display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
}
.controls label[data-v-46a43835] { display: flex; align-items: center; gap: 6px; color: #374151;
}
.preview-img[data-v-46a43835] { max-width: 360px; max-height: 240px; margin-top: 10px; border: 1px solid #e5e7eb; border-radius: 8px; object-fit: contain;
}
.file-list[data-v-46a43835] { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px;
}
.file-list span[data-v-46a43835] { border: 1px solid #d1d5db; border-radius: 999px; padding: 2px 8px; color: #4b5563;
}
.table-wrap[data-v-46a43835] { overflow: auto; margin-top: 10px; border: 1px solid #e5e7eb; border-radius: 8px;
}
table[data-v-46a43835] { width: 100%; border-collapse: collapse;
}
th[data-v-46a43835],
td[data-v-46a43835] { padding: 8px 10px; border-bottom: 1px solid #eef0f5; text-align: left; white-space: nowrap;
}
@media (max-width: 800px) {
.hero[data-v-46a43835] { align-items: flex-start; flex-direction: column;
}
}

.freight-page[data-v-78e77b9d] {
  min-height: calc(100vh - 84px);
  margin: -4px;
}
.freight-frame[data-v-78e77b9d] {
  width: 100%;
  min-height: calc(100vh - 88px);
  border: 0;
  display: block;
  background: #f6f7fb;
}

.section[data-v-5ddb34ac] {
  border-top: 1px dashed #e8eaf0;
  padding-top: 12px;
}
.upload-box[data-v-5ddb34ac] {
  margin-top: 10px;
  border: 1px dashed #d0d5dd;
  border-radius: 12px;
  padding: 12px;
  background: #fff;
  outline: none;
}
.upload-box[data-v-5ddb34ac]:focus {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}
.input[data-v-5ddb34ac] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.req[data-v-5ddb34ac] {
  color: #b91c1c;
  font-size: 12px;
  font-weight: 700;
}
.err[data-v-5ddb34ac] {
  color: #b91c1c;
  font-size: 12px;
}
.ok[data-v-5ddb34ac] {
  color: #065f46;
  font-size: 12px;
}
.upload-state[data-v-5ddb34ac] { margin-top: 8px; color: #1d4ed8; font-size: 12px; font-weight: 700;
}
.progress-track[data-v-5ddb34ac] { height: 6px; margin-top: 8px; overflow: hidden; border-radius: 999px; background: #e5e7eb;
}
.progress-track span[data-v-5ddb34ac] { display: block; height: 100%; background: #2563eb; transition: width .2s ease;
}

.row[data-v-0d3b2a6f] {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 10px;
  align-items: start;
}
.label[data-v-0d3b2a6f] {
  font-weight: 700;
  padding-top: 6px;
}
.input[data-v-0d3b2a6f] {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.req[data-v-0d3b2a6f] {
  color: #b91c1c;
  margin-left: 4px;
  font-weight: 700;
}
.err-hint[data-v-0d3b2a6f] {
  color: #b91c1c;
  font-size: 12px;
}
.err-text[data-v-0d3b2a6f] {
  color: #b91c1c;
  font-weight: 700;
}
.ok-text[data-v-0d3b2a6f] {
  color: #065f46;
  font-weight: 700;
}
@media (max-width: 820px) {
.row[data-v-0d3b2a6f] {
    grid-template-columns: 1fr;
}
.label[data-v-0d3b2a6f] {
    padding-top: 0;
}
}

.err-text[data-v-ffc77ec2] {
  color: #b91c1c;
  font-weight: 700;
}

.err-text[data-v-cccf6dc8] {
  color: #b91c1c;
  font-weight: 700;
}
.ok-text[data-v-cccf6dc8] {
  color: #065f46;
  font-weight: 700;
}
.k[data-v-cccf6dc8] {
  display: inline-block;
  min-width: 80px;
  font-weight: 700;
  color: #111827;
}
.input[data-v-cccf6dc8] {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.att[data-v-cccf6dc8],
.node[data-v-cccf6dc8] {
  border: 1px solid #eef0f5;
  border-radius: 10px;
  padding: 10px;
}
.req-star[data-v-cccf6dc8] {
  color: #dc2626;
  font-weight: 900;
}

.contract-page[data-v-ea22a74b] {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 52px - 32px);
}
.toolbar-card[data-v-ea22a74b] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.toolbar-title[data-v-ea22a74b] {
  min-width: min(100%, 360px);
}
.title[data-v-ea22a74b] {
  font-weight: 800;
}
.toolbar-spacer[data-v-ea22a74b] {
  flex: 1;
}
.inline-field[data-v-ea22a74b] {
  align-items: center;
  display: flex;
  gap: 8px;
}
.input-lite[data-v-ea22a74b] {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  min-height: 36px;
  padding: 6px 10px;
}
.contract-id-input[data-v-ea22a74b] {
  width: 260px;
}
.so-id-input[data-v-ea22a74b] {
  width: 220px;
}
.info-card[data-v-ea22a74b] {
  background: #eff6ff;
  border-color: #dbeafe;
  margin-top: 10px;
}
.error-card[data-v-ea22a74b] {
  background: rgba(239, 68, 68, 0.06);
  border-color: rgba(239, 68, 68, 0.35);
  color: #b91c1c;
  margin-top: 10px;
}
.contract-list[data-v-ea22a74b] {
  margin-top: 12px;
}
.list-head[data-v-ea22a74b] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
}
.list-head > div[data-v-ea22a74b] {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.list-empty[data-v-ea22a74b] {
  margin-top: 8px;
}
.contract-table-wrap[data-v-ea22a74b] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  margin-top: 10px;
  max-height: 180px;
  overflow: auto;
}
.contract-table[data-v-ea22a74b] {
  border-collapse: collapse;
  font-size: 13px;
  width: 100%;
}
.contract-table th[data-v-ea22a74b],
.contract-table td[data-v-ea22a74b] {
  border-bottom: 1px solid #eef2f7;
  padding: 8px 10px;
  text-align: left;
  white-space: nowrap;
}
.contract-table th[data-v-ea22a74b] {
  background: #f8fafc;
  color: #374151;
}
.contract-table tr.active td[data-v-ea22a74b] {
  background: #eff6ff;
}
.contract-table td[data-v-ea22a74b]:last-child {
  display: flex;
  gap: 8px;
}
.iframe-card[data-v-ea22a74b] {
  flex: 1;
  margin-top: 12px;
  overflow: hidden;
  padding: 0;
}
.iframe-card iframe[data-v-ea22a74b] {
  border: 0;
  height: 100%;
  width: 100%;
}
@media (max-width: 900px) {
.contract-id-input[data-v-ea22a74b],
  .so-id-input[data-v-ea22a74b] {
    width: min(70vw, 320px);
}
}

.purchase-contract-page[data-v-b04acdd4] {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 52px - 32px);
}
.toolbar-card[data-v-b04acdd4] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.toolbar-title[data-v-b04acdd4] {
  min-width: min(100%, 360px);
}
.title[data-v-b04acdd4] {
  font-weight: 800;
}
.toolbar-spacer[data-v-b04acdd4] {
  flex: 1;
}
.inline-field[data-v-b04acdd4] {
  align-items: center;
  display: flex;
  gap: 8px;
}
.input-lite[data-v-b04acdd4] {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  min-height: 36px;
  padding: 6px 10px;
}
.contract-id-input[data-v-b04acdd4] {
  width: 260px;
}
.pr-id-input[data-v-b04acdd4] {
  width: 220px;
}
.info-card[data-v-b04acdd4] {
  background: #eff6ff;
  border-color: #dbeafe;
  margin-top: 10px;
}
.error-card[data-v-b04acdd4] {
  background: rgba(239, 68, 68, 0.06);
  border-color: rgba(239, 68, 68, 0.35);
  color: #b91c1c;
  margin-top: 10px;
}
.contract-list[data-v-b04acdd4] {
  margin-top: 12px;
}
.list-head[data-v-b04acdd4] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
}
.list-head > div[data-v-b04acdd4] {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.list-empty[data-v-b04acdd4] {
  margin-top: 8px;
}
.contract-table-wrap[data-v-b04acdd4] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  margin-top: 10px;
  max-height: 180px;
  overflow: auto;
}
.contract-table[data-v-b04acdd4] {
  border-collapse: collapse;
  font-size: 13px;
  width: 100%;
}
.contract-table th[data-v-b04acdd4],
.contract-table td[data-v-b04acdd4] {
  border-bottom: 1px solid #eef2f7;
  padding: 8px 10px;
  text-align: left;
  white-space: nowrap;
}
.contract-table th[data-v-b04acdd4] {
  background: #f8fafc;
  color: #374151;
}
.contract-table tr.active td[data-v-b04acdd4] {
  background: #eff6ff;
}
.contract-table td[data-v-b04acdd4]:last-child {
  display: flex;
  gap: 8px;
}
.iframe-card[data-v-b04acdd4] {
  flex: 1;
  margin-top: 12px;
  overflow: hidden;
  padding: 0;
}
.iframe-card iframe[data-v-b04acdd4] {
  border: 0;
  height: 100%;
  width: 100%;
}
@media (max-width: 900px) {
.contract-id-input[data-v-b04acdd4],
  .pr-id-input[data-v-b04acdd4] {
    width: min(70vw, 320px);
}
}

.form-grid[data-v-9d8f0a9f] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.field[data-v-9d8f0a9f] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.field-span-2[data-v-9d8f0a9f] {
  grid-column: span 2;
}
.input[data-v-9d8f0a9f] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.inline-link[data-v-9d8f0a9f] {
  color: #2563eb;
  margin-left: 8px;
  text-decoration: none;
}
.err[data-v-9d8f0a9f] {
  color: #b91c1c;
  font-size: 12px;
}

.form-grid[data-v-8a25000e] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.field[data-v-8a25000e] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.field-span-2[data-v-8a25000e] {
  grid-column: span 2;
}
.input[data-v-8a25000e] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.input[data-v-8a25000e]:disabled {
  background: #f3f4f6;
  color: #374151;
  cursor: not-allowed;
}
.upload-progress[data-v-8a25000e] {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
}
.upload-progress-row[data-v-8a25000e] {
  align-items: center;
  color: #334155;
  display: flex;
  font-size: 13px;
  gap: 10px;
  justify-content: space-between;
}
.upload-progress-track[data-v-8a25000e] {
  background: #dbeafe;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}
.upload-progress-bar[data-v-8a25000e] {
  background: #2563eb;
  border-radius: 999px;
  height: 100%;
  transition: width .18s ease;
}
.lock-note[data-v-8a25000e] {
  color: #2563eb;
  font-size: 12px;
  font-weight: 800;
}
.payment-schedule[data-v-8a25000e] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
}
.payment-schedule-head[data-v-8a25000e],
.payment-row[data-v-8a25000e] {
  align-items: center;
  display: grid;
  gap: 8px;
}
.payment-schedule-head[data-v-8a25000e] {
  grid-template-columns: 1fr auto;
}
.payment-row[data-v-8a25000e] {
  grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) auto auto;
}
.amount-compare[data-v-8a25000e],
.sync-ok[data-v-8a25000e],
.sync-warn[data-v-8a25000e] {
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.6;
  margin-top: 10px;
  padding: 10px 12px;
}
.amount-compare[data-v-8a25000e] {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  color: #334155;
  display: grid;
  gap: 3px;
}
.amount-compare.warn[data-v-8a25000e],
.sync-warn[data-v-8a25000e] {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #9a3412;
}
.sync-ok[data-v-8a25000e] {
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  color: #065f46;
  font-weight: 800;
}
.commission-grid[data-v-8a25000e] {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: 8px;
  margin-top: 10px;
}
.commission-item[data-v-8a25000e] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f9fafb;
  padding: 10px;
}
.commission-title[data-v-8a25000e] {
  color: #374151;
  font-size: 13px;
  font-weight: 800;
}
.commission-value[data-v-8a25000e] {
  font-size: 18px;
  font-weight: 900;
  margin-top: 4px;
}
.commission-warning[data-v-8a25000e] {
  color: #b45309;
  font-weight: 700;
  margin-left: 6px;
}
.commission-link[data-v-8a25000e] {
  color: #2563eb;
  display: inline-block;
  font-size: 13px;
  margin-top: 10px;
  text-decoration: none;
}
.err[data-v-8a25000e] {
  color: #b91c1c;
  font-size: 12px;
}
.image-preview-mask[data-v-8a25000e] {
  align-items: center;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 80;
}
.image-preview-dialog[data-v-8a25000e] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.28);
  max-height: min(760px, calc(100vh - 36px));
  overflow: hidden;
  width: min(920px, calc(100vw - 36px));
}
.image-preview-head[data-v-8a25000e] {
  align-items: center;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 12px 14px;
}
.image-preview-body[data-v-8a25000e] {
  align-items: center;
  background: #f8fafc;
  display: flex;
  justify-content: center;
  max-height: min(660px, calc(100vh - 118px));
  overflow: auto;
  padding: 14px;
}
.image-preview-body img[data-v-8a25000e] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: block;
  max-height: calc(100vh - 150px);
  max-width: 100%;
  object-fit: contain;
}
@media (max-width: 900px) {
.commission-grid[data-v-8a25000e] {
    grid-template-columns: 1fr;
}
.payment-row[data-v-8a25000e] {
    grid-template-columns: 1fr;
}
}

.board-table-wrap[data-v-455aa557]{
  padding: 0;
  overflow: auto;
}
.board-filter-grid[data-v-455aa557]{
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
}
.field[data-v-455aa557]{
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.tax-field[data-v-455aa557]{
  margin-bottom: 4px;
}
.tax-formula-note[data-v-455aa557]{
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  color: #667085;
  display: block;
  font-size: 12px;
  line-height: 1.5;
  padding: 8px 10px;
}
.tax-formula-detail[data-v-455aa557]{
  color: #344054;
  display: block;
  margin-top: 4px;
}
.input[data-v-455aa557]{
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  height: 56px;
  min-height: 56px;
  padding: 0 16px;
  width: 100%;
}
.filter-actions[data-v-455aa557]{
  align-items: flex-start;
  justify-content: flex-end;
}
.filter-actions .btn[data-v-455aa557]{
  height: 56px;
  min-width: 78px;
}
.board-table[data-v-455aa557]{
  table-layout: fixed;
  width: 100%;
}
.board-table th[data-v-455aa557], .board-table td[data-v-455aa557]{
  vertical-align: middle;
  padding: 10px 12px;
  text-align: center;
}
.col-soNo[data-v-455aa557]{ width: 190px;
}
.col-status[data-v-455aa557]{ width: 92px; text-align: center;
}
.col-person[data-v-455aa557]{ width: 150px;
}
.col-date[data-v-455aa557]{ width: 220px; text-align: center;
}
.col-yn[data-v-455aa557]{ width: 120px; text-align: center;
}
.col-actions[data-v-455aa557]{ width: 330px;
}
.cell-mono[data-v-455aa557]{
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cell-ellipsis[data-v-455aa557]{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cell-actions[data-v-455aa557]{
  display: flex;
  gap: 6px;
  flex-wrap: nowrap;
  justify-content: center;
}
.cell-actions .btn[data-v-455aa557]{
  min-height: 34px;
  padding: 7px 10px;
  white-space: nowrap;
}
.action-btn[data-v-455aa557]{
  min-width: 52px;
}
.more-menu-backdrop[data-v-455aa557]{
  position: fixed;
  inset: 0;
  z-index: 180;
}
.more-menu-popover[data-v-455aa557]{
  position: fixed;
  width: 156px;
  overflow: hidden;
  border: 1px solid #dbe2ea;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, .2);
  padding: 5px;
}
.more-menu-item[data-v-455aa557]{
  display: block;
  width: 100%;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #1f2937;
  cursor: pointer;
  font: inherit;
  padding: 9px 10px;
  text-align: left;
}
.more-menu-item[data-v-455aa557]:hover:not(:disabled){
  background: #f1f5f9;
}
.more-menu-item[data-v-455aa557]:disabled{
  color: #9ca3af;
  cursor: not-allowed;
}
.badge[data-v-455aa557]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid transparent;
  white-space: nowrap;
}
.badge-ok[data-v-455aa557]{ background: rgba(34,197,94,.12); border-color: rgba(34,197,94,.28); color: #166534;
}
.badge-warn[data-v-455aa557]{ background: rgba(245,158,11,.12); border-color: rgba(245,158,11,.28); color: #92400e;
}
.badge-bad[data-v-455aa557]{ background: rgba(239,68,68,.12); border-color: rgba(239,68,68,.28); color: #991b1b;
}
.badge-dim[data-v-455aa557]{ background: rgba(148,163,184,.14); border-color: rgba(148,163,184,.35); color: #334155;
}
.drawer-mask[data-v-455aa557]{
  position: fixed; inset: 0; background: rgba(2,6,23,.35); display:flex; justify-content:flex-end; z-index: 50;
}
.drawer[data-v-455aa557]{
  width: min(960px, 96vw); height: 100%; background: #fff; padding: 14px; overflow-y:auto; overflow-x:hidden;
  box-sizing: border-box;
}
.simple-modal-mask[data-v-455aa557]{
  position: fixed;
  inset: 0;
  z-index: 90;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, .36);
  padding: 18px;
}
.simple-modal[data-v-455aa557]{
  width: min(420px, calc(100vw - 36px));
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .28);
  padding: 18px;
}
.simple-modal h3[data-v-455aa557]{
  margin: 0;
}
.simple-modal p[data-v-455aa557]{
  margin: 10px 0 0;
  color: #4b5563;
  line-height: 1.6;
}
.preview-modal-mask[data-v-455aa557]{
  position: fixed;
  inset: 0;
  z-index: 240;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, .72);
  padding: 18px;
}
.preview-modal[data-v-455aa557]{
  width: min(980px, calc(100vw - 36px));
  max-height: calc(100vh - 36px);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(0,0,0,.32);
}
.preview-head[data-v-455aa557]{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid #e5e7eb;
}
.preview-body[data-v-455aa557]{
  min-height: 220px;
  display: grid;
  place-items: center;
  padding: 12px;
  background: #f8fafc;
}
.preview-body img[data-v-455aa557]{
  max-width: 100%;
  max-height: calc(100vh - 130px);
  object-fit: contain;
}
.preview-body iframe[data-v-455aa557]{
  width: 100%;
  height: calc(100vh - 130px);
  min-height: 520px;
  border: 0;
  border-radius: 6px;
  background: #fff;
}
.urge-row[data-v-455aa557]{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.box[data-v-455aa557]{
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px;
  background: #fff;
}
.collection-modal-mask[data-v-455aa557]{
  z-index: 170;
}
.collection-modal[data-v-455aa557]{
  width: min(980px, calc(100vw - 36px));
  max-height: calc(100vh - 36px);
  overflow-y: auto;
}
.collection-modal-head[data-v-455aa557],
.collection-history-head[data-v-455aa557],
.collection-submit-row[data-v-455aa557]{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.collection-modal-head p[data-v-455aa557]{
  margin-top: 4px;
}
.collection-error[data-v-455aa557]{
  margin-top: 12px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fef2f2;
  color: #b91c1c;
  padding: 10px 12px;
}
.collection-form-grid[data-v-455aa557]{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.collection-form-wide[data-v-455aa557]{
  grid-column: 1 / -1;
}
.collection-textarea[data-v-455aa557]{
  height: auto;
  min-height: 76px;
  padding-block: 10px;
  resize: vertical;
}
.required-mark[data-v-455aa557]{
  color: #dc2626;
}
.collection-upload-row[data-v-455aa557]{
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 56px;
}
.collection-upload-row input[data-v-455aa557]{
  min-width: 0;
  flex: 1;
}
.collection-upload-track[data-v-455aa557]{
  display: block;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}
.collection-upload-track span[data-v-455aa557]{
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #2563eb;
}
.collection-submit-row[data-v-455aa557]{
  margin-top: 14px;
  border-top: 1px solid #e5e7eb;
  padding-top: 12px;
}
.collection-history[data-v-455aa557]{
  margin-top: 16px;
  border-top: 1px solid #e5e7eb;
  padding-top: 14px;
}
.collection-history h3[data-v-455aa557]{
  margin: 0;
}
.collection-history-wrap[data-v-455aa557]{
  margin-top: 10px;
  overflow-x: auto;
}
.collection-history-table[data-v-455aa557]{
  min-width: 760px;
}
.collection-history-table th[data-v-455aa557],
.collection-history-table td[data-v-455aa557]{
  padding: 9px 8px;
  text-align: center;
  vertical-align: middle;
}
.collection-note[data-v-455aa557]{
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.so-detail-grid[data-v-455aa557]{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 12px;
}
.so-detail-item[data-v-455aa557]{
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 8px;
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px 10px;
}
.so-detail-item span[data-v-455aa557]{
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.so-detail-item strong[data-v-455aa557]{
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.45;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.profit-highlight[data-v-455aa557]{
  background: #fff7ed;
  border-color: #fed7aa;
}
.profit-highlight span[data-v-455aa557]{
  color: #9a3412;
}
.profit-highlight strong[data-v-455aa557]{
  color: #7c2d12;
  font-size: 18px;
}
.so-detail-item em[data-v-455aa557]{
  color: #6b7280;
  display: block;
  font-style: normal;
  font-weight: 500;
  margin-top: 4px;
}
.payment-breakdown[data-v-455aa557]{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.payment-pill[data-v-455aa557]{
  align-items: center;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: inline-flex;
  gap: 8px;
  min-height: 34px;
  padding: 6px 10px;
}
.so-detail-item .payment-pill b[data-v-455aa557]{
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.so-detail-item .payment-pill strong[data-v-455aa557]{
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}
.detail-wide[data-v-455aa557]{
  grid-column: 1 / -1;
}
.compact-table-wrap[data-v-455aa557]{
  margin-top: 10px;
  max-width: 100%;
  overflow-x: hidden;
}
.item-table[data-v-455aa557]{
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}
.item-col-name[data-v-455aa557]{ width: 30%;
}
.item-col-spec[data-v-455aa557]{ width: 28%;
}
.item-col-uom[data-v-455aa557]{ width: 12%;
}
.item-col-qty[data-v-455aa557]{ width: 14%;
}
.item-col-price[data-v-455aa557]{ width: 16%;
}
.item-table th[data-v-455aa557],
.item-table td[data-v-455aa557]{
  overflow-wrap: anywhere;
  padding: 10px 8px;
  vertical-align: middle;
}
.item-name[data-v-455aa557],
.item-spec[data-v-455aa557]{
  text-align: left;
  white-space: normal;
}
.item-uom[data-v-455aa557]{
  text-align: center;
  white-space: normal;
}
.item-num[data-v-455aa557]{
  text-align: right;
  font-variant-numeric: tabular-nums;
  white-space: normal;
}
.item-strong[data-v-455aa557]{
  font-weight: 800;
}
.sign-chain[data-v-455aa557]{
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.sign-step[data-v-455aa557]{
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 10px;
  background: #fff;
}
.sign-index[data-v-455aa557]{
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}
.sign-main[data-v-455aa557]{
  min-width: 0;
  display: grid;
  gap: 8px;
}
.sign-head[data-v-455aa557]{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.sign-title[data-v-455aa557]{
  font-size: 15px;
  font-weight: 900;
  color: #111827;
}
.sign-person[data-v-455aa557]{
  margin-top: 3px;
  color: #4b5563;
  font-size: 13px;
}
.sign-meta[data-v-455aa557]{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  color: #6b7280;
  font-size: 13px;
}
.sign-preview img[data-v-455aa557]{
  width: 120px;
  height: 42px;
  object-fit: contain;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 4px;
  cursor: pointer;
}
.sign-missing[data-v-455aa557]{
  font-size: 12px;
  color: #92400e;
}
.notice-card[data-v-455aa557]{
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #065f46;
  font-weight: 800;
}
.upload-progress[data-v-455aa557] {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
}
.upload-progress-row[data-v-455aa557] {
  align-items: center;
  color: #334155;
  display: flex;
  font-size: 13px;
  gap: 10px;
  justify-content: space-between;
}
.upload-progress-track[data-v-455aa557] {
  background: #dbeafe;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}
.upload-progress-bar[data-v-455aa557] {
  background: #2563eb;
  border-radius: 999px;
  height: 100%;
  transition: width .18s ease;
}
@media (max-width: 960px){
.board-filter-grid[data-v-455aa557]{
    grid-template-columns: 1fr;
}
.so-detail-grid[data-v-455aa557]{
    grid-template-columns: 1fr;
}
.so-detail-item[data-v-455aa557]{
    padding: 8px 9px;
}
.collection-form-grid[data-v-455aa557]{
    grid-template-columns: 1fr;
}
.collection-form-wide[data-v-455aa557]{
    grid-column: auto;
}
.collection-submit-row[data-v-455aa557]{
    align-items: stretch;
    flex-direction: column;
}
}


.btn[data-v-d40e0599] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-d40e0599] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.inherited-input[data-v-d40e0599] {
  background: #f9fafb;
  color: #374151;
}
.pay-plan-box[data-v-d40e0599] {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  display: grid;
  gap: 8px;
  margin-top: 12px;
  padding: 12px;
}
.pay-plan-grid[data-v-d40e0599] {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
}
.textarea[data-v-d40e0599] {
  min-height: 78px;
  resize: vertical;
}
.progress-payments-box[data-v-d40e0599] {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}
.progress-payments-head[data-v-d40e0599] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.progress-payment-row[data-v-d40e0599] {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 260px) auto;
  gap: 10px;
  align-items: end;
}
.upload-progress[data-v-d40e0599] {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
}
.upload-progress-row[data-v-d40e0599] {
  align-items: center;
  color: #334155;
  display: flex;
  font-size: 13px;
  gap: 10px;
  justify-content: space-between;
}
.upload-progress-track[data-v-d40e0599] {
  background: #dbeafe;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}
.upload-progress-bar[data-v-d40e0599] {
  background: #2563eb;
  border-radius: 999px;
  height: 100%;
  transition: width .18s ease;
}
.payment-highlight[data-v-d40e0599] {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: 10px;
}
.payment-highlight > div[data-v-d40e0599] {
  background: #fff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}
.payment-highlight span[data-v-d40e0599] {
  color: #475569;
  font-size: 12px;
}
.payment-highlight strong[data-v-d40e0599] {
  color: #0f172a;
  font-size: 20px;
}
.procure-summary-grid[data-v-d40e0599] {
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.procure-summary-grid > div[data-v-d40e0599] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}
.procure-summary-grid strong[data-v-d40e0599] {
  color: #111827;
}
.pr-so-summary-split[data-v-d40e0599] {
  align-items: stretch;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-top: 12px;
}
.summary-panel[data-v-d40e0599] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}
.procure-panel[data-v-d40e0599],
.sales-panel[data-v-d40e0599] {
  background: #f8fafc;
  border-color: #cbd5e1;
  box-shadow: none;
}
.summary-panel-title[data-v-d40e0599] {
  color: #111827;
  font-size: 15px;
  font-weight: 900;
}
.summary-panel-grid[data-v-d40e0599] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.summary-panel-grid > div[data-v-d40e0599] {
  background: #fff;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}
.summary-panel-grid strong[data-v-d40e0599] {
  color: #111827;
  min-width: 0;
  overflow-wrap: anywhere;
}
.sales-income-card[data-v-d40e0599] {
  border-color: rgba(148, 163, 184, 0.45) !important;
  background: #fff !important;
}
.sales-income-card strong[data-v-d40e0599] {
  color: #111827;
  font-size: 20px;
}
.summary-span[data-v-d40e0599] {
  grid-column: span 2;
}
.field[data-v-d40e0599] {
  display: grid;
}
.field-label-row[data-v-d40e0599] {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-height: 20px;
}
.mini-hint[data-v-d40e0599] {
  font-size: 12px;
  white-space: nowrap;
}
.vendor-pay-grid[data-v-d40e0599] {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.vendor-pay-field[data-v-d40e0599] {
  grid-template-rows: auto 40px auto;
}
.pay-from-actions[data-v-d40e0599] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.vendor-combobox[data-v-d40e0599] {
  position: relative;
}
.vendor-current[data-v-d40e0599] {
  position: absolute;
  inset: 1px 1px 1px 1px;
  border: 0;
  border-radius: 9px;
  background: #fff;
  color: #111827;
  cursor: text;
  font: inherit;
  overflow: hidden;
  padding: 0 34px 0 10px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.vendor-current[data-v-d40e0599]::after {
  content: "√";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-52%);
  color: #6b7280;
}
.vendor-options[data-v-d40e0599] {
  position: absolute;
  z-index: 30;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  max-height: 260px;
  overflow: auto;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14);
  padding: 6px;
}
.vendor-option[data-v-d40e0599] {
  width: 100%;
  border: 0;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  display: grid;
  gap: 2px;
  padding: 8px 10px;
  text-align: left;
}
.vendor-option[data-v-d40e0599]:hover {
  background: #f3f4f6;
}
.vendor-option span[data-v-d40e0599] {
  color: #4b5563;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.vendor-empty[data-v-d40e0599] {
  color: #6b7280;
  padding: 10px;
}
.table[data-v-d40e0599] {
  width: 100%;
  border-collapse: collapse;
}
.table th[data-v-d40e0599],
.table td[data-v-d40e0599] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
}
.table th[data-v-d40e0599] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
  white-space: nowrap;
}
.cell-mono[data-v-d40e0599] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  white-space: nowrap;
}
.file-btn[data-v-d40e0599] {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  overflow: hidden;
  position: relative;
}
.file-btn input[data-v-d40e0599] {
  inset: 0;
  opacity: 0;
  position: absolute;
}
.attachment-list[data-v-d40e0599] {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.attachment-item[data-v-d40e0599] {
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  padding: 10px;
}
.preview-mask[data-v-d40e0599] {
  align-items: center;
  background: rgba(15, 23, 42, 0.56);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 100;
}
.preview-dialog[data-v-d40e0599] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.28);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: min(88vh, 820px);
  overflow: hidden;
  width: min(92vw, 980px);
}
.preview-header[data-v-d40e0599] {
  align-items: center;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
  padding: 10px 12px;
}
.preview-header strong[data-v-d40e0599] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.preview-body[data-v-d40e0599] {
  background: #f8fafc;
  min-height: 0;
  overflow: auto;
  padding: 12px;
}
.preview-frame[data-v-d40e0599] {
  background: #fff;
  border: 0;
  border-radius: 6px;
  height: 100%;
  width: 100%;
}
.preview-image[data-v-d40e0599] {
  display: block;
  margin: 0 auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}
.so-preview-dialog[data-v-d40e0599] {
  width: min(92vw, 1120px);
}
.so-preview-body[data-v-d40e0599] {
  background: #f8fafc;
  display: grid;
  gap: 12px;
  min-height: 0;
  overflow: auto;
  padding: 12px;
}
.so-preview-grid[data-v-d40e0599] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(140px, 1fr));
}
.so-preview-grid > div[data-v-d40e0599] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}
.preview-empty[data-v-d40e0599] {
  align-items: center;
  color: #64748b;
  display: grid;
  gap: 12px;
  justify-items: center;
  min-height: 220px;
}
.warn-text[data-v-d40e0599] { color: #b45309;
}
.submit-mask[data-v-d40e0599] {
  align-items: center;
  backdrop-filter: blur(4px);
  background: rgba(15, 23, 42, 0.28);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 120;
}
.submit-dialog[data-v-d40e0599] {
  align-items: center;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.22);
  display: grid;
  gap: 8px;
  justify-items: center;
  min-width: 260px;
  padding: 22px 24px;
}
.submit-dialog span[data-v-d40e0599] {
  color: #6b7280;
  font-size: 13px;
}
.submit-spinner[data-v-d40e0599] {
  animation: submit-spin-d40e0599 0.8s linear infinite;
  border: 3px solid #dbeafe;
  border-top-color: #2563eb;
  border-radius: 999px;
  height: 32px;
  width: 32px;
}
@keyframes submit-spin-d40e0599 {
to {
    transform: rotate(360deg);
}
}
@media (max-width: 960px) {
.procure-summary-grid[data-v-d40e0599],
  .pr-so-summary-split[data-v-d40e0599],
  .so-preview-grid[data-v-d40e0599] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.progress-payment-row[data-v-d40e0599] {
    grid-template-columns: 1fr;
}
.summary-span[data-v-d40e0599] {
    grid-column: span 2;
}
.preview-dialog[data-v-d40e0599] {
    height: 86vh;
    width: 94vw;
}
}
@media (max-width: 560px) {
.vendor-pay-grid[data-v-d40e0599] {
    grid-template-columns: 1fr;
}
.pr-so-summary-split[data-v-d40e0599],
  .summary-panel-grid[data-v-d40e0599] {
    grid-template-columns: 1fr;
}
.summary-span[data-v-d40e0599] {
    grid-column: span 1;
}
}

.page[data-v-4543f3f8] { display: grid; gap: 12px;
}
.head[data-v-4543f3f8], .panel[data-v-4543f3f8], .notice[data-v-4543f3f8], .metric[data-v-4543f3f8] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-4543f3f8] { color: #2563eb; font-size: 13px; text-decoration: none;
}
.head-row[data-v-4543f3f8] { align-items: flex-end; display: flex; gap: 12px; justify-content: space-between; margin-top: 8px;
}
h1[data-v-4543f3f8] { font-size: 22px; margin: 0;
}
.head p[data-v-4543f3f8] { color: #6b7280; margin: 4px 0 0;
}
.btn[data-v-4543f3f8] {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  padding: 7px 10px;
  white-space: nowrap;
}
.btn[data-v-4543f3f8]:disabled { cursor: not-allowed; opacity: .65;
}
.btn-danger[data-v-4543f3f8] { border-color: rgba(220, 38, 38, .35); color: #b91c1c;
}
.notice.ok[data-v-4543f3f8] { background: rgba(16, 185, 129, .08); border-color: rgba(16, 185, 129, .35); color: #047857;
}
.notice.bad[data-v-4543f3f8] { background: rgba(239, 68, 68, .06); border-color: rgba(239, 68, 68, .35); color: #b91c1c;
}
.metrics[data-v-4543f3f8] { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric[data-v-4543f3f8] { border-left-width: 4px; display: grid; gap: 2px;
}
.metric strong[data-v-4543f3f8] { font-size: 24px;
}
.metric span[data-v-4543f3f8] { color: #6b7280; font-size: 12px;
}
.metric-amber[data-v-4543f3f8] { border-left-color: #d97706;
}
.metric-blue[data-v-4543f3f8] { border-left-color: #2563eb;
}
.metric-green[data-v-4543f3f8] { border-left-color: #059669;
}
.metric-red[data-v-4543f3f8] { border-left-color: #dc2626;
}
.tabs[data-v-4543f3f8] { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px;
}
.tab[data-v-4543f3f8] { background: #fff; border: 1px solid #d1d5db; border-radius: 999px; cursor: pointer; padding: 6px 10px;
}
.tab.active[data-v-4543f3f8] { background: #111827; border-color: #111827; color: #fff;
}
.table-wrap[data-v-4543f3f8] { overflow: auto;
}
table[data-v-4543f3f8] { border-collapse: collapse; min-width: 1260px; width: 100%;
}
th[data-v-4543f3f8], td[data-v-4543f3f8] { border-bottom: 1px solid #e5e7eb; padding: 9px 10px; text-align: left; white-space: nowrap;
}
th[data-v-4543f3f8] { background: #f9fafb; color: #374151; font-size: 12px;
}
.mono[data-v-4543f3f8] { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.badge[data-v-4543f3f8] { background: #f3f4f6; border-radius: 999px; display: inline-flex; font-size: 12px; font-weight: 700; padding: 2px 8px;
}
.ops[data-v-4543f3f8] { display: flex; gap: 8px;
}
.empty[data-v-4543f3f8] { color: #6b7280; padding: 18px 12px; text-align: center;
}
@media (max-width: 760px) {
.head-row[data-v-4543f3f8] { align-items: flex-start; flex-direction: column;
}
.metrics[data-v-4543f3f8] { grid-template-columns: 1fr;
}
}

.page[data-v-b02237f9] { display: grid; gap: 12px;
}
h2[data-v-b02237f9], h3[data-v-b02237f9], p[data-v-b02237f9] { margin: 0;
}
h3[data-v-b02237f9] { margin-bottom: 8px;
}
.toolbar[data-v-b02237f9], .section-head[data-v-b02237f9] { display: flex; gap: 10px; align-items: center; flex-wrap: wrap;
}
.section-head[data-v-b02237f9] { justify-content: space-between;
}
.row-actions[data-v-b02237f9] { display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
}
.spacer[data-v-b02237f9] { flex: 1;
}
.btn[data-v-b02237f9] { height: 40px; padding: 0 12px;
}
.input[data-v-b02237f9] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  max-width: 360px;
  box-sizing: border-box;
  height: 40px;
}
.field[data-v-b02237f9] {
  display: grid;
  gap: 6px;
}
.textarea[data-v-b02237f9] {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  min-height: 120px;
  padding: 10px;
  resize: vertical;
  width: 100%;
}
.req-star[data-v-b02237f9] {
  color: #dc2626;
  font-weight: 900;
}
.toast[data-v-b02237f9] { border-color: rgba(16, 185, 129, 0.35); background: rgba(16, 185, 129, 0.08);
}
.error[data-v-b02237f9] { border-color: rgba(239, 68, 68, 0.35); background: rgba(239, 68, 68, 0.06); color: #b91c1c;
}
.warn[data-v-b02237f9] { margin-top: 8px; color: #b45309;
}
.info-grid[data-v-b02237f9] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px;
}
.form-field-columns[data-v-b02237f9] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.form-field-column[data-v-b02237f9] {
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}
.form-field-column > div[data-v-b02237f9] {
  align-items: baseline;
  border-bottom: 1px solid #e5e7eb;
  display: grid;
  gap: 6px;
  grid-template-columns: 88px minmax(0, 1fr);
  padding-bottom: 10px;
}
.form-field-column > div[data-v-b02237f9]:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.form-field-column strong[data-v-b02237f9] {
  color: #0f172a;
  font-weight: 800;
  min-width: 0;
  overflow-wrap: anywhere;
}
.so-grid[data-v-b02237f9] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 12px;
}
.so-item[data-v-b02237f9] {
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}
.so-item span[data-v-b02237f9] {
  color: #64748b;
  font-size: 12px;
}
.so-item strong[data-v-b02237f9] {
  color: #0f172a;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.so-company[data-v-b02237f9] { grid-column: span 2;
}
.table-wrap[data-v-b02237f9] { overflow: auto;
}
.table[data-v-b02237f9] { width: 100%; border-collapse: collapse; margin-top: 10px;
}
.table th[data-v-b02237f9], .table td[data-v-b02237f9] { text-align: left; padding: 10px; border-bottom: 1px solid #eef0f5; vertical-align: middle;
}
.table th[data-v-b02237f9] { font-size: 12px; color: #374151; background: #fafafa; white-space: nowrap;
}
.cell-mono[data-v-b02237f9] { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; white-space: nowrap;
}
.empty[data-v-b02237f9] { text-align: center; padding: 18px 12px;
}
.total[data-v-b02237f9] { display: flex; gap: 8px; align-items: center;
}
.preline[data-v-b02237f9] { white-space: pre-wrap;
}
.invoice-card[data-v-b02237f9] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  margin-top: 12px;
  padding: 12px;
}
.invoice-title[data-v-b02237f9] {
  font-weight: 900;
  margin-bottom: 10px;
}
.invoice-grid[data-v-b02237f9] {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 10px;
}
.invoice-grid > div[data-v-b02237f9] {
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}
.invoice-grid span[data-v-b02237f9] {
  color: #64748b;
  font-size: 12px;
}
.invoice-grid strong[data-v-b02237f9] {
  color: #0f172a;
  font-weight: 800;
  white-space: normal;
}
.invoice-wide[data-v-b02237f9] {
  grid-column: 1 / -1;
}
.attachment-count[data-v-b02237f9] {
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  color: #475569;
  font-size: 13px;
  font-weight: 800;
  padding: 6px 10px;
}
.attachment-list[data-v-b02237f9] {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.attachment-item[data-v-b02237f9] {
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto minmax(170px, auto);
  padding: 10px;
}
.attachment-main[data-v-b02237f9] {
  min-width: 0;
}
.attachment-name[data-v-b02237f9] {
  color: #0f172a;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.attachment-meta[data-v-b02237f9] {
  color: #64748b;
  display: flex;
  gap: 8px;
  white-space: nowrap;
}
.attachment-meta span[data-v-b02237f9] {
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 999px;
  padding: 4px 8px;
}
.attachment-missing[data-v-b02237f9] {
  color: #b45309;
  font-size: 13px;
  font-weight: 800;
  text-align: right;
  white-space: nowrap;
}
.attachment-actions[data-v-b02237f9] {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}
.empty-note[data-v-b02237f9] {
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  margin-top: 12px;
  padding: 12px;
}
.payment-card[data-v-b02237f9] {
  border-color: #bfdbfe;
  background: #eff6ff;
}
.payment-grid[data-v-b02237f9] {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
}
.payment-grid > div[data-v-b02237f9] {
  background: #fff;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}
.payment-grid span[data-v-b02237f9] {
  color: #475569;
  font-size: 12px;
}
.payment-grid strong[data-v-b02237f9] {
  color: #0f172a;
  font-size: 22px;
}
.preview-mask[data-v-b02237f9] {
  align-items: center;
  background: rgba(15, 23, 42, 0.55);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  padding: 24px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 80;
}
.preview-dialog[data-v-b02237f9] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.35);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  max-height: 92vh;
  max-width: 1100px;
  overflow: hidden;
  width: min(96vw, 1100px);
}
.reject-dialog[data-v-b02237f9] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.35);
  max-width: 560px;
  overflow: hidden;
  width: min(92vw, 560px);
}
.reject-body[data-v-b02237f9] {
  display: grid;
  gap: 14px;
  padding: 14px;
}
.reject-actions[data-v-b02237f9] {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.preview-header[data-v-b02237f9] {
  align-items: center;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 12px;
}
.preview-body[data-v-b02237f9] {
  background: #f8fafc;
  min-height: 60vh;
  overflow: auto;
  padding: 12px;
}
.preview-frame[data-v-b02237f9] {
  background: #fff;
  border: 0;
  height: 72vh;
  width: 100%;
}
.preview-image[data-v-b02237f9] {
  display: block;
  margin: 0 auto;
  max-height: 72vh;
  max-width: 100%;
}
.preview-empty[data-v-b02237f9] {
  align-items: center;
  color: #475569;
  display: grid;
  gap: 12px;
  justify-items: center;
  min-height: 240px;
}
@media (max-width: 760px) {
.info-grid[data-v-b02237f9], .form-field-columns[data-v-b02237f9], .so-grid[data-v-b02237f9], .payment-grid[data-v-b02237f9], .invoice-grid[data-v-b02237f9] { grid-template-columns: 1fr;
}
.form-field-column > div[data-v-b02237f9] { grid-template-columns: 1fr;
}
.attachment-item[data-v-b02237f9] { grid-template-columns: 1fr;
}
.invoice-wide[data-v-b02237f9], .so-company[data-v-b02237f9] { grid-column: auto;
}
}

.page[data-v-362ca7c0] { display: grid; gap: 12px;
}
.card[data-v-362ca7c0], .notice[data-v-362ca7c0] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 14px;
}
.muted[data-v-362ca7c0] { color: #64748b;
}
.notice.ok[data-v-362ca7c0] { border-color: rgba(16, 185, 129, .35); background: rgba(16, 185, 129, .08);
}
.notice.bad[data-v-362ca7c0] { border-color: rgba(239, 68, 68, .35); background: rgba(239, 68, 68, .06); color: #b91c1c;
}
.progress-notice[data-v-362ca7c0] { border-color: rgba(37, 99, 235, .28); background: #eff6ff; display: grid; gap: 10px;
}
.progress-head[data-v-362ca7c0] { display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.progress-head > div[data-v-362ca7c0] { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; min-width: 0;
}
.progress-track[data-v-362ca7c0] { height: 8px; overflow: hidden; border-radius: 999px; background: #dbeafe;
}
.progress-bar[data-v-362ca7c0] { height: 100%; border-radius: inherit; background: #2563eb; transition: width .18s ease;
}
.modal-progress[data-v-362ca7c0] { display: grid; gap: 10px; margin-top: 12px; padding: 12px; border: 1px solid #dbeafe; border-radius: 8px; background: #eff6ff;
}
.toolbar[data-v-362ca7c0] { display: flex; gap: 10px; align-items: center; flex-wrap: wrap;
}
.vendor-summary[data-v-362ca7c0] { display: grid; grid-template-columns: repeat(4, minmax(130px, 1fr)); gap: 10px;
}
.vendor-summary article[data-v-362ca7c0] { display: grid; gap: 2px; border: 1px solid #dbe3ee; border-left: 4px solid #64748b; border-radius: 8px; background: #fff; padding: 11px 13px;
}
.vendor-summary article.active[data-v-362ca7c0] { border-left-color: #168765;
}
.vendor-summary article.inactive[data-v-362ca7c0] { border-left-color: #c65c52;
}
.vendor-summary article.strategic[data-v-362ca7c0] { border-left-color: #b8872d;
}
.vendor-summary span[data-v-362ca7c0] { color: #64748b; font-size: 12px;
}
.vendor-summary strong[data-v-362ca7c0] { color: #172033; font-size: 22px;
}
.spacer[data-v-362ca7c0] { flex: 1;
}
.input[data-v-362ca7c0] { width: 100%; box-sizing: border-box; border: 1px solid #d1d5db; border-radius: 8px; padding: 8px 10px;
}
.search[data-v-362ca7c0] { max-width: 320px;
}
.compact-filter[data-v-362ca7c0] { max-width: 180px;
}
.btn[data-v-362ca7c0] { border: 1px solid #d1d5db; background: #fff; border-radius: 8px; padding: 7px 10px; cursor: pointer;
}
.btn[data-v-362ca7c0]:disabled { opacity: .55;
}
.btn.small[data-v-362ca7c0] { padding: 5px 8px; font-size: 12px;
}
.btn.primary[data-v-362ca7c0] { background: #2563eb; border-color: #2563eb; color: #fff;
}
.btn.danger[data-v-362ca7c0] { background: #dc2626; border-color: #dc2626; color: #fff;
}
.btn.dark[data-v-362ca7c0] { background: #111827; border-color: #111827; color: #fff;
}
.table-wrap[data-v-362ca7c0] { overflow: auto; max-height: calc(100vh - 260px); padding-bottom: 2px;
}
.table[data-v-362ca7c0] { width: 100%; min-width: 1100px; border-collapse: collapse;
}
.table.compact[data-v-362ca7c0] { min-width: 760px;
}
.table th[data-v-362ca7c0], .table td[data-v-362ca7c0] { border-bottom: 1px solid #e5e7eb; padding: 9px 10px; text-align: left;
}
.table th[data-v-362ca7c0] { position: sticky; top: 0; z-index: 2; background: #f8fafc; font-size: 12px; color: #475569;
}
.right[data-v-362ca7c0] { position: sticky; right: 0; background: #fff; box-shadow: -8px 0 12px rgba(15, 23, 42, .06);
}
.actions[data-v-362ca7c0] { white-space: nowrap;
}
.mono[data-v-362ca7c0] { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.strong[data-v-362ca7c0] { font-weight: 700;
}
.empty[data-v-362ca7c0] { text-align: center; color: #64748b; padding: 20px;
}
.status-badge[data-v-362ca7c0] { display: inline-flex; border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 700;
}
.status-active[data-v-362ca7c0] { color: #047857; background: #d1fae5;
}
.status-inactive[data-v-362ca7c0] { color: #b91c1c; background: #fee2e2;
}
.import-issues[data-v-362ca7c0] { border-color: #fecaca; background: #fff7f7;
}
.import-issues-head[data-v-362ca7c0] { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px;
}
.import-issues-head h3[data-v-362ca7c0] { margin: 0 0 4px; font-size: 16px;
}
.import-issues-head p[data-v-362ca7c0] { margin: 0;
}
.import-issues-table[data-v-362ca7c0] { overflow: auto; max-height: 360px; border: 1px solid #fee2e2; border-radius: 8px; background: #fff;
}
.import-issues-table .table th[data-v-362ca7c0] { top: 0;
}
.issue-badge[data-v-362ca7c0] { display: inline-flex; border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 700; white-space: nowrap;
}
.issue-error[data-v-362ca7c0] { color: #b91c1c; background: #fee2e2;
}
.issue-warning[data-v-362ca7c0] { color: #92400e; background: #fef3c7;
}
.mask[data-v-362ca7c0] { position: fixed; inset: 0; z-index: 80; display: flex; align-items: center; justify-content: center; background: rgba(15, 23, 42, .38); padding: 18px;
}
.modal[data-v-362ca7c0] { width: min(520px, 92vw); max-height: 92vh; overflow: auto; background: #fff; border-radius: 8px; padding: 16px; box-shadow: 0 20px 50px rgba(15, 23, 42, .22);
}
.modal.wide[data-v-362ca7c0] { width: min(980px, 94vw);
}
.footer[data-v-362ca7c0] { display: flex; justify-content: flex-end; gap: 10px; margin-top: 14px;
}
.form-section[data-v-362ca7c0] { border: 1px solid #e5e7eb; border-radius: 8px; padding: 12px; margin-top: 12px;
}
.form-section h4[data-v-362ca7c0] { margin: 0 0 10px;
}
.grid[data-v-362ca7c0] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;
}
.grid.two[data-v-362ca7c0] { margin-top: 10px;
}
.grid label[data-v-362ca7c0] { display: grid; gap: 6px; color: #64748b;
}
.grid .full[data-v-362ca7c0] { grid-column: 1 / -1;
}
.check-grid[data-v-362ca7c0] { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px;
}
.check[data-v-362ca7c0] { display: inline-flex; align-items: center; gap: 6px; border: 1px solid #d1d5db; border-radius: 8px; padding: 6px 9px;
}
@media (max-width: 760px) {
.grid[data-v-362ca7c0] { grid-template-columns: 1fr;
}
.right[data-v-362ca7c0] { position: static; box-shadow: none;
}
.search[data-v-362ca7c0], .compact-filter[data-v-362ca7c0] { max-width: none;
}
.vendor-summary[data-v-362ca7c0] { grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

.procure-page[data-v-0a7e00b5] {
  display: grid;
  gap: 12px;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
.page-head[data-v-0a7e00b5],
.panel[data-v-0a7e00b5],
.metric-grid > div[data-v-0a7e00b5] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
  min-width: 0;
}
.page-head[data-v-0a7e00b5] {
  align-items: flex-end;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.back-link[data-v-0a7e00b5] {
  color: #2563eb;
  text-decoration: none;
}
h1[data-v-0a7e00b5] {
  font-size: 22px;
  margin: 14px 0 8px;
}
.page-head p[data-v-0a7e00b5],
.panel-top span[data-v-0a7e00b5] {
  color: #6b7280;
  margin: 0;
}
.btn[data-v-0a7e00b5] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  font: inherit;
  padding: 8px 14px;
}
.btn-primary[data-v-0a7e00b5] {
  background: #2563eb;
  border-color: #2563eb;
  color: #fff;
}
.metric-grid[data-v-0a7e00b5] {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.metric-grid span[data-v-0a7e00b5] {
  color: #6b7280;
  display: block;
  font-size: 13px;
  margin-bottom: 10px;
}
.metric-grid strong[data-v-0a7e00b5] {
  color: #111827;
  font-size: 22px;
}
.filters[data-v-0a7e00b5] {
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
}
.input[data-v-0a7e00b5] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  min-height: 36px;
  padding: 7px 10px;
}
.search-input[data-v-0a7e00b5] {
  width: min(520px, 60vw);
}
.status-filter[data-v-0a7e00b5] {
  width: 180px;
}
.error[data-v-0a7e00b5],
.toast[data-v-0a7e00b5] {
  border-radius: 6px;
  font-size: 13px;
  margin-bottom: 10px;
  padding: 8px 10px;
}
.error[data-v-0a7e00b5] {
  background: #fef2f2;
  color: #b91c1c;
}
.toast[data-v-0a7e00b5] {
  background: #ecfdf5;
  color: #047857;
}
.table-shell[data-v-0a7e00b5] {
  overflow: auto;
  max-width: 100%;
  padding-bottom: 10px;
  width: 100%;
}
table[data-v-0a7e00b5] {
  border-collapse: collapse;
  min-width: 100%;
}
.ledger-table[data-v-0a7e00b5] {
  min-width: 3600px;
}
.small-btn[data-v-0a7e00b5] {
  min-height: 30px;
  padding: 4px 10px;
}
th[data-v-0a7e00b5],
td[data-v-0a7e00b5] {
  border-bottom: 1px solid #e5e7eb;
  color: #374151;
  font-size: 12px;
  line-height: 1.4;
  max-width: 180px;
  padding: 10px 8px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}
th[data-v-0a7e00b5] {
  background: #f9fafb;
  color: #111827;
  font-weight: 700;
  position: sticky;
  top: 0;
  z-index: 2;
}
.sticky-col[data-v-0a7e00b5] {
  background: #fff;
  box-shadow: -1px 0 0 #e5e7eb;
  position: sticky;
  right: 0;
  z-index: 3;
}
th.sticky-col[data-v-0a7e00b5] {
  background: #f9fafb;
  z-index: 4;
}
.empty[data-v-0a7e00b5] {
  color: #6b7280;
  padding: 24px;
  text-align: center;
}
.cell-link[data-v-0a7e00b5] {
  background: transparent;
  border: 0;
  color: #2563eb;
  cursor: pointer;
  font: inherit;
  margin: 0 auto;
  max-width: 160px;
  overflow: hidden;
  padding: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.date-input[data-v-0a7e00b5],
.mini-select[data-v-0a7e00b5] {
  width: 112px;
}
.goods-select[data-v-0a7e00b5] {
  width: 110px;
}
.strong[data-v-0a7e00b5] {
  color: #111827;
  font-weight: 700;
}
.modal-mask[data-v-0a7e00b5] {
  align-items: center;
  background: rgba(15, 23, 42, .35);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 80;
}
.modal-card[data-v-0a7e00b5],
.image-modal[data-v-0a7e00b5] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 20px 50px rgba(15, 23, 42, .18);
  max-width: min(760px, 92vw);
  padding: 14px;
}
.row-detail-card[data-v-0a7e00b5] {
  max-height: 84vh;
  overflow: auto;
  width: min(980px, 94vw);
}
.detail-grid[data-v-0a7e00b5] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
}
.detail-grid > div[data-v-0a7e00b5] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}
.detail-grid span[data-v-0a7e00b5] {
  color: #6b7280;
  font-size: 12px;
}
.detail-grid strong[data-v-0a7e00b5] {
  color: #111827;
  overflow-wrap: anywhere;
  white-space: normal;
}
.modal-head[data-v-0a7e00b5] {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 12px;
}
.detail-pre[data-v-0a7e00b5] {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  margin: 0;
  max-height: 60vh;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
}
.image-modal img[data-v-0a7e00b5] {
  display: block;
  max-height: 74vh;
  max-width: 86vw;
  object-fit: contain;
}
@media (max-width: 900px) {
.page-head[data-v-0a7e00b5] {
    align-items: flex-start;
    flex-direction: column;
}
.metric-grid[data-v-0a7e00b5] {
    grid-template-columns: 1fr;
}
.filters[data-v-0a7e00b5] {
    flex-direction: column;
}
.detail-grid[data-v-0a7e00b5] {
    grid-template-columns: 1fr;
}
.search-input[data-v-0a7e00b5],
  .status-filter[data-v-0a7e00b5] {
    width: 100%;
}
}

.form-head[data-v-4c1df536] {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}
.form-head h2[data-v-4c1df536] {
  margin: 0;
}
.form-body[data-v-4c1df536] {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.field-title[data-v-4c1df536] {
  font-weight: 700;
}
.input[data-v-4c1df536] {
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  box-sizing: border-box;
  font: inherit;
  margin-top: 8px;
  padding: 8px 10px;
  width: 100%;
}
.input.compact[data-v-4c1df536] {
  flex: 0 0 140px;
}
.inline-row[data-v-4c1df536] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.radio-row[data-v-4c1df536] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 6px;
}
.radio-row label[data-v-4c1df536] {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  user-select: none;
}
.req[data-v-4c1df536] {
  color: #b91c1c;
  font-size: 12px;
  font-weight: 700;
}
.err[data-v-4c1df536] {
  color: #b91c1c;
  font-size: 12px;
  margin-top: 6px;
}
.upload-box[data-v-4c1df536] {
  background: #fff;
  border: 1px dashed #d0d5dd;
  border-radius: 12px;
  display: grid;
  gap: 4px;
  margin-top: 10px;
  outline: none;
  padding: 12px;
}
.upload-box[data-v-4c1df536]:focus {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}
.upload-progress[data-v-4c1df536] {
  background: #f8fafc;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
}
.upload-progress-head[data-v-4c1df536] {
  align-items: center;
  color: #1f2937;
  display: flex;
  font-size: 12px;
  gap: 12px;
  justify-content: space-between;
}
.upload-progress-head span[data-v-4c1df536] {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.upload-progress-track[data-v-4c1df536] {
  background: #e5e7eb;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}
.upload-progress-bar[data-v-4c1df536] {
  background: #2563eb;
  border-radius: inherit;
  height: 100%;
  transition: width 0.18s ease;
}
.image-list[data-v-4c1df536] {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}
.image-row[data-v-4c1df536] {
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 10px;
}
.image-name[data-v-4c1df536] {
  display: grid;
  min-width: 0;
}
.image-name strong[data-v-4c1df536] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.actions[data-v-4c1df536] {
  justify-content: flex-end;
}
.submit-row[data-v-4c1df536] {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.image-preview-mask[data-v-4c1df536] {
  align-items: center;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 80;
}
.image-preview-dialog[data-v-4c1df536] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.28);
  max-height: min(760px, calc(100vh - 36px));
  overflow: hidden;
  width: min(920px, calc(100vw - 36px));
}
.image-preview-head[data-v-4c1df536] {
  align-items: center;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 12px 14px;
}
.image-preview-body[data-v-4c1df536] {
  align-items: center;
  background: #f8fafc;
  display: flex;
  justify-content: center;
  max-height: min(660px, calc(100vh - 118px));
  overflow: auto;
  padding: 14px;
}
.image-preview-body img[data-v-4c1df536] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: block;
  max-height: calc(100vh - 150px);
  max-width: 100%;
  object-fit: contain;
}

.overlay[data-v-13f500d6] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 50;
}
.modal[data-v-13f500d6] {
  width: min(820px, 100%);
  max-height: calc(100vh - 32px);
  overflow: auto;
}
.modal-head[data-v-13f500d6] {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}
.modal-head h3[data-v-13f500d6] {
  margin: 0;
}
.hint[data-v-13f500d6] {
  margin-top: 12px;
  color: rgba(15, 23, 42, 0.62);
}
.list-state[data-v-13f500d6] {
  margin-top: 12px;
}
.pick-list[data-v-13f500d6] {
  margin-top: 12px;
  display: grid;
  gap: 8px;
}
.pick[data-v-13f500d6] {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 10px;
  border: 1px solid #e8eaf0;
  border-radius: 8px;
  background: #fff;
}
.pick-body[data-v-13f500d6] {
  min-width: 0;
}
.pick-name[data-v-13f500d6] {
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.err[data-v-13f500d6] {
  color: #b91c1c;
  font-size: 12px;
  margin-top: 10px;
}
.modal-actions[data-v-13f500d6] {
  margin-top: 14px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.submit-toast[data-v-9275ed18] {
  position: sticky;
  top: 12px;
  z-index: 70;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.16);
}
.submit-toast.success[data-v-9275ed18] {
  border-color: #86efac;
  background: #dcfce7;
  color: #14532d;
}
.toast-icon[data-v-9275ed18] {
  align-items: center;
  background: rgba(22, 101, 52, 0.12);
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 28px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  line-height: 1;
  width: 28px;
}
.toast-content[data-v-9275ed18] {
  display: grid;
  gap: 3px;
}
.toast-title[data-v-9275ed18] {
  font-size: 15px;
  font-weight: 900;
}

.err-text[data-v-28a45ef4] {
  color: #b91c1c;
  font-weight: 800;
}
.k[data-v-28a45ef4] {
  display: inline-block;
  min-width: 92px;
  font-weight: 800;
  color: #111827;
}
.box[data-v-28a45ef4] {
  border: 1px solid #eef0f5;
  border-radius: 10px;
  padding: 10px;
}
.pre[data-v-28a45ef4] {
  padding: 10px;
  border: 1px solid #eef0f5;
  border-radius: 10px;
  background: #fbfcfe;
  font-size: 12px;
  line-height: 1.5;
  overflow: auto;
}
.history-list[data-v-28a45ef4] {
  display: grid;
  gap: 8px;
  margin-top: 8px;
}
.history-item[data-v-28a45ef4] {
  padding: 10px;
  border: 1px solid #eef0f5;
  border-radius: 8px;
  background: #fbfcfe;
}

.filter-grid[data-v-81c737e1] {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.field[data-v-81c737e1] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.field-span-2[data-v-81c737e1] {
  grid-column: span 2;
}
.input[data-v-81c737e1] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.err[data-v-81c737e1] {
  color: #b91c1c;
  font-size: 12px;
}
.notice[data-v-81c737e1] {
  color: #065f46;
  font-size: 12px;
  font-weight: 800;
}
.danger-btn[data-v-81c737e1] {
  border-color: #fecaca;
  color: #b91c1c;
}
.modal-mask[data-v-81c737e1] {
  position: fixed;
  inset: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(15, 23, 42, 0.42);
}
.modal-card[data-v-81c737e1] {
  width: min(520px, calc(100vw - 36px));
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.25);
  padding: 18px;
}
.modal-card h3[data-v-81c737e1] {
  margin: 0;
}
.modal-card p[data-v-81c737e1] {
  margin: 10px 0 0;
  color: #4b5563;
  line-height: 1.6;
}
.modal-actions[data-v-81c737e1] {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
}
.tbl[data-v-81c737e1] {
  width: 100%;
  border-collapse: collapse;
  min-width: 1080px;
}
.tbl th[data-v-81c737e1],
.tbl td[data-v-81c737e1] {
  text-align: left;
  border-bottom: 1px solid #eef0f5;
  padding: 10px 10px;
  vertical-align: top;
}
.tbl th[data-v-81c737e1] {
  font-size: 12px;
  color: #6b7280;
  font-weight: 800;
  background: #fbfcfe;
  position: sticky;
  top: 0;
  z-index: 1;
}
.row[data-v-81c737e1] {
  cursor: pointer;
}
.row[data-v-81c737e1]:hover {
  background: #f8fafc;
}
.tag[data-v-81c737e1] {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  border: 1px solid #e5e7eb;
  background: #fff;
}
.tag-gray[data-v-81c737e1] {
  color: #374151;
  background: #f3f4f6;
  border-color: #e5e7eb;
}
.tag-blue[data-v-81c737e1] {
  color: #1d4ed8;
  background: #eff6ff;
  border-color: #bfdbfe;
}
.tag-cyan[data-v-81c737e1] {
  color: #0e7490;
  background: #ecfeff;
  border-color: #a5f3fc;
}
.tag-red[data-v-81c737e1] {
  color: #b91c1c;
  background: #fef2f2;
  border-color: #fecaca;
}
@media (max-width: 980px) {
.filter-grid[data-v-81c737e1] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.field-span-2[data-v-81c737e1] {
    grid-column: span 2;
}
}

.err-text[data-v-fdbefc90] {
  color: #b91c1c;
  font-weight: 800;
}
.ops-leads-follow-view-page[data-v-fdbefc90] {
  display: grid;
  gap: 12px;
  min-width: 0;
}
.ops-leads-follow-view-page > .card[data-v-fdbefc90] {
  min-width: 0;
}
.follow-table-card[data-v-fdbefc90] {
  padding: 0;
}
.follow-table-wrap[data-v-fdbefc90] {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: 12px;
  -webkit-overflow-scrolling: touch;
}
.follow-table[data-v-fdbefc90] {
  width: 100%;
  min-width: 1460px;
  border-collapse: collapse;
  font-size: 13px;
}
.th[data-v-fdbefc90] {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #e8eaf0;
  white-space: nowrap;
}
.td[data-v-fdbefc90] {
  padding: 10px;
  border-bottom: 1px solid #f0f2f6;
  vertical-align: top;
}
.row[data-v-fdbefc90]:hover {
  background: #fafafa;
}
.input[data-v-fdbefc90] {
  padding: 6px 8px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
}
.pill[data-v-fdbefc90] {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  font-size: 12px;
  font-weight: 700;
}
.pill.ok[data-v-fdbefc90] {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}
.pill.warn[data-v-fdbefc90] {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}
.link[data-v-fdbefc90] {
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
  color: #2563eb;
  cursor: pointer;
  font-weight: 800;
}
.link[data-v-fdbefc90]:hover {
  text-decoration: underline;
}

.ops-daily-page[data-v-50ff8eff] {
  display: grid;
  gap: 12px;
  min-width: 0;
}
.ops-daily-page > .card[data-v-50ff8eff] {
  min-width: 0;
}
.head-row[data-v-50ff8eff],
.section-head[data-v-50ff8eff],
.head-actions[data-v-50ff8eff],
.toolbar-actions[data-v-50ff8eff] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.grid[data-v-50ff8eff] {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.grid-3[data-v-50ff8eff] {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-4[data-v-50ff8eff] {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-5[data-v-50ff8eff] {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.compact-grid[data-v-50ff8eff] {
  margin-top: 10px;
}
.input[data-v-50ff8eff] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
}
.calc-panel[data-v-50ff8eff] {
  margin-top: 12px;
  border: 1px solid #eef2f6;
  border-radius: 12px;
  background: #fafbff;
  padding: 12px;
}
.calc-title[data-v-50ff8eff] {
  font-weight: 800;
}
.calc-value[data-v-50ff8eff] {
  font-weight: 700;
}
.notice-ok[data-v-50ff8eff] {
  border-color: rgba(16, 185, 129, 0.35);
  background: rgba(16, 185, 129, 0.08);
}
.notice-err[data-v-50ff8eff] {
  border-color: rgba(239, 68, 68, 0.35);
  background: rgba(239, 68, 68, 0.06);
  color: #b91c1c;
}
.table-wrap[data-v-50ff8eff] {
  overflow: auto;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
  margin-top: 12px;
}
.table[data-v-50ff8eff] {
  width: 100%;
  min-width: 1700px;
  max-width: none;
  border-collapse: collapse;
  table-layout: fixed;
}
.table th[data-v-50ff8eff],
.table td[data-v-50ff8eff] {
  text-align: center;
  padding: 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
}
.table th[data-v-50ff8eff] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
  position: sticky;
  top: 0;
  white-space: nowrap;
}
.date-cell[data-v-50ff8eff] {
  white-space: nowrap;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.cell-ellipsis[data-v-50ff8eff] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.filter-footer[data-v-50ff8eff] {
  margin-top: 10px;
  display: flex;
  justify-content: flex-end;
}
.empty-cell[data-v-50ff8eff] {
  color: #6b7280;
  padding: 20px 12px;
}
.total-row td[data-v-50ff8eff] {
  background: #f8fafc;
  font-weight: 800;
}
@media (max-width: 1200px) {
.grid-5[data-v-50ff8eff],
  .grid-4[data-v-50ff8eff],
  .grid-3[data-v-50ff8eff] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 720px) {
.grid-5[data-v-50ff8eff],
  .grid-4[data-v-50ff8eff],
  .grid-3[data-v-50ff8eff] {
    grid-template-columns: 1fr;
}
}

.input[data-v-04151134] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
}
.kpis[data-v-04151134] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.kpi[data-v-04151134] {
  border: 1px solid #eef2f6;
  background: #fafbff;
  border-radius: 12px;
  padding: 10px 10px;
}
.kpi-v[data-v-04151134] {
  margin-top: 8px;
  font-weight: 800;
  font-size: 14px;
}
.table-wrap[data-v-04151134] {
  overflow: auto;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
}
.table[data-v-04151134] {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.table th[data-v-04151134],
.table td[data-v-04151134] {
  text-align: center;
  padding: 10px 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
}
.table th[data-v-04151134] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
  position: sticky;
  top: 0;
  white-space: nowrap;
  text-align: center;
}
.date-cell[data-v-04151134] {
  white-space: nowrap;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.cell-ellipsis[data-v-04151134] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.drawer-mask[data-v-04151134] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.32);
  z-index: 40;
}
.drawer[data-v-04151134] {
  background: #fff;
  box-shadow: -16px 0 40px rgba(15, 23, 42, 0.18);
  height: 100%;
  margin-left: auto;
  max-width: 680px;
  overflow: auto;
  padding: 18px;
  width: min(680px, 92vw);
}
.detail-grid[data-v-04151134] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.detail-grid > div[data-v-04151134] {
  border: 1px solid #eef2f6;
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 10px;
}
@media (max-width: 980px) {
.kpis[data-v-04151134] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

.ops-monthly-page[data-v-a9cd51ec] {
  display: grid;
  gap: 12px;
  min-width: 0;
}
.ops-monthly-page > .card[data-v-a9cd51ec] {
  min-width: 0;
}
.input[data-v-a9cd51ec] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
}
.monthly-filter-grid[data-v-a9cd51ec] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 12px;
}
.kpis[data-v-a9cd51ec] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.kpi[data-v-a9cd51ec] {
  border: 1px solid #eef2f6;
  background: #fafbff;
  border-radius: 12px;
  padding: 10px 10px;
}
.kpi-v[data-v-a9cd51ec] {
  margin-top: 8px;
  font-weight: 800;
  font-size: 14px;
}
.table-wrap[data-v-a9cd51ec] {
  overflow: auto;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
}
.table[data-v-a9cd51ec] {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.table th[data-v-a9cd51ec],
.table td[data-v-a9cd51ec] {
  text-align: center;
  padding: 10px 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: middle;
}
.table th[data-v-a9cd51ec] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
  position: sticky;
  top: 0;
  white-space: nowrap;
  text-align: center;
}
.date-cell[data-v-a9cd51ec] {
  white-space: nowrap;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.cell-ellipsis[data-v-a9cd51ec] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.drawer-mask[data-v-a9cd51ec] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.32);
  z-index: 40;
}
.drawer[data-v-a9cd51ec] {
  background: #fff;
  box-shadow: -16px 0 40px rgba(15, 23, 42, 0.18);
  height: 100%;
  margin-left: auto;
  max-width: 720px;
  overflow: auto;
  padding: 18px;
  width: min(720px, 92vw);
}
.detail-grid[data-v-a9cd51ec] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.detail-grid > div[data-v-a9cd51ec] {
  border: 1px solid #eef2f6;
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 10px;
}
@media (max-width: 980px) {
.monthly-filter-grid[data-v-a9cd51ec] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.kpis[data-v-a9cd51ec] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 560px) {
.monthly-filter-grid[data-v-a9cd51ec] {
    grid-template-columns: 1fr;
}
}

.input[data-v-02e0fa41] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; box-sizing:border-box; height: 40px;
}
.btn[data-v-02e0fa41] { height: 40px; padding: 0 12px;
}
.table[data-v-02e0fa41] { width:100%; border-collapse: collapse;
}
.table th[data-v-02e0fa41],.table td[data-v-02e0fa41] { text-align:left; padding:10px; border-bottom:1px solid #eef0f5; vertical-align: middle; white-space: nowrap;
}
.table th[data-v-02e0fa41] { font-size:12px; color:#374151; background:#fafafa;
}

.input[data-v-f4679b31] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; width:100%; box-sizing:border-box;
}
.table[data-v-f4679b31] { width:100%; border-collapse: collapse;
}
.table th[data-v-f4679b31],.table td[data-v-f4679b31] { text-align:left; padding:10px; border-bottom:1px solid #eef0f5; vertical-align: middle; white-space: nowrap;
}
.table th[data-v-f4679b31] { font-size:12px; color:#374151; background:#fafafa;
}
.chip[data-v-f4679b31]{
  display:inline-flex;
  align-items:center;
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  background: rgba(0,0,0,.03);
  font-size: 12px;
  color: #111827;
}
.modal-mask[data-v-f4679b31]{
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.45);
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 16px;
}
.modal[data-v-f4679b31]{
  width: 520px;
  max-width: 100%;
  background: #fff;
  border-radius: 14px;
  padding: 14px 14px 12px;
  border: 1px solid #e5e7eb;
}
.modal-title[data-v-f4679b31]{ font-weight: 800; color: #111827;
}
.modal-msg[data-v-f4679b31]{ margin-top: 10px; color:#374151; line-height: 1.6; white-space: pre-wrap;
}
.modal-actions[data-v-f4679b31]{ margin-top: 12px; display:flex; justify-content:flex-end; gap: 10px; flex-wrap:wrap;
}

.input[data-v-bdd9e43f] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; box-sizing:border-box;
}
.table[data-v-bdd9e43f] { width:100%; border-collapse: collapse;
}
.table th[data-v-bdd9e43f],.table td[data-v-bdd9e43f] { text-align:left; padding:10px; border-bottom:1px solid #eef0f5; vertical-align: middle; white-space: nowrap;
}
.table th[data-v-bdd9e43f] { font-size:12px; color:#374151; background:#fafafa;
}

.input[data-v-bac72389] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; width:100%; box-sizing:border-box;
}
.table-wrap[data-v-bac72389] { overflow:auto; border:1px solid #e8eaf0; border-radius:12px;
}
.table[data-v-bac72389] { width:100%; border-collapse: collapse; table-layout: fixed;
}
.table th[data-v-bac72389],.table td[data-v-bac72389] { text-align:center; padding:10px 10px; border-bottom:1px solid #eef0f5; vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.table th[data-v-bac72389] { font-size:12px; color:#374151; background:#fafafa; position: sticky; top:0; white-space: nowrap;
}
.date-cell[data-v-bac72389] { white-space: nowrap; font-size: 12px; font-variant-numeric: tabular-nums;
}
.cell-ellipsis[data-v-bac72389] { overflow:hidden; text-overflow: ellipsis; white-space: nowrap;
}

.input[data-v-2e822e79] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; width:100%; box-sizing:border-box;
}
.grid[data-v-2e822e79] { margin-top: 10px; display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px;
}
@media (max-width: 980px) {
.grid[data-v-2e822e79] { grid-template-columns: repeat(1, minmax(0, 1fr));
}
}

.input[data-v-b1f6e0d6] { margin-top:8px; padding:8px 10px; border:1px solid #d0d5dd; border-radius:10px; background:#fff; font:inherit; height: 40px; box-sizing:border-box;
}
.table-wrap[data-v-b1f6e0d6] { overflow:auto; border:1px solid #e8eaf0; border-radius:12px;
}
.table[data-v-b1f6e0d6] { width:100%; border-collapse: collapse; table-layout: fixed;
}
.table th[data-v-b1f6e0d6],.table td[data-v-b1f6e0d6] { text-align:center; padding:10px 10px; border-bottom:1px solid #eef0f5; vertical-align: middle; white-space: nowrap; overflow:hidden; text-overflow: ellipsis;
}
.table th[data-v-b1f6e0d6] { font-size:12px; color:#374151; background:#fafafa; position: sticky; top:0;
}
.date-cell[data-v-b1f6e0d6] { white-space: nowrap; font-size: 12px; font-variant-numeric: tabular-nums;
}
.cell-ellipsis[data-v-b1f6e0d6] { overflow:hidden; text-overflow: ellipsis; white-space: nowrap;
}

.input[data-v-aa102138] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  height: 40px;
  box-sizing: border-box;
}

.follow-list[data-v-8d5b6398] {
  display: grid;
  gap: 12px;
}
.follow-card[data-v-8d5b6398] {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(420px, 1.8fr) minmax(150px, 0.55fr);
  gap: 14px;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}
.lead-pane[data-v-8d5b6398],
.work-pane[data-v-8d5b6398],
.action-pane[data-v-8d5b6398] {
  min-width: 0;
}
.lead-title[data-v-8d5b6398] {
  font-size: 15px;
  font-weight: 900;
  color: #111827;
  line-height: 1.35;
}
.lead-meta[data-v-8d5b6398],
.shop-line[data-v-8d5b6398],
.contact-line[data-v-8d5b6398],
.update-line[data-v-8d5b6398] {
  margin-top: 6px;
  color: #64748b;
  font-size: 12px;
}
.shop-line[data-v-8d5b6398] {
  color: #334155;
  font-weight: 800;
}
.contact-line[data-v-8d5b6398] {
  color: #111827;
}
.lead-fields[data-v-8d5b6398] {
  display: grid;
  gap: 5px;
  margin-top: 8px;
  color: #111827;
  font-size: 12px;
  line-height: 1.45;
}
.lead-fields div[data-v-8d5b6398] {
  min-width: 0;
  overflow-wrap: anywhere;
}
.lead-fields span[data-v-8d5b6398] {
  display: inline-block;
  min-width: 58px;
  margin-right: 6px;
  color: #64748b;
  font-weight: 800;
}
.pill[data-v-8d5b6398] {
  display: inline-flex;
  margin-top: 8px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 12px;
  font-weight: 800;
}
.field-row[data-v-8d5b6398] {
  display: grid;
  gap: 10px;
}
.field-row.compact[data-v-8d5b6398] {
  grid-template-columns: 90px 100px 130px 90px;
}
.field-row label[data-v-8d5b6398],
.follow-input[data-v-8d5b6398] {
  display: grid;
  gap: 5px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.input[data-v-8d5b6398] {
  padding: 6px 8px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  font-size: 13px;
  min-width: 0;
  width: 100%;
}
.amount-input[data-v-8d5b6398] {
  text-align: right;
}
.follow-input[data-v-8d5b6398] {
  margin-top: 10px;
}
.action-pane[data-v-8d5b6398] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.danger-btn[data-v-8d5b6398] {
  border-color: #fecaca;
  color: #b91c1c;
  background: #fff;
}
.link-btn[data-v-8d5b6398] {
  border: 0;
  background: transparent;
  color: #2563eb;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  padding: 0;
  margin-left: 10px;
}
.history-box[data-v-8d5b6398] {
  margin-top: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
}
.transfer-list[data-v-8d5b6398] {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.history-item[data-v-8d5b6398] {
  padding-bottom: 8px;
  border-bottom: 1px solid #e5e7eb;
}
.history-item[data-v-8d5b6398]:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.history-time[data-v-8d5b6398] {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.history-text[data-v-8d5b6398] {
  margin-top: 4px;
  color: #111827;
  line-height: 1.45;
}
.err[data-v-8d5b6398] {
  margin-top: 6px;
  color: #b91c1c;
  font-weight: 700;
}
.overlay[data-v-8d5b6398] {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 60;
}
.modal[data-v-8d5b6398] {
  width: min(720px, 100%);
  max-height: calc(100vh - 32px);
  overflow: auto;
}
.pick[data-v-8d5b6398] {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px 10px;
  border: 1px solid #e8eaf0;
  border-radius: 10px;
  background: #fff;
}
@media (max-width: 980px) {
.follow-card[data-v-8d5b6398] {
    grid-template-columns: 1fr;
}
.field-row.compact[data-v-8d5b6398] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.action-pane[data-v-8d5b6398] {
    flex-direction: row;
    flex-wrap: wrap;
}
}

.err-text[data-v-d8aeca8b] {
  color: #b91c1c;
  font-weight: 800;
}
.filter-select[data-v-d8aeca8b] {
  align-items: center;
  color: #4b5563;
  display: inline-flex;
  font-size: 13px;
  font-weight: 700;
  gap: 8px;
}
.filter-select select[data-v-d8aeca8b] {
  appearance: auto;
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  color: #111827;
  font: inherit;
  min-width: 150px;
  padding: 8px 10px;
}

.target-page[data-v-fd607922]{display:grid;gap:12px}.page-head[data-v-fd607922],.panel[data-v-fd607922],.notice[data-v-fd607922]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:15px}.page-head[data-v-fd607922],.section-head[data-v-fd607922],.actions[data-v-fd607922],.review-row[data-v-fd607922]{align-items:center;display:flex;gap:12px;justify-content:space-between}.page-head h1[data-v-fd607922]{font-size:23px}.page-head p[data-v-fd607922],.page-head a[data-v-fd607922]{color:#2563eb;font-size:12px}.page-head span[data-v-fd607922],.section-head p[data-v-fd607922],.status-box span[data-v-fd607922],.review-row span[data-v-fd607922]{color:#64748b;font-size:12px}.icon-button[data-v-fd607922],.actions button[data-v-fd607922],.review-row button[data-v-fd607922]{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;display:inline-flex;gap:6px;min-height:36px;padding:7px 10px}.primary[data-v-fd607922]{background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff}.danger[data-v-fd607922]{border-color:#fecaca!important;color:#b91c1c}.notice.success[data-v-fd607922]{color:#047857}.notice.error[data-v-fd607922],.reject-reason[data-v-fd607922]{color:#b91c1c}.form-grid[data-v-fd607922]{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(150px,1fr));margin:14px 0}.form-grid label[data-v-fd607922],.status-box[data-v-fd607922]{display:grid;gap:5px}.form-grid input[data-v-fd607922],.review-row input[data-v-fd607922]{border:1px solid #cbd5e1;border-radius:6px;min-height:38px;padding:7px 9px}.status-box[data-v-fd607922]{border-left:3px solid #0f766e;padding:5px 10px}.actions[data-v-fd607922]{justify-content:flex-end}.review-list[data-v-fd607922]{display:grid;gap:8px;margin-top:10px}.review-row[data-v-fd607922]{border-top:1px solid #eef2f7;padding-top:9px}.review-row>div[data-v-fd607922]{display:grid;min-width:220px}.review-row input[data-v-fd607922]{flex:1}.table-wrap[data-v-fd607922]{overflow:auto}table[data-v-fd607922]{border-collapse:collapse;min-width:760px;width:100%}th[data-v-fd607922],td[data-v-fd607922]{border-bottom:1px solid #eef2f7;padding:9px;text-align:center;white-space:nowrap}th[data-v-fd607922]{background:#f8fafc;color:#475569;font-size:12px}.empty[data-v-fd607922]{color:#64748b;text-align:center}@media(max-width:800px){.page-head[data-v-fd607922],.section-head[data-v-fd607922],.review-row[data-v-fd607922]{align-items:stretch;flex-direction:column}.form-grid[data-v-fd607922]{grid-template-columns:1fr}.review-row input[data-v-fd607922]{width:100%}}

.auth-shell[data-v-8b91377a] {
  min-height: 100vh;
  display: flex;
  background: #f6f7fb;
}
.brand-section[data-v-8b91377a] {
  flex: 1;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 56px;
  position: relative;
  overflow: hidden;
  /* 与主界面（sidebar #0f172a / primary #2563eb）保持一致的科技蓝渐变 */
  background: linear-gradient(135deg, #2563eb 0%, #0f172a 100%);
}
.brand-section[data-v-8b91377a]::after {
  content: "";
  position: absolute;
  width: 760px;
  height: 760px;
  background: rgba(255, 255, 255, 0.06);
  border-radius: 50%;
  top: -200px;
  right: -220px;
}
.brand-inner[data-v-8b91377a] {
  z-index: 1;
  max-width: 520px;
}
.logo-text[data-v-8b91377a] {
  font-size: 44px;
  font-weight: 800;
  letter-spacing: 2px;
}
.sub-text[data-v-8b91377a] {
  margin-top: 14px;
  font-size: 16px;
  color: rgba(255, 255, 255, 0.86);
  line-height: 1.8;
}
.highlight-badge[data-v-8b91377a] {
  display: inline-block;
  margin-top: 22px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(8px);
  font-size: 12px;
  color: rgba(255, 255, 255, 0.9);
}
.login-section[data-v-8b91377a] {
  width: 520px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 40px;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.04);
}
.login-box[data-v-8b91377a] {
  width: 100%;
  max-width: 380px;
}
.login-header h2[data-v-8b91377a] {
  font-size: 22px;
  margin: 0 0 6px 0;
  color: #111827;
}
.pwd-wrap[data-v-8b91377a] {
  position: relative;
  width: 100%;
}
.input-wrap[data-v-8b91377a] {
  position: relative;
  width: 100%;
}
.pwd-wrap .form-control[data-v-8b91377a] {
  padding-right: 44px;
}
.pwd-eye[data-v-8b91377a] {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: #6b7280;
  border-radius: 8px;
  cursor: pointer;
}
.pwd-eye[data-v-8b91377a]:hover {
  background: rgba(15, 23, 42, 0.06);
  color: #374151;
}
.pwd-eye[data-v-8b91377a]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18);
}
.pwd-eye[data-v-8b91377a]:active {
  transform: translateY(-50%) scale(0.98);
}
.login-header p[data-v-8b91377a] {
  margin: 0 0 22px 0;
  font-size: 13px;
  color: #6b7280;
}
.form-group[data-v-8b91377a] {
  margin-bottom: 14px;
}
.label[data-v-8b91377a] {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  color: #111827;
  font-weight: 600;
}
.form-control[data-v-8b91377a] {
  width: 100%;
  height: 40px;
  border-radius: 10px;
  border: 1px solid #e8eaf0;
  padding: 0 12px;
  outline: none;
  background: #fafbfc;
  transition: all 0.2s ease;
  box-sizing: border-box;
  display: block;
}
.form-control[data-v-8b91377a]:focus {
  border-color: rgba(37, 99, 235, 0.85);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14);
}
.error[data-v-8b91377a] {
  margin: 0;
  color: #b42318;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 6px;
}
.btn-submit[data-v-8b91377a] {
  width: 100%;
  height: 42px;
  border-radius: 10px;
  border: 1px solid #2563eb;
  background: #2563eb;
  color: #fff;
  cursor: pointer;
  font-weight: 600;
  margin-top: 8px;
  transition: background 0.2s ease, transform 0.05s ease;
}
.btn-submit[data-v-8b91377a]:hover {
  background: #1d4ed8;
}
.btn-submit[data-v-8b91377a]:active {
  transform: scale(0.99);
}
.btn-submit[data-v-8b91377a]:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}
.footer[data-v-8b91377a] {
  margin-top: 18px;
  text-align: center;
  font-size: 12px;
  color: #9ca3af;
}
@media (max-width: 900px) {
.brand-section[data-v-8b91377a] {
    display: none;
}
.login-section[data-v-8b91377a] {
    width: 100%;
    box-shadow: none;
}
}

.admin-workbench[data-v-bae00bee] {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.admin-header[data-v-bae00bee],
.panel[data-v-bae00bee] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
}
.admin-header[data-v-bae00bee] {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}
.eyebrow[data-v-bae00bee] {
  color: #2563eb;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 2px;
}
.admin-header h1[data-v-bae00bee] {
  font-size: 24px;
  line-height: 1.25;
}
.header-subtitle[data-v-bae00bee] {
  color: #4b5563;
  margin-top: 4px;
}
.header-action[data-v-bae00bee] {
  flex: none;
  text-decoration: none;
}
.metric-strip[data-v-bae00bee] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.metric-item[data-v-bae00bee] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-left-width: 4px;
  border-radius: 8px;
  padding: 12px 14px;
}
.metric-link[data-v-bae00bee] {
  color: inherit;
  text-decoration: none;
}
.metric-link[data-v-bae00bee]:hover {
  border-color: #9ca3af;
}
.metric-blue[data-v-bae00bee] { border-left-color: #2563eb;
}
.metric-green[data-v-bae00bee] { border-left-color: #059669;
}
.metric-amber[data-v-bae00bee] { border-left-color: #d97706;
}
.metric-red[data-v-bae00bee] { border-left-color: #dc2626;
}
.metric-value[data-v-bae00bee] {
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
}
.metric-label[data-v-bae00bee],
.workarea-item p[data-v-bae00bee],
.muted[data-v-bae00bee] {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}
.section-title-row[data-v-bae00bee] {
  margin-bottom: 12px;
}
.section-title-row h2[data-v-bae00bee] {
  font-size: 17px;
}
.workarea-grid[data-v-bae00bee] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(200px, 1fr));
}
.workarea-grid.two-col[data-v-bae00bee] {
  grid-template-columns: repeat(2, minmax(240px, 1fr));
}
.workarea-item[data-v-bae00bee] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  color: inherit;
  min-height: 104px;
  padding: 12px;
  text-decoration: none;
}
.workarea-item[data-v-bae00bee]:hover {
  border-color: #9ca3af;
}
.workarea-title-row[data-v-bae00bee] {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}
.workarea-title-row h3[data-v-bae00bee] {
  font-size: 15px;
}
.workarea-title-row span[data-v-bae00bee] {
  border: 1px solid #d1d5db;
  border-radius: 999px;
  color: #4b5563;
  font-size: 11px;
  padding: 1px 7px;
  white-space: nowrap;
}
.workarea-item p[data-v-bae00bee] {
  margin-top: 8px;
}
@media (max-width: 900px) {
.admin-header[data-v-bae00bee] {
    align-items: flex-start;
    flex-direction: column;
}
.metric-strip[data-v-bae00bee],
  .workarea-grid[data-v-bae00bee],
  .workarea-grid.two-col[data-v-bae00bee] {
    grid-template-columns: 1fr;
}
}

.input[data-v-b7b6256e] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
}
.err[data-v-b7b6256e] {
  color: #b91c1c;
  font-size: 12px;
}
.field-err[data-v-b7b6256e] {
  margin-top: 6px;
}
.success[data-v-b7b6256e] {
  border: 1px solid rgba(16, 185, 129, 0.25);
  background: rgba(16, 185, 129, 0.08);
  border-radius: 12px;
  padding: 10px 12px;
}
.mono[data-v-b7b6256e] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.table-wrap[data-v-b7b6256e] {
  margin-top: 12px;
  overflow: auto;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
  background: #fff;
}
.table[data-v-b7b6256e] {
  width: 100%;
  border-collapse: collapse;
  min-width: 860px;
}
.table th[data-v-b7b6256e],
.table td[data-v-b7b6256e] {
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px solid #eef0f5;
  vertical-align: top;
}
.table th[data-v-b7b6256e] {
  font-size: 12px;
  color: #374151;
  background: #fafafa;
  position: sticky;
  top: 0;
}
.btn-xs[data-v-b7b6256e] {
  padding: 6px 8px;
  border-radius: 10px;
  font-size: 12px;
}
.modal-mask[data-v-b7b6256e] {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 9999;
}
.modal-card[data-v-b7b6256e] {
  width: min(520px, 100%);
  background: #fff;
  border-radius: 14px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.18);
  padding: 14px 14px 12px;
}

.modal-mask[data-v-bf54e6f5] {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 9999;
}
.modal-card[data-v-bf54e6f5] {
  width: min(520px, 100%);
  background: #fff;
  border-radius: 14px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.18);
  padding: 14px 14px 12px;
}
.input[data-v-bf54e6f5] {
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
}
.err[data-v-bf54e6f5] {
  color: #b91c1c;
  font-size: 12px;
}
.warn[data-v-bf54e6f5] {
  color: #b45309;
  font-size: 12px;
}
.mono[data-v-bf54e6f5] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.table-wrap[data-v-bf54e6f5] {
  margin-top: 12px;
  overflow: auto;
  border: 1px solid #e8eaf0;
  border-radius: 12px;
  background: #fff;
}
.table[data-v-bf54e6f5] {
  width: 100%;
  border-collapse: collapse;
  min-width: 860px;
}
.table th[data-v-bf54e6f5],
.table td[data-v-bf54e6f5] {
  border-bottom: 1px solid #f1f2f6;
  padding: 10px 10px;
  text-align: left;
  vertical-align: top;
  font-size: 13px;
}
.table th[data-v-bf54e6f5] {
  background: #fbfdff;
  font-weight: 700;
}
.bad[data-v-bf54e6f5] {
  color: #b91c1c;
}
.ok[data-v-bf54e6f5] {
  color: #065f46;
}

.permission-page[data-v-8f575824] {
  display: grid;
  gap: 12px;
}
.page-head[data-v-8f575824],
.panel[data-v-8f575824],
.notice[data-v-8f575824] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-8f575824] {
  color: #2563eb;
  font-size: 13px;
  text-decoration: none;
}
.head-row[data-v-8f575824],
.section-row[data-v-8f575824] {
  align-items: flex-end;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-top: 8px;
}
h1[data-v-8f575824] {
  font-size: 22px;
}
h2[data-v-8f575824] {
  font-size: 17px;
}
.muted[data-v-8f575824],
.page-head p[data-v-8f575824] {
  color: #6b7280;
  font-size: 12px;
}
.head-actions[data-v-8f575824] {
  display: flex;
  gap: 8px;
  white-space: nowrap;
}
.user-panel[data-v-8f575824] {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(180px, 260px) minmax(280px, 1fr) minmax(260px, 1fr);
}
.copy-panel[data-v-8f575824] {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, .9fr) minmax(280px, 1.2fr) auto;
}
.scope-panel[data-v-8f575824] {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1.1fr) minmax(200px, .7fr) 1fr 1fr;
}
.scope-options[data-v-8f575824] {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.scope-options > span[data-v-8f575824] {
  color: #6b7280;
  font-size: 12px;
}
.check-row.compact[data-v-8f575824] {
  padding: 0;
}
.check-row.compact span[data-v-8f575824] {
  display: block;
}
label[data-v-8f575824] {
  color: #6b7280;
  display: grid;
  font-size: 12px;
  gap: 4px;
}
input[data-v-8f575824],
select[data-v-8f575824] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  padding: 8px 10px;
}
.user-card[data-v-8f575824] {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}
.user-card span[data-v-8f575824] {
  color: #6b7280;
  font-size: 12px;
}
.chips[data-v-8f575824] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}
.chip[data-v-8f575824] {
  align-items: center;
  background: #eef2ff;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  color: #3730a3;
  display: inline-flex;
  gap: 6px;
  max-width: 100%;
  padding: 4px 9px;
}
.chip strong[data-v-8f575824] {
  font-size: 13px;
  font-weight: 700;
}
.chip em[data-v-8f575824] {
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
  font-style: normal;
}
.perm-grid[data-v-8f575824] {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.perm-group[data-v-8f575824] {
  border-top: 1px solid #e5e7eb;
  margin-top: 10px;
  padding-top: 10px;
}
.perm-group h3[data-v-8f575824] {
  font-size: 14px;
  margin-bottom: 6px;
}
.perm-group-head[data-v-8f575824] {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 6px;
}
.perm-group-head h3[data-v-8f575824] {
  margin-bottom: 0;
}
.mini-actions[data-v-8f575824] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}
.mini-btn[data-v-8f575824] {
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  color: #334155;
  cursor: pointer;
  font-size: 12px;
  line-height: 1;
  padding: 5px 7px;
}
.mini-btn[data-v-8f575824]:hover {
  background: #eef2ff;
  border-color: #c7d2fe;
  color: #3730a3;
}
.check-row[data-v-8f575824] {
  align-items: flex-start;
  display: flex;
  gap: 8px;
  padding: 5px 0;
}
.check-row input[data-v-8f575824] {
  margin-top: 2px;
}
.check-row span[data-v-8f575824] {
  display: grid;
  gap: 2px;
}
.check-row em[data-v-8f575824] {
  color: #6b7280;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 11px;
  font-style: normal;
}
.danger-soft[data-v-8f575824] {
  border-color: #fecaca;
  color: #b91c1c;
}
.notice[data-v-8f575824] {
  background: rgba(16, 185, 129, .08);
  border-color: rgba(16, 185, 129, .35);
}
@media (max-width: 900px) {
.head-row[data-v-8f575824],
  .section-row[data-v-8f575824] {
    align-items: flex-start;
    flex-direction: column;
}
.user-panel[data-v-8f575824],
  .copy-panel[data-v-8f575824],
  .scope-panel[data-v-8f575824],
  .perm-grid[data-v-8f575824] {
    grid-template-columns: 1fr;
}
}

.input[data-v-fb9e8905] {
  padding: 7px 8px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  box-sizing: border-box;
}
.table[data-v-fb9e8905] {
  width: 100%;
  border-collapse: collapse;
}
.table-card[data-v-fb9e8905] {
  max-height: calc(100vh - 210px);
  overflow-x: auto;
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
}
.shop-table[data-v-fb9e8905] {
  min-width: 1220px;
  table-layout: fixed;
}
.shop-table thead th[data-v-fb9e8905] {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #fff;
}
.shop-table th[data-v-fb9e8905]:nth-child(1),
.shop-table td[data-v-fb9e8905]:nth-child(1),
.shop-table th[data-v-fb9e8905]:nth-child(2),
.shop-table td[data-v-fb9e8905]:nth-child(2) {
  position: sticky;
  background: #fff;
}
.shop-table th[data-v-fb9e8905]:nth-child(1),
.shop-table td[data-v-fb9e8905]:nth-child(1) {
  left: 0;
  z-index: 3;
}
.shop-table th[data-v-fb9e8905]:nth-child(2),
.shop-table td[data-v-fb9e8905]:nth-child(2) {
  left: 78px;
  z-index: 3;
  box-shadow: 8px 0 10px -10px rgba(15, 23, 42, 0.45);
}
.shop-table thead th[data-v-fb9e8905]:nth-child(1),
.shop-table thead th[data-v-fb9e8905]:nth-child(2) {
  z-index: 5;
}
.shop-table th[data-v-fb9e8905]:nth-child(1),
.shop-table td[data-v-fb9e8905]:nth-child(1) {
  width: 78px;
}
.shop-table th[data-v-fb9e8905]:nth-child(2),
.shop-table td[data-v-fb9e8905]:nth-child(2) {
  width: 220px;
}
.shop-table th[data-v-fb9e8905]:nth-child(3),
.shop-table td[data-v-fb9e8905]:nth-child(3) {
  width: 76px;
}
.shop-table th[data-v-fb9e8905]:nth-child(4),
.shop-table td[data-v-fb9e8905]:nth-child(4) {
  width: 82px;
}
.shop-table th[data-v-fb9e8905]:nth-child(5),
.shop-table td[data-v-fb9e8905]:nth-child(5) {
  width: 96px;
}
.shop-table th[data-v-fb9e8905]:nth-child(6),
.shop-table td[data-v-fb9e8905]:nth-child(6) {
  width: 88px;
}
.shop-table th[data-v-fb9e8905]:nth-child(7),
.shop-table td[data-v-fb9e8905]:nth-child(7) {
  width: 74px;
}
.shop-table th[data-v-fb9e8905]:nth-child(8),
.shop-table td[data-v-fb9e8905]:nth-child(8) {
  width: 118px;
}
.shop-table th[data-v-fb9e8905]:nth-child(9),
.shop-table td[data-v-fb9e8905]:nth-child(9) {
  width: 388px;
}
.th[data-v-fb9e8905],
.td[data-v-fb9e8905] {
  text-align: left;
  padding: 8px 8px;
  border-bottom: 1px solid #eef2f6;
  vertical-align: middle;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
.actions-cell[data-v-fb9e8905] {
  white-space: nowrap;
}
.ops-owner[data-v-fb9e8905] {
  display: inline-block;
  max-width: 108px;
  color: #334155;
  font-size: 12px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}
.row-actions[data-v-fb9e8905] {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: nowrap;
}
.ops-select[data-v-fb9e8905] {
  width: 132px;
  min-width: 132px;
}
.edit-name[data-v-fb9e8905] {
  width: 200px;
}
.edit-select-sm[data-v-fb9e8905] {
  width: 72px;
}
.edit-select-md[data-v-fb9e8905] {
  width: 96px;
}
.card[data-v-fb9e8905] {
  border: 1px solid #eef2f6;
  border-radius: 12px;
  background: #fff;
}
.btn[data-v-fb9e8905] {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  padding: 7px 9px;
  background: #fff;
  cursor: pointer;
  font: inherit;
  white-space: nowrap;
}
.row-actions .btn[data-v-fb9e8905] {
  padding: 6px 8px;
}
.btn-primary[data-v-fb9e8905] {
  border-color: #2563eb;
  background: #2563eb;
  color: #fff;
}
.btn-danger[data-v-fb9e8905] {
  border-color: #fecaca;
  background: #fff5f5;
  color: #b91c1c;
}
.modal-mask[data-v-fb9e8905] {
  position: fixed;
  inset: 0;
  z-index: 50;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.28);
}
.modal-card[data-v-fb9e8905] {
  width: min(440px, 100%);
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.18);
  padding: 16px;
}
.muted[data-v-fb9e8905] {
  color: #64748b;
  font-size: 12px;
}
.err[data-v-fb9e8905] {
  color: #b91c1c;
  font-size: 12px;
}
.inactive[data-v-fb9e8905] {
  opacity: 0.65;
}

.page[data-v-9ce76727] {
  display: grid;
  gap: 12px;
}
.intro-card[data-v-9ce76727],
.toolbar[data-v-9ce76727],
.modal-head[data-v-9ce76727],
.modal-actions[data-v-9ce76727],
.steps-head[data-v-9ce76727] {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.intro-card[data-v-9ce76727] {
  flex-wrap: wrap;
}
.intro-card h2[data-v-9ce76727] {
  font-size: 20px;
  margin-bottom: 4px;
}
.note[data-v-9ce76727] {
  color: #475467;
  font-size: 13px;
  margin-top: 4px;
}
.btn[data-v-9ce76727] {
  min-height: 38px;
  padding: 0 12px;
}
.btn-warn[data-v-9ce76727] {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}
.input[data-v-9ce76727] {
  background: #fff;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  height: 40px;
  padding: 8px 10px;
  width: 100%;
}
.field[data-v-9ce76727] {
  display: grid;
  gap: 8px;
}
.req-star[data-v-9ce76727] {
  color: #dc2626;
  font-weight: 900;
}
.compact-field[data-v-9ce76727] {
  gap: 4px;
}
.success[data-v-9ce76727] {
  background: rgba(16, 185, 129, 0.08);
  border-color: rgba(16, 185, 129, 0.35);
}
.danger[data-v-9ce76727] {
  background: rgba(239, 68, 68, 0.06);
  border-color: rgba(239, 68, 68, 0.35);
  color: #b91c1c;
}
.table-wrap[data-v-9ce76727] {
  overflow: auto;
}
.table[data-v-9ce76727] {
  border-collapse: collapse;
  width: 100%;
}
.table th[data-v-9ce76727],
.table td[data-v-9ce76727] {
  border-bottom: 1px solid #eef0f5;
  padding: 10px;
  text-align: left;
  vertical-align: middle;
}
.table th[data-v-9ce76727] {
  background: #fafafa;
  color: #374151;
  font-size: 12px;
  white-space: nowrap;
}
.chain-cell[data-v-9ce76727] {
  min-width: 520px;
  overflow-wrap: anywhere;
}
.actions-cell[data-v-9ce76727] {
  white-space: nowrap;
}
.actions-cell .btn[data-v-9ce76727] {
  margin-right: 6px;
}
.empty[data-v-9ce76727] {
  padding: 18px 12px;
  text-align: center;
}
.inactive[data-v-9ce76727] {
  opacity: 0.65;
}
.modal-mask[data-v-9ce76727] {
  align-items: center;
  background: rgba(2, 6, 23, 0.35);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 20px;
  position: fixed;
  z-index: 1000;
}
.modal[data-v-9ce76727] {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22);
  max-height: 92vh;
  overflow: auto;
  padding: 18px;
  width: min(1120px, 96vw);
}
.modal-title[data-v-9ce76727] {
  font-size: 18px;
  font-weight: 800;
}
.form-grid[data-v-9ce76727] {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  margin-top: 16px;
}
.org-hint[data-v-9ce76727] {
  align-items: center;
  background: #eff6ff;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-top: 12px;
  padding: 10px;
}
.steps[data-v-9ce76727] {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.step-row[data-v-9ce76727] {
  align-items: start;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: 90px minmax(220px, 1fr) minmax(320px, 1.35fr) 220px;
  padding: 12px;
}
.step-row-head[data-v-9ce76727] {
  background: transparent;
  border: 0;
  color: #64748b;
  font-size: 12px;
  padding: 0 12px;
}
.step-order[data-v-9ce76727] {
  align-self: start;
  color: #475467;
  font-weight: 700;
  padding-top: 10px;
}
.step-actions[data-v-9ce76727] {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.helper[data-v-9ce76727] {
  color: #64748b;
  font-size: 12px;
  min-height: 18px;
}
.modal-actions[data-v-9ce76727] {
  justify-content: flex-end;
  margin-top: 16px;
}
@media (max-width: 900px) {
.form-grid[data-v-9ce76727],
  .step-row[data-v-9ce76727] {
    grid-template-columns: 1fr;
}
.step-row-head[data-v-9ce76727] {
    display: none;
}
.org-hint[data-v-9ce76727],
  .modal-head[data-v-9ce76727] {
    align-items: flex-start;
    flex-direction: column;
}
.step-actions[data-v-9ce76727] {
    grid-template-columns: repeat(3, minmax(80px, 1fr));
}
}

.page[data-v-2c4552bb] {
  display: grid;
  gap: 12px;
}
.card[data-v-2c4552bb] {
  display: grid;
  gap: 12px;
}
.btn[data-v-2c4552bb] {
  justify-self: start;
  min-height: 40px;
  padding: 0 12px;
}

.import-page[data-v-f91c3304] {
  display: grid;
  gap: 12px;
}
.page-head[data-v-f91c3304],
.panel[data-v-f91c3304],
.notice[data-v-f91c3304] {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 14px;
}
.back-link[data-v-f91c3304] {
  color: #2563eb;
  display: inline-flex;
  font-size: 13px;
  margin-bottom: 8px;
  text-decoration: none;
}
.eyebrow[data-v-f91c3304] {
  color: #2563eb;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 2px;
}
h1[data-v-f91c3304] {
  font-size: 24px;
}
.page-head p[data-v-f91c3304],
.target-hint span[data-v-f91c3304],
.panel-top span[data-v-f91c3304] {
  color: #6b7280;
  font-size: 12px;
}
.import-panel[data-v-f91c3304] {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1.2fr) minmax(220px, 1fr) auto auto auto;
}
label[data-v-f91c3304],
.target-hint[data-v-f91c3304] {
  display: grid;
  gap: 4px;
}
label span[data-v-f91c3304] {
  color: #6b7280;
  font-size: 12px;
  font-weight: 700;
}
select[data-v-f91c3304] {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  font: inherit;
  min-height: 38px;
  padding: 7px 10px;
}
.file-picker input[data-v-f91c3304] {
  display: none;
}
.file-picker > span[data-v-f91c3304] {
  border: 1px solid #d1d5db;
  border-radius: 10px;
  color: #111827;
  cursor: pointer;
  display: inline-flex;
  padding: 8px 10px;
}
.notice.ok[data-v-f91c3304] {
  border-color: rgba(16, 185, 129, 0.35);
  background: rgba(16, 185, 129, 0.08);
}
.notice.err[data-v-f91c3304] {
  border-color: rgba(239, 68, 68, 0.35);
  background: rgba(239, 68, 68, 0.06);
  color: #b91c1c;
}
.panel-top[data-v-f91c3304] {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.panel-top h2[data-v-f91c3304] {
  font-size: 17px;
}
.table-panel[data-v-f91c3304] {
  overflow: auto;
}
table[data-v-f91c3304] {
  border-collapse: collapse;
  min-width: 900px;
  width: 100%;
}
th[data-v-f91c3304],
td[data-v-f91c3304] {
  border-bottom: 1px solid #e5e7eb;
  font-size: 12px;
  padding: 8px 10px;
  text-align: left;
  white-space: nowrap;
}
th[data-v-f91c3304] {
  background: #f9fafb;
  color: #374151;
}
.empty[data-v-f91c3304] {
  color: #6b7280;
  padding: 24px;
  text-align: center;
}
@media (max-width: 1000px) {
.import-panel[data-v-f91c3304] {
    align-items: stretch;
    grid-template-columns: 1fr;
}
}

.page[data-v-45d9454c] { display: grid; gap: 12px;
}
.card[data-v-45d9454c] { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 14px;
}
.muted[data-v-45d9454c] { color: #6b7280; font-size: 12px; margin-top: 6px;
}
.filter-grid[data-v-45d9454c] { display: grid; grid-template-columns: repeat(7, minmax(110px, 1fr)) auto auto; gap: 10px; align-items: end;
}
.filter-grid span[data-v-45d9454c] { color: #374151; display: block; font-size: 12px; font-weight: 700; margin-bottom: 6px;
}
.input[data-v-45d9454c] { border: 1px solid #d0d5dd; border-radius: 8px; box-sizing: border-box; font: inherit; height: 38px; padding: 0 10px; width: 100%;
}
.table-wrap[data-v-45d9454c] { border: 1px solid #eef0f5; border-radius: 8px; overflow: auto;
}
.table[data-v-45d9454c] { border-collapse: collapse; min-width: 1100px; width: 100%;
}
.table th[data-v-45d9454c], .table td[data-v-45d9454c] { border-bottom: 1px solid #eef0f5; padding: 10px; text-align: left;
}
.table th[data-v-45d9454c] { background: #fafafa; font-size: 12px; white-space: nowrap;
}
.ellipsis[data-v-45d9454c] { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.empty[data-v-45d9454c] { color: #6b7280; text-align: center !important;
}
.error[data-v-45d9454c] { border-color: rgba(239,68,68,.35); color: #b91c1c;
}
.drawer-mask[data-v-45d9454c] { background: rgba(15,23,42,.3); inset: 0; position: fixed; z-index: 40;
}
.drawer[data-v-45d9454c] { background: #fff; height: 100%; margin-left: auto; max-width: 720px; overflow: auto; padding: 18px; width: min(720px, 92vw);
}
.drawer-head[data-v-45d9454c] { align-items: center; display: flex; justify-content: space-between;
}
.success[data-v-45d9454c] { color:#047857; font-weight:700;
}.failed[data-v-45d9454c] { color:#b91c1c; font-weight:700;
}.error-detail[data-v-45d9454c],.device[data-v-45d9454c] { color:#6b7280; font-size:11px; font-weight:400; margin-top:3px;
}
.detail-list[data-v-45d9454c] { display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:16px;
}.detail-list div[data-v-45d9454c] { border-bottom:1px solid #eef0f5; padding:8px 0;
}.detail-list .wide[data-v-45d9454c] { grid-column:1/-1;
}.detail-list dt[data-v-45d9454c] { color:#6b7280; font-size:12px;
}.detail-list dd[data-v-45d9454c] { margin:5px 0 0; overflow-wrap:anywhere;
}.diff[data-v-45d9454c] { white-space:pre-wrap;
}
@media (max-width: 1100px) {
.filter-grid[data-v-45d9454c] { grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

.chart-header[data-v-ea3c2d1a],.dialog-header[data-v-ea3c2d1a]{align-items:center;display:flex;gap:10px;justify-content:space-between}.bar-chart h3[data-v-ea3c2d1a]{margin:0 0 14px;font-size:16px}.chart-header h3[data-v-ea3c2d1a]{margin:0}.expand-btn[data-v-ea3c2d1a]{align-items:center;background:#fff;border:1px solid #cfd9d4;border-radius:5px;color:#27624f;cursor:pointer;display:inline-flex;justify-content:center;padding:6px}.expand-btn[data-v-ea3c2d1a]:hover{background:#eef7f2}.bar-list[data-v-ea3c2d1a]{display:grid;gap:11px}.bar-row[data-v-ea3c2d1a]{display:grid;grid-template-columns:minmax(84px,1fr) minmax(110px,2fr) auto;gap:10px;align-items:center;font-size:13px}.name[data-v-ea3c2d1a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3f4b45}.track[data-v-ea3c2d1a]{height:10px;background:#eef2ef;overflow:hidden}.track i[data-v-ea3c2d1a]{display:block;height:100%;background:#2b8b68}.bar-row:nth-child(even) .track i[data-v-ea3c2d1a]{background:#d29a44}.bar-row strong[data-v-ea3c2d1a]{min-width:54px;text-align:right;font-variant-numeric:tabular-nums}.empty[data-v-ea3c2d1a]{min-height:180px;display:grid;place-items:center;margin:0;color:#78847d;background:#f7f9f8;border:1px dashed #d5ded8}.chart-dialog-backdrop[data-v-ea3c2d1a]{align-items:center;background:rgba(15,23,42,.58);display:flex;inset:0;justify-content:center;padding:28px;position:fixed;z-index:3000}.chart-dialog[data-v-ea3c2d1a]{background:#fff;border:1px solid #d9e4df;border-radius:8px;box-shadow:0 22px 70px rgba(15,23,42,.26);display:grid;gap:18px;max-height:min(820px,calc(100vh - 56px));max-width:1080px;overflow:auto;padding:22px;width:min(100%,1080px)}.dialog-header h2[data-v-ea3c2d1a]{color:#1f2937;font-size:21px;margin:0}.dialog-header p[data-v-ea3c2d1a]{color:#66756d;font-size:13px;margin:4px 0 0}.expanded-list[data-v-ea3c2d1a]{padding:4px 2px}.expanded-list .bar-row[data-v-ea3c2d1a]{grid-template-columns:minmax(180px,1fr) minmax(260px,3fr) auto}@media(max-width:680px){.chart-dialog-backdrop[data-v-ea3c2d1a]{padding:12px}.chart-dialog[data-v-ea3c2d1a]{max-height:calc(100vh - 24px);padding:16px}.expanded-list .bar-row[data-v-ea3c2d1a]{grid-template-columns:minmax(96px,1fr) minmax(80px,2fr) auto}}

.ranking-table h3[data-v-ecad8123]{margin:0 0 12px;font-size:16px}.table-wrap[data-v-ecad8123]{overflow-x:auto}table[data-v-ecad8123]{width:100%;border-collapse:collapse;min-width:440px;font-size:13px}th[data-v-ecad8123],td[data-v-ecad8123]{padding:10px 8px;border-bottom:1px solid #e8eeea;text-align:center}th[data-v-ecad8123]{color:#5c6962;background:#f5f8f6;font-weight:700}.place[data-v-ecad8123]{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8eeea;color:#56635d;font-weight:800}.place-1[data-v-ecad8123]{background:#f6d679;color:#775600}.place-2[data-v-ecad8123]{background:#dce2e7;color:#4e5d68}.place-3[data-v-ecad8123]{background:#e8c4aa;color:#7a4b2d}.empty[data-v-ecad8123]{min-height:180px;display:grid;place-items:center;margin:0;color:#78847d;background:#f7f9f8;border:1px dashed #d5ded8}

.trend-chart[data-v-a1a5ea3c]{min-width:0}.trend-chart header[data-v-a1a5ea3c],.dialog-header[data-v-a1a5ea3c]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.trend-chart h3[data-v-a1a5ea3c]{margin:0 0 7px;font-size:16px}.legend[data-v-a1a5ea3c]{display:flex;gap:12px;flex-wrap:wrap;color:#65716b;font-size:12px}.legend span[data-v-a1a5ea3c]{display:flex;align-items:center;gap:5px}.legend i[data-v-a1a5ea3c]{width:15px;height:3px;display:inline-block}.legend .primary[data-v-a1a5ea3c]{background:#16835d}.legend .secondary[data-v-a1a5ea3c]{background:#cf8a2f}.expand-btn[data-v-a1a5ea3c]{align-items:center;background:#fff;border:1px solid #cfd9d4;border-radius:5px;color:#27624f;cursor:pointer;display:inline-flex;justify-content:center;padding:6px}.expand-btn[data-v-a1a5ea3c]:hover{background:#eef7f2}.plot-wrap[data-v-a1a5ea3c]{width:100%;aspect-ratio:720/250;min-height:210px}.plot-wrap svg[data-v-a1a5ea3c]{width:100%;height:100%;overflow:visible}.grid-line[data-v-a1a5ea3c]{stroke:#e4ebe6;stroke-width:1}.line[data-v-a1a5ea3c]{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.primary-line[data-v-a1a5ea3c]{stroke:#16835d}.secondary-line[data-v-a1a5ea3c]{stroke:#cf8a2f}.dot[data-v-a1a5ea3c]{stroke:#fff;stroke-width:2}.primary-dot[data-v-a1a5ea3c]{fill:#16835d}.secondary-dot[data-v-a1a5ea3c]{fill:#cf8a2f}.axis-label[data-v-a1a5ea3c]{font-size:11px;fill:#738078}.empty[data-v-a1a5ea3c]{min-height:210px;display:grid;place-items:center;margin:0;color:#78847d;background:#f7f9f8;border:1px dashed #d5ded8}.chart-dialog-backdrop[data-v-a1a5ea3c]{align-items:center;background:rgba(15,23,42,.58);display:flex;inset:0;justify-content:center;padding:28px;position:fixed;z-index:3000}.chart-dialog[data-v-a1a5ea3c]{background:#fff;border:1px solid #d9e4df;border-radius:8px;box-shadow:0 22px 70px rgba(15,23,42,.26);display:grid;gap:18px;max-height:min(820px,calc(100vh - 56px));max-width:1180px;overflow:auto;padding:22px;width:min(100%,1180px)}.dialog-header h2[data-v-a1a5ea3c]{color:#1f2937;font-size:21px;margin:0 0 8px}.expanded-plot[data-v-a1a5ea3c]{aspect-ratio:720/250;min-height:min(560px,64vh)}@media(max-width:680px){.chart-dialog-backdrop[data-v-a1a5ea3c]{padding:12px}.chart-dialog[data-v-a1a5ea3c]{max-height:calc(100vh - 24px);padding:16px}.expanded-plot[data-v-a1a5ea3c]{min-height:300px}}

.dashboard-page[data-v-1e845b3e]{display:grid;gap:16px;max-width:1680px;margin:0 auto;padding:20px;color:#26332d}.page-head[data-v-1e845b3e]{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.eyebrow[data-v-1e845b3e]{margin:0;color:#267458;font-size:12px;font-weight:800}.page-head h1[data-v-1e845b3e]{margin:4px 0 6px;font-size:28px}.page-head span[data-v-1e845b3e]{color:#68756f;font-size:13px}.head-actions[data-v-1e845b3e]{display:flex;gap:8px}.btn[data-v-1e845b3e]{height:38px;padding:0 14px;border:1px solid #cbd6cf;background:#fff;color:#33433b;cursor:pointer}.btn-primary[data-v-1e845b3e]{border-color:#176445;background:#176445;color:#fff}.btn[data-v-1e845b3e]:disabled{opacity:.55;cursor:not-allowed}.filter-bar[data-v-1e845b3e]{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:13px 14px;border:1px solid #dfe7e2;background:#fff}.filter-bar label[data-v-1e845b3e],.explorer-controls label[data-v-1e845b3e]{display:grid;gap:5px;min-width:150px;color:#526159;font-size:12px;font-weight:700}.input[data-v-1e845b3e]{height:36px;border:1px solid #c8d4cc;border-radius:4px;padding:0 9px;background:#fff;color:#26332d}.range-note[data-v-1e845b3e]{display:grid;gap:4px;padding:2px 4px}.range-note span[data-v-1e845b3e]{color:#748079;font-size:11px}.range-note strong[data-v-1e845b3e]{font-size:13px}.error[data-v-1e845b3e]{margin:0;padding:10px 12px;border:1px solid #efc3be;background:#fff5f3;color:#a93227}.dashboard-shell[data-v-1e845b3e]{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;align-items:start}.view-tree[data-v-1e845b3e]{position:sticky;top:12px;border:1px solid #dfe7e2;background:#fff;padding:12px;max-height:calc(100vh - 28px);overflow:auto}.scope-block[data-v-1e845b3e]{display:grid;gap:4px;padding:10px 9px 14px;border-bottom:1px solid #e7ede9}.scope-block span[data-v-1e845b3e]{color:#718078;font-size:11px}.scope-block strong[data-v-1e845b3e]{font-size:16px}.tree-group[data-v-1e845b3e]{display:grid;gap:3px;padding-top:12px}.tree-title[data-v-1e845b3e],.tree-item[data-v-1e845b3e]{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}.tree-title[data-v-1e845b3e]{padding:8px 9px;font-size:14px;font-weight:800}.tree-title.active[data-v-1e845b3e]{color:#176445}.tree-item[data-v-1e845b3e]{padding:8px 9px 8px 20px;border-left:2px solid transparent;color:#5b6962;font-size:12px}.tree-item[data-v-1e845b3e]:hover,.tree-item.active[data-v-1e845b3e]{border-left-color:#2d8b69;background:#f0f6f2;color:#175c41}.dashboard-content[data-v-1e845b3e]{display:grid;gap:14px;min-width:0}.context-band[data-v-1e845b3e]{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;background:#24352d;color:#fff}.context-band span[data-v-1e845b3e]{font-size:12px;color:#c7d5cd}.context-band h2[data-v-1e845b3e]{margin:3px 0 0;font-size:20px}.context-meta[data-v-1e845b3e]{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.context-meta span[data-v-1e845b3e]{padding:6px 9px;border:1px solid #52675d;color:#f1f5f2}.warning-band[data-v-1e845b3e]{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap;padding:10px 12px;border:1px solid #ead8a5;background:#fffaf0;color:#6f5a1e;font-size:12px}.kpi-grid[data-v-1e845b3e]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.kpi-grid.twelve[data-v-1e845b3e]{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi[data-v-1e845b3e]{display:grid;gap:9px;min-width:0;padding:14px 13px;border-top:3px solid #29795b;background:#fff;box-shadow:0 1px 0 rgba(25,45,35,.05)}.kpi.coral[data-v-1e845b3e]{border-top-color:#d36e5b}.kpi.gold[data-v-1e845b3e]{border-top-color:#c59335}.kpi.neutral[data-v-1e845b3e]{border-top-color:#66776f}.kpi span[data-v-1e845b3e]{color:#6c7872;font-size:12px}.kpi strong[data-v-1e845b3e]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:19px;font-variant-numeric:tabular-nums}.chart-grid[data-v-1e845b3e]{display:grid;gap:10px}.chart-grid.two[data-v-1e845b3e]{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid.three[data-v-1e845b3e]{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-panel[data-v-1e845b3e]{min-width:0;padding:16px;border:1px solid #dfe7e2;background:#fff}.chart-panel h3[data-v-1e845b3e]{margin:0;font-size:16px}.category-panel[data-v-1e845b3e]{display:grid;align-content:center;gap:10px;min-height:235px}.category-panel>strong[data-v-1e845b3e]{font-size:34px;color:#197052}.category-panel>span[data-v-1e845b3e]{color:#6e7a74;font-size:12px}.category-line[data-v-1e845b3e],.progress-track[data-v-1e845b3e]{height:12px;background:#edf2ef;overflow:hidden}.category-line i[data-v-1e845b3e],.progress-track i[data-v-1e845b3e]{display:block;height:100%;background:#1d7f5d}.category-panel.guardrail>strong[data-v-1e845b3e]{color:#c26c52}.category-panel.guardrail .category-line i[data-v-1e845b3e]{background:#c26c52}.progress-panel[data-v-1e845b3e]{display:grid;align-content:center;gap:16px;min-height:235px}.progress-value[data-v-1e845b3e]{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.progress-value strong[data-v-1e845b3e]{font-size:34px;color:#1b6d50}.progress-value span[data-v-1e845b3e]{color:#68756f;font-size:12px}.progress-track[data-v-1e845b3e]{height:16px}.progress-track.market i[data-v-1e845b3e]{background:#cb7b4d}.performance-panel[data-v-1e845b3e]{display:grid;align-content:start;gap:18px}.performance-values[data-v-1e845b3e]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.performance-values div[data-v-1e845b3e]{display:grid;gap:8px;padding:13px;background:#f5f8f6}.performance-values span[data-v-1e845b3e]{color:#6c7872;font-size:12px}.performance-values strong[data-v-1e845b3e]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.metric-explorer[data-v-1e845b3e]{display:grid;gap:14px;padding:18px;border:1px solid #b9cec2;background:#f9fbfa}.metric-explorer header[data-v-1e845b3e]{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.metric-explorer header p[data-v-1e845b3e]{margin:0;color:#1e7555;font-size:11px;font-weight:800}.metric-explorer h2[data-v-1e845b3e]{margin:3px 0 0;font-size:20px}.metric-explorer header>span[data-v-1e845b3e]{max-width:520px;color:#66736c;font-size:12px;text-align:right}.explorer-controls[data-v-1e845b3e]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.explorer-value[data-v-1e845b3e]{display:grid;gap:3px;margin-left:auto;text-align:right}.explorer-value span[data-v-1e845b3e]{color:#68756f;font-size:11px}.explorer-value strong[data-v-1e845b3e]{font-size:22px}.empty[data-v-1e845b3e]{color:#78847d}@media(max-width:1250px){.kpi-grid[data-v-1e845b3e],.kpi-grid.twelve[data-v-1e845b3e]{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-grid.three[data-v-1e845b3e]{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid.three>.chart-panel[data-v-1e845b3e]:last-child{grid-column:span 2}}@media(max-width:900px){.dashboard-shell[data-v-1e845b3e]{grid-template-columns:1fr}.view-tree[data-v-1e845b3e]{position:static;display:flex;gap:10px;max-height:none;overflow-x:auto}.scope-block[data-v-1e845b3e]{min-width:150px;border-bottom:0;border-right:1px solid #e7ede9}.tree-group[data-v-1e845b3e]{min-width:190px;padding-top:0}.chart-grid.two[data-v-1e845b3e],.chart-grid.three[data-v-1e845b3e]{grid-template-columns:1fr}.chart-grid.three>.chart-panel[data-v-1e845b3e]:last-child{grid-column:auto}.performance-values[data-v-1e845b3e]{grid-template-columns:1fr}.metric-explorer header[data-v-1e845b3e]{align-items:flex-start;flex-direction:column}.metric-explorer header>span[data-v-1e845b3e]{text-align:left}.explorer-value[data-v-1e845b3e]{margin-left:0;text-align:left}}@media(max-width:600px){.dashboard-page[data-v-1e845b3e]{padding:10px}.page-head[data-v-1e845b3e]{align-items:flex-start;flex-direction:column}.page-head h1[data-v-1e845b3e]{font-size:24px}.head-actions[data-v-1e845b3e]{width:100%}.head-actions .btn[data-v-1e845b3e]{flex:1}.filter-bar label[data-v-1e845b3e],.explorer-controls label[data-v-1e845b3e]{min-width:calc(50% - 6px)}.view-tree[data-v-1e845b3e]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.scope-block[data-v-1e845b3e]{grid-column:1/-1;min-width:0;border-right:0;border-bottom:1px solid #e7ede9}.tree-group[data-v-1e845b3e]{min-width:0}.tree-item[data-v-1e845b3e]{padding-left:12px}.kpi-grid[data-v-1e845b3e],.kpi-grid.twelve[data-v-1e845b3e]{grid-template-columns:repeat(2,minmax(0,1fr))}.context-band[data-v-1e845b3e]{align-items:flex-start;flex-direction:column}.context-meta[data-v-1e845b3e]{justify-content:flex-start}.kpi strong[data-v-1e845b3e]{font-size:17px}.chart-panel[data-v-1e845b3e]{padding:13px}}
.context-band[data-v-1e845b3e] { background: #245746; color: #fff;
}
.context-band h2[data-v-1e845b3e] { color: #fff;
}
.context-band span[data-v-1e845b3e] { color: #d9ebe3;
}
.context-meta span[data-v-1e845b3e] { border-color: #6f9a88; color: #fff;
}

.page[data-v-08f989f9]{display:grid;gap:12px}.page-head[data-v-08f989f9],.panel-head[data-v-08f989f9],.actions[data-v-08f989f9],.status-strip>div[data-v-08f989f9]{align-items:center;display:flex}.page-head[data-v-08f989f9],.panel-head[data-v-08f989f9]{justify-content:space-between;gap:16px}.page-head h1[data-v-08f989f9]{font-size:22px;margin-top:6px}.back[data-v-08f989f9]{color:#2563eb;font-size:12px;text-decoration:none}.status-strip[data-v-08f989f9]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.status-strip>div[data-v-08f989f9]{gap:8px;padding:13px 15px}.status-strip>div+div[data-v-08f989f9]{border-left:1px solid #e5e7eb}.status-strip svg[data-v-08f989f9]{color:#2563eb}.status-strip span[data-v-08f989f9]{color:#667085;font-size:12px}.status-strip strong[data-v-08f989f9]{margin-left:auto}.panel[data-v-08f989f9],.feedback[data-v-08f989f9]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px}.panel-head h2[data-v-08f989f9]{font-size:17px}.panel-head p[data-v-08f989f9]{color:#667085;font-size:12px;margin-top:3px}.actions[data-v-08f989f9]{flex-wrap:wrap;gap:8px}.feedback.success[data-v-08f989f9]{border-color:#a7f3d0;color:#047857}.feedback.error[data-v-08f989f9]{border-color:#fecaca;color:#b91c1c}.two-column[data-v-08f989f9]{display:grid;gap:12px;grid-template-columns:1fr 1fr}.form-grid[data-v-08f989f9]{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-top:14px}label[data-v-08f989f9]{display:grid;gap:5px}label span[data-v-08f989f9]{font-size:12px;font-weight:700}select[data-v-08f989f9],input[data-v-08f989f9]{border:1px solid #d0d5dd;border-radius:8px;min-height:38px;padding:7px 10px}.footer-actions[data-v-08f989f9]{margin-top:12px}.table-wrap[data-v-08f989f9]{border:1px solid #eef0f5;border-radius:8px;margin-top:12px;max-width:100%;overflow:auto}table[data-v-08f989f9]{border-collapse:collapse;min-width:900px;width:100%}th[data-v-08f989f9],td[data-v-08f989f9]{border-bottom:1px solid #eef0f5;padding:9px 10px;text-align:center;white-space:nowrap}th[data-v-08f989f9]{background:#f8fafc;color:#475467;font-size:12px}.reason[data-v-08f989f9]{max-width:260px;overflow:hidden;text-overflow:ellipsis}.tag[data-v-08f989f9]{background:#f2f4f7;border-radius:999px;padding:3px 8px}.tag[data-status="AUTO_MATCH"][data-v-08f989f9]{background:#ecfdf3;color:#027a48}.tag[data-status="DUPLICATE_ERP_NAME"][data-v-08f989f9]{background:#fff4ed;color:#b93815}.tag[data-status="ALREADY_BOUND"][data-v-08f989f9]{background:#eff8ff;color:#175cd3}.empty[data-v-08f989f9]{color:#667085;padding:24px}.btn[data-v-08f989f9]{align-items:center;display:inline-flex;gap:6px}@media(max-width:900px){.status-strip[data-v-08f989f9],.two-column[data-v-08f989f9]{grid-template-columns:1fr 1fr}.panel-head[data-v-08f989f9],.page-head[data-v-08f989f9]{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.status-strip[data-v-08f989f9],.two-column[data-v-08f989f9],.form-grid[data-v-08f989f9]{grid-template-columns:1fr}.status-strip>div+div[data-v-08f989f9]{border-left:0;border-top:1px solid #e5e7eb}.actions[data-v-08f989f9]>*{width:100%}}

.form[data-v-7dc9092e] {
  display: grid;
  gap: 12px;
}
.form-group[data-v-7dc9092e] {
  display: grid;
  gap: 8px;
}
.label[data-v-7dc9092e] {
  font-size: 12px;
  color: #111827;
  font-weight: 600;
}
.form-control[data-v-7dc9092e] {
  width: 100%;
  height: 40px;
  border-radius: 10px;
  border: 1px solid #e8eaf0;
  padding: 0 12px;
  outline: none;
  background: #fafbfc;
  transition: all 0.2s ease;
}
.form-control[data-v-7dc9092e]:focus {
  border-color: rgba(37, 99, 235, 0.85);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14);
}
.error[data-v-7dc9092e] {
  margin: 0;
  color: #b42318;
  font-size: 13px;
  line-height: 1.5;
}
.success[data-v-7dc9092e] {
  margin: 0;
  color: #067647;
  font-size: 13px;
  line-height: 1.5;
}

.tabs[data-v-140aa8d6]{
  display:flex;
  gap: 8px;
  flex-wrap: wrap;
}
.tab[data-v-140aa8d6]{
  height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,0.12);
  background: #fff;
  cursor: pointer;
  font-weight: 800;
  font-size: 12px;
  color: rgba(15,23,42,0.75);
}
.tab.active[data-v-140aa8d6]{
  border-color: rgba(37,99,235,0.35);
  color: #2563eb;
  background: rgba(37,99,235,0.06);
}
.brush[data-v-140aa8d6]{
  display:flex;
  align-items:center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,0.10);
  background: rgba(15,23,42,0.02);
}
.brush input[type="range"][data-v-140aa8d6]{
  width: 140px;
}
.sign-pad[data-v-140aa8d6]{
  border: 1px dashed rgba(15, 23, 42, 0.18);
  border-radius: 14px;
  padding: 10px;
  background: #fff;
  overflow:auto;
  position: relative;
}
.sign-canvas[data-v-140aa8d6]{
  display:block;
  border-radius: 12px;
  background: transparent;
  touch-action: none;
  user-select: none;
}
.sign-pad-checker[data-v-140aa8d6]{
  background-image:
    linear-gradient(45deg, rgba(15,23,42,0.06) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(15,23,42,0.06) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(15,23,42,0.06) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(15,23,42,0.06) 75%);
  background-size: 18px 18px;
  background-position: 0 0, 0 9px, 9px -9px, -9px 0px;
}
.pad-guides[data-v-140aa8d6]{
  position:absolute;
  inset: 10px;
  border-radius: 12px;
  pointer-events:none;
  background:
    linear-gradient(to right, transparent 49.7%, rgba(37,99,235,0.18) 50%, transparent 50.3%),
    linear-gradient(to bottom, transparent 49.7%, rgba(37,99,235,0.18) 50%, transparent 50.3%);
  opacity: 0.9;
}
.signature-preview-mask[data-v-140aa8d6]{
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(0,0,0,0.72);
}
.signature-preview-dialog[data-v-140aa8d6]{
  width: min(960px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(0,0,0,0.36);
}
.signature-preview-head[data-v-140aa8d6]{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(15,23,42,0.1);
}
.signature-preview-body[data-v-140aa8d6]{
  min-height: 240px;
  overflow: auto;
  display: grid;
  place-items: center;
  padding: 20px;
  background: #0b0f19;
}
.signature-preview-body img[data-v-140aa8d6]{
  max-width: 100%;
  max-height: calc(100vh - 140px);
  object-fit: contain;
  background: #fff;
  border-radius: 6px;
}

.btn[data-v-8708b95b] {
  height: 40px;
  padding: 0 12px;
}
.input[data-v-8708b95b] {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  font: inherit;
  width: 100%;
  box-sizing: border-box;
  height: 40px;
}
.field[data-v-8708b95b] {
  display: grid;
  position: relative;
  align-content: start;
  padding-bottom: 22px;
}
.profile-grid[data-v-8708b95b] {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 12px;
}
.profile-grid .wide[data-v-8708b95b] {
  grid-column: 1 / -1;
}
.textarea[data-v-8708b95b] {
  height: auto;
  min-height: 80px;
}
.photo-field[data-v-8708b95b] {
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.profile-photo-preview[data-v-8708b95b] {
  width: 72px;
  height: 72px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  overflow: hidden;
  background: #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
}
.profile-photo-preview img[data-v-8708b95b] {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.field-error[data-v-8708b95b] {
  position: absolute;
  left: 0;
  bottom: 0;
  color: #b91c1c;
  font-size: 12px;
  line-height: 1.4;
}
.reject-alert[data-v-8708b95b] {
  margin-top: 10px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fef2f2;
  color: #991b1b;
  padding: 10px 12px;
  display: grid;
  gap: 4px;
  line-height: 1.6;
}
.modal-mask[data-v-8708b95b] {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, .35);
  padding: 20px;
}
.submit-dialog[data-v-8708b95b] {
  width: min(420px, 92vw);
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(15, 23, 42, .24);
  padding: 20px;
}
.submit-dialog h3[data-v-8708b95b] {
  margin: 0;
  font-size: 20px;
  color: #111827;
}
.submit-dialog p[data-v-8708b95b] {
  margin: 10px 0 0;
  color: #374151;
  line-height: 1.7;
}
.submit-dialog-actions[data-v-8708b95b] {
  margin-top: 16px;
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 900px) {
.profile-grid[data-v-8708b95b] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 560px) {
.profile-grid[data-v-8708b95b] {
    grid-template-columns: 1fr;
}
}

.ai-page[data-v-82725a32]{max-width:1180px;margin:0 auto;padding:28px 24px 48px;display:grid;gap:20px}.ai-hero[data-v-82725a32]{position:relative;overflow:hidden;border:1px solid #286ab6;border-bottom:4px solid #e6a73b;border-radius:8px;background:#102f59;color:#fff;padding:32px 36px;box-shadow:0 18px 42px rgba(24,65,115,.16)}.ai-hero[data-v-82725a32]::after{content:"";position:absolute;inset:0;border:1px solid rgba(151,230,255,.2);border-radius:inherit;pointer-events:none}.eyebrow[data-v-82725a32]{color:#ffdd77;font-size:12px;font-weight:800;margin:0 0 9px}.ai-hero h1[data-v-82725a32]{color:#fff!important;font-size:28px;letter-spacing:0;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.22)}.hero-copy[data-v-82725a32]{color:#e5f4ff!important;font-size:15px;line-height:1.75;max-width:760px;margin:12px 0 0}.ai-workspace[data-v-82725a32]{overflow:hidden;border:1px solid #d5e6f2;border-radius:8px;background:#f9fcff;box-shadow:0 12px 32px rgba(29,77,135,.1)}.conversation[data-v-82725a32]{min-height:330px;padding:30px}.empty-answer[data-v-82725a32]{color:#5e7392;display:grid;gap:10px;place-content:center;min-height:270px;text-align:center}.empty-answer strong[data-v-82725a32]{color:#182c5b;font-size:21px}.answer-card[data-v-82725a32]{max-width:900px;border-left:4px solid #3d87e4;padding-left:18px}.answer-content[data-v-82725a32]{color:#172b4d;font-size:15px;line-height:1.9;margin:0;white-space:pre-wrap}.answer-meta[data-v-82725a32],.safety-note[data-v-82725a32],.config-note[data-v-82725a32]{color:#60748f;font-size:12px;margin:16px 0 0}.answer-sources[data-v-82725a32]{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.source-label[data-v-82725a32]{align-self:center;color:#60748f;font-size:12px;font-weight:700}.source-link[data-v-82725a32]{border:1px solid #b8e5ed;border-radius:6px;background:#effcfb;color:#0b6877;font-size:12px;padding:6px 9px;text-decoration:none}.ask-form[data-v-82725a32]{border-top:1px solid #d8e7f1;display:flex;gap:12px;padding:18px;background:#fff}.ask-form textarea[data-v-82725a32]{min-height:84px;border:1px solid #b8cee4;border-radius:8px;background:#fbfdff;box-sizing:border-box;color:#172b4d;flex:1;font:inherit;padding:12px;resize:vertical}.ask-form textarea[data-v-82725a32]:focus{border-color:#4a8fe4;box-shadow:0 0 0 3px rgba(72,145,230,.16);outline:0}.ask-form button[data-v-82725a32],.document-form button[data-v-82725a32],.publish-btn[data-v-82725a32],.refresh-btn[data-v-82725a32]{border-radius:6px;background:#2c75ca;border:1px solid #2c75ca;color:#fff;cursor:pointer;font:inherit;padding:0 18px}.ask-form button[data-v-82725a32]{font-weight:800}.ask-form button[data-v-82725a32]:disabled,.document-form button[data-v-82725a32]:disabled{cursor:not-allowed;opacity:.6}.safety-note[data-v-82725a32]{margin:0;padding:0 18px 18px;background:#fff}.loading-copy[data-v-82725a32]{color:#2573aa}.error-copy[data-v-82725a32]{color:#b42318;font-size:13px;margin:12px 0}.knowledge-admin[data-v-82725a32]{border:1px solid #f0d9a1;border-top:4px solid #d79b26;border-radius:8px;margin:0;padding:22px;background:#fffdf8}.section-heading[data-v-82725a32]{align-items:center;display:flex;justify-content:space-between}.section-heading h2[data-v-82725a32]{color:#1d3157;letter-spacing:0;margin:0}.refresh-btn[data-v-82725a32]{background:#fff;color:#1b62af}.document-form[data-v-82725a32]{display:grid;gap:10px;margin-top:16px}.document-form input[data-v-82725a32],.document-form textarea[data-v-82725a32]{border:1px solid #c7d9e8;border-radius:6px;color:#1d3157;font:inherit;padding:10px}.document-form button[data-v-82725a32]{height:38px;justify-self:start}.document-list[data-v-82725a32]{border-top:1px solid #e5ecf2;margin-top:20px}.document-row[data-v-82725a32]{align-items:center;border-bottom:1px solid #e5ecf2;display:flex;justify-content:space-between;padding:12px 0}.document-row div[data-v-82725a32]{display:grid;gap:4px}.document-row span[data-v-82725a32]{color:#64748b;font-size:12px}.publish-btn[data-v-82725a32]{background:#118b7e;border-color:#118b7e;height:32px}@media(max-width:700px){.ai-page[data-v-82725a32]{padding:16px;gap:14px}.ai-hero[data-v-82725a32]{padding:24px}.ai-hero h1[data-v-82725a32]{font-size:23px}.ask-form[data-v-82725a32]{align-items:stretch;flex-direction:column}.ask-form button[data-v-82725a32]{height:42px}.conversation[data-v-82725a32]{min-height:250px;padding:20px}}
.document-upload[data-v-82725a32]{align-items:center;border:1px dashed #b8cee4;border-radius:6px;display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;padding:12px}.document-upload input[data-v-82725a32]{color:#36516f;max-width:320px}.upload-hint[data-v-82725a32]{color:#60748f;flex:1;font-size:12px;line-height:1.55;min-width:220px}.document-upload button[data-v-82725a32]{background:#0f7d84;border:1px solid #0f7d84;border-radius:6px;color:#fff;cursor:pointer;font:inherit;height:36px;padding:0 14px}.document-upload button[data-v-82725a32]:disabled{cursor:not-allowed;opacity:.6}
