@import "https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Plus+Jakarta+Sans:wght@300;400;500;600&display=swap";.login-shell[data-v-788a352b]{background:var(--bg);justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex;position:relative;overflow:hidden}.login-bg-grid[data-v-788a352b]{pointer-events:none;background-image:linear-gradient(#2a2d3e99 1px,#0000 1px),linear-gradient(90deg,#2a2d3e99 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 65%,#0000 15%,#000 85%);mask-image:radial-gradient(80% 65%,#0000 15%,#000 85%)}.login-box[data-v-788a352b]{z-index:2;background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:760px;display:flex;position:relative;overflow:hidden;box-shadow:0 32px 80px #0009,0 0 0 1px #f973160a}.login-brand[data-v-788a352b]{border-right:1px solid var(--border);background:linear-gradient(155deg,#1a1d2e 0%,#14162400 60%,#0f1018 100%),linear-gradient(#1a1d2e 0%,#111320 100%);flex-shrink:0;align-items:flex-start;width:44%;padding:52px 36px;display:flex;position:relative;overflow:hidden}.login-brand-inner[data-v-788a352b]{z-index:2;position:relative}.brand-mark[data-v-788a352b]{background:var(--accent);border-radius:14px;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:22px;display:flex;box-shadow:0 0 28px #f9731659}.brand-mark span[data-v-788a352b]{font-family:var(--font-mono);color:#fff;font-size:1.6rem;font-weight:700;line-height:1}.brand-name[data-v-788a352b]{font-family:var(--font-mono);color:var(--text-head);letter-spacing:.07em;margin-bottom:6px;font-size:1.6rem;font-weight:700;line-height:1}.brand-tagline[data-v-788a352b]{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:44px;font-size:.68rem}.brand-features[data-v-788a352b]{flex-direction:column;gap:14px;display:flex}.brand-feature[data-v-788a352b]{color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);align-items:center;gap:11px;display:flex}.feature-dot[data-v-788a352b]{background:var(--accent);opacity:.8;border-radius:50%;flex-shrink:0;width:5px;height:5px}.deco[data-v-788a352b]{pointer-events:none;position:absolute}.deco-1[data-v-788a352b]{border:1px solid #f973161f;border-radius:5px;width:88px;height:88px;bottom:48px;right:-18px;transform:rotate(20deg)}.deco-2[data-v-788a352b]{border:1px solid #f9731612;border-radius:5px;width:52px;height:52px;bottom:88px;right:42px;transform:rotate(48deg)}.deco-3[data-v-788a352b]{border:1px solid #f973160d;border-radius:5px;width:130px;height:130px;bottom:-36px;right:-36px;transform:rotate(14deg)}.deco-dot[data-v-788a352b]{background:var(--accent);opacity:.35;border-radius:50%;width:7px;height:7px;bottom:122px;right:56px;box-shadow:0 0 14px #f9731699}.login-form-panel[data-v-788a352b]{flex:1;align-items:center;padding:52px 44px;display:flex}.login-form-inner[data-v-788a352b]{width:100%}.login-heading[data-v-788a352b]{margin-bottom:32px}.login-heading h2[data-v-788a352b]{color:var(--text-head);letter-spacing:.04em;margin-bottom:5px;font-size:1.45rem}.login-fields[data-v-788a352b]{flex-direction:column;gap:16px;display:flex}.input-has-toggle .input[data-v-788a352b]{padding-left:38px;padding-right:40px}.pass-toggle[data-v-788a352b]{cursor:pointer;color:var(--text-dim);border-radius:var(--radius-sm);transition:color var(--t);background:0 0;border:none;align-items:center;padding:3px;display:flex;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.pass-toggle[data-v-788a352b]:hover{color:var(--text-muted)}.login-btn[data-v-788a352b]{justify-content:center;width:100%;margin-top:4px;padding:11px 16px;font-size:.875rem}.login-hint[data-v-788a352b]{color:var(--text-dim);text-align:center;margin-top:28px;font-size:.73rem;line-height:1.6}@media (width<=600px){.login-brand[data-v-788a352b]{display:none}.login-form-panel[data-v-788a352b]{padding:40px 28px}}.sidebar-brand[data-v-ff1e1238]{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:16px 14px 14px;display:flex}.sidebar-brand-mark[data-v-ff1e1238]{flex-shrink:0;display:flex}.sidebar-brand-text[data-v-ff1e1238]{flex:1;min-width:0}.sidebar-brand-name[data-v-ff1e1238]{font-family:var(--font-mono);color:var(--accent);letter-spacing:.06em;font-size:1rem;font-weight:700;line-height:1.1}.sidebar-brand-sub[data-v-ff1e1238]{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-size:.6rem}.nav-item[data-v-ff1e1238]{border-radius:var(--radius);color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t), box-shadow var(--t);white-space:nowrap;text-align:left;width:100%;font-size:.8125rem;font-weight:450;font-family:var(--font-sans);background:0 0;border:none;align-items:center;gap:9px;padding:7px 10px;text-decoration:none;display:flex;position:relative}.nav-item[data-v-ff1e1238]:before{content:"";background:var(--accent);opacity:0;width:2.5px;transition:opacity var(--t);border-radius:99px;position:absolute;top:20%;bottom:20%;left:0}.nav-item[data-v-ff1e1238]:hover{background:var(--surface-2);color:var(--text)}.nav-item[data-v-ff1e1238]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nav-item.router-link-active[data-v-ff1e1238],.nav-item.router-link-exact-active[data-v-ff1e1238]{background:var(--accent-dim);color:var(--accent);font-weight:550}.nav-item.router-link-active[data-v-ff1e1238]:before,.nav-item.router-link-exact-active[data-v-ff1e1238]:before{opacity:1}.nav-icon[data-v-ff1e1238]{opacity:.75;width:17px;transition:opacity var(--t);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-item:hover .nav-icon[data-v-ff1e1238],.nav-item.router-link-active .nav-icon[data-v-ff1e1238]{opacity:1}.nav-label[data-v-ff1e1238]{text-overflow:ellipsis;flex:1;overflow:hidden}.nav-item--collapsible[data-v-ff1e1238]{justify-content:flex-start}.nav-caret[data-v-ff1e1238]{color:var(--text-dim);transition:transform .2s ease, color var(--t);align-items:center;margin-left:auto;display:flex}.nav-item--collapsible.is-open .nav-caret[data-v-ff1e1238]{color:var(--accent);transform:rotate(180deg)}.nav-sub-group[data-v-ff1e1238]{max-height:0;transition:max-height .25s;overflow:hidden}.nav-sub-group.is-open[data-v-ff1e1238]{max-height:300px}.nav-item--sub[data-v-ff1e1238]{color:var(--text-dim);padding-left:20px;font-size:.79rem}.nav-item--sub[data-v-ff1e1238]:hover{color:var(--text-muted)}.nav-item--sub.router-link-active[data-v-ff1e1238]{color:var(--accent)}.nav-sub-dot[data-v-ff1e1238]{opacity:.5;width:5px;height:5px;transition:opacity var(--t), transform var(--t);background:currentColor;border-radius:50%;flex-shrink:0}.nav-item--sub.router-link-active .nav-sub-dot[data-v-ff1e1238]{opacity:1;transform:scale(1.3)}.nav-general-zone[data-v-ff1e1238]{padding:4px 0 2px}.nav-section-label[data-v-ff1e1238]{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:.58rem;font-family:var(--font-mono);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:16px 10px 4px}.nav-section-label--master[data-v-ff1e1238]{align-items:center;gap:8px;padding-top:14px;padding-bottom:6px;display:flex}.nav-section-label-line[data-v-ff1e1238]{background:var(--border);border-radius:1px;flex:1;height:1px}.nav-section-label--project[data-v-ff1e1238]{letter-spacing:.1em;color:#f973168c;padding-top:10px;padding-bottom:3px;padding-left:10px;font-size:.54rem}.nav-project-zone[data-v-ff1e1238]{background:#f973160a;border:1px solid #f9731633;border-radius:10px;flex-shrink:0;margin:10px 8px 4px;position:relative;overflow:hidden}.nav-project-zone[data-v-ff1e1238]:before{content:"";background:linear-gradient(to bottom, var(--accent), #f9731640);z-index:1;border-radius:0;width:3px;position:absolute;top:0;bottom:0;left:0}.nav-project-header[data-v-ff1e1238]{background:linear-gradient(135deg,#f9731624 0%,#f973160d 100%);border-bottom:1px solid #f9731621;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 7px 13px;display:flex}.nav-project-header-main[data-v-ff1e1238]{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.nav-project-pulse[data-v-ff1e1238]{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.4s ease-in-out infinite pulse-glow-ff1e1238}@keyframes pulse-glow-ff1e1238{0%,to{box-shadow:0 0 0 2px #f9731633}50%{box-shadow:0 0 0 5px #f9731612}}.nav-project-name[data-v-ff1e1238]{color:var(--accent);font-size:.7rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nav-project-tag[data-v-ff1e1238]{font-size:.48rem;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-h);background:#f9731624;border:1px solid #f9731647;border-radius:4px;flex-shrink:0;padding:1.5px 5px 1px;line-height:1.6}.nav-project-body[data-v-ff1e1238]{padding:5px 4px 6px}.nav-item--project[data-v-ff1e1238]{padding-left:10px}.nav-item--project[data-v-ff1e1238]:hover{color:var(--text);background:#f9731617}.nav-item--project.router-link-active[data-v-ff1e1238],.nav-item--project.router-link-exact-active[data-v-ff1e1238]{color:var(--accent);background:#f9731621}.nav-item--project.router-link-active[data-v-ff1e1238]:before,.nav-item--project.router-link-exact-active[data-v-ff1e1238]:before{background:var(--accent-h)}.nav-item--prompt[data-v-ff1e1238]{color:var(--text-dim);background:#f9731605;border:1px dashed #f9731638;border-radius:10px;width:calc(100% - 16px);margin:10px 8px 4px;padding:8px 10px;font-size:.79rem;font-style:italic}.nav-item--prompt[data-v-ff1e1238]:hover{color:var(--accent);background:#f9731612;border-color:#f9731673;font-style:normal}.nav-item--admin[data-v-ff1e1238]{color:var(--accent);opacity:.85}.nav-item--admin[data-v-ff1e1238]:hover{opacity:1;background:var(--accent-dim)}.nav-item--admin.router-link-active[data-v-ff1e1238]{opacity:1}.sidebar-footer[data-v-ff1e1238]{border-top:1px solid var(--border);flex-shrink:0;padding:10px 10px 12px}.sidebar-user[data-v-ff1e1238]{border-radius:var(--radius);transition:background var(--t);align-items:center;gap:9px;padding:7px 8px;display:flex}.sidebar-user-avatar[data-v-ff1e1238]{background:var(--surface-3);border:1.5px solid var(--border-2);width:30px;height:30px;font-family:var(--font-mono);color:var(--accent);letter-spacing:.05em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;font-weight:700;display:flex}.sidebar-user-info[data-v-ff1e1238]{flex:1;min-width:0}.sidebar-user-name[data-v-ff1e1238]{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.sidebar-user-role[data-v-ff1e1238]{color:var(--text-dim);letter-spacing:.03em;margin-top:1px;font-size:.65rem}.sidebar-logout-btn[data-v-ff1e1238]{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:background var(--t), color var(--t), border-color var(--t);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-logout-btn[data-v-ff1e1238]:hover{background:var(--red-dim);color:var(--red);border-color:#0000}.sidebar-logout-btn[data-v-ff1e1238]:focus-visible{outline:2px solid var(--red);outline-offset:2px}.proj-stats[data-v-d21a50e4]{flex-direction:column;gap:6px;display:flex}.proj-stat[data-v-d21a50e4]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:5px 0;font-size:.82rem;display:flex}.proj-stat[data-v-d21a50e4]:last-child{border-bottom:none}.proj-stat-label[data-v-d21a50e4]{color:var(--text-muted)}.proj-stat-val[data-v-d21a50e4]{font-family:var(--font-mono);font-size:.82rem;font-weight:600}.stat-card.clickable[data-v-d21a50e4]{cursor:pointer;transition:border-color .15s}.stat-card.clickable[data-v-d21a50e4]:hover{border-color:var(--yellow)}.stat-hint[data-v-d21a50e4]{color:var(--text-dim);margin-top:4px;font-size:.68rem}.cco-pill[data-v-d21a50e4]{background:var(--accent);color:#fff;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:3px;padding:1px 5px;font-size:.62rem;font-weight:700;display:inline-block}.modal-overlay[data-v-d21a50e4]{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box[data-v-d21a50e4]{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-lg);flex-direction:column;width:480px;max-width:95vw;max-height:80vh;display:flex;box-shadow:0 24px 64px #0009,0 2px 8px #0006}.modal-header[data-v-d21a50e4]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-title[data-v-d21a50e4]{font-size:.9rem;font-weight:600}.modal-close[data-v-d21a50e4]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1rem}.modal-close[data-v-d21a50e4]:hover{color:var(--text)}.modal-body[data-v-d21a50e4]{padding:16px 18px;overflow-y:auto}.form-error[data-v-4d23e367]{color:var(--red);font-size:.8rem}.form-optional[data-v-4d23e367]{color:var(--text-dim);font-size:.75rem;font-weight:400}.delete-warning-icon[data-v-4d23e367]{text-align:center;color:var(--red,#e53e3e);margin-bottom:8px;font-size:2rem}.confirm-code[data-v-4d23e367]{background:var(--bg-card,#1e1e2e);border:1px solid var(--border,#333);-webkit-user-select:all;user-select:all;border-radius:4px;padding:2px 8px;font-family:monospace;font-size:.9rem;display:inline-block}.btn-rab[data-v-4d23e367]{border-radius:var(--radius);border:1px solid var(--accent-ring);background:var(--accent-dim);color:var(--accent);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;align-items:center;gap:4px;padding:4px 12px;font-weight:600;display:inline-flex}.btn-rab[data-v-4d23e367]:hover{border-color:var(--accent);background:#f9731633}.actions-sep[data-v-4d23e367]{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.action-btn.subdued[data-v-4d23e367]{background:var(--surface-2);color:var(--text-dim);border-color:var(--border)}.action-btn.subdued[data-v-4d23e367]:hover{background:var(--surface-3,var(--bg));color:var(--text);border-color:var(--border-2)}.filter-bar[data-v-ca952513]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.filter-tabs[data-v-ca952513]{flex-wrap:wrap;gap:6px;display:flex}.search-inline[data-v-ca952513]{flex-shrink:0;width:200px}.input-sm[data-v-ca952513]{padding:5px 10px;font-size:.82rem}.filter-tab[data-v-ca952513]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-ca952513]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-ca952513]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-ca952513]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-ca952513]{background:var(--accent-dim);color:var(--accent)}.pagination-bar[data-v-ca952513]{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.pagination-summary[data-v-ca952513]{color:var(--text-dim);font-size:.76rem;font-family:var(--font-mono)}.pagination-controls[data-v-ca952513]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pagination-info[data-v-ca952513]{color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);white-space:nowrap}.pagination-btn[data-v-ca952513]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);justify-content:center;align-items:center;padding:6px 12px;display:inline-flex}.pagination-btn[data-v-ca952513]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.pagination-btn[data-v-ca952513]:disabled{opacity:.45;cursor:not-allowed}.category-filter-wrap[data-v-ca952513]{flex-shrink:0;position:relative}.category-btn[data-v-ca952513]{gap:4px}.cat-caret[data-v-ca952513]{margin-left:2px;font-size:.65rem}.cat-dropdown[data-v-ca952513]{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:180px;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.cat-option[data-v-ca952513]{color:var(--text-muted);cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:center;padding:8px 12px;font-size:.8rem;display:flex}.cat-option[data-v-ca952513]:hover{background:var(--surface-2);color:var(--text)}.cat-option.active[data-v-ca952513]{background:var(--accent-dim);color:var(--accent)}.sort-btn[data-v-ca952513]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-dim);font-size:.76rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;background:0 0;align-items:center;padding:5px 10px;display:inline-flex}.sort-btn[data-v-ca952513]:hover{background:var(--surface-2);color:var(--text-muted)}.sort-btn.active[data-v-ca952513]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.info-note[data-v-ca952513]{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--text-dim);color:var(--text-muted);margin-top:14px;padding:10px 16px;font-size:.8rem}.form-error[data-v-ca952513]{color:var(--red);font-size:.8rem}.delete-error-box[data-v-ca952513]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-ca952513]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-ca952513]{color:var(--text);font-size:.8rem;line-height:1.45}.text-dim[data-v-ca952513]{color:var(--text-dim);font-size:.8rem}.input-group[data-v-ca952513]{position:relative}.input-prefix[data-v-ca952513]{color:var(--text-muted);pointer-events:none;font-size:.8rem;font-family:var(--font-mono);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-prefix[data-v-ca952513]{padding-left:38px}.note-cell[data-v-ca952513]{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.btn-link-btn[data-v-ca952513]{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:all var(--t);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-link-btn[data-v-ca952513]:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-2,var(--border))}.category-chip[data-v-ca952513]{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:100px;padding:2px 8px;font-size:.72rem;display:inline-block}.img-btn[data-v-ca952513]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);white-space:nowrap;border:1px solid;align-items:center;padding:3px 10px;font-size:.73rem;font-weight:600;display:inline-flex}.img-btn-view[data-v-ca952513]{color:#818cf8;background:#6366f11f;border-color:#6366f14d}.img-btn-view[data-v-ca952513]:hover{background:#6366f138;border-color:#6366f180}.img-btn-upload[data-v-ca952513]{background:var(--surface-2);color:var(--text-dim);border-color:var(--border)}.img-btn-upload[data-v-ca952513]:hover{background:var(--surface-3);color:var(--text-muted)}.modal-image-viewer[data-v-ca952513]{width:90vw;min-width:520px;max-width:760px}.image-viewer-head[data-v-ca952513]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.image-viewer-body[data-v-ca952513]{justify-content:center;align-items:center;gap:12px;min-height:200px;display:flex}.image-frame[data-v-ca952513]{flex:1;justify-content:center;align-items:center;max-height:480px;transition:transform .2s;display:flex;overflow:hidden}.material-img[data-v-ca952513]{object-fit:contain;border-radius:var(--radius);max-width:100%;max-height:460px}.img-nav-btn[data-v-ca952513]{border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:all var(--t);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.img-nav-btn[data-v-ca952513]:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.img-nav-btn[data-v-ca952513]:disabled{opacity:.3;cursor:not-allowed}.modal-standar[data-v-ca952513]{min-width:480px}.standar-modal-head[data-v-ca952513]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.standar-table[data-v-ca952513]{border-collapse:collapse;width:100%;font-size:.83rem}.standar-table th[data-v-ca952513]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.standar-table td[data-v-ca952513]{border-bottom:1px solid var(--border);padding:8px}.standar-table tr:last-child td[data-v-ca952513]{border-bottom:none}.standar-table .td-actions[data-v-ca952513]{text-align:right;white-space:nowrap}.standar-table .td-actions .action-btn[data-v-ca952513]{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t), background var(--t);background:0 0;border:none;padding:4px 5px;font-size:.82rem}.standar-table .td-actions .action-btn[data-v-ca952513]:hover{color:var(--text);background:var(--surface-3)}.standar-table .td-actions .action-btn.danger[data-v-ca952513]{color:var(--red,#ef4444)}.standar-table .td-actions .action-btn.danger[data-v-ca952513]:hover{background:#ef444414}.modal-subtitle[data-v-ca952513]{color:var(--text-muted);margin-top:-8px;margin-bottom:8px;font-size:.82rem}.required[data-v-ca952513]{color:var(--red,#ef4444)}.edit-image-row[data-v-ca952513]{align-items:center;gap:12px;margin-top:4px;display:flex}.edit-img-thumb[data-v-ca952513]{object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);flex-shrink:0;width:56px;height:56px}.edit-image-btns[data-v-ca952513]{flex-direction:column;gap:4px;display:flex}.edit-file-label[data-v-ca952513]{cursor:pointer}.filter-bar[data-v-0e17d3ab]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-tabs[data-v-0e17d3ab]{flex-wrap:wrap;gap:6px;display:flex}.info-note[data-v-0e17d3ab]{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--text-dim);color:var(--text-muted);padding:10px 16px;font-size:.8rem}.analisa-layout[data-v-0e17d3ab]{align-items:flex-start;gap:20px;display:flex}.analisa-main[data-v-0e17d3ab]{flex:1;min-width:0}.analisa-sidebar[data-v-0e17d3ab]{flex-shrink:0;align-items:flex-start;gap:8px;width:320px;display:flex;position:sticky;top:20px}.analisa-sidebar--collapsed[data-v-0e17d3ab]{width:38px}.analisa-sidebar-toggle[data-v-0e17d3ab]{border:1px solid var(--border);background:var(--surface);width:30px;height:30px;color:var(--text-dim);cursor:pointer;transition:all var(--t);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;margin-top:8px;display:inline-flex}.analisa-sidebar-toggle[data-v-0e17d3ab]:hover{background:var(--surface-2);color:var(--text)}.analisa-sidebar .stats-card[data-v-0e17d3ab]{flex:1}.stats-card[data-v-0e17d3ab]{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:var(--radius-lg);padding:14px 16px;position:sticky;top:20px;overflow:hidden}.stats-card[data-v-0e17d3ab]:after{content:"";border:12px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:72px;height:72px;position:absolute;bottom:-22px;right:-22px}.stats-heading[data-v-0e17d3ab]{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-size:.6rem;font-family:var(--font-mono);margin-bottom:10px}.stats-row[data-v-0e17d3ab]{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;display:flex}.stats-key[data-v-0e17d3ab]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.77rem;overflow:hidden}.stats-key-mono[data-v-0e17d3ab]{font-family:var(--font-mono);font-size:.72rem}.stats-val[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--text);flex-shrink:0;font-size:.88rem;font-weight:600}.stats-accent[data-v-0e17d3ab]{color:var(--accent)}.stats-divider[data-v-0e17d3ab]{border-top:1px solid var(--border);margin:8px 0}.analysis-list[data-v-0e17d3ab]{flex-direction:column;gap:10px;display:flex}.pagination-summary[data-v-0e17d3ab]{color:var(--text-dim);font-size:.76rem;font-family:var(--font-mono);justify-content:flex-end;margin-bottom:2px;display:flex}.pagination-bar[data-v-0e17d3ab]{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.pagination-info[data-v-0e17d3ab]{color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);white-space:nowrap}.pagination-btn[data-v-0e17d3ab]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);justify-content:center;align-items:center;padding:6px 12px;display:inline-flex}.pagination-btn[data-v-0e17d3ab]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.pagination-btn[data-v-0e17d3ab]:disabled{opacity:.45;cursor:not-allowed}.analysis-card[data-v-0e17d3ab]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.analysis-head[data-v-0e17d3ab]{cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 20px;display:flex}.analysis-head[data-v-0e17d3ab]:hover{background:var(--surface-2)}.analysis-meta[data-v-0e17d3ab]{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.analysis-name[data-v-0e17d3ab]{color:var(--text-head);white-space:normal;overflow-wrap:anywhere;font-size:.9rem;font-weight:600;line-height:1.35}.ahs-code-tag[data-v-0e17d3ab]{font-family:var(--font-sans);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:var(--radius-sm);letter-spacing:.06em;white-space:nowrap;flex-shrink:0;padding:2px 8px;font-size:.62rem;font-weight:400}.sort-menu[data-v-0e17d3ab]{flex-shrink:0;position:relative}.sort-menu-btn[data-v-0e17d3ab]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-dim);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.sort-menu-btn[data-v-0e17d3ab]:hover{background:var(--surface-2);color:var(--text-muted)}.sort-menu-btn.active[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.sort-menu-dropdown[data-v-0e17d3ab]{z-index:16;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:4px;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 18px #00000029}.sort-menu-option[data-v-0e17d3ab]{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;border:1px solid #0000;padding:7px 9px}.sort-menu-option[data-v-0e17d3ab]:hover{background:var(--surface-2);color:var(--text);border-color:var(--border)}.sort-menu-option.active[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.analysis-standard[data-v-0e17d3ab]{color:var(--text-dim);font-size:.7rem;font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:100px;padding:1px 7px}.analysis-unit[data-v-0e17d3ab]{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.filter-tab[data-v-0e17d3ab]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-0e17d3ab]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-0e17d3ab]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-0e17d3ab]{background:var(--accent-dim);color:var(--accent)}.input-sm[data-v-0e17d3ab]{padding:5px 10px;font-size:.82rem}.analysis-actions[data-v-0e17d3ab]{flex-shrink:0;align-items:center;gap:8px;display:flex}.item-count[data-v-0e17d3ab]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-mono)}.expand-caret[data-v-0e17d3ab]{color:var(--text-dim);margin-left:4px;font-size:.6rem}.analysis-body[data-v-0e17d3ab]{border-top:2px solid var(--border);background:var(--bg);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:0 20px}.analysis-body-title[data-v-0e17d3ab]{padding:12px 0 2px}.analysis-body-name[data-v-0e17d3ab]{color:var(--text-dim);overflow-wrap:anywhere;font-size:.8rem;font-weight:500;line-height:1.4;display:block}.analysis-items-header[data-v-0e17d3ab]{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);grid-template-columns:1fr 68px 72px 140px 140px 160px;padding:8px 0;font-size:.68rem;font-weight:600;display:grid}.analysis-empty-items[data-v-0e17d3ab]{color:var(--text-dim);padding:16px 0;font-size:.8rem}.analysis-item-row[data-v-0e17d3ab]{color:var(--text);border-bottom:1px solid var(--border);grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;padding:9px 0;font-size:.83rem;display:grid}.analysis-item-row[data-v-0e17d3ab]:last-of-type{border-bottom:none}.analysis-total-row[data-v-0e17d3ab]{border-top:2px solid var(--border);background:var(--surface-2);grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;margin:0 -20px;padding:10px 20px;display:grid}.coef[data-v-0e17d3ab]{color:var(--accent);font-size:.82rem;font-weight:700}.badge-sm[data-v-0e17d3ab]{vertical-align:middle;margin-left:6px;padding:2px 6px;font-size:.6rem}.modal-subtitle[data-v-0e17d3ab]{color:var(--text-muted);margin-top:-8px;margin-bottom:8px;font-size:.82rem}.analysis-body-footer[data-v-0e17d3ab]{padding:12px 0}.form-error[data-v-0e17d3ab]{color:var(--red);font-size:.8rem}.delete-error-box[data-v-0e17d3ab]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-0e17d3ab]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-0e17d3ab]{color:var(--text);font-size:.8rem;line-height:1.45}.delete-error-detail[data-v-0e17d3ab]{color:var(--text-dim);margin-top:6px;font-size:.75rem;line-height:1.45}.selected-chip[data-v-0e17d3ab]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.chip-clear[data-v-0e17d3ab]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.action-btn[data-v-0e17d3ab]{cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:500;font-family:var(--font-sans);background:var(--surface-2);color:var(--text-dim);border:1px solid #0000;border-color:var(--border);border-radius:100px;justify-content:center;align-items:center;padding:3px 12px;display:inline-flex}.action-btn[data-v-0e17d3ab]:hover{background:var(--surface-3);color:var(--text-muted);border-color:var(--border-2,var(--border))}.action-btn.danger[data-v-0e17d3ab]{background:var(--surface-2);color:var(--text-dim);border-color:var(--border)}.action-btn.danger[data-v-0e17d3ab]:hover{color:#e05c6a;background:#dc35451a;border-color:#dc354540}.action-btn.money[data-v-0e17d3ab]{color:var(--green);background:#22c55e1f;border-color:#22c55e4d}.action-btn.money[data-v-0e17d3ab]:hover{background:#22c55e38;border-color:#22c55e80}.ahs-total-preview[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);white-space:nowrap;border-radius:100px;padding:2px 10px;font-size:.8rem;font-weight:700}.modal-add-komponen[data-v-0e17d3ab]{width:90vw;min-width:600px;max-width:700px}.multi-item-list[data-v-0e17d3ab]{flex-direction:column;gap:10px;display:flex}.multi-item-row[data-v-0e17d3ab]{grid-template-columns:1fr 130px 32px;align-items:start;gap:10px;display:grid}.multi-item-row .multi-item-remove-btn[data-v-0e17d3ab]{margin-top:20px}.multi-item-search-col[data-v-0e17d3ab],.multi-item-coef-col[data-v-0e17d3ab]{min-width:0}.multi-item-remove-btn[data-v-0e17d3ab]{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);width:32px;height:36px;color:var(--text-dim);cursor:pointer;transition:all var(--t);flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.multi-item-remove-btn[data-v-0e17d3ab]:hover:not(:disabled){color:#e05c6a;background:#dc35451a;border-color:#dc354540}.multi-item-remove-btn[data-v-0e17d3ab]:disabled{opacity:.35;cursor:not-allowed}.modal-standar[data-v-0e17d3ab]{width:92vw;min-width:760px;max-width:960px}.standar-table-wrap[data-v-0e17d3ab]{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.standar-modal-head[data-v-0e17d3ab]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.standar-table[data-v-0e17d3ab]{border-collapse:collapse;width:100%;min-width:620px;font-size:.83rem}.standar-table th[data-v-0e17d3ab]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.standar-table td[data-v-0e17d3ab]{border-bottom:1px solid var(--border);padding:8px}.standar-table tr:last-child td[data-v-0e17d3ab]{border-bottom:none}.body-filter-bar[data-v-0e17d3ab]{border-bottom:1px solid var(--border);gap:4px;padding:10px 0 8px;display:flex}.body-filter-tab[data-v-0e17d3ab]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;border:1px solid #0000;border-radius:100px;align-items:center;gap:5px;padding:3px 10px;display:inline-flex}.body-filter-tab[data-v-0e17d3ab]:hover{background:var(--surface-2);color:var(--text-muted)}.body-filter-tab.active[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.body-filter-tab.active .filter-count[data-v-0e17d3ab]{background:var(--accent-dim);color:var(--accent)}.btn-orange[data-v-0e17d3ab]{color:var(--accent)!important;border-color:var(--accent-ring)!important}.btn-orange[data-v-0e17d3ab]:hover{background:var(--accent-dim)!important}.analysis-body-footer[data-v-0e17d3ab]{align-items:center;gap:8px;display:flex}.standar-locked-note[data-v-0e17d3ab]{align-items:center;padding:8px 0 4px;display:flex}.modal-copy-ahs[data-v-0e17d3ab]{width:90vw;min-width:560px;max-width:680px}.copy-ahs-items-preview[data-v-0e17d3ab]{background:var(--surface-2);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;gap:4px;margin:6px 0 4px;padding:8px 12px;display:flex}.copy-ahs-item[data-v-0e17d3ab]{color:var(--text-muted);grid-template-columns:1fr 60px 72px;align-items:center;gap:8px;font-size:.8rem;display:grid}.overhead-sidebar-btn[data-v-0e17d3ab]{border-radius:var(--radius);border:1px dashed var(--border);cursor:pointer;width:100%;transition:all var(--t);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding:8px 10px;display:flex}.overhead-sidebar-btn[data-v-0e17d3ab]:hover{background:var(--surface-2);border-color:var(--border-2,var(--border));border-style:solid}.overhead-sidebar-btn--active[data-v-0e17d3ab]{background:var(--surface-2);border-style:solid;border-color:var(--accent-ring)}.overhead-sidebar-pct[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--accent);flex-shrink:0;min-width:36px;font-size:1.1rem;font-weight:700}.overhead-sidebar-btn:not(.overhead-sidebar-btn--active) .overhead-sidebar-pct[data-v-0e17d3ab]{color:var(--text-dim);font-size:.9rem}.overhead-sidebar-right[data-v-0e17d3ab]{flex-direction:column;align-items:flex-end;gap:1px;min-width:0;display:flex}.overhead-sidebar-hint[data-v-0e17d3ab]{color:var(--text-dim);white-space:nowrap;font-size:.68rem}.overhead-sidebar-edit[data-v-0e17d3ab]{color:var(--accent);letter-spacing:.03em;opacity:0;transition:opacity var(--t);font-size:.7rem;font-weight:600}.overhead-sidebar-btn:hover .overhead-sidebar-edit[data-v-0e17d3ab]{opacity:1}.analysis-subtotal-row[data-v-0e17d3ab],.analysis-overhead-row[data-v-0e17d3ab]{grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;padding:5px 0;display:grid}.analysis-subtotal-row[data-v-0e17d3ab]{border-top:1px dashed var(--border)}.analysis-overhead-row[data-v-0e17d3ab]{background:var(--yellow-dim,#eab30814);margin:0 -20px;padding-left:20px;padding-right:20px}.modal-overhead[data-v-0e17d3ab]{width:90vw;min-width:360px;max-width:420px}.overhead-modal-header[data-v-0e17d3ab]{align-items:center;gap:14px;margin-bottom:20px;display:flex}.overhead-modal-icon[data-v-0e17d3ab]{background:var(--accent-dim);border:1px solid var(--accent-ring);width:40px;height:40px;color:var(--accent);font-size:1.1rem;font-weight:800;font-family:var(--font-mono);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.overhead-input-row[data-v-0e17d3ab]{align-items:center;gap:8px;display:flex}.overhead-input-unit[data-v-0e17d3ab]{color:var(--text-muted);flex-shrink:0;font-size:1rem;font-weight:700}.overhead-preview-note[data-v-0e17d3ab]{color:var(--accent);font-size:.76rem;font-family:var(--font-mono);margin-top:8px}.page-header-copy[data-v-0e17d3ab]{flex-direction:column;gap:12px;min-width:0;display:flex}.file-action-group[data-v-0e17d3ab]{background:linear-gradient(180deg, var(--surface), var(--surface-2));border:1px solid var(--border);border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px;display:inline-flex;box-shadow:0 1px #00000005}.file-action-group--project[data-v-0e17d3ab]{gap:6px;padding:4px}.file-action-label[data-v-0e17d3ab]{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);border-radius:999px;align-items:center;padding:0 10px 0 12px;font-size:.72rem;font-weight:700;display:inline-flex}.file-action-group--project .file-action-label[data-v-0e17d3ab]{padding:0 8px 0 10px;font-size:.68rem}.file-action-btn[data-v-0e17d3ab]{transition:background var(--t), border-color var(--t), color var(--t), transform var(--t), opacity var(--t);border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:.8rem;font-weight:600;line-height:1;display:inline-flex}.file-action-icon[data-v-0e17d3ab]{flex-shrink:0}.file-action-btn--import[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.file-action-btn--export[data-v-0e17d3ab]{color:var(--text-muted);background:0 0}.file-action-btn[data-v-0e17d3ab]:hover:not(:disabled){transform:translateY(-1px)}.file-action-btn--import[data-v-0e17d3ab]:hover:not(:disabled){background:color-mix(in srgb, var(--accent-dim) 78%, white)}.file-action-btn--export[data-v-0e17d3ab]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.file-action-btn[data-v-0e17d3ab]:disabled{opacity:.55;cursor:not-allowed}.modal-import[data-v-0e17d3ab]{width:90vw;min-width:460px;max-width:540px}.modal-import--preview[data-v-0e17d3ab]{min-width:680px;max-width:780px}.import-modal-header[data-v-0e17d3ab]{align-items:center;gap:14px;margin-bottom:20px;display:flex}.import-modal-icon[data-v-0e17d3ab]{background:var(--accent-dim);border:1px solid var(--accent-ring);width:42px;height:42px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.import-dropzone[data-v-0e17d3ab]{border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;background:var(--surface);text-align:center;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:6px;padding:36px 24px;transition:all .2s;display:flex}.import-dropzone[data-v-0e17d3ab]:hover:not(.import-dropzone--loading){border-color:var(--accent-ring);background:var(--accent-dim)}.import-dropzone--active[data-v-0e17d3ab]{border-color:var(--accent);background:var(--accent-dim);transform:scale(1.01)}.import-dropzone--loading[data-v-0e17d3ab]{cursor:default;border-style:solid}.import-dropzone-icon[data-v-0e17d3ab]{color:var(--text-dim);margin-bottom:4px;transition:color .15s}.import-dropzone:hover:not(.import-dropzone--loading) .import-dropzone-icon[data-v-0e17d3ab],.import-dropzone--active .import-dropzone-icon[data-v-0e17d3ab]{color:var(--accent)}.import-dropzone-text[data-v-0e17d3ab]{color:var(--text-muted);font-size:.9rem;font-weight:600}.import-dropzone-sub[data-v-0e17d3ab]{color:var(--text-dim);font-size:.8rem}.import-dropzone-hint[data-v-0e17d3ab]{color:var(--text-dim);font-size:.72rem;font-family:var(--font-mono);letter-spacing:.04em;margin-top:4px}.import-error-box[data-v-0e17d3ab]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354538;margin-bottom:12px;padding:8px 12px;font-size:.8rem}.import-preview-header[data-v-0e17d3ab]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.import-filename[data-v-0e17d3ab]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-mono);margin:3px 0 0}.import-preview-badge[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);white-space:nowrap;border-radius:100px;flex-shrink:0;padding:3px 12px;font-size:.75rem;font-weight:600}.import-info-note[data-v-0e17d3ab]{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent-ring);color:var(--text-dim);margin-bottom:12px;padding:8px 12px;font-size:.78rem}.import-category-row[data-v-0e17d3ab]{margin-bottom:12px}.import-category-card[data-v-0e17d3ab]{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--surface), var(--surface-2));transition:border-color var(--t), box-shadow var(--t), background var(--t);padding:10px 12px}.import-category-card--active[data-v-0e17d3ab]{border-color:var(--accent-ring);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-ring) 60%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--accent-dim) 34%, var(--surface) 66%), var(--surface-2))}.import-category-head[data-v-0e17d3ab]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.import-category-state[data-v-0e17d3ab]{letter-spacing:.07em;text-transform:uppercase;font-size:.66rem;font-family:var(--font-mono);color:var(--text-dim);background:var(--surface-3);border:1px solid var(--border);border-radius:100px;padding:2px 8px}.import-category-card--active .import-category-state[data-v-0e17d3ab]{color:var(--accent);border-color:var(--accent-ring);background:var(--accent-dim)}.import-category-select-wrap[data-v-0e17d3ab],.import-category-picker[data-v-0e17d3ab]{position:relative}.import-category-trigger[data-v-0e17d3ab]{border:1px solid var(--border-2,var(--border));border-radius:var(--radius);background:var(--surface);width:100%;min-height:38px;color:var(--text);cursor:pointer;transition:border-color var(--t), box-shadow var(--t), background var(--t);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.import-category-trigger[data-v-0e17d3ab]:hover{border-color:var(--accent-ring);background:var(--surface-2)}.import-category-trigger--open[data-v-0e17d3ab]{border-color:var(--accent-ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-ring) 30%, transparent)}.import-category-trigger-text[data-v-0e17d3ab]{text-align:left;font-size:.81rem;font-weight:500;line-height:1.3}.import-category-arrow[data-v-0e17d3ab]{color:var(--text-dim);align-items:center;transition:transform .16s;display:inline-flex}.import-category-arrow--open[data-v-0e17d3ab]{transform:rotate(180deg)}.import-category-menu[data-v-0e17d3ab]{z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--surface), var(--surface-2));max-height:270px;padding:8px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 26px #0000002e}.import-category-search-wrap[data-v-0e17d3ab]{z-index:1;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);align-items:center;gap:6px;margin-bottom:8px;padding:0 8px;display:flex;position:sticky;top:0}.import-category-search-icon[data-v-0e17d3ab]{color:var(--text-dim);flex-shrink:0}.import-category-search[data-v-0e17d3ab]{width:100%;color:var(--text);background:0 0;border:none;outline:none;padding:8px 0;font-size:.78rem}.import-category-option[data-v-0e17d3ab]{border-radius:var(--radius);width:100%;color:var(--text);cursor:pointer;text-align:left;transition:background var(--t), border-color var(--t), color var(--t);background:0 0;border:1px solid #0000;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.import-category-option[data-v-0e17d3ab]:hover{background:var(--surface-3);border-color:var(--border)}.import-category-option--active[data-v-0e17d3ab]{background:var(--accent-dim);border-color:var(--accent-ring)}.import-category-option-main[data-v-0e17d3ab]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.79rem;overflow:hidden}.import-category-option-badge[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--border);border-radius:100px;padding:1px 7px;font-size:.66rem}.import-category-option-check[data-v-0e17d3ab]{color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.import-category-empty[data-v-0e17d3ab]{color:var(--text-dim);padding:8px 10px;font-size:.76rem}.import-category-hint[data-v-0e17d3ab]{color:var(--text-dim);margin:7px 0 0;font-size:.74rem}.import-category-picked[data-v-0e17d3ab]{color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:100px;align-items:center;gap:6px;margin-top:8px;padding:3px 10px;font-size:.74rem;display:inline-flex}.import-select-bar[data-v-0e17d3ab]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;border-bottom:none;align-items:center;padding:7px 10px;display:flex}.import-check-all[data-v-0e17d3ab]{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.8rem;font-weight:500;display:flex}.import-check-all input[type=checkbox][data-v-0e17d3ab]{cursor:pointer;width:15px;height:15px;accent-color:var(--accent)}.import-table-wrap[data-v-0e17d3ab]{border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);max-height:320px;overflow:hidden auto}.import-table[data-v-0e17d3ab]{border-collapse:collapse;width:100%;font-size:.82rem}.import-table thead th[data-v-0e17d3ab]{z-index:1;background:var(--surface-2);text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);white-space:nowrap;padding:7px 10px;font-size:.65rem;font-weight:600;position:sticky;top:0}.import-table thead th.text-right[data-v-0e17d3ab]{text-align:right}.import-th-check[data-v-0e17d3ab]{width:36px}.import-table-row[data-v-0e17d3ab]{cursor:pointer;border-bottom:1px solid var(--border);transition:background .12s}.import-table-row[data-v-0e17d3ab]:last-child{border-bottom:none}.import-table-row[data-v-0e17d3ab]:hover{background:var(--surface-2)}.import-row--selected[data-v-0e17d3ab]{background:var(--accent-dim)!important}.import-row--selected[data-v-0e17d3ab]:hover{background:color-mix(in srgb, var(--accent-dim) 80%, var(--surface-2))!important}.import-table td[data-v-0e17d3ab]{vertical-align:middle;padding:8px 10px}.import-td-check[data-v-0e17d3ab]{width:36px}.import-td-check input[type=checkbox][data-v-0e17d3ab]{cursor:pointer;width:14px;height:14px;accent-color:var(--accent)}.import-td-code[data-v-0e17d3ab]{width:90px}.import-td-name[data-v-0e17d3ab]{color:var(--text);font-weight:500}.import-td-unit[data-v-0e17d3ab]{white-space:nowrap;width:60px;font-size:.77rem}.import-td-count[data-v-0e17d3ab]{font-family:var(--font-mono);width:72px;font-size:.78rem}.import-td-status[data-v-0e17d3ab]{width:72px}.text-right[data-v-0e17d3ab]{text-align:right}.text-dim[data-v-0e17d3ab]{color:var(--text-dim)}.import-badge[data-v-0e17d3ab]{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:2px 9px;font-size:.65rem;font-weight:600;display:inline-flex}.import-badge--new[data-v-0e17d3ab]{color:var(--green,#22c55e);background:#22c55e1f;border:1px solid #22c55e4d}.import-badge--update[data-v-0e17d3ab]{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-ring)}.import-loading-state[data-v-0e17d3ab]{flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.import-loading-text[data-v-0e17d3ab]{color:var(--text);margin:0;font-size:.92rem;font-weight:600}.import-loading-sub[data-v-0e17d3ab]{color:var(--text-dim);margin:0;font-size:.78rem}.import-spinner[data-v-0e17d3ab]{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.7s linear infinite import-spin-0e17d3ab}.import-spinner--lg[data-v-0e17d3ab]{border-width:3.5px;width:40px;height:40px}@keyframes import-spin-0e17d3ab{to{transform:rotate(360deg)}}.import-done-state[data-v-0e17d3ab]{text-align:center;flex-direction:column;align-items:center;padding:20px 12px 4px;display:flex}.import-done-icon[data-v-0e17d3ab]{width:52px;height:52px;color:var(--green,#22c55e);background:#22c55e1f;border:2px solid #22c55e59;border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.import-result-grid[data-v-0e17d3ab]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:0;width:100%;max-width:360px;display:flex;overflow:hidden}.import-result-item[data-v-0e17d3ab]{flex-direction:column;flex:1;align-items:center;gap:4px;padding:14px 12px;display:flex}.import-result-divider[data-v-0e17d3ab]{background:var(--border);flex-shrink:0;width:1px;height:40px}.import-result-val[data-v-0e17d3ab]{font-family:var(--font-mono);color:var(--green,#22c55e);font-size:1.4rem;font-weight:700;line-height:1}.import-result-val--update[data-v-0e17d3ab]{color:var(--accent)}.import-result-val--dim[data-v-0e17d3ab]{color:var(--text-muted)}.import-result-key[data-v-0e17d3ab]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;font-family:var(--font-mono)}.filter-bar[data-v-d25152ce]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-tabs[data-v-d25152ce]{flex-wrap:wrap;gap:6px;display:flex}.info-note[data-v-d25152ce]{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--text-dim);color:var(--text-muted);padding:10px 16px;font-size:.8rem}.analisa-layout[data-v-d25152ce]{align-items:flex-start;gap:20px;display:flex}.analisa-main[data-v-d25152ce]{flex:1;min-width:0}.analisa-sidebar[data-v-d25152ce]{flex-shrink:0;align-items:flex-start;gap:8px;width:320px;display:flex;position:sticky;top:20px}.analisa-sidebar--collapsed[data-v-d25152ce]{width:38px}.analisa-sidebar-toggle[data-v-d25152ce]{border:1px solid var(--border);background:var(--surface);width:30px;height:30px;color:var(--text-dim);cursor:pointer;transition:all var(--t);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;margin-top:8px;display:inline-flex}.analisa-sidebar-toggle[data-v-d25152ce]:hover{background:var(--surface-2);color:var(--text)}.analisa-sidebar .stats-card[data-v-d25152ce]{flex:1}.stats-card[data-v-d25152ce]{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:var(--radius-lg);padding:14px 16px;position:sticky;top:20px;overflow:hidden}.stats-card[data-v-d25152ce]:after{content:"";border:12px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:72px;height:72px;position:absolute;bottom:-22px;right:-22px}.stats-heading[data-v-d25152ce]{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-size:.6rem;font-family:var(--font-mono);margin-bottom:10px}.stats-row[data-v-d25152ce]{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;display:flex}.stats-key[data-v-d25152ce]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.77rem;overflow:hidden}.stats-key-mono[data-v-d25152ce]{font-family:var(--font-mono);font-size:.72rem}.stats-val[data-v-d25152ce]{font-family:var(--font-mono);color:var(--text);flex-shrink:0;font-size:.88rem;font-weight:600}.stats-accent[data-v-d25152ce]{color:var(--accent)}.stats-divider[data-v-d25152ce]{border-top:1px solid var(--border);margin:8px 0}.analysis-list[data-v-d25152ce]{flex-direction:column;gap:10px;display:flex}.pagination-summary[data-v-d25152ce]{color:var(--text-dim);font-size:.76rem;font-family:var(--font-mono);justify-content:flex-end;margin-bottom:2px;display:flex}.pagination-bar[data-v-d25152ce]{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.pagination-info[data-v-d25152ce]{color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);white-space:nowrap}.pagination-btn[data-v-d25152ce]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);justify-content:center;align-items:center;padding:6px 12px;display:inline-flex}.pagination-btn[data-v-d25152ce]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.pagination-btn[data-v-d25152ce]:disabled{opacity:.45;cursor:not-allowed}.analysis-card[data-v-d25152ce]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.analysis-head[data-v-d25152ce]{cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 20px;display:flex}.analysis-head[data-v-d25152ce]:hover{background:var(--surface-2)}.analysis-meta[data-v-d25152ce]{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.analysis-name[data-v-d25152ce]{color:var(--text-head);white-space:normal;overflow-wrap:anywhere;font-size:.9rem;font-weight:600;line-height:1.35}.ahs-code-tag[data-v-d25152ce]{font-family:var(--font-sans);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:var(--radius-sm);letter-spacing:.06em;white-space:nowrap;flex-shrink:0;padding:2px 8px;font-size:.62rem;font-weight:400}.sort-menu[data-v-d25152ce]{flex-shrink:0;position:relative}.sort-menu-btn[data-v-d25152ce]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-dim);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.sort-menu-btn[data-v-d25152ce]:hover{background:var(--surface-2);color:var(--text-muted)}.sort-menu-btn.active[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.sort-menu-dropdown[data-v-d25152ce]{z-index:16;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:4px;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 18px #00000029}.sort-menu-option[data-v-d25152ce]{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;border:1px solid #0000;padding:7px 9px}.sort-menu-option[data-v-d25152ce]:hover{background:var(--surface-2);color:var(--text);border-color:var(--border)}.sort-menu-option.active[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.analysis-standard[data-v-d25152ce]{color:var(--text-dim);font-size:.7rem;font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:100px;padding:1px 7px}.analysis-unit[data-v-d25152ce]{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.filter-tab[data-v-d25152ce]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-d25152ce]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-d25152ce]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-d25152ce]{background:var(--accent-dim);color:var(--accent)}.input-sm[data-v-d25152ce]{padding:5px 10px;font-size:.82rem}.analysis-actions[data-v-d25152ce]{flex-shrink:0;align-items:center;gap:8px;display:flex}.item-count[data-v-d25152ce]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-mono)}.expand-caret[data-v-d25152ce]{color:var(--text-dim);margin-left:4px;font-size:.6rem}.analysis-body[data-v-d25152ce]{border-top:2px solid var(--border);background:var(--bg);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:0 20px}.analysis-body-title[data-v-d25152ce]{padding:12px 0 2px}.analysis-body-name[data-v-d25152ce]{color:var(--text-dim);overflow-wrap:anywhere;font-size:.8rem;font-weight:500;line-height:1.4;display:block}.analysis-items-header[data-v-d25152ce]{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);grid-template-columns:1fr 68px 72px 140px 140px 160px;padding:8px 0;font-size:.68rem;font-weight:600;display:grid}.analysis-empty-items[data-v-d25152ce]{color:var(--text-dim);padding:16px 0;font-size:.8rem}.analysis-item-row[data-v-d25152ce]{color:var(--text);border-bottom:1px solid var(--border);grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;padding:9px 0;font-size:.83rem;display:grid}.analysis-item-row[data-v-d25152ce]:last-of-type{border-bottom:none}.analysis-total-row[data-v-d25152ce]{border-top:2px solid var(--border);background:var(--surface-2);grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;margin:0 -20px;padding:10px 20px;display:grid}.coef[data-v-d25152ce]{color:var(--accent);font-size:.82rem;font-weight:700}.badge-sm[data-v-d25152ce]{vertical-align:middle;margin-left:6px;padding:2px 6px;font-size:.6rem}.modal-subtitle[data-v-d25152ce]{color:var(--text-muted);margin-top:-8px;margin-bottom:8px;font-size:.82rem}.analysis-body-footer[data-v-d25152ce]{padding:12px 0}.form-error[data-v-d25152ce]{color:var(--red);font-size:.8rem}.delete-error-box[data-v-d25152ce]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-d25152ce]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-d25152ce]{color:var(--text);font-size:.8rem;line-height:1.45}.delete-error-detail[data-v-d25152ce]{color:var(--text-dim);margin-top:6px;font-size:.75rem;line-height:1.45}.selected-chip[data-v-d25152ce]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.chip-clear[data-v-d25152ce]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.action-btn[data-v-d25152ce]{cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:500;font-family:var(--font-sans);background:var(--surface-2);color:var(--text-dim);border:1px solid #0000;border-color:var(--border);border-radius:100px;justify-content:center;align-items:center;padding:3px 12px;display:inline-flex}.action-btn[data-v-d25152ce]:hover{background:var(--surface-3);color:var(--text-muted);border-color:var(--border-2,var(--border))}.action-btn.danger[data-v-d25152ce]{background:var(--surface-2);color:var(--text-dim);border-color:var(--border)}.action-btn.danger[data-v-d25152ce]:hover{color:#e05c6a;background:#dc35451a;border-color:#dc354540}.action-btn.money[data-v-d25152ce]{color:var(--green);background:#22c55e1f;border-color:#22c55e4d}.action-btn.money[data-v-d25152ce]:hover{background:#22c55e38;border-color:#22c55e80}.ahs-total-preview[data-v-d25152ce]{font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);white-space:nowrap;border-radius:100px;padding:2px 10px;font-size:.8rem;font-weight:700}.modal-add-komponen[data-v-d25152ce]{width:90vw;min-width:600px;max-width:700px}.multi-item-list[data-v-d25152ce]{flex-direction:column;gap:10px;display:flex}.multi-item-row[data-v-d25152ce]{grid-template-columns:1fr 130px 32px;align-items:start;gap:10px;display:grid}.multi-item-row .multi-item-remove-btn[data-v-d25152ce]{margin-top:20px}.multi-item-search-col[data-v-d25152ce],.multi-item-coef-col[data-v-d25152ce]{min-width:0}.multi-item-remove-btn[data-v-d25152ce]{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);width:32px;height:36px;color:var(--text-dim);cursor:pointer;transition:all var(--t);flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.multi-item-remove-btn[data-v-d25152ce]:hover:not(:disabled){color:#e05c6a;background:#dc35451a;border-color:#dc354540}.multi-item-remove-btn[data-v-d25152ce]:disabled{opacity:.35;cursor:not-allowed}.modal-standar[data-v-d25152ce]{width:92vw;min-width:760px;max-width:960px}.standar-table-wrap[data-v-d25152ce]{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.standar-modal-head[data-v-d25152ce]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.standar-table[data-v-d25152ce]{border-collapse:collapse;width:100%;min-width:620px;font-size:.83rem}.standar-table th[data-v-d25152ce]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.standar-table td[data-v-d25152ce]{border-bottom:1px solid var(--border);padding:8px}.standar-table tr:last-child td[data-v-d25152ce]{border-bottom:none}.body-filter-bar[data-v-d25152ce]{border-bottom:1px solid var(--border);gap:4px;padding:10px 0 8px;display:flex}.body-filter-tab[data-v-d25152ce]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;border:1px solid #0000;border-radius:100px;align-items:center;gap:5px;padding:3px 10px;display:inline-flex}.body-filter-tab[data-v-d25152ce]:hover{background:var(--surface-2);color:var(--text-muted)}.body-filter-tab.active[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.body-filter-tab.active .filter-count[data-v-d25152ce]{background:var(--accent-dim);color:var(--accent)}.btn-orange[data-v-d25152ce]{color:var(--accent)!important;border-color:var(--accent-ring)!important}.btn-orange[data-v-d25152ce]:hover{background:var(--accent-dim)!important}.analysis-body-footer[data-v-d25152ce]{align-items:center;gap:8px;display:flex}.standar-locked-note[data-v-d25152ce]{align-items:center;padding:8px 0 4px;display:flex}.modal-copy-ahs[data-v-d25152ce]{width:90vw;min-width:560px;max-width:680px}.copy-ahs-items-preview[data-v-d25152ce]{background:var(--surface-2);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;gap:4px;margin:6px 0 4px;padding:8px 12px;display:flex}.copy-ahs-item[data-v-d25152ce]{color:var(--text-muted);grid-template-columns:1fr 60px 72px;align-items:center;gap:8px;font-size:.8rem;display:grid}.overhead-sidebar-btn[data-v-d25152ce]{border-radius:var(--radius);border:1px dashed var(--border);cursor:pointer;width:100%;transition:all var(--t);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding:8px 10px;display:flex}.overhead-sidebar-btn[data-v-d25152ce]:hover{background:var(--surface-2);border-color:var(--border-2,var(--border));border-style:solid}.overhead-sidebar-btn--active[data-v-d25152ce]{background:var(--surface-2);border-style:solid;border-color:var(--accent-ring)}.overhead-sidebar-pct[data-v-d25152ce]{font-family:var(--font-mono);color:var(--accent);flex-shrink:0;min-width:36px;font-size:1.1rem;font-weight:700}.overhead-sidebar-btn:not(.overhead-sidebar-btn--active) .overhead-sidebar-pct[data-v-d25152ce]{color:var(--text-dim);font-size:.9rem}.overhead-sidebar-right[data-v-d25152ce]{flex-direction:column;align-items:flex-end;gap:1px;min-width:0;display:flex}.overhead-sidebar-hint[data-v-d25152ce]{color:var(--text-dim);white-space:nowrap;font-size:.68rem}.overhead-sidebar-edit[data-v-d25152ce]{color:var(--accent);letter-spacing:.03em;opacity:0;transition:opacity var(--t);font-size:.7rem;font-weight:600}.overhead-sidebar-btn:hover .overhead-sidebar-edit[data-v-d25152ce]{opacity:1}.analysis-subtotal-row[data-v-d25152ce],.analysis-overhead-row[data-v-d25152ce]{grid-template-columns:1fr 68px 72px 140px 140px 160px;align-items:center;padding:5px 0;display:grid}.analysis-subtotal-row[data-v-d25152ce]{border-top:1px dashed var(--border)}.analysis-overhead-row[data-v-d25152ce]{background:var(--yellow-dim,#eab30814);margin:0 -20px;padding-left:20px;padding-right:20px}.modal-overhead[data-v-d25152ce]{width:90vw;min-width:360px;max-width:420px}.overhead-modal-header[data-v-d25152ce]{align-items:center;gap:14px;margin-bottom:20px;display:flex}.overhead-modal-icon[data-v-d25152ce]{background:var(--accent-dim);border:1px solid var(--accent-ring);width:40px;height:40px;color:var(--accent);font-size:1.1rem;font-weight:800;font-family:var(--font-mono);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.overhead-input-row[data-v-d25152ce]{align-items:center;gap:8px;display:flex}.overhead-input-unit[data-v-d25152ce]{color:var(--text-muted);flex-shrink:0;font-size:1rem;font-weight:700}.overhead-preview-note[data-v-d25152ce]{color:var(--accent);font-size:.76rem;font-family:var(--font-mono);margin-top:8px}.page-header-copy[data-v-d25152ce]{flex-direction:column;gap:12px;min-width:0;display:flex}.file-action-group[data-v-d25152ce]{background:linear-gradient(180deg, var(--surface), var(--surface-2));border:1px solid var(--border);border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px;display:inline-flex;box-shadow:0 1px #00000005}.file-action-group--project[data-v-d25152ce]{flex-wrap:nowrap;align-self:flex-start;gap:4px;width:fit-content;padding:3px 4px 3px 8px}.file-action-label[data-v-d25152ce]{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);border-radius:999px;align-items:center;padding:0 10px 0 12px;font-size:.72rem;font-weight:700;display:inline-flex}.file-action-group--project .file-action-label[data-v-d25152ce]{padding:0 4px;font-size:.66rem}.file-action-group--project .file-action-btn[data-v-d25152ce]{padding:4px 10px;font-size:.75rem}.file-action-btn[data-v-d25152ce]{transition:background var(--t), border-color var(--t), color var(--t), transform var(--t), opacity var(--t);border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:.8rem;font-weight:600;line-height:1;display:inline-flex}.file-action-icon[data-v-d25152ce]{flex-shrink:0}.file-action-btn--import[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.file-action-btn--export[data-v-d25152ce]{color:var(--text-muted);background:0 0}.file-action-btn[data-v-d25152ce]:hover:not(:disabled){transform:translateY(-1px)}.file-action-btn--import[data-v-d25152ce]:hover:not(:disabled){background:color-mix(in srgb, var(--accent-dim) 78%, white)}.file-action-btn--export[data-v-d25152ce]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.file-action-btn[data-v-d25152ce]:disabled{opacity:.55;cursor:not-allowed}.modal-import[data-v-d25152ce]{width:90vw;min-width:460px;max-width:540px}.modal-import--preview[data-v-d25152ce]{min-width:680px;max-width:780px}.import-modal-header[data-v-d25152ce]{align-items:center;gap:14px;margin-bottom:20px;display:flex}.import-modal-icon[data-v-d25152ce]{background:var(--accent-dim);border:1px solid var(--accent-ring);width:42px;height:42px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.import-dropzone[data-v-d25152ce]{border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;background:var(--surface);text-align:center;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:6px;padding:36px 24px;transition:all .2s;display:flex}.import-dropzone[data-v-d25152ce]:hover:not(.import-dropzone--loading){border-color:var(--accent-ring);background:var(--accent-dim)}.import-dropzone--active[data-v-d25152ce]{border-color:var(--accent);background:var(--accent-dim);transform:scale(1.01)}.import-dropzone--loading[data-v-d25152ce]{cursor:default;border-style:solid}.import-dropzone-icon[data-v-d25152ce]{color:var(--text-dim);margin-bottom:4px;transition:color .15s}.import-dropzone:hover:not(.import-dropzone--loading) .import-dropzone-icon[data-v-d25152ce],.import-dropzone--active .import-dropzone-icon[data-v-d25152ce]{color:var(--accent)}.import-dropzone-text[data-v-d25152ce]{color:var(--text-muted);font-size:.9rem;font-weight:600}.import-dropzone-sub[data-v-d25152ce]{color:var(--text-dim);font-size:.8rem}.import-dropzone-hint[data-v-d25152ce]{color:var(--text-dim);font-size:.72rem;font-family:var(--font-mono);letter-spacing:.04em;margin-top:4px}.import-error-box[data-v-d25152ce]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354538;margin-bottom:12px;padding:8px 12px;font-size:.8rem}.import-preview-header[data-v-d25152ce]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.import-filename[data-v-d25152ce]{color:var(--text-dim);font-size:.75rem;font-family:var(--font-mono);margin:3px 0 0}.import-preview-badge[data-v-d25152ce]{font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);white-space:nowrap;border-radius:100px;flex-shrink:0;padding:3px 12px;font-size:.75rem;font-weight:600}.import-info-note[data-v-d25152ce]{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent-ring);color:var(--text-dim);margin-bottom:12px;padding:8px 12px;font-size:.78rem}.import-category-row[data-v-d25152ce]{margin-bottom:12px}.import-category-card[data-v-d25152ce]{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--surface), var(--surface-2));transition:border-color var(--t), box-shadow var(--t), background var(--t);padding:10px 12px}.import-category-card--active[data-v-d25152ce]{border-color:var(--accent-ring);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-ring) 60%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--accent-dim) 34%, var(--surface) 66%), var(--surface-2))}.import-category-head[data-v-d25152ce]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.import-category-state[data-v-d25152ce]{letter-spacing:.07em;text-transform:uppercase;font-size:.66rem;font-family:var(--font-mono);color:var(--text-dim);background:var(--surface-3);border:1px solid var(--border);border-radius:100px;padding:2px 8px}.import-category-card--active .import-category-state[data-v-d25152ce]{color:var(--accent);border-color:var(--accent-ring);background:var(--accent-dim)}.import-category-select-wrap[data-v-d25152ce],.import-category-picker[data-v-d25152ce]{position:relative}.import-category-trigger[data-v-d25152ce]{border:1px solid var(--border-2,var(--border));border-radius:var(--radius);background:var(--surface);width:100%;min-height:38px;color:var(--text);cursor:pointer;transition:border-color var(--t), box-shadow var(--t), background var(--t);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.import-category-trigger[data-v-d25152ce]:hover{border-color:var(--accent-ring);background:var(--surface-2)}.import-category-trigger--open[data-v-d25152ce]{border-color:var(--accent-ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-ring) 30%, transparent)}.import-category-trigger-text[data-v-d25152ce]{text-align:left;font-size:.81rem;font-weight:500;line-height:1.3}.import-category-arrow[data-v-d25152ce]{color:var(--text-dim);align-items:center;transition:transform .16s;display:inline-flex}.import-category-arrow--open[data-v-d25152ce]{transform:rotate(180deg)}.import-category-menu[data-v-d25152ce]{z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--surface), var(--surface-2));max-height:270px;padding:8px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 26px #0000002e}.import-category-search-wrap[data-v-d25152ce]{z-index:1;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);align-items:center;gap:6px;margin-bottom:8px;padding:0 8px;display:flex;position:sticky;top:0}.import-category-search-icon[data-v-d25152ce]{color:var(--text-dim);flex-shrink:0}.import-category-search[data-v-d25152ce]{width:100%;color:var(--text);background:0 0;border:none;outline:none;padding:8px 0;font-size:.78rem}.import-category-option[data-v-d25152ce]{border-radius:var(--radius);width:100%;color:var(--text);cursor:pointer;text-align:left;transition:background var(--t), border-color var(--t), color var(--t);background:0 0;border:1px solid #0000;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.import-category-option[data-v-d25152ce]:hover{background:var(--surface-3);border-color:var(--border)}.import-category-option--active[data-v-d25152ce]{background:var(--accent-dim);border-color:var(--accent-ring)}.import-category-option-main[data-v-d25152ce]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.79rem;overflow:hidden}.import-category-option-badge[data-v-d25152ce]{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--border);border-radius:100px;padding:1px 7px;font-size:.66rem}.import-category-option-check[data-v-d25152ce]{color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.import-category-empty[data-v-d25152ce]{color:var(--text-dim);padding:8px 10px;font-size:.76rem}.import-category-hint[data-v-d25152ce]{color:var(--text-dim);margin:7px 0 0;font-size:.74rem}.import-category-picked[data-v-d25152ce]{color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:100px;align-items:center;gap:6px;margin-top:8px;padding:3px 10px;font-size:.74rem;display:inline-flex}.import-select-bar[data-v-d25152ce]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;border-bottom:none;align-items:center;padding:7px 10px;display:flex}.import-check-all[data-v-d25152ce]{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.8rem;font-weight:500;display:flex}.import-check-all input[type=checkbox][data-v-d25152ce]{cursor:pointer;width:15px;height:15px;accent-color:var(--accent)}.import-table-wrap[data-v-d25152ce]{border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);max-height:320px;overflow:hidden auto}.import-table[data-v-d25152ce]{border-collapse:collapse;width:100%;font-size:.82rem}.import-table thead th[data-v-d25152ce]{z-index:1;background:var(--surface-2);text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);white-space:nowrap;padding:7px 10px;font-size:.65rem;font-weight:600;position:sticky;top:0}.import-table thead th.text-right[data-v-d25152ce]{text-align:right}.import-th-check[data-v-d25152ce]{width:36px}.import-table-row[data-v-d25152ce]{cursor:pointer;border-bottom:1px solid var(--border);transition:background .12s}.import-table-row[data-v-d25152ce]:last-child{border-bottom:none}.import-table-row[data-v-d25152ce]:hover{background:var(--surface-2)}.import-row--selected[data-v-d25152ce]{background:var(--accent-dim)!important}.import-row--selected[data-v-d25152ce]:hover{background:color-mix(in srgb, var(--accent-dim) 80%, var(--surface-2))!important}.import-table td[data-v-d25152ce]{vertical-align:middle;padding:8px 10px}.import-td-check[data-v-d25152ce]{width:36px}.import-td-check input[type=checkbox][data-v-d25152ce]{cursor:pointer;width:14px;height:14px;accent-color:var(--accent)}.import-td-code[data-v-d25152ce]{width:90px}.import-td-name[data-v-d25152ce]{color:var(--text);font-weight:500}.import-td-unit[data-v-d25152ce]{white-space:nowrap;width:60px;font-size:.77rem}.import-td-count[data-v-d25152ce]{font-family:var(--font-mono);width:72px;font-size:.78rem}.import-td-status[data-v-d25152ce]{width:72px}.text-right[data-v-d25152ce]{text-align:right}.text-dim[data-v-d25152ce]{color:var(--text-dim)}.import-badge[data-v-d25152ce]{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:2px 9px;font-size:.65rem;font-weight:600;display:inline-flex}.import-badge--new[data-v-d25152ce]{color:var(--green,#22c55e);background:#22c55e1f;border:1px solid #22c55e4d}.import-badge--update[data-v-d25152ce]{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-ring)}.import-loading-state[data-v-d25152ce]{flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.import-loading-text[data-v-d25152ce]{color:var(--text);margin:0;font-size:.92rem;font-weight:600}.import-loading-sub[data-v-d25152ce]{color:var(--text-dim);margin:0;font-size:.78rem}.import-spinner[data-v-d25152ce]{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.7s linear infinite import-spin-d25152ce}.import-spinner--lg[data-v-d25152ce]{border-width:3.5px;width:40px;height:40px}@keyframes import-spin-d25152ce{to{transform:rotate(360deg)}}.import-done-state[data-v-d25152ce]{text-align:center;flex-direction:column;align-items:center;padding:20px 12px 4px;display:flex}.import-done-icon[data-v-d25152ce]{width:52px;height:52px;color:var(--green,#22c55e);background:#22c55e1f;border:2px solid #22c55e59;border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.import-result-grid[data-v-d25152ce]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:0;width:100%;max-width:360px;display:flex;overflow:hidden}.import-result-item[data-v-d25152ce]{flex-direction:column;flex:1;align-items:center;gap:4px;padding:14px 12px;display:flex}.import-result-divider[data-v-d25152ce]{background:var(--border);flex-shrink:0;width:1px;height:40px}.import-result-val[data-v-d25152ce]{font-family:var(--font-mono);color:var(--green,#22c55e);font-size:1.4rem;font-weight:700;line-height:1}.import-result-val--update[data-v-d25152ce]{color:var(--accent)}.import-result-val--dim[data-v-d25152ce]{color:var(--text-muted)}.import-result-key[data-v-d25152ce]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;font-family:var(--font-mono)}.confirm-body[data-v-799c5bac]{color:var(--text-muted);margin:0 0 4px;font-size:.85rem;line-height:1.55}.delete-error-box[data-v-799c5bac]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-799c5bac]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-799c5bac]{color:var(--text);font-size:.8rem;line-height:1.45}.info-note[data-v-799c5bac]{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--text-dim);color:var(--text-muted);padding:10px 16px;font-size:.8rem}.bj-list[data-v-799c5bac]{flex-direction:column;gap:10px;display:flex}.bj-card[data-v-799c5bac]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.bj-head[data-v-799c5bac]{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.bj-head[data-v-799c5bac]:hover{background:var(--surface-hover,#ffffff08)}.bj-meta[data-v-799c5bac]{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.bj-name[data-v-799c5bac]{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.bj-unit-badge[data-v-799c5bac]{color:var(--accent);background:var(--accent-dim);font-size:.72rem;font-family:var(--font-mono);white-space:nowrap;border-radius:4px;padding:2px 7px}.bj-item-count[data-v-799c5bac]{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.bj-actions[data-v-799c5bac]{flex-shrink:0;align-items:center;gap:8px;display:flex}.bj-price-preview[data-v-799c5bac]{color:var(--text-muted);white-space:nowrap;font-size:.8rem}.bj-price-label[data-v-799c5bac]{color:var(--text-dim)}.bj-price-value[data-v-799c5bac]{color:var(--text);font-family:var(--font-mono);font-weight:600}.bj-price-unit[data-v-799c5bac]{color:var(--text-dim)}.expand-caret[data-v-799c5bac]{color:var(--text-dim);font-size:.65rem}.btn-row[data-v-799c5bac]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;padding:2px 8px;font-size:.72rem;transition:all .15s}.btn-row[data-v-799c5bac]:hover{background:var(--surface-hover,#ffffff0f);color:var(--text)}.btn-row-danger[data-v-799c5bac]:hover{border-color:var(--red);color:var(--red);background:0 0}.btn-row-icon[data-v-799c5bac]{padding:1px 6px;font-size:.8rem}.btn-row-icon.active[data-v-799c5bac]{color:var(--accent);border-color:var(--accent)}.modal-close-btn[data-v-799c5bac]{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:.8rem;line-height:1;transition:color .15s,background .15s}.modal-close-btn[data-v-799c5bac]:hover{color:var(--text);background:#ffffff0f}.bj-body[data-v-799c5bac]{border-top:1px solid var(--border);padding:0 0 4px}.bj-empty-items[data-v-799c5bac]{color:var(--text-muted);text-align:center;padding:20px;font-size:.85rem}.bj-items-header[data-v-799c5bac]{color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--border);background:#ffffff05;grid-template-columns:32px 1fr 72px 88px 140px 140px 120px;padding:8px 16px;font-size:.68rem;display:grid}.bj-item-row[data-v-799c5bac]{border-bottom:1px solid var(--border-dim,#ffffff0a);grid-template-columns:32px 1fr 72px 88px 140px 140px 120px;align-items:center;gap:4px;padding:8px 16px;font-size:.85rem;display:grid}.bj-item-row[data-v-799c5bac]:hover{background:#ffffff05}.bj-item-name[data-v-799c5bac]{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.bj-item-actions[data-v-799c5bac]{justify-content:flex-end;align-items:center;gap:4px;display:flex}.vol-calc-cell[data-v-799c5bac]{cursor:pointer;border-radius:var(--radius-sm);font-family:var(--font-mono);color:inherit;background:0 0;border:none;align-items:center;gap:4px;padding:2px 6px;font-size:.85rem;transition:background .15s;display:inline-flex}.vol-calc-cell[data-v-799c5bac]:hover{background:var(--surface-3,#ffffff0f)}.vol-formula-badge[data-v-799c5bac]{color:var(--accent);background:var(--accent-dim);font-size:.65rem;font-family:var(--font-sans);border-radius:3px;padding:1px 4px}.ahs-panel[data-v-799c5bac]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;margin:0 16px 2px;padding:10px 14px;font-size:.82rem}.ahs-panel-title[data-v-799c5bac]{color:var(--text-muted);margin-bottom:8px;font-size:.78rem}.ahs-comp-header[data-v-799c5bac]{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border);grid-template-columns:1fr 70px 70px 80px 120px;margin-bottom:4px;padding:4px 0;font-size:.67rem;display:grid}.ahs-comp-row[data-v-799c5bac]{border-bottom:1px solid var(--border-dim,#ffffff0a);grid-template-columns:1fr 70px 70px 80px 120px;align-items:center;padding:5px 0;display:grid}.ahs-comp-row[data-v-799c5bac]:last-child{border-bottom:none}.bj-total-row[data-v-799c5bac]{border-top:1px solid var(--border);background:#ffffff05;justify-content:space-between;align-items:center;padding:10px 16px;font-size:.85rem;display:flex}.bj-total-label[data-v-799c5bac]{color:var(--text-muted);font-weight:500}.bj-total-value[data-v-799c5bac]{color:var(--accent);font-family:var(--font-mono);font-size:.95rem;font-weight:700}.bj-body-footer[data-v-799c5bac]{gap:8px;padding:10px 16px 6px;display:flex}.input-search-wrap[data-v-799c5bac]{position:relative}.dropdown-list[data-v-799c5bac]{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:200px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #0000004d}.dropdown-item[data-v-799c5bac]{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;display:flex}.dropdown-item[data-v-799c5bac]:hover{background:var(--accent-dim)}.form-group[data-v-799c5bac]{position:relative}.selected-analysis-chip[data-v-799c5bac]{background:var(--accent-dim);color:var(--accent);border-radius:20px;align-items:center;gap:6px;margin-top:6px;padding:3px 10px;font-size:.78rem;display:inline-flex}.chip-clear[data-v-799c5bac]{cursor:pointer;color:var(--accent);background:0 0;border:none;padding:0 2px;font-size:.7rem;line-height:1}.input-readonly[data-v-799c5bac]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);padding:8px 12px;font-size:.85rem}.price-preview-box[data-v-799c5bac]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;flex-direction:column;gap:5px;margin-top:8px;padding:10px 14px;display:flex}.price-preview-row[data-v-799c5bac]{color:var(--text-muted);justify-content:space-between;font-size:.82rem;display:flex}.price-preview-row[data-v-799c5bac]:last-child{color:var(--text);font-weight:600}.modal-volume[data-v-799c5bac]{width:90vw;max-width:660px;max-height:80vh;overflow-y:auto}.vol-modal-head[data-v-799c5bac]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.vol-total-badge[data-v-799c5bac]{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:nowrap;padding:4px 10px;font-size:.78rem}.vol-empty[data-v-799c5bac]{text-align:center;color:var(--text-dim);padding:24px 0;font-size:.85rem}.vol-empty-warn[data-v-799c5bac]{color:var(--yellow,#ca8a04);margin-top:8px;font-size:.78rem}.vol-table[data-v-799c5bac]{border-collapse:collapse;width:100%;font-size:.83rem}.vol-table th[data-v-799c5bac]{text-align:left;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--border);padding:6px 8px;font-size:.67rem}.vol-table td[data-v-799c5bac]{border-bottom:1px solid var(--border-dim,#ffffff0a);vertical-align:middle;padding:7px 8px}.vol-values-cell[data-v-799c5bac]{flex-wrap:wrap;gap:4px;display:flex}.vol-var-chip[data-v-799c5bac]{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-family:var(--font-mono);border-radius:3px;padding:1px 5px}.vol-total-row td[data-v-799c5bac]{border-top:1px solid var(--border);font-weight:600}.vol-form-header[data-v-799c5bac]{align-items:center;gap:12px;margin-bottom:16px;display:flex}.vol-form-title[data-v-799c5bac]{color:var(--text);margin:0;font-size:.95rem;font-weight:600}.vol-var-inputs[data-v-799c5bac]{flex-direction:column;gap:8px;display:flex}.vol-var-input-row[data-v-799c5bac]{grid-template-columns:80px 16px 1fr;align-items:center;gap:8px;display:grid}.vol-var-name[data-v-799c5bac]{color:var(--accent);font-size:.85rem}.vol-var-eq[data-v-799c5bac]{color:var(--text-dim);text-align:center}.vol-var-num-input[data-v-799c5bac]{padding:6px 10px}.vol-preview-box[data-v-799c5bac]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;padding:10px 14px;display:flex}.formula-select[data-v-799c5bac]{position:relative}.formula-select-trigger[data-v-799c5bac]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;display:flex}.formula-select-trigger[data-v-799c5bac]:hover{border-color:var(--accent)}.formula-select-value[data-v-799c5bac]{align-items:center;gap:8px;display:flex}.formula-name[data-v-799c5bac]{font-weight:500}.formula-expr[data-v-799c5bac]{color:var(--accent);font-size:.78rem}.formula-select-placeholder[data-v-799c5bac]{color:var(--text-dim)}.formula-chevron[data-v-799c5bac]{color:var(--text-dim);flex-shrink:0}.formula-select-dropdown[data-v-799c5bac]{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 6px 20px #0000004d}.formula-select-option[data-v-799c5bac]{cursor:pointer;text-align:left;border:none;border-bottom:1px solid var(--border-dim,#ffffff0a);background:0 0;flex-direction:column;width:100%;padding:9px 12px;display:flex}.formula-select-option[data-v-799c5bac]:hover,.formula-select-option.active[data-v-799c5bac]{background:var(--accent-dim)}.formula-opt-name[data-v-799c5bac]{color:var(--text);font-size:.85rem;font-weight:500}.formula-opt-meta[data-v-799c5bac]{color:var(--text-dim);align-items:center;gap:8px;font-size:.77rem;display:flex}.formula-opt-unit[data-v-799c5bac]{color:var(--text-muted)}.modal-formula[data-v-799c5bac]{width:90vw;max-width:620px;max-height:80vh;overflow-y:auto}.formula-table[data-v-799c5bac]{border-collapse:collapse;width:100%;font-size:.83rem}.formula-table th[data-v-799c5bac]{text-align:left;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--border);padding:6px 8px;font-size:.67rem}.formula-table td[data-v-799c5bac]{border-bottom:1px solid var(--border-dim,#ffffff0a);vertical-align:middle;padding:8px}.standar-modal-head[data-v-799c5bac]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.var-chip-sm[data-v-799c5bac]{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);border-radius:3px;margin-right:3px;padding:1px 5px}.var-chips-input[data-v-799c5bac]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:text;flex-wrap:wrap;align-items:center;gap:4px;min-height:38px;padding:6px 10px;display:flex}.var-chip[data-v-799c5bac]{background:var(--accent-dim);color:var(--accent);border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.78rem;display:inline-flex}.var-chip-text-input[data-v-799c5bac]{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:80px;font-size:.82rem}.satuan-preset-btn[data-v-799c5bac]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:.75rem;transition:all .15s}.satuan-preset-btn.active[data-v-799c5bac],.satuan-preset-btn[data-v-799c5bac]:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.mono-input[data-v-799c5bac]{font-family:var(--font-mono)}.btn-orange[data-v-799c5bac]{color:var(--accent)!important;border-color:var(--accent)!important}.btn-orange[data-v-799c5bac]:hover{background:var(--accent-dim)!important}.btn-orange[data-v-799c5bac]:disabled{opacity:.4;cursor:not-allowed}.form-hint[data-v-799c5bac]{color:var(--text-dim);margin-top:4px;font-size:.71rem;line-height:1.4}.confirm-body[data-v-4346b2be]{color:var(--text-muted);margin:0 0 4px;font-size:.85rem;line-height:1.55}.delete-error-box[data-v-4346b2be]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;margin-bottom:4px;padding:10px 12px}.delete-error-title[data-v-4346b2be]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-4346b2be]{color:var(--text);font-size:.8rem;line-height:1.45}.required-star[data-v-4346b2be]{color:var(--red);margin-left:2px}.action-btn-danger[data-v-4346b2be]{color:var(--red)!important;border-color:#ef444440!important}.action-btn-danger[data-v-4346b2be]:hover{background:#ef44441a!important;border-color:#ef444466!important}.btn-danger[data-v-4346b2be]{background:var(--red);color:#fff;border:1px solid var(--red);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--t);font-size:.85rem;font-weight:600;font-family:var(--font-sans);padding:7px 16px}.btn-danger[data-v-4346b2be]:hover:not(:disabled){opacity:.85}.btn-danger[data-v-4346b2be]:disabled{opacity:.5;cursor:not-allowed}.project-banner[data-v-cd5292e1]{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:11px 16px;display:flex}.project-banner-left[data-v-cd5292e1]{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem;display:flex}.project-dot[data-v-cd5292e1]{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px}.project-banner-name[data-v-cd5292e1]{color:var(--text);font-size:.85rem;font-weight:600}.project-banner-sep[data-v-cd5292e1]{color:var(--text-dim)}.btn-link[data-v-cd5292e1]{color:var(--text-dim);white-space:nowrap;transition:color var(--t);font-size:.78rem;text-decoration:none}.btn-link[data-v-cd5292e1]:hover{color:var(--accent)}.filter-bar[data-v-cd5292e1]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filter-tabs[data-v-cd5292e1]{flex-wrap:wrap;flex:1;gap:6px;display:flex}.input-sm[data-v-cd5292e1]{padding:5px 10px;font-size:.82rem}.filter-tab[data-v-cd5292e1]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-cd5292e1]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-cd5292e1]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-cd5292e1]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-cd5292e1]{background:var(--accent-dim);color:var(--accent)}.pagination-bar[data-v-cd5292e1]{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.pagination-bar-table[data-v-cd5292e1]{margin-bottom:4px}.pagination-summary[data-v-cd5292e1]{color:var(--text-dim);font-size:.76rem;font-family:var(--font-mono)}.pagination-controls[data-v-cd5292e1]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pagination-info[data-v-cd5292e1]{color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);white-space:nowrap}.pagination-btn[data-v-cd5292e1]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);justify-content:center;align-items:center;padding:6px 12px;display:inline-flex}.pagination-btn[data-v-cd5292e1]:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.pagination-btn[data-v-cd5292e1]:disabled{opacity:.45;cursor:not-allowed}.coverage-note[data-v-cd5292e1]{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;font-size:.78rem;display:flex}.coverage-warn[data-v-cd5292e1]{color:var(--yellow)}.selected-info[data-v-cd5292e1]{flex-direction:column;gap:4px;margin-bottom:4px;display:flex}.selected-name[data-v-cd5292e1]{color:var(--text-head);font-size:.9rem;font-weight:600}.input-group[data-v-cd5292e1]{position:relative}.input-prefix[data-v-cd5292e1]{color:var(--text-muted);pointer-events:none;font-size:.8rem;font-family:var(--font-mono);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-prefix[data-v-cd5292e1]{padding-left:38px}.form-error[data-v-cd5292e1]{color:var(--red);font-size:.8rem}.delete-error-box[data-v-cd5292e1]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-cd5292e1]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-cd5292e1]{color:var(--text);font-size:.8rem;line-height:1.45}.selected-chip[data-v-cd5292e1]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.chip-clear[data-v-cd5292e1]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.price-badge[data-v-cd5292e1]{text-transform:uppercase;letter-spacing:.05em;border-radius:100px;padding:2px 8px;font-size:.65rem;font-weight:600}.price-default[data-v-cd5292e1]{background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border)}.price-custom[data-v-cd5292e1]{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-ring)}.price-missing[data-v-cd5292e1]{color:var(--yellow);background:#eab3081f;border:1px solid #eab3084d}.price-unset[data-v-cd5292e1]{color:var(--yellow);font-size:.78rem;font-style:italic}.row-unpriced td[data-v-cd5292e1]{background:#eab30808}.btn-link-sm[data-v-cd5292e1]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.72rem;text-decoration:underline}.btn-link-sm[data-v-cd5292e1]:hover{color:var(--accent-hover,var(--accent))}.hm-layout[data-v-cd5292e1]{align-items:flex-start;gap:20px;display:flex}.hm-main[data-v-cd5292e1]{flex:1;min-width:0}.hm-sidebar[data-v-cd5292e1]{flex-shrink:0;width:240px}.stats-card[data-v-cd5292e1]{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:var(--radius-lg);padding:14px 16px;position:sticky;top:20px;overflow:hidden}.stats-card[data-v-cd5292e1]:after{content:"";border:12px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:72px;height:72px;position:absolute;bottom:-22px;right:-22px}.stats-heading[data-v-cd5292e1]{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-size:.6rem;font-family:var(--font-mono);margin-bottom:10px}.stats-row[data-v-cd5292e1]{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;display:flex}.stats-key[data-v-cd5292e1]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.77rem;overflow:hidden}.stats-key-mono[data-v-cd5292e1]{font-family:var(--font-mono);font-size:.72rem}.stats-val[data-v-cd5292e1]{font-family:var(--font-mono);color:var(--text);flex-shrink:0;font-size:.88rem;font-weight:600}.stats-accent[data-v-cd5292e1]{color:var(--accent)}.stats-green[data-v-cd5292e1]{color:var(--green)}.stats-yellow[data-v-cd5292e1]{color:var(--yellow)}.stats-dim[data-v-cd5292e1]{color:var(--text-dim)}.stats-divider[data-v-cd5292e1]{border-top:1px solid var(--border);margin:8px 0}.stats-note[data-v-cd5292e1]{color:var(--text-dim);margin-top:4px;font-size:.68rem;line-height:1.4}.coverage-bar-wrap[data-v-cd5292e1]{background:var(--surface-3);border-radius:99px;height:4px;margin:6px 0 2px;overflow:hidden}.coverage-bar-fill[data-v-cd5292e1]{border-radius:99px;height:100%;transition:width .4s}.bar-green[data-v-cd5292e1]{background:var(--green)}.bar-accent[data-v-cd5292e1]{background:var(--accent)}.action-btn.money[data-v-cd5292e1]{color:var(--green)!important}.action-btn.money[data-v-cd5292e1]:hover{background:var(--green-dim)!important;color:var(--green)!important}.note-cell[data-v-cd5292e1]{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.link-cell[data-v-cd5292e1]{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden}.link-cell[data-v-cd5292e1]:hover{text-decoration:underline}.text-dim-sm[data-v-cd5292e1]{color:var(--text-dim);font-size:.78rem}.btn-link-btn[data-v-cd5292e1]{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:all var(--t);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-link-btn[data-v-cd5292e1]:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-2)}.img-btn[data-v-cd5292e1]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);white-space:nowrap;border:1px solid;align-items:center;padding:3px 10px;font-size:.73rem;font-weight:600;display:inline-flex}.img-btn-view[data-v-cd5292e1]{color:#818cf8;background:#6366f11f;border-color:#6366f14d}.img-btn-view[data-v-cd5292e1]:hover{background:#6366f138;border-color:#6366f180}.modal-image-viewer[data-v-cd5292e1]{width:90vw;min-width:520px;max-width:760px}.image-viewer-head[data-v-cd5292e1]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.image-viewer-body[data-v-cd5292e1]{justify-content:center;align-items:center;gap:12px;min-height:200px;display:flex}.image-frame[data-v-cd5292e1]{flex:1;justify-content:center;align-items:center;max-height:480px;transition:transform .2s;display:flex;overflow:hidden}.material-img[data-v-cd5292e1]{object-fit:contain;border-radius:var(--radius);max-width:100%;max-height:460px}.img-nav-btn[data-v-cd5292e1]{border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:all var(--t);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.img-nav-btn[data-v-cd5292e1]:hover{background:var(--surface-3);color:var(--text)}.confirm-body[data-v-1e4e12fe]{color:var(--text-muted);margin:0 0 4px;font-size:.85rem;line-height:1.55}.delete-error-box[data-v-1e4e12fe]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-1e4e12fe]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-1e4e12fe]{color:var(--text);font-size:.8rem;line-height:1.45}.pekerjaan-bar[data-v-1e4e12fe]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.pekerjaan-tabs[data-v-1e4e12fe]{flex-wrap:wrap;flex:1;gap:4px;display:flex}.pekerjaan-bar-sep[data-v-1e4e12fe]{background:var(--border-2);flex-shrink:0;width:1px;height:20px}.pekerjaan-tab-wrap[data-v-1e4e12fe]{align-items:center;gap:0;display:inline-flex}.pekerjaan-tab[data-v-1e4e12fe]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.82rem;font-family:var(--font-sans);cursor:pointer;transition:background var(--t), color var(--t), border-color var(--t), border-radius var(--t);background:0 0;padding:6px 14px}.pekerjaan-tab-wrap:hover .pekerjaan-tab[data-v-1e4e12fe]{border-top-right-radius:0;border-bottom-right-radius:0}.pekerjaan-tab[data-v-1e4e12fe]:hover{background:var(--surface-2);color:var(--text)}.pekerjaan-tab.active[data-v-1e4e12fe]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent);font-weight:600}.pekerjaan-tab-more-wrap[data-v-1e4e12fe]{display:inline-flex;position:relative}.pekerjaan-tab-more[data-v-1e4e12fe]{white-space:nowrap;border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);max-width:0;color:var(--text-muted);cursor:pointer;transition:max-width var(--t), padding var(--t), border-color var(--t), background var(--t), color var(--t);background:0 0;border:1px solid #0000;border-left:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;overflow:hidden}.pekerjaan-tab-wrap:hover .pekerjaan-tab-more[data-v-1e4e12fe],.pekerjaan-tab-more.open[data-v-1e4e12fe]{border-color:var(--border);max-width:30px;padding:5px 7px}.pekerjaan-tab-more[data-v-1e4e12fe]:hover,.pekerjaan-tab-more.open[data-v-1e4e12fe]{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}:is(.pekerjaan-tab-wrap:has(.pekerjaan-tab.active):hover .pekerjaan-tab-more[data-v-1e4e12fe],.pekerjaan-tab-wrap:has(.pekerjaan-tab.active) .pekerjaan-tab-more.open[data-v-1e4e12fe]){border-color:var(--accent-ring)}.pekerjaan-tab-menu[data-v-1e4e12fe]{z-index:100;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;flex-direction:column;gap:2px;min-width:130px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 20px #00000059}.pekerjaan-tab-menu-item[data-v-1e4e12fe]{border-radius:calc(var(--radius) - 2px);width:100%;color:var(--text-muted);cursor:pointer;transition:all var(--t);font-size:.8rem;font-family:var(--font-sans);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:7px 10px;display:flex}.pekerjaan-tab-menu-item[data-v-1e4e12fe]:hover{background:var(--surface-3);color:var(--text)}.pekerjaan-tab-menu-item-danger[data-v-1e4e12fe]{color:var(--red)}.pekerjaan-tab-menu-item-danger[data-v-1e4e12fe]:hover{color:var(--red);background:#dc35451a}.pekerjaan-tab-all[data-v-1e4e12fe]{border-style:dashed}.pekerjaan-tab-all.active[data-v-1e4e12fe]{border-style:solid}.rab-table-wrapper[data-v-1e4e12fe]{overflow-x:auto}.rab-table[data-v-1e4e12fe]{table-layout:fixed;width:100%;min-width:960px}.rab-table thead th[data-v-1e4e12fe]{z-index:3;background:var(--surface);position:sticky;top:0}.rab-table .col-drag[data-v-1e4e12fe]{width:28px}.rab-table .col-no[data-v-1e4e12fe]{width:80px}.rab-table .col-uraian[data-v-1e4e12fe]{width:380px}.rab-table .col-sat[data-v-1e4e12fe]{width:68px}.rab-table .col-vol[data-v-1e4e12fe]{width:100px}.rab-table .col-harga[data-v-1e4e12fe]{width:150px}.rab-table .col-jumlah[data-v-1e4e12fe]{width:160px}.rab-table .col-act[data-v-1e4e12fe]{width:100px}.rab-row-header .td-uraian[data-v-1e4e12fe]{color:var(--text-head,var(--text));letter-spacing:.01em;font-weight:700}.header-jumlah[data-v-1e4e12fe]{color:#0f766e;background:#0f766e1f;border:1px solid #0f766e61;border-radius:999px;padding:2px 10px;font-size:.82rem;font-weight:700;display:inline-block}.rab-row-header.rab-level-1 td[data-v-1e4e12fe]{background:#f9731612}.rab-row-header.rab-level-1 .td-drag[data-v-1e4e12fe]{border-left:3px solid var(--accent)}.rab-row-header.rab-level-1 .td-uraian[data-v-1e4e12fe]{letter-spacing:.025em}.rab-row-header.rab-level-2 td[data-v-1e4e12fe]{background:#6382ff0f}.rab-row-header.rab-level-2 .td-drag[data-v-1e4e12fe]{border-left:3px solid #6382ff}.rab-row-header.rab-level-3 td[data-v-1e4e12fe]{background:#14b8a60d}.rab-row-header.rab-level-3 .td-drag[data-v-1e4e12fe]{border-left:3px solid #14b8a6bf}.rab-row-header.rab-level-4 td[data-v-1e4e12fe]{background:var(--surface-2)}.rab-row-header.rab-level-4 .td-drag[data-v-1e4e12fe]{border-left:3px solid var(--border)}.rab-row-item .td-drag[data-v-1e4e12fe]{border-left:3px solid #0000}.rab-row-item.rab-level-2 .td-drag[data-v-1e4e12fe]{border-left:3px solid #6382ff66}.rab-row-item.rab-level-3 .td-drag[data-v-1e4e12fe]{border-left:3px solid #14b8a659}.rab-row-item.rab-level-4 .td-drag[data-v-1e4e12fe]{border-left:3px solid #ffffff1f}.td-drag[data-v-1e4e12fe]{vertical-align:middle;padding:0!important}.drag-handle[data-v-1e4e12fe]{cursor:grab;-webkit-user-select:none;user-select:none;opacity:.35;width:28px;height:100%;min-height:36px;transition:opacity var(--t);justify-content:center;align-items:center;display:flex}tr:hover .drag-handle[data-v-1e4e12fe]{opacity:.8}tr:hover .drag-handle[data-v-1e4e12fe]:hover{opacity:1}.drag-handle[data-v-1e4e12fe]:active{cursor:grabbing}.drag-dots[data-v-1e4e12fe]{background-image:radial-gradient(circle, var(--text-muted) 1.4px, transparent 1.4px);background-repeat:repeat;background-size:3px 4.5px;width:6px;height:14px;display:block}.rab-row-dragging[data-v-1e4e12fe]{opacity:.4}.rab-row-dragging td[data-v-1e4e12fe]{background:#f973160f!important}.rab-row-dragging .td-drag[data-v-1e4e12fe]{border-left-color:var(--accent)!important}.rab-insert-row.drop-target .insert-line[data-v-1e4e12fe]{height:3px;background:var(--accent)!important}.rab-insert-row.drop-target .insert-plus-wrap[data-v-1e4e12fe]{background:var(--accent);border-color:var(--accent);opacity:1!important}.rab-insert-row.drop-target .insert-plus[data-v-1e4e12fe]{color:#fff}.rab-insert-row.drop-target .insert-cell[data-v-1e4e12fe]:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:3px;position:absolute;top:0;bottom:0;left:0}.rab-tbody-dragging .rab-insert-row .insert-cell[data-v-1e4e12fe]{height:18px;transition:height .1s}.rab-tbody-dragging .rab-insert-row .insert-line[data-v-1e4e12fe]{background:#ffffff0a}body.dnd-active[data-v-1e4e12fe],body.dnd-active[data-v-1e4e12fe] *{cursor:grabbing!important}.rab-table-wrapper.dnd-saving[data-v-1e4e12fe]{opacity:.5;pointer-events:none;transition:opacity .15s}@keyframes rab-drop-flash-1e4e12fe{0%{background:#f9731638}60%{background:#f973161f}to{background:0 0}}.rab-row-drop-flash td[data-v-1e4e12fe]{animation:.9s ease-out forwards rab-drop-flash-1e4e12fe}.td-no[data-v-1e4e12fe]{font-size:.72rem;font-family:var(--font-mono);text-align:left}.td-uraian[data-v-1e4e12fe]{position:relative}.td-uraian-editable[data-v-1e4e12fe]{padding-left:44px}.rab-name-text[data-v-1e4e12fe]{vertical-align:middle;align-items:flex-start;display:inline-flex}.rab-name-label[data-v-1e4e12fe]{display:inline}.text-dim[data-v-1e4e12fe]{color:var(--text-dim);font-size:.8rem}.modal-subtitle[data-v-1e4e12fe]{color:var(--text-muted);margin-top:-6px;margin-bottom:12px;font-size:.82rem}.form-error[data-v-1e4e12fe]{color:var(--red);margin-bottom:10px;font-size:.8rem}.td-actions[data-v-1e4e12fe]{white-space:nowrap}.row-indent-wrap[data-v-1e4e12fe]{opacity:0;transition:opacity var(--t);z-index:2;gap:2px;display:inline-flex;position:absolute;top:50%;left:2px;transform:translateY(-50%)}tr:hover .row-indent-wrap[data-v-1e4e12fe]{opacity:1}.indent-btn[data-v-1e4e12fe]{color:#6382ff;cursor:pointer;width:18px;height:18px;transition:all var(--t);font-size:.65rem;font-family:var(--font-sans);background:#6382ff1a;border:1px solid #6382ff59;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.indent-btn[data-v-1e4e12fe]:hover:not(:disabled){color:#8aa0ff;background:#6382ff40;border-color:#6382ff99}.indent-btn[data-v-1e4e12fe]:disabled{opacity:.2;cursor:default}.rab-insert-row td[data-v-1e4e12fe]{border:none!important;padding:0!important}.insert-cell[data-v-1e4e12fe]{cursor:pointer;height:8px;position:relative}.insert-line[data-v-1e4e12fe]{height:2px;transition:background var(--t);background:0 0;justify-content:center;align-items:center;display:flex;position:relative;top:3px}.rab-insert-row:hover .insert-line[data-v-1e4e12fe]{background:var(--accent-ring)}.insert-plus-wrap[data-v-1e4e12fe]{background:var(--surface);border:1px solid var(--accent-ring);opacity:0;width:20px;height:20px;transition:opacity var(--t);z-index:2;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;left:50%;transform:translate(-50%)}.rab-insert-row:hover .insert-plus-wrap[data-v-1e4e12fe]{opacity:1}.insert-plus[data-v-1e4e12fe]{color:var(--accent);-webkit-user-select:none;user-select:none;font-size:.85rem;line-height:1}.insert-popover[data-v-1e4e12fe]{z-index:50;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;gap:6px;padding:6px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 20px #0006}.insert-choice[data-v-1e4e12fe]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:.78rem;font-weight:600;font-family:var(--font-sans);transition:all var(--t);background:0 0;padding:5px 14px}.insert-choice[data-v-1e4e12fe]:hover{background:var(--surface-2);color:var(--text);border-color:var(--text-dim)}.insert-choice-primary[data-v-1e4e12fe]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.insert-choice-primary[data-v-1e4e12fe]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.empty-add-wrap[data-v-1e4e12fe]{flex-direction:column;align-items:center;gap:8px;margin-top:4px;display:inline-flex;position:relative}.empty-add-choice[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;z-index:50;gap:6px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0006}.collapse-btn[data-v-1e4e12fe]{color:#ffa01ee6;cursor:pointer;width:20px;height:20px;transition:all var(--t);vertical-align:middle;background:#ff8c001f;border:1px solid #ff8c0066;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-right:6px;padding:0;font-size:.6rem;display:inline-flex}.collapse-btn[data-v-1e4e12fe]:hover{color:#fa0;background:#ff8c0040;border-color:#ff8c00b3}.expand-btn[data-v-1e4e12fe]{color:#6382ff;cursor:pointer;width:20px;height:20px;transition:all var(--t);vertical-align:middle;background:#6382ff1a;border:1px solid #6382ff59;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:6px;padding:0;font-size:.85rem;line-height:1;display:inline-flex}.expand-btn[data-v-1e4e12fe]:hover{color:#8aa0ff;background:#6382ff38;border-color:#6382ff99}.action-btn[data-v-1e4e12fe]{border:1px solid var(--border,#ffffff1a);cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:500;font-family:var(--font-sans);color:var(--text-muted);background:#ffffff0d;border-radius:100px;justify-content:center;align-items:center;padding:3px 12px;display:inline-flex}.action-btn[data-v-1e4e12fe]:hover{color:var(--text);background:#ffffff1a;border-color:#ffffff38}.action-btn.danger[data-v-1e4e12fe]{color:#e05c6a;background:#dc35451a;border-color:#dc354540}.action-btn.danger[data-v-1e4e12fe]:hover{background:#dc354533;border-color:#dc354580}.rab-row-ahs-open td[data-v-1e4e12fe]{background:#6382ff21!important;border-bottom:1px solid #6382ff38!important}.rab-row-ahs-open .td-drag[data-v-1e4e12fe]{border-left-color:#6382ffe6!important}.rab-ahs-row>td[data-v-1e4e12fe]{background:#10a09417!important;border-top:none!important;border-bottom:2px solid #14b8a64d!important;border-left:4px solid #14b8a6bf!important;padding-left:0!important}.rab-ahs-panel[data-v-1e4e12fe]{max-width:860px;padding:10px 20px 14px 0}.rab-ahs-title[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:.7rem;font-family:var(--font-mono);align-items:center;gap:8px;margin-bottom:8px;display:flex}.ahs-standar-badge[data-v-1e4e12fe]{background:var(--bg-subtle,#2a2a3a);border:1px solid var(--border,#3a3a4a);color:var(--accent);text-transform:none;letter-spacing:0;white-space:nowrap;border-radius:4px;padding:1px 7px;font-size:.68rem}.ahs-code-tag[data-v-1e4e12fe]{font-size:.62rem;font-weight:400;font-family:var(--font-sans);color:var(--accent);background:var(--accent-dim,#f973161f);letter-spacing:.06em;white-space:nowrap;text-transform:none;border:1px solid #f9731640;border-radius:4px;padding:2px 7px}.rab-ahs-items-header[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);grid-template-columns:minmax(140px,1fr) 68px 80px 150px 140px 160px;gap:8px;margin-bottom:4px;padding:4px 0;font-size:.65rem;font-weight:600;display:grid}.rab-ahs-item-row[data-v-1e4e12fe]{color:var(--text);border-bottom:1px solid var(--border);grid-template-columns:minmax(140px,1fr) 68px 80px 150px 140px 160px;align-items:center;gap:8px;padding:7px 0;font-size:.82rem;display:grid}.rab-ahs-item-row[data-v-1e4e12fe]:last-of-type{border-bottom:none}.selected-chip[data-v-1e4e12fe]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.satuan-hint[data-v-1e4e12fe]{color:var(--text-muted);font-size:.75rem}.satuan-hint strong[data-v-1e4e12fe]{color:var(--text-base);font-weight:600}.chip-clear[data-v-1e4e12fe]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.input-group[data-v-1e4e12fe]{position:relative}.input-prefix[data-v-1e4e12fe]{color:var(--text-muted);pointer-events:none;font-size:.8rem;font-family:var(--font-mono);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-prefix[data-v-1e4e12fe]{padding-left:38px}.pekerjaan-tab-rekap[data-v-1e4e12fe]{color:var(--teal);border-color:#14b8a666;font-weight:500}.pekerjaan-tab-rekap[data-v-1e4e12fe]:hover{background:var(--teal-dim);color:var(--teal);border-color:var(--teal)}.pekerjaan-tab-rekap.active[data-v-1e4e12fe]{background:var(--teal-dim);border-color:var(--teal);color:var(--teal);border-style:solid;font-weight:600}.pekerjaan-tab-divider[data-v-1e4e12fe]{background:var(--border);flex-shrink:0;align-self:center;width:1px;height:20px;margin:0 4px;display:inline-block}.rekap-total-card[data-v-1e4e12fe]{background:linear-gradient(135deg, var(--accent-dim), transparent);border:1px solid var(--accent-ring);border-radius:var(--radius);text-align:center;margin-bottom:16px;padding:24px 28px}.rekap-total-label[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:6px;font-size:.72rem}.rekap-total-value[data-v-1e4e12fe]{color:var(--accent);letter-spacing:-.01em;font-size:2rem;font-weight:700}.rekap-total-sub[data-v-1e4e12fe]{color:var(--text-muted);margin-top:6px;font-size:.78rem}.rekap-chips-row[data-v-1e4e12fe]{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.rekap-chip[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex:1;min-width:120px;padding:14px 16px}.rekap-chip-warn[data-v-1e4e12fe]{background:#ff8c0012;border-color:#ff8c0066}.rekap-chip-val[data-v-1e4e12fe]{color:var(--text);font-size:1.3rem;font-weight:700}.rekap-chip-lbl[data-v-1e4e12fe]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.07em;margin-top:3px;font-size:.68rem}.rekap-two-col[data-v-1e4e12fe]{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=760px){.rekap-two-col[data-v-1e4e12fe]{grid-template-columns:1fr}}.rekap-breakdown-list[data-v-1e4e12fe]{flex-direction:column;gap:18px;padding:16px 20px;display:flex}.rekap-breakdown-row[data-v-1e4e12fe]{flex-direction:column;gap:6px;display:flex}.rekap-brow-head[data-v-1e4e12fe]{align-items:center;gap:8px;font-size:.85rem;display:flex}.rekap-brow-name[data-v-1e4e12fe]{color:var(--text);flex:1;font-weight:600}.rekap-brow-count[data-v-1e4e12fe]{color:var(--text-dim);font-size:.72rem}.rekap-brow-rp[data-v-1e4e12fe]{color:var(--accent);font-size:.85rem}.rekap-brow-pct[data-v-1e4e12fe]{text-align:right;width:40px;color:var(--text-muted);font-size:.78rem}.rekap-no-breakdown[data-v-1e4e12fe]{color:var(--text-dim);text-align:center;padding:8px 0;font-size:.8rem}.rekap-bar-track[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:100px;height:8px;overflow:hidden}.rekap-bar-fill[data-v-1e4e12fe]{border-radius:100px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.rekap-bar-material[data-v-1e4e12fe]{background:linear-gradient(90deg,#4a9eff,#6bb5ff)}.rekap-bar-alat[data-v-1e4e12fe]{background:linear-gradient(90deg,#f0a500,#ffbe3c)}.rekap-bar-upah[data-v-1e4e12fe]{background:linear-gradient(90deg,#22c55e,#4ade80)}.rekap-bar-pekerjaan[data-v-1e4e12fe]{background:var(--accent);opacity:.7}.rekap-bar-complete[data-v-1e4e12fe]{background:linear-gradient(90deg,#22c55e,#4ade80)}.rekap-type-dot[data-v-1e4e12fe]{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.rekap-dot-material[data-v-1e4e12fe]{background:#4a9eff}.rekap-dot-alat[data-v-1e4e12fe]{background:#f0a500}.rekap-dot-upah[data-v-1e4e12fe]{background:#22c55e}.rekap-components-grid[data-v-1e4e12fe]{grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px;display:grid}.rekap-comp-item[data-v-1e4e12fe]{align-items:center;gap:10px;display:flex}.rekap-comp-val[data-v-1e4e12fe]{color:var(--text);font-size:1.5rem;font-weight:700;line-height:1.1}.rekap-comp-lbl[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-top:2px;font-size:.68rem}.rekap-completeness[data-v-1e4e12fe]{padding:0 20px 16px}.rekap-complete-row[data-v-1e4e12fe]{color:var(--text-muted);justify-content:space-between;margin-bottom:5px;font-size:.8rem;display:flex}.rekap-chip-clickable[data-v-1e4e12fe]{cursor:pointer;transition:border-color var(--t), background var(--t), transform var(--t);position:relative}.rekap-chip-clickable[data-v-1e4e12fe]:hover{border-color:var(--accent-ring);background:var(--accent-dim);transform:translateY(-1px)}.rekap-chip-clickable:hover .rekap-chip-val[data-v-1e4e12fe],.rekap-chip-clickable:hover .rekap-chip-lbl[data-v-1e4e12fe]{color:var(--accent)}.rekap-chip-hint[data-v-1e4e12fe]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;opacity:0;transition:opacity var(--t);margin-top:5px;font-size:.6rem}.rekap-chip-clickable:hover .rekap-chip-hint[data-v-1e4e12fe]{opacity:1}.rekap-card-desc[data-v-1e4e12fe]{color:var(--text-dim);font-size:.72rem;line-height:1.4}.rekap-breakdown-row-clickable[data-v-1e4e12fe]{cursor:pointer;border-radius:var(--radius);transition:background var(--t), border-color var(--t);border:1px solid #0000;margin:-2px -10px;padding:8px 10px}.rekap-breakdown-row-clickable[data-v-1e4e12fe]:hover{background:var(--accent-dim);border-color:var(--accent-ring)}.rekap-brow-detail-btn[data-v-1e4e12fe]{letter-spacing:.03em;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-ring);white-space:nowrap;transition:background var(--t), color var(--t);border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.68rem;font-weight:600}.rekap-breakdown-row-clickable:hover .rekap-brow-detail-btn[data-v-1e4e12fe]{background:var(--accent);color:#fff}.rekap-detail-nav[data-v-1e4e12fe]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.rekap-detail-breadcrumb[data-v-1e4e12fe]{color:var(--text-muted);font-size:.82rem}.rekap-detail-breadcrumb strong[data-v-1e4e12fe]{color:var(--text)}.rekap-detail-summary-card[data-v-1e4e12fe]{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;display:flex}.rekap-detail-summary-main[data-v-1e4e12fe]{align-items:center;gap:12px;display:flex}.rekap-detail-summary-label[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:4px;font-size:.72rem}.rekap-detail-summary-val[data-v-1e4e12fe]{color:var(--accent);letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.rekap-detail-summary-chips[data-v-1e4e12fe]{gap:16px;display:flex}.rekap-detail-chip[data-v-1e4e12fe]{text-align:center}.rekap-detail-chip-val[data-v-1e4e12fe]{color:var(--text);font-size:1.2rem;font-weight:700;line-height:1.1}.rekap-detail-chip-lbl[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-top:2px;font-size:.65rem}.rekap-detail-pekerjaan-row td[data-v-1e4e12fe]{background:var(--surface-2);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-top:2px solid var(--border);padding:8px 12px;font-size:.8rem;font-weight:700}.rekap-detail-subtotal-row td[data-v-1e4e12fe]{background:var(--surface-1);border-top:1px solid var(--border);padding:7px 16px;font-size:.82rem}.rekap-detail-rabitem-name[data-v-1e4e12fe]{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:190px;font-size:.82rem;overflow:hidden}.card-info-modal[data-v-1e4e12fe]{width:100%;max-width:520px}.card-info-header[data-v-1e4e12fe]{align-items:center;gap:10px;margin-bottom:16px;display:flex}.card-info-icon[data-v-1e4e12fe]{flex-shrink:0;font-size:1.4rem;line-height:1}.card-info-close[data-v-1e4e12fe]{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;width:28px;height:28px;transition:all var(--t);background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:.85rem;display:flex}.card-info-close[data-v-1e4e12fe]:hover{background:var(--surface-2);color:var(--text);border-color:var(--text-dim)}.card-info-value-row[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);align-items:baseline;gap:8px;margin-bottom:16px;padding:12px 16px;display:flex}.card-info-value[data-v-1e4e12fe]{color:var(--accent);font-size:1.5rem;font-weight:700}.card-info-value-lbl[data-v-1e4e12fe]{color:var(--text-muted);font-size:.78rem}.card-info-section[data-v-1e4e12fe]{margin-bottom:14px}.card-info-section-title[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:5px;font-size:.65rem;font-weight:700}.card-info-section-body[data-v-1e4e12fe]{color:var(--text-muted);font-size:.82rem;line-height:1.6}.card-info-formula[data-v-1e4e12fe]{color:var(--accent);font-size:.8rem;font-family:var(--font-mono);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:var(--radius);padding:8px 12px;line-height:1.5}.card-info-warning[data-v-1e4e12fe]{border-radius:var(--radius);color:#ffa01ee6;background:#ff8c0014;border:1px solid #ff8c004d;align-items:flex-start;gap:8px;margin-bottom:8px;padding:10px 14px;font-size:.8rem;display:flex}.card-info-warning-icon[data-v-1e4e12fe]{flex-shrink:0;margin-top:1px;font-size:.9rem}.vol-calc-cell[data-v-1e4e12fe]{border:1px dashed var(--border);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--t), border-color var(--t);font-family:var(--font-mono);font-size:inherit;color:inherit;background:0 0;align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.vol-calc-cell[data-v-1e4e12fe]:hover{background:var(--surface-3);border-color:var(--accent-ring)}.vol-calc-empty[data-v-1e4e12fe]{color:var(--accent);font-size:.71rem;font-family:var(--font-sans);background:var(--accent-dim);border:1px solid var(--accent-ring);border-radius:100px;padding:1px 8px}.vol-calc-icon[data-v-1e4e12fe]{opacity:0;color:var(--accent);transition:opacity var(--t);line-height:1}.vol-calc-cell:hover .vol-calc-icon[data-v-1e4e12fe]{opacity:.8}.modal-formula[data-v-1e4e12fe]{width:90vw;min-width:680px;max-width:1000px}.formula-table[data-v-1e4e12fe]{border-collapse:collapse;width:100%;font-size:.82rem}.formula-table th[data-v-1e4e12fe]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.formula-table td[data-v-1e4e12fe]{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px}.formula-table tr:last-child td[data-v-1e4e12fe]{border-bottom:none}.var-chip-sm[data-v-1e4e12fe]{background:var(--surface-3);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-muted);border-radius:100px;margin:1px 2px;padding:1px 7px;font-size:.72rem;display:inline-block}.var-chips-input[data-v-1e4e12fe]{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:text;flex-wrap:wrap;align-items:center;gap:4px;min-height:40px;padding:5px 10px;display:flex}.var-chips-input[data-v-1e4e12fe]:focus-within{border-color:var(--accent)}.var-chip[data-v-1e4e12fe]{background:var(--accent-dim);border:1px solid var(--accent-ring);font-family:var(--font-mono);color:var(--accent);border-radius:100px;align-items:center;gap:4px;padding:2px 8px;font-size:.78rem;display:inline-flex}.var-chip-text-input[data-v-1e4e12fe]{font-family:var(--font-sans);color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:140px;padding:2px 4px;font-size:.82rem}.form-hint[data-v-1e4e12fe]{color:var(--text-dim);margin-top:4px;font-size:.74rem}.mono-input[data-v-1e4e12fe]{font-family:var(--font-mono)}.satuan-preset-btn[data-v-1e4e12fe]{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-size:.76rem;font-family:var(--font-mono);cursor:pointer;transition:all var(--t);border-radius:100px;align-items:center;padding:3px 12px;display:inline-flex}.satuan-preset-btn[data-v-1e4e12fe]:hover{background:var(--surface-3);color:var(--text)}.satuan-preset-btn.active[data-v-1e4e12fe]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.modal-volume[data-v-1e4e12fe]{width:94vw;min-width:860px;max-width:1100px}.vol-modal-head[data-v-1e4e12fe]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.vol-total-badge[data-v-1e4e12fe]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);white-space:nowrap;border-radius:100px;flex-shrink:0;align-items:center;gap:2px;padding:4px 14px;font-size:.82rem;display:flex}.vol-empty[data-v-1e4e12fe]{text-align:center;color:var(--text-dim);background:var(--surface-2);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:12px;padding:24px;font-size:.82rem}.vol-empty-warn[data-v-1e4e12fe]{color:var(--red);margin-top:8px;font-size:.78rem}.cco-rab-ref-banner[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 6%, var(--surface));border:1px solid var(--accent-ring);border-radius:var(--radius);color:var(--text-muted);align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;font-size:.82rem;display:flex}.cco-rab-ref-banner>span[data-v-1e4e12fe]{flex:1;line-height:1.45}.cco-rab-ref-table[data-v-1e4e12fe]{opacity:.82}.cco-rab-ref-table tbody tr.cco-rab-ref-row[data-v-1e4e12fe]:hover{opacity:1;background:var(--surface-2)}.cco-rab-ref-toggle[data-v-1e4e12fe]{margin:8px 0 2px}.vol-table[data-v-1e4e12fe]{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:4px;font-size:.82rem}.vol-table th[data-v-1e4e12fe]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.vol-table td[data-v-1e4e12fe]{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px}.vol-table tfoot td[data-v-1e4e12fe]{border-top:2px solid var(--border);border-bottom:none;padding:10px 8px}.vol-total-row td[data-v-1e4e12fe]{background:var(--surface-2)}.vol-values-cell[data-v-1e4e12fe]{max-width:220px}.vol-inline-trigger[data-v-1e4e12fe]{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;padding:3px 6px;font-size:.82rem;font-weight:500;display:inline-flex;overflow:hidden}.vol-inline-trigger[data-v-1e4e12fe]:hover{background:var(--surface-2);border-color:var(--border)}.vol-inline-input[data-v-1e4e12fe]{width:100%;height:30px;padding:5px 8px;font-size:.8rem}.vol-inline-select[data-v-1e4e12fe]{width:100%;height:30px;padding:4px 8px;font-size:.78rem}.vol-inline-chip-input[data-v-1e4e12fe]{width:90px;height:26px;font-size:.72rem;font-family:var(--font-mono);box-sizing:border-box;margin:1px 2px;padding:2px 6px}.vol-var-chip[data-v-1e4e12fe]{background:var(--surface-3);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;border-radius:4px;margin:1px 2px;padding:2px 6px;font-size:.71rem;display:inline-block}.vol-var-chip-btn[data-v-1e4e12fe]{cursor:pointer}.vol-var-chip-btn[data-v-1e4e12fe]:hover{border-color:var(--accent-ring);color:var(--accent)}.vol-var-inputs[data-v-1e4e12fe]{flex-direction:column;gap:8px;display:flex}.vol-var-input-row[data-v-1e4e12fe]{grid-template-columns:90px 20px 1fr;align-items:center;gap:6px;display:grid}.vol-var-name[data-v-1e4e12fe]{color:var(--accent);font-size:.88rem}.vol-var-eq[data-v-1e4e12fe]{color:var(--text-dim);text-align:center;font-size:1rem}.vol-var-num-input[data-v-1e4e12fe]{max-width:200px}.vol-preview-box[data-v-1e4e12fe]{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;display:flex}.vol-form-header[data-v-1e4e12fe]{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;margin-bottom:20px;padding-bottom:14px;display:flex}.vol-back-btn[data-v-1e4e12fe]{align-self:flex-start}.vol-form-title[data-v-1e4e12fe]{color:var(--text);margin:0;font-size:1.05rem;font-weight:700}.formula-select[data-v-1e4e12fe]{width:100%;position:relative}.formula-select-trigger[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;width:100%;transition:border-color var(--t), box-shadow var(--t);color:var(--text);font-size:.85rem;font-family:var(--font-sans);justify-content:space-between;align-items:center;gap:10px;padding:9px 13px;display:flex}.formula-select.open .formula-select-trigger[data-v-1e4e12fe],.formula-select-trigger[data-v-1e4e12fe]:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);outline:none}.formula-select-value[data-v-1e4e12fe]{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.formula-name[data-v-1e4e12fe]{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.formula-expr[data-v-1e4e12fe]{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.formula-select-placeholder[data-v-1e4e12fe]{color:var(--text-dim);flex:1}.formula-chevron[data-v-1e4e12fe]{color:var(--text-dim);transition:transform var(--t);flex-shrink:0}.formula-select.open .formula-chevron[data-v-1e4e12fe]{transform:rotate(180deg)}.formula-select-dropdown[data-v-1e4e12fe]{background:var(--surface-2);border:1px solid var(--accent-ring);border-radius:var(--radius);z-index:1000;max-height:240px;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #00000059}.formula-select-option[data-v-1e4e12fe]{cursor:pointer;text-align:left;width:100%;color:var(--text);transition:background var(--t);font-size:.84rem;font-family:var(--font-sans);background:0 0;border:none;flex-direction:column;gap:2px;padding:9px 13px;display:flex}.formula-select-option[data-v-1e4e12fe]:hover,.formula-select-option.active[data-v-1e4e12fe]{background:var(--surface-3)}.formula-select-option.active .formula-opt-name[data-v-1e4e12fe]{color:var(--accent)}.formula-opt-name[data-v-1e4e12fe]{font-weight:500}.formula-opt-meta[data-v-1e4e12fe]{color:var(--text-dim);align-items:center;gap:8px;font-size:.77rem;display:flex}.formula-opt-unit[data-v-1e4e12fe]{color:var(--text-muted)}.rab-row-bj-header td[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 4%, var(--surface-1))}.rab-row-bj-header td[data-v-1e4e12fe]:first-child{box-shadow:inset 2px 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}.rab-row-bj-child td[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 2%, var(--surface-1))}.bj-badge[data-v-1e4e12fe]{background:var(--accent);color:#fff;font-size:.6rem;font-weight:700;font-family:var(--font-mono);vertical-align:middle;letter-spacing:.05em;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-right:5px;padding:1px 4px;line-height:1.4;display:inline-flex}.insert-choice-bj[data-v-1e4e12fe]{border-top:1px solid var(--border);color:var(--accent)}.insert-choice-bj[data-v-1e4e12fe]:hover{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2))}.bj-list[data-v-1e4e12fe]{border:1px solid var(--border);border-radius:var(--radius);max-height:220px;margin-bottom:4px;overflow-y:auto}.bj-list-empty[data-v-1e4e12fe]{text-align:center;color:var(--text-dim);padding:16px;font-size:.83rem}.link-inline[data-v-1e4e12fe]{color:var(--accent);text-decoration:underline}.bj-list-item[data-v-1e4e12fe]{cursor:pointer;border-bottom:1px solid var(--border);transition:background var(--t);padding:10px 14px}.bj-list-item[data-v-1e4e12fe]:last-child{border-bottom:none}.bj-list-item[data-v-1e4e12fe]:hover{background:var(--surface-2)}.bj-list-item--selected[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 10%, var(--surface-2))!important}.bj-list-item-main[data-v-1e4e12fe]{align-items:baseline;gap:6px;display:flex}.bj-list-item-name[data-v-1e4e12fe]{color:var(--text);font-size:.88rem;font-weight:600}.bj-list-item-unit[data-v-1e4e12fe]{color:var(--text-dim);font-size:.75rem}.bj-list-item-meta[data-v-1e4e12fe]{color:var(--text-muted);align-items:center;gap:10px;margin-top:3px;font-size:.76rem;display:flex}.bj-list-item-codes[data-v-1e4e12fe]{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.bj-preview-row[data-v-1e4e12fe]{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;display:flex}.bj-preview-label[data-v-1e4e12fe]{color:var(--text-muted);font-size:.82rem}.bj-preview-val[data-v-1e4e12fe]{color:var(--accent);font-size:1rem;font-weight:700}.level-badge[data-v-1e4e12fe]{white-space:nowrap;min-width:0;height:auto;color:var(--text-muted);border:none;border-radius:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.72rem;font-weight:400;line-height:1.1;display:inline-flex}.level-badge-l1[data-v-1e4e12fe],.level-badge-l2[data-v-1e4e12fe],.level-badge-l3[data-v-1e4e12fe]{color:var(--text-muted)}.level-badge-l4[data-v-1e4e12fe],.level-badge-l5[data-v-1e4e12fe]{color:var(--text-muted);font-size:.68rem}.btn-cco-lock[data-v-1e4e12fe]{background:var(--accent);color:#fff;border:none;font-weight:600}.btn-cco-lock[data-v-1e4e12fe]:hover{opacity:.88}.cco-locked-badge[data-v-1e4e12fe]{border-radius:var(--radius);color:var(--accent);background:#f9731621;border:1px solid #f9731659;align-items:center;gap:5px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.cco-locked-name[data-v-1e4e12fe]{opacity:.8;font-weight:400}.cco-diff-cell[data-v-1e4e12fe]{align-items:flex-start;display:inline-flex}.cco-diff-compact[data-v-1e4e12fe]{flex-direction:column;gap:2px;line-height:1.15;display:inline-flex}.cco-diff-line[data-v-1e4e12fe]{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.cco-diff-label[data-v-1e4e12fe]{letter-spacing:.02em;min-width:26px;color:var(--text-dim);background:#64748b29;border:1px solid #64748b47;border-radius:999px;justify-content:center;align-items:center;padding:1px 4px;font-size:.62rem;font-weight:700;display:inline-flex}.cco-diff-label-cco[data-v-1e4e12fe]{color:color-mix(in srgb, var(--accent) 92%, #fff);background:#f973161f;border-color:#f9731657}.cco-diff-original[data-v-1e4e12fe]{color:var(--text-muted);opacity:.9;font-size:.78rem}.cco-diff-up[data-v-1e4e12fe]{color:#22c55e;font-weight:600}.cco-diff-down[data-v-1e4e12fe]{color:#ef4444;font-weight:600}.cco-diff-same[data-v-1e4e12fe]{color:var(--text-muted)}.cco-group-header-row th[data-v-1e4e12fe]{text-align:center;padding:4px 8px;font-size:.7rem;font-weight:700}.cco-group-th[data-v-1e4e12fe]{border-bottom:2px solid var(--border)}.cco-group-original[data-v-1e4e12fe]{background:#64748b1a;border-radius:4px 4px 0 0}.cco-group-cco[data-v-1e4e12fe]{color:var(--accent);background:#f973161a;border-radius:4px 4px 0 0}.cco-col[data-v-1e4e12fe]{background:#f973160a;border-left:1px solid #f9731626}.cco-orig-val[data-v-1e4e12fe]{color:var(--text-muted)}.col-vol-sm[data-v-1e4e12fe]{width:90px}.col-harga-sm[data-v-1e4e12fe]{width:110px}.col-jumlah-sm[data-v-1e4e12fe]{width:120px}.btn-cco-active[data-v-1e4e12fe]{color:var(--accent);background:#f973161f;border-color:#f973164d}.cco-vol-cell[data-v-1e4e12fe]{border-color:#f9731666}.insert-choice-cco[data-v-1e4e12fe]{color:var(--accent);background:#f9731612;border-color:#f973164d}.insert-choice-cco[data-v-1e4e12fe]:hover{background:#f9731624}.cco-ghost-separator td[data-v-1e4e12fe]{border-top:1px dashed #f973164d;border-bottom:none;padding:6px 12px}.cco-ghost-label[data-v-1e4e12fe]{color:#f97316b3;align-items:center;gap:5px;font-size:.73rem;font-style:italic;display:inline-flex}.cco-ghost-row[data-v-1e4e12fe]{opacity:.55;background:#f9731608}.cco-ghost-row[data-v-1e4e12fe]:hover{opacity:.75;background:#f973160f}.cco-ghost-name[data-v-1e4e12fe]{font-style:italic}.cco-item-badge[data-v-1e4e12fe]{color:var(--accent);letter-spacing:.04em;background:#f9731626;border:1px solid #f973164d;border-radius:3px;padding:1px 5px;font-size:.65rem;font-weight:700;display:inline-block}.modal-wide[data-v-1e4e12fe]{width:min(1400px,98vw);max-width:750px}.status-badge[data-v-1e4e12fe]{letter-spacing:.02em;border-radius:99px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.status-active[data-v-1e4e12fe]{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.status-archived[data-v-1e4e12fe]{color:var(--text-muted);border:1px solid var(--border);background:#64748b1f}.cco-new-row[data-v-1e4e12fe]{background:#f973160a;border-left:2px solid #f9731666}.cco-new-row[data-v-1e4e12fe]:hover{background:#f9731614}.btn-link[data-v-1e4e12fe]{cursor:pointer;color:var(--accent);font-size:inherit;background:0 0;border:none;padding:0}.btn-link[data-v-1e4e12fe]:hover{text-decoration:underline}.session-banner[data-v-1e4e12fe]{border-radius:var(--radius);border:1px solid #0000;align-items:center;gap:10px;margin-bottom:12px;padding:10px 16px;font-size:.84rem;line-height:1.3;display:flex}.session-banner-cco[data-v-1e4e12fe]{color:var(--accent);background:linear-gradient(90deg,#f9731629,#f973160f);border-color:#f9731673;box-shadow:inset 0 0 0 1px #f973160d}.session-banner-rab[data-v-1e4e12fe]{color:var(--blue);background:#3b82f614;border-color:#3b82f64d}.session-banner-dot[data-v-1e4e12fe]{width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, currentColor 18%, transparent);background:currentColor;border-radius:50%;flex-shrink:0;animation:2.6s ease-in-out infinite session-banner-pulse-1e4e12fe}@keyframes session-banner-pulse-1e4e12fe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.78;transform:scale(1.18)}}.session-banner-text strong[data-v-1e4e12fe]{font-weight:700}.session-banner-hint[data-v-1e4e12fe]{color:var(--text-dim);margin-left:4px;font-size:.78rem;font-weight:400}.rab-main-card-cco[data-v-1e4e12fe]{box-shadow:0 0 0 1px #f9731633;border-color:#f9731666!important}.rab-main-card-cco .card-header[data-v-1e4e12fe]{background:linear-gradient(90deg,#f973161a,#0000 70%)}.rab-row-bj-header td.cco-col[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 14%, var(--surface-1))!important}.rab-row-bj-child td.cco-col[data-v-1e4e12fe]{background:color-mix(in srgb, var(--accent) 8%, var(--surface-1))!important}.cco-origin-badge[data-v-1e4e12fe]{background:var(--accent);color:#fff;border:1px solid var(--accent);letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:3px;align-items:center;gap:3px;margin-right:5px;padding:1px 6px;font-size:.62rem;font-weight:800;line-height:1.4;display:inline-flex;box-shadow:0 1px 4px #f9731659}.rab-row-cco-origin-ghost td[data-v-1e4e12fe]:not(.td-actions):not(.cco-col){opacity:.35;font-style:italic}.cco-vol-static-btn[data-v-1e4e12fe]{justify-content:center;min-width:56px}.modal-volume-bulk[data-v-1e4e12fe]{flex-direction:column;width:100%;max-width:640px;max-height:82vh;display:flex}.vol-bulk-head[data-v-1e4e12fe]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;padding-bottom:14px;display:flex}.vol-bulk-toolbar[data-v-1e4e12fe]{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:4px;padding:8px 0;display:flex}.vol-bulk-check-all[data-v-1e4e12fe]{cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none;align-items:center;gap:7px;font-size:.84rem;font-weight:600;display:flex}.vol-bulk-count[data-v-1e4e12fe]{color:var(--text-dim);margin-left:auto;font-size:.78rem}.vol-bulk-list[data-v-1e4e12fe]{flex-direction:column;flex:1;gap:2px;min-height:120px;max-height:54vh;padding:4px 0;display:flex;overflow-y:auto}.vol-bulk-group-head[data-v-1e4e12fe]{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:10px 4px 4px;font-size:.72rem;font-weight:700}.vol-bulk-item[data-v-1e4e12fe]{cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 10px;transition:background .12s;display:flex}.vol-bulk-item[data-v-1e4e12fe]:hover{background:var(--bg-hover)}.vol-bulk-item--selected[data-v-1e4e12fe]{background:rgba(var(--accent-rgb,59,130,246), .06)}.vol-bulk-item input[type=checkbox][data-v-1e4e12fe]{flex-shrink:0;margin-top:2px}.vol-bulk-item-info[data-v-1e4e12fe]{flex-direction:column;gap:3px;display:flex}.vol-bulk-item-name[data-v-1e4e12fe]{color:var(--text);font-size:.88rem;font-weight:500}.vol-bulk-item-meta[data-v-1e4e12fe]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vol-bulk-item-unit[data-v-1e4e12fe]{color:var(--text-muted);font-size:.75rem}.vol-bulk-item-vols[data-v-1e4e12fe]{color:var(--accent);background:rgba(var(--accent-rgb,59,130,246), .08);border-radius:4px;padding:1px 6px;font-size:.75rem}.vol-bulk-item-result[data-v-1e4e12fe]{color:var(--text-muted);font-size:.75rem}.grid-2[data-v-a8e34bb6]{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}@media (width<=600px){.grid-2[data-v-a8e34bb6]{grid-template-columns:1fr}}.stat-sub[data-v-a8e34bb6]{color:var(--text-dim);margin-top:4px;font-size:.72rem}.stat-card-danger[data-v-a8e34bb6]{border-color:var(--red)!important}.filter-tab[data-v-a8e34bb6]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-a8e34bb6]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-a8e34bb6]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.input-sm[data-v-a8e34bb6]{padding:5px 10px;font-size:.82rem}.row-flagged td[data-v-a8e34bb6]{background:#eab3080d}.td-expand[data-v-a8e34bb6]{width:28px;padding:0 4px 0 8px!important}.expand-btn[data-v-a8e34bb6]{border:1px solid var(--border);width:20px;height:20px;color:var(--text-dim);cursor:pointer;transition:all var(--t);background:0 0;border-radius:4px;justify-content:center;align-items:center;font-size:.6rem;line-height:1;display:inline-flex}.expand-btn[data-v-a8e34bb6]:hover{background:var(--surface-2);color:var(--text)}.expand-btn.open[data-v-a8e34bb6]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent);transform:rotate(90deg)}.usage-group-row[data-v-a8e34bb6]{background:0 0!important}.usage-panel[data-v-a8e34bb6]{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0 8px 8px 36px;overflow:hidden}.usage-panel-header[data-v-a8e34bb6]{color:var(--text-dim);background:var(--surface-2);border-bottom:1px solid var(--border);padding:7px 12px;font-size:.74rem;font-weight:500}.usage-table[data-v-a8e34bb6]{border-collapse:collapse;width:100%}.usage-table th[data-v-a8e34bb6]{color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border);background:var(--surface);padding:5px 12px;font-size:.72rem;font-weight:500}.usage-table td[data-v-a8e34bb6]{border-bottom:1px solid var(--border-dim,var(--border));padding:6px 12px;font-size:.8rem}.usage-table tr:last-child td[data-v-a8e34bb6]{border-bottom:none}.usage-pekerjaan[data-v-a8e34bb6]{color:var(--text-muted);font-size:.75rem}.usage-item[data-v-a8e34bb6]{color:var(--text)}.stock-badge[data-v-a8e34bb6]{font-size:.72rem;font-weight:600;font-family:var(--font-mono);border-radius:20px;padding:2px 8px;display:inline-block}.stock-ok[data-v-a8e34bb6]{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.stock-empty[data-v-a8e34bb6]{color:#ef4444;background:#ef44441a;border:1px solid #ef444433}.cco-banner[data-v-a8e34bb6]{border-radius:var(--radius);border:1px solid var(--accent-ring);background:var(--accent-dim);align-items:center;gap:10px;padding:9px 14px;font-size:.82rem;display:flex}.cco-badge[data-v-a8e34bb6]{background:var(--accent);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:.68rem;font-weight:700}.cco-banner-text[data-v-a8e34bb6]{color:var(--text-muted);line-height:1.5}.cco-changed[data-v-a8e34bb6]{color:var(--accent);font-weight:600}.delete-error-box[data-v-ee20d579]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-ee20d579]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-ee20d579]{color:var(--text);font-size:.8rem;line-height:1.45}.filter-bar[data-v-ee20d579]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filter-groups[data-v-ee20d579]{flex-wrap:wrap;flex:1;gap:8px;display:flex}.filter-group[data-v-ee20d579]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);gap:2px;padding:3px;display:flex}.search-bar[data-v-ee20d579]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.date-range-filter[data-v-ee20d579]{align-items:center;gap:5px;display:flex}.date-range-label[data-v-ee20d579]{color:var(--text-dim);white-space:nowrap;font-size:.78rem}.date-range-sep[data-v-ee20d579]{color:var(--text-dim);font-size:.82rem}.input-sm[data-v-ee20d579]{padding:5px 10px;font-size:.82rem}.filter-tab[data-v-ee20d579]{border-radius:calc(var(--radius) - 2px);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;background:0 0;border:none;padding:4px 11px}.filter-tab[data-v-ee20d579]:hover{background:var(--surface-3);color:var(--text)}.filter-tab.active[data-v-ee20d579]{background:var(--accent-dim);color:var(--accent)}.filter-tab[data-flag=new][data-v-ee20d579]{color:var(--blue)}.filter-tab[data-flag=new].active[data-v-ee20d579]{color:var(--blue);background:#3b82f626}.filter-tab[data-flag=exceed][data-v-ee20d579]{color:var(--yellow)}.filter-tab[data-flag=exceed].active[data-v-ee20d579]{color:var(--yellow);background:#eab30826}.pending-badge[data-v-ee20d579]{background:var(--red,#ef4444);color:#fff;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;min-width:15px;height:15px;margin-left:4px;padding:0 3px;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.td-doc-single[data-v-ee20d579]{white-space:nowrap}.doc-actions-docs[data-v-ee20d579]{flex-wrap:wrap;gap:4px;display:flex}.btn-spm-doc[data-v-ee20d579]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:600;font-family:var(--font-sans);border:1px solid;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.btn-spm-doc.detail[data-v-ee20d579]{color:#6382ff;background:#6382ff1a;border-color:#6382ff4d}.btn-spm-doc.detail[data-v-ee20d579]:hover{background:#6382ff33;border-color:#6382ff80}.btn-spm-doc.upload[data-v-ee20d579]{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.btn-spm-doc.upload[data-v-ee20d579]:hover{background:var(--surface-3);color:var(--text)}.btn-spm-doc.lampiran[data-v-ee20d579]{color:#14b8a6;background:#14b8a61f;border-color:#14b8a64d}.btn-spm-doc.lampiran[data-v-ee20d579]:hover{background:#14b8a638;border-color:#14b8a680}.btn-spm-status-change[data-v-ee20d579]{border:1px solid var(--border);cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:600;font-family:var(--font-sans);background:var(--surface-2);color:var(--text-muted);border-radius:100px;align-items:center;gap:4px;padding:4px 11px;display:inline-flex}.btn-spm-status-change[data-v-ee20d579]:hover{background:var(--surface-3);color:var(--text)}.td-flag-cell[data-v-ee20d579]{position:relative}.flag-btn[data-v-ee20d579]{color:var(--yellow);cursor:pointer;transition:all var(--t);background:#eab3081f;border:1px solid #eab30866;border-radius:100px;align-items:center;gap:4px;padding:3px 9px;font-size:.72rem;font-weight:600;display:inline-flex}.flag-btn[data-v-ee20d579]:hover,.flag-btn.flag-active[data-v-ee20d579]{background:#eab30838;border-color:#eab30899}.flag-popup[data-v-ee20d579]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);z-index:40;min-width:230px;padding:10px 14px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000059}.flag-popup-title[data-v-ee20d579]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:8px;font-size:.68rem;font-weight:700}.flag-popup-item[data-v-ee20d579]{align-items:flex-start;gap:7px;padding:4px 0;font-size:.78rem;line-height:1.35;display:flex}.flag-popup-item.flag-exceed[data-v-ee20d579]{color:var(--yellow)}.flag-popup-item.flag-new[data-v-ee20d579]{color:var(--blue)}.flag-dot[data-v-ee20d579]{flex-shrink:0;margin-top:5px;font-size:.5rem}.flag-popup-enter-active[data-v-ee20d579]{transition:opacity .15s,transform .15s}.flag-popup-leave-active[data-v-ee20d579]{transition:opacity .2s,transform .15s}.flag-popup-enter-from[data-v-ee20d579],.flag-popup-leave-to[data-v-ee20d579]{opacity:0;transform:translateY(-4px)}.status-option-grid[data-v-ee20d579]{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.status-option-btn[data-v-ee20d579]{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:all var(--t);border-radius:100px;padding:6px 14px;font-size:.8rem;font-weight:600}.status-option-btn[data-v-ee20d579]:hover{background:var(--surface-3)}.status-option-btn.active[data-v-ee20d579]{outline:2px solid var(--accent);outline-offset:2px}.status-option-btn.opt-yellow.active[data-v-ee20d579]{color:var(--yellow);background:#eab30826;border-color:#eab30866}.status-option-btn.opt-green.active[data-v-ee20d579]{color:var(--green);background:#22c55e26;border-color:#22c55e66}.status-option-btn.opt-blue.active[data-v-ee20d579]{color:var(--blue);background:#3b82f626;border-color:#3b82f666}.status-option-btn.opt-teal.active[data-v-ee20d579]{color:#14b8a6;background:#14b8a626;border-color:#14b8a666}.status-option-btn.opt-red.active[data-v-ee20d579]{color:var(--red);background:#ef444426;border-color:#ef444466}.status-option-btn.opt-gray.active[data-v-ee20d579]{color:#94a3b8;background:#94a3b826;border-color:#94a3b866}[data-v-ee20d579] .badge-gray,.badge-gray[data-v-ee20d579]{color:#94a3b8;background:#94a3b826;border:1px solid #94a3b84d}[data-v-ee20d579] .badge-purple,.badge-purple[data-v-ee20d579]{color:#a855f7;background:#a855f726;border:1px solid #a855f74d}.status-option-btn.opt-purple.active[data-v-ee20d579]{color:#a855f7;background:#a855f726;border-color:#a855f766}.flag-inline-badge[data-v-ee20d579]{color:var(--yellow);vertical-align:middle;margin-left:3px;font-size:.7rem;display:inline-block}.review-toggle-group[data-v-ee20d579]{justify-content:center;gap:4px;display:flex}.review-btn[data-v-ee20d579]{border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);cursor:pointer;transition:all var(--t);white-space:nowrap;border-radius:100px;padding:3px 9px;font-size:.72rem;font-weight:600}.review-btn.setuju[data-v-ee20d579]:hover{color:var(--green);background:#22c55e1a;border-color:#22c55e59}.review-btn.setuju.active[data-v-ee20d579]{color:var(--green);background:#22c55e2e;border-color:#22c55e80}.review-btn.tolak[data-v-ee20d579]:hover{color:var(--red);background:#ef44441a;border-color:#ef444459}.review-btn.tolak.active[data-v-ee20d579]{color:var(--red);background:#ef44442e;border-color:#ef444480}.bulk-review-bar[data-v-ee20d579]{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:8px;margin-bottom:10px;padding:8px 12px;display:flex}.bulk-review-label[data-v-ee20d579]{color:var(--text-dim);white-space:nowrap;font-size:.75rem}.btn-bulk-approve[data-v-ee20d579],.btn-bulk-reject[data-v-ee20d579]{cursor:pointer;transition:all var(--t);font-size:.78rem;font-weight:700;font-family:var(--font-sans);border:1px solid;border-radius:100px;padding:5px 14px}.btn-bulk-approve[data-v-ee20d579]{color:var(--green);background:#22c55e1f;border-color:#22c55e59}.btn-bulk-approve[data-v-ee20d579]:hover{background:#22c55e38;border-color:#22c55e99}.btn-bulk-reject[data-v-ee20d579]{color:var(--red);background:#ef44441a;border-color:#ef444459}.btn-bulk-reject[data-v-ee20d579]:hover{background:#ef444433;border-color:#ef444499}.modal-wide[data-v-ee20d579]{width:94vw;max-width:860px}.modal-scrollable[data-v-ee20d579]{flex-direction:column;max-height:90vh;display:flex}.modal-scrollable .modal-body[data-v-ee20d579]{flex:1;padding-bottom:320px;padding-right:4px;overflow-y:auto}.modal-detail-wrapper[data-v-ee20d579]{flex-direction:row;gap:0;width:94vw;max-width:900px;padding:0;transition:max-width .25s;display:flex;overflow:hidden}.modal-detail-wrapper.has-lampiran[data-v-ee20d579]{max-width:1260px}.detail-table th[data-v-ee20d579],.detail-table td[data-v-ee20d579]{font-size:.82rem}.modal-main-pane[data-v-ee20d579]{flex:1;min-width:0;max-height:88vh;padding:28px;overflow-y:auto}.modal-lampiran-pane[data-v-ee20d579]{border-left:1px solid var(--border);background:var(--surface-2);flex-shrink:0;width:340px;max-height:88vh;padding:20px;overflow-y:auto}.lampiran-pane-header[data-v-ee20d579]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lampiran-image-wrap[data-v-ee20d579]{aspect-ratio:1;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-1,var(--surface-2));justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.lampiran-image[data-v-ee20d579]{width:auto;max-width:100%;height:auto;max-height:100%;display:block}.lampiran-rotate-bar[data-v-ee20d579]{gap:6px;margin-bottom:10px;display:flex}.lampiran-rotate-btn[data-v-ee20d579]{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;padding:4px 10px;font-size:1rem;line-height:1}.lampiran-rotate-btn[data-v-ee20d579]:hover{background:var(--surface-4,var(--surface-3))}.lampiran-slide-enter-active[data-v-ee20d579],.lampiran-slide-leave-active[data-v-ee20d579]{transition:all .25s}.lampiran-slide-enter-from[data-v-ee20d579],.lampiran-slide-leave-to[data-v-ee20d579]{opacity:0;width:0;padding:0}.btn-teal[data-v-ee20d579]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a61f;border:1px solid #14b8a64d;padding:4px 12px;font-size:.78rem;font-weight:600}.btn-teal[data-v-ee20d579]:hover{background:#14b8a638}.btn-teal-active[data-v-ee20d579]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a640;border:1px solid #14b8a680;padding:4px 12px;font-size:.78rem;font-weight:600}.detail-header[data-v-ee20d579]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.modal-close-x[data-v-ee20d579]{border:1px solid var(--border);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:all var(--t);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.modal-close-x[data-v-ee20d579]:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.modal-actions--spread[data-v-ee20d579]{justify-content:space-between}.btn-close-left[data-v-ee20d579]{font-size:.8rem}.detail-note[data-v-ee20d579]{background:var(--surface-2);border-radius:var(--radius);color:var(--text-muted);padding:10px 14px;font-size:.82rem}.modal-subtitle[data-v-ee20d579]{color:var(--text-muted);margin-top:-6px;margin-bottom:16px;font-size:.82rem}.text-dim[data-v-ee20d579]{color:var(--text-dim)}.form-error[data-v-ee20d579]{color:var(--red);font-size:.8rem}.upload-current-info[data-v-ee20d579]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);margin-bottom:12px;padding:8px 12px;font-size:.8rem}.spm-items-section[data-v-ee20d579]{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;overflow:visible}.spm-items-header[data-v-ee20d579]{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.spm-form-item[data-v-ee20d579]{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.spm-form-item[data-v-ee20d579]:last-child{border-bottom:none}.spm-form-item-row[data-v-ee20d579]{align-items:flex-start;gap:10px;display:flex}.spm-qty-group[data-v-ee20d579]{flex:0 0 130px}.spm-qty-input[data-v-ee20d579]{align-items:center;gap:6px;display:flex}.spm-qty-input .input[data-v-ee20d579]{flex:1;min-width:0}.spm-qty-unit[data-v-ee20d579]{color:var(--text-dim);white-space:nowrap;font-size:.78rem}.spm-delete-col[data-v-ee20d579]{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.spm-delete-btn[data-v-ee20d579]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);width:38px;height:38px;color:var(--text-dim);cursor:pointer;transition:all var(--t);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.spm-delete-btn[data-v-ee20d579]:hover{color:var(--red);background:#ef44441a;border-color:#ef444440}.row-flagged td[data-v-ee20d579]{background:#eab3080d}.rab-warning[data-v-ee20d579]{border-radius:var(--radius);padding:5px 10px;font-size:.76rem}.warn-new[data-v-ee20d579]{color:var(--blue);background:#3b82f61a;border:1px solid #3b82f640}.warn-exceed[data-v-ee20d579]{color:var(--yellow);background:#eab3081a;border:1px solid #eab30840}.warn-info[data-v-ee20d579]{color:#14b8a6;background:#14b8a614;border:1px solid #14b8a640}.invoice-chip[data-v-ee20d579]{background:var(--blue-dim);color:var(--blue);font-size:.7rem;font-family:var(--font-mono);cursor:pointer;transition:all var(--t);white-space:nowrap;border:1px solid #3b82f64d;border-radius:100px;align-items:center;padding:2px 8px;display:inline-flex}.invoice-chip[data-v-ee20d579]:hover{border-color:var(--blue);background:#3b82f633}.invoice-count-badge[data-v-ee20d579]{background:var(--blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:15px;height:15px;margin-left:5px;padding:0 3px;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.selected-chip[data-v-ee20d579]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.chip-clear[data-v-ee20d579]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.action-btn[data-v-ee20d579]{border:1px solid var(--border);cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:500;font-family:var(--font-sans);background:var(--surface-2);color:var(--text-dim);border-radius:100px;justify-content:center;align-items:center;padding:3px 12px;display:inline-flex}.action-btn[data-v-ee20d579]:hover{background:var(--surface-3);color:var(--text-muted)}.action-btn.danger[data-v-ee20d579]{background:var(--surface-2);color:var(--text-dim);border-color:var(--border)}.action-btn.danger[data-v-ee20d579]:hover{color:#e05c6a;background:#dc35451a;border-color:#dc354540}.lock-icon-btn[data-v-ee20d579]{cursor:pointer;width:34px;height:34px;transition:background var(--t), border-color var(--t), color var(--t);border:1.5px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.lock-icon-btn.is-locked[data-v-ee20d579]{color:#94a3b8;background:#94a3b81a;border-color:#94a3b84d}.lock-icon-btn.is-locked[data-v-ee20d579]:hover{color:var(--green);background:#22c55e1f;border-color:#22c55e66}.lock-icon-btn.is-unlocked[data-v-ee20d579]{color:var(--green);background:#22c55e1a;border-color:#22c55e59}.lock-icon-btn.is-unlocked[data-v-ee20d579]:hover{color:#94a3b8;background:#94a3b81f;border-color:#94a3b859}@keyframes lockPop-ee20d579{0%{transform:scale(1)rotate(0)}20%{transform:scale(.8)rotate(-14deg)}60%{transform:scale(1.15)rotate(5deg)}to{transform:scale(1)rotate(0)}}.lock-icon-btn.lock-animating[data-v-ee20d579]{animation:.38s lockPop-ee20d579}.lock-icon-enter-active[data-v-ee20d579],.lock-icon-leave-active[data-v-ee20d579]{transition:opacity .12s,transform .12s}.lock-icon-enter-from[data-v-ee20d579]{opacity:0;transform:scale(.5)rotate(-20deg)}.lock-icon-leave-to[data-v-ee20d579]{opacity:0;transform:scale(.5)rotate(20deg)}.spm-form-item .search-select-dropdown[data-v-ee20d579]{width:max-content;min-width:340px;max-width:520px;max-height:50vh;right:auto}.edit-fulfilled-section[data-v-ee20d579]{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}.edit-fulfilled-header[data-v-ee20d579]{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.edit-fulfilled-row[data-v-ee20d579]{border-bottom:1px solid var(--border);color:var(--text-muted);align-items:center;gap:12px;padding:8px 14px;font-size:.82rem;display:flex}.edit-fulfilled-row[data-v-ee20d579]:last-child{border-bottom:none}.edit-fulfilled-name[data-v-ee20d579]{color:var(--text-muted);flex:1}.edit-fulfilled-qty[data-v-ee20d579]{font-family:var(--font-mono);color:var(--text-dim);font-size:.78rem}.edit-fulfilled-badge[data-v-ee20d579]{color:#14b8a6;background:#14b8a61a;border:1px solid #14b8a640;border-radius:100px;padding:2px 8px;font-size:.68rem;font-weight:600}.btn-spm-doc.export[data-v-ee20d579]{color:#2563eb;background:#2563eb14;border-color:#2563eb47}.btn-spm-doc.export[data-v-ee20d579]:hover{background:#2563eb2e;border-color:#2563eb80}.modal-export[data-v-ee20d579]{flex-direction:column;width:96vw;max-width:1040px;max-height:94vh;padding:24px;display:flex}.export-modal-topbar[data-v-ee20d579]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:14px;display:flex}.export-scroll-area[data-v-ee20d579]{background:#d4d8de;border-radius:6px;flex:1;justify-content:center;padding:24px;display:flex;overflow:auto}.export-doc[data-v-ee20d579]{color:#111;background:#fff;border:1px solid #c8c8c8;border-radius:3px;flex-shrink:0;width:960px;font-family:Segoe UI,Arial,Helvetica,sans-serif;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000002e}.export-watermark[data-v-ee20d579]{color:#c800002e;letter-spacing:6px;white-space:nowrap;pointer-events:none;z-index:100;text-transform:uppercase;-webkit-user-select:none;user-select:none;font-family:Segoe UI,Arial,Helvetica,sans-serif;font-size:90px;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}.export-accent-bar[data-v-ee20d579]{background:linear-gradient(90deg,#1e3a5f 0%,#2563eb 100%);height:6px}.export-letterhead[data-v-ee20d579]{border-bottom:2px solid #1e3a5f;justify-content:space-between;align-items:flex-start;padding:22px 28px 18px;display:flex}.export-company-section[data-v-ee20d579]{flex:1}.export-company-name[data-v-ee20d579]{color:#1e3a5f;letter-spacing:.4px;text-transform:uppercase;font-size:22px;font-weight:800;line-height:1.1}.export-company-sub[data-v-ee20d579]{color:#2563eb;text-transform:uppercase;letter-spacing:1.2px;margin:4px 0 10px;font-size:11px;font-weight:700}.export-company-details[data-v-ee20d579]{color:#555;font-size:12px;line-height:1.7}.export-title-section[data-v-ee20d579]{text-align:right;flex-shrink:0}.export-doc-type[data-v-ee20d579]{color:#1e3a5f;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;font-size:15px;font-weight:800}.export-info-grid[data-v-ee20d579]{border-collapse:collapse;margin-left:auto}.export-info-grid th[data-v-ee20d579]{color:#fff;letter-spacing:.6px;text-transform:uppercase;text-align:center;background:#1e3a5f;border:1px solid #1e3a5f;padding:7px 16px;font-size:10.5px;font-weight:700}.export-info-grid td[data-v-ee20d579]{color:#1e3a5f;text-align:center;background:#fff;border:1px solid #b5c9e0;padding:8px 16px;font-size:14px;font-weight:800}.export-table[data-v-ee20d579]{border-collapse:collapse;width:100%;font-size:12px}.export-table th[data-v-ee20d579]{color:#1e3a5f;text-transform:uppercase;letter-spacing:.4px;text-align:center;background:#edf2fa;border:1px solid #bfcfe6;padding:10px;font-size:12px;font-weight:800}.export-table td[data-v-ee20d579]{vertical-align:middle;color:#111;border:1px solid #dde5f2;height:38px;min-height:38px;padding:10px;font-size:14px;font-weight:500}.ex-center[data-v-ee20d579]{text-align:center}.ex-empty[data-v-ee20d579]{color:#bbb}.w-no[data-v-ee20d579]{width:36px}.w-itemno[data-v-ee20d579]{width:260px}.w-unit[data-v-ee20d579]{width:52px}.w-qty[data-v-ee20d579]{width:55px}.w-notes[data-v-ee20d579]{width:80px}.w-date[data-v-ee20d579],.w-approval[data-v-ee20d579]{width:90px}.ex-approval[data-v-ee20d579]{letter-spacing:.5px;font-size:11px}.export-footer-grid[data-v-ee20d579]{border-top:2px solid #1e3a5f;min-height:96px;display:flex}.export-footer-desc[data-v-ee20d579]{border-right:1px solid #bfcfe6;flex:1;padding:14px 20px}.export-footer-sect-label[data-v-ee20d579]{text-transform:uppercase;letter-spacing:.9px;color:#888;margin-bottom:7px;font-size:10px;font-weight:700}.export-footer-project[data-v-ee20d579]{color:#1e3a5f;font-size:13px;font-weight:700}.export-footer-note[data-v-ee20d579]{color:#555;margin-top:4px;font-size:12px}.export-footer-sigs[data-v-ee20d579]{display:flex}.export-sig-box[data-v-ee20d579]{border-left:1px solid #bfcfe6;flex-direction:column;width:164px;padding:14px 16px 10px;display:flex}.export-sig-sect-label[data-v-ee20d579]{text-transform:uppercase;letter-spacing:.9px;color:#888;margin-bottom:4px;font-size:10px;font-weight:700}.export-sig-space[data-v-ee20d579]{flex:1;justify-content:center;align-items:center;min-height:40px;display:flex}.export-sig-line[data-v-ee20d579]{border-top:1px solid #999;margin-bottom:4px}.export-sig-name[data-v-ee20d579]{color:#1e3a5f;text-align:center;font-size:12px;font-weight:700}.export-approved-stamp[data-v-ee20d579]{color:#16a34a;letter-spacing:.8px;opacity:.85;border:2px solid #16a34a;border-radius:3px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-block;transform:rotate(-8deg)}.export-bottom-bar[data-v-ee20d579]{background:linear-gradient(90deg,#1e3a5f 0%,#2563eb 100%);height:4px}@media (width<=768px){.filter-bar[data-v-ee20d579]{flex-direction:column;align-items:stretch;gap:8px}.filter-groups[data-v-ee20d579]{flex-direction:column;gap:6px}.filter-group[data-v-ee20d579]{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.filter-group[data-v-ee20d579]::-webkit-scrollbar{display:none}.search-bar[data-v-ee20d579]{flex-direction:column;align-items:stretch;gap:6px}.search-bar .input-sm[data-v-ee20d579]{width:100%!important}.date-range-filter[data-v-ee20d579]{grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:6px;display:grid}.date-range-filter .input-sm[data-v-ee20d579]{min-width:0}.modal-detail-wrapper[data-v-ee20d579]{height:100svh;margin:0;border-radius:0!important;flex-direction:column!important;width:100vw!important;max-width:100vw!important;max-height:100svh!important}.modal-main-pane[data-v-ee20d579]{flex:1;min-height:0;max-height:none;padding:16px;overflow-y:auto}.modal-lampiran-pane[data-v-ee20d579]{border-left:none;border-top:1px solid var(--border);flex-shrink:0;width:100%;max-height:45vh}.review-btn[data-v-ee20d579]{border-radius:var(--radius-sm);min-height:44px;padding:8px 14px;font-size:.8rem}.review-toggle-group[data-v-ee20d579],.bulk-review-bar[data-v-ee20d579]{flex-wrap:wrap;gap:8px}.btn-bulk-approve[data-v-ee20d579],.btn-bulk-reject[data-v-ee20d579]{min-height:44px;padding:8px 18px;font-size:.82rem}.action-btn[data-v-ee20d579]{min-height:36px;padding:6px 14px}.lock-icon-btn[data-v-ee20d579]{width:40px;height:40px}.btn-spm-status-change[data-v-ee20d579]{min-height:36px;padding:6px 12px}.btn-spm-doc[data-v-ee20d579]{min-height:36px;padding:6px 12px;font-size:.8rem}.detail-header[data-v-ee20d579],.modal-actions--spread[data-v-ee20d579]{flex-wrap:wrap;gap:8px}}@media (width<=480px){[data-v-ee20d579] .data-table td{white-space:normal}}.delete-error-box[data-v-52d3f6fc]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-52d3f6fc]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-52d3f6fc]{color:var(--text);font-size:.8rem;line-height:1.45}.modal-wide[data-v-52d3f6fc]{width:92vw;max-width:800px}.modal-xl[data-v-52d3f6fc]{width:92vw;max-width:920px}.modal-scrollable[data-v-52d3f6fc]{flex-direction:column;max-height:90vh;display:flex}.modal-scrollable .modal-body[data-v-52d3f6fc]{flex:1;padding-right:4px;overflow-y:auto}.detail-header[data-v-52d3f6fc]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.modal-close-btn[data-v-52d3f6fc]{color:var(--text-dim);cursor:pointer;transition:color var(--t);background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:1.4rem;line-height:1}.modal-close-btn[data-v-52d3f6fc]:hover{color:var(--text)}.modal-subtitle[data-v-52d3f6fc]{color:var(--text-muted);margin-top:-6px;margin-bottom:16px;font-size:.82rem}.form-error[data-v-52d3f6fc]{color:var(--red);font-size:.8rem}.input-error[data-v-52d3f6fc]{border-color:var(--red)!important}.detail-table td[data-v-52d3f6fc],.detail-table th[data-v-52d3f6fc]{padding:12px 16px}.spm-checklist[data-v-52d3f6fc]{flex-direction:column;gap:6px;display:flex}.spm-check-item[data-v-52d3f6fc]{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--t);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:8px 12px;display:flex}.spm-check-item[data-v-52d3f6fc]:hover{background:var(--surface-2)}.spm-check-item.selected[data-v-52d3f6fc]{background:var(--accent-dim);border-color:var(--accent-ring)}.spm-check-box[data-v-52d3f6fc]{border:1.5px solid var(--border);background:var(--surface-2);width:16px;height:16px;transition:all var(--t);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.spm-check-item.selected .spm-check-box[data-v-52d3f6fc]{background:var(--accent);border-color:var(--accent)}.spm-check-mark[data-v-52d3f6fc]{color:#fff;font-size:.65rem;line-height:1}.spm-check-info[data-v-52d3f6fc]{flex-direction:column;gap:1px;display:flex}.spm-check-number[data-v-52d3f6fc]{color:var(--text);font-size:.85rem;font-weight:600;font-family:var(--font-mono)}.spm-check-detail[data-v-52d3f6fc]{color:var(--text-dim);font-size:.72rem}.spm-ref-chip[data-v-52d3f6fc]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);font-size:.72rem;font-family:var(--font-mono);white-space:nowrap;border-radius:100px;padding:1px 8px;display:inline-block}.spm-ref-chip-lg[data-v-52d3f6fc]{padding:3px 10px;font-size:.8rem}.spm-ref-btn[data-v-52d3f6fc]{cursor:pointer;transition:background var(--t), border-color var(--t)}.spm-ref-btn[data-v-52d3f6fc]:hover{border-color:var(--accent);background:#f9731638}.row-flagged td[data-v-52d3f6fc]{background:#eab3080d}.detail-spm-refs[data-v-52d3f6fc]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:10px 14px}.spm-items-section[data-v-52d3f6fc]{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;overflow:visible}.spm-items-header[data-v-52d3f6fc]{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.spm-form-item[data-v-52d3f6fc]{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.spm-form-item[data-v-52d3f6fc]:last-of-type{border-bottom:none}.spm-form-item-row[data-v-52d3f6fc]{align-items:flex-start;gap:10px;display:flex}.purchase-total-row[data-v-52d3f6fc]{background:var(--surface-2);color:var(--text-muted);justify-content:space-between;align-items:center;padding:10px 14px;font-size:.88rem;font-weight:600;display:flex}.selected-chip[data-v-52d3f6fc]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.chip-clear[data-v-52d3f6fc]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.option-disabled[data-v-52d3f6fc]{opacity:.45;align-items:center;display:flex;cursor:not-allowed!important}.lock-pill[data-v-52d3f6fc]{letter-spacing:.02em;white-space:nowrap;border:1px solid;border-radius:100px;align-items:center;padding:2px 9px;font-size:.7rem;font-weight:600;display:inline-flex}.lock-pill.locked[data-v-52d3f6fc]{color:#94a3b8;background:#94a3b81a;border-color:#94a3b840}.lock-pill.unlocked[data-v-52d3f6fc]{color:var(--green);background:#22c55e14;border-color:#22c55e40}.lock-btn-unlock[data-v-52d3f6fc]{color:var(--green)!important;background:#22c55e1a!important;border-color:#22c55e4d!important}.lock-btn-unlock[data-v-52d3f6fc]:hover{background:#22c55e33!important}.lock-btn-lock[data-v-52d3f6fc]{color:#94a3b8!important;background:#94a3b81a!important;border-color:#94a3b840!important}.lock-btn-lock[data-v-52d3f6fc]:hover{background:#94a3b82e!important}.no-spm-warning[data-v-52d3f6fc]{color:var(--yellow);border-radius:var(--radius);background:#eab3081a;border:1px solid #eab30840;margin-top:4px;padding:8px 12px;font-size:.82rem}.td-doc-actions[data-v-52d3f6fc]{white-space:nowrap}.btn-spm-doc[data-v-52d3f6fc]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);font-size:.75rem;font-weight:600;font-family:var(--font-sans);border:1px solid;align-items:center;gap:5px;margin-right:4px;padding:4px 10px;display:inline-flex}.btn-spm-doc.detail[data-v-52d3f6fc]{color:#6382ff;background:#6382ff1a;border-color:#6382ff4d}.btn-spm-doc.detail[data-v-52d3f6fc]:hover{background:#6382ff33;border-color:#6382ff80}.btn-spm-doc.upload[data-v-52d3f6fc]{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.btn-spm-doc.upload[data-v-52d3f6fc]:hover{background:var(--surface-3);color:var(--text)}.btn-spm-doc.lampiran[data-v-52d3f6fc]{color:#14b8a6;background:#14b8a61f;border-color:#14b8a64d}.btn-spm-doc.lampiran[data-v-52d3f6fc]:hover{background:#14b8a638;border-color:#14b8a680}.btn-spm-doc.edit[data-v-52d3f6fc]{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.btn-spm-doc.edit[data-v-52d3f6fc]:hover{background:var(--surface-3);color:var(--text)}.upload-current-info[data-v-52d3f6fc]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);margin-bottom:12px;padding:8px 12px;font-size:.8rem}.modal-detail-wrapper[data-v-52d3f6fc]{flex-direction:row;gap:0;width:92vw;max-width:920px;padding:0;transition:max-width .25s;display:flex;overflow:hidden}.modal-detail-wrapper.has-lampiran[data-v-52d3f6fc]{max-width:1280px}.modal-main-pane[data-v-52d3f6fc]{flex:1;min-width:0;max-height:88vh;padding:28px;overflow-y:auto}.modal-lampiran-pane[data-v-52d3f6fc]{border-left:1px solid var(--border);background:var(--surface-2);flex-shrink:0;width:340px;max-height:88vh;padding:20px;overflow-y:auto}.lampiran-pane-header[data-v-52d3f6fc]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lampiran-image[data-v-52d3f6fc]{border-radius:var(--radius);border:1px solid var(--border);width:100%;display:block}.lampiran-slide-enter-active[data-v-52d3f6fc],.lampiran-slide-leave-active[data-v-52d3f6fc]{transition:all .25s}.lampiran-slide-enter-from[data-v-52d3f6fc],.lampiran-slide-leave-to[data-v-52d3f6fc]{opacity:0;width:0;padding:0}.btn-teal[data-v-52d3f6fc]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a61f;border:1px solid #14b8a64d;padding:4px 12px;font-size:.78rem;font-weight:600}.btn-teal[data-v-52d3f6fc]:hover{background:#14b8a638}.btn-teal-active[data-v-52d3f6fc]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a640;border:1px solid #14b8a680;padding:4px 12px;font-size:.78rem;font-weight:600}.modal-close-x[data-v-52d3f6fc]{border:1px solid var(--border);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:all var(--t);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.modal-close-x[data-v-52d3f6fc]:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.spm-delete-col[data-v-52d3f6fc]{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.spm-delete-btn[data-v-52d3f6fc]{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);width:38px;height:38px;color:var(--text-dim);cursor:pointer;transition:all var(--t);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.spm-delete-btn[data-v-52d3f6fc]:hover{color:var(--red);background:#ef44441a;border-color:#ef444440}.period-bar[data-v-1b9b01d5]{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:18px;display:flex}.filter-tab[data-v-1b9b01d5]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 14px;display:inline-flex}.filter-tab[data-v-1b9b01d5]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-1b9b01d5]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.custom-range[data-v-1b9b01d5]{align-items:center;gap:6px;margin-left:4px;display:flex}.input-sm[data-v-1b9b01d5]{width:130px;padding:5px 10px;font-size:.8rem}.spm-ref-chip[data-v-1b9b01d5]{background:var(--accent-dim);border:1px solid var(--accent-ring);color:var(--accent);font-size:.72rem;font-family:var(--font-mono);white-space:nowrap;cursor:pointer;transition:all var(--t);border-radius:100px;margin-right:4px;padding:1px 8px;display:inline-block}.spm-ref-chip[data-v-1b9b01d5]:hover{border-color:var(--accent);background:#f9731633}.modal-wide[data-v-1b9b01d5]{width:90vw;max-width:700px}.detail-header[data-v-1b9b01d5]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.modal-close-x[data-v-1b9b01d5]{border:1px solid var(--border);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:all var(--t);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.modal-close-x[data-v-1b9b01d5]:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.modal-subtitle[data-v-1b9b01d5]{color:var(--text-muted);margin-top:-6px;margin-bottom:16px;font-size:.82rem}.detail-note[data-v-1b9b01d5]{background:var(--surface-2);border-radius:var(--radius);color:var(--text-muted);padding:10px 14px;font-size:.82rem}.text-dim[data-v-1b9b01d5]{color:var(--text-dim)}.invoice-chip[data-v-1b9b01d5]{background:var(--blue-dim);color:var(--blue);font-size:.7rem;font-family:var(--font-mono);cursor:pointer;transition:all var(--t);white-space:nowrap;border:1px solid #3b82f64d;border-radius:100px;padding:2px 8px;display:inline-block}.invoice-chip[data-v-1b9b01d5]:hover{border-color:var(--blue);background:#3b82f633}.btn-invoice-detail[data-v-1b9b01d5]{border-radius:var(--radius);border:1px solid var(--accent-ring);background:var(--accent-dim);color:var(--accent);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);white-space:nowrap;align-items:center;gap:4px;padding:4px 12px;display:inline-flex}.btn-invoice-detail[data-v-1b9b01d5]:hover{border-color:var(--accent);background:#f9731633}.modal-detail-wrapper[data-v-1b9b01d5]{background:var(--surface);border-radius:var(--radius-lg);flex-direction:row;gap:0;width:90vw;max-width:700px;padding:0;transition:max-width .25s;display:flex;overflow:hidden}.modal-detail-wrapper.has-lampiran[data-v-1b9b01d5]{max-width:1060px}.modal-main-pane[data-v-1b9b01d5]{flex:1;min-width:0;max-height:88vh;padding:28px;overflow-y:auto}.modal-lampiran-pane[data-v-1b9b01d5]{border-left:1px solid var(--border);background:var(--surface-2);flex-shrink:0;width:320px;max-height:88vh;padding:20px;overflow-y:auto}.lampiran-pane-header[data-v-1b9b01d5]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lampiran-image[data-v-1b9b01d5]{border-radius:var(--radius);border:1px solid var(--border);width:100%;display:block}.lampiran-slide-enter-active[data-v-1b9b01d5],.lampiran-slide-leave-active[data-v-1b9b01d5]{transition:all .25s}.lampiran-slide-enter-from[data-v-1b9b01d5],.lampiran-slide-leave-to[data-v-1b9b01d5]{opacity:0;width:0;padding:0}.btn-teal[data-v-1b9b01d5]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a61f;border:1px solid #14b8a64d;padding:4px 12px;font-size:.78rem;font-weight:600}.btn-teal[data-v-1b9b01d5]:hover{background:#14b8a638}.btn-teal-active[data-v-1b9b01d5]{color:#14b8a6;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--t);background:#14b8a640;border:1px solid #14b8a680;padding:4px 12px;font-size:.78rem;font-weight:600}.page-header[data-v-e0a59db3]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-title[data-v-e0a59db3]{color:var(--text);margin:0;font-size:1.25rem;font-weight:700}.page-sub[data-v-e0a59db3]{color:var(--text-dim);margin:2px 0 0;font-size:.78rem}.page-header-right[data-v-e0a59db3]{align-items:center;gap:8px;display:flex}.filter-bar[data-v-e0a59db3]{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.filter-tab[data-v-e0a59db3]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all var(--t);font-size:.78rem;font-family:var(--font-sans);background:0 0;border-radius:20px;padding:5px 14px}.filter-tab[data-v-e0a59db3]:hover{border-color:var(--accent);color:var(--accent)}.filter-tab.active[data-v-e0a59db3]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.empty-state[data-v-e0a59db3]{color:var(--text-dim);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.report-grid[data-v-e0a59db3]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.report-card[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--t), box-shadow var(--t);overflow:hidden}.report-card[data-v-e0a59db3]:hover{border-color:var(--accent);box-shadow:0 4px 20px #f973161a}.report-card-header[data-v-e0a59db3]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.report-date[data-v-e0a59db3]{flex-direction:column;display:flex}.report-day[data-v-e0a59db3]{font-family:var(--font-mono);color:var(--accent);font-size:1.6rem;font-weight:700;line-height:1}.report-month-year[data-v-e0a59db3]{color:var(--text-muted);margin-top:2px;font-size:.72rem}.report-card-body[data-v-e0a59db3]{padding:12px 16px}.report-meta[data-v-e0a59db3]{flex-wrap:wrap;gap:14px;margin-bottom:12px;display:flex}.meta-item[data-v-e0a59db3]{color:var(--text-muted);align-items:center;gap:5px;font-size:.78rem;display:flex}.report-stats[data-v-e0a59db3]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.stat-chip[data-v-e0a59db3]{background:var(--surface-2);border-radius:var(--radius-sm);text-align:center;padding:8px 6px}.stat-num[data-v-e0a59db3]{font-family:var(--font-mono);color:var(--text);font-size:1.1rem;font-weight:700;display:block}.stat-lbl[data-v-e0a59db3]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:.62rem;display:block}.report-card-actions[data-v-e0a59db3]{border-top:1px solid var(--border);gap:8px;padding:10px 16px;display:flex}.status-badge[data-v-e0a59db3]{letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:600;font-family:var(--font-mono);border-radius:20px;padding:3px 8px}.badge-dim[data-v-e0a59db3]{background:var(--surface-3);color:var(--text-muted)}.badge-yellow[data-v-e0a59db3]{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-green[data-v-e0a59db3]{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.badge-red[data-v-e0a59db3]{color:#ef4444;background:#ef44441f;border:1px solid #ef44444d}.detail-view[data-v-e0a59db3]{align-items:flex-start;gap:20px;display:flex}.detail-main[data-v-e0a59db3]{flex:1;min-width:0}.detail-side[data-v-e0a59db3]{flex-shrink:0;width:230px;position:sticky;top:20px}.detail-header[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px 24px}.detail-date-block[data-v-e0a59db3]{align-items:center;gap:14px;margin-bottom:10px;display:flex}.detail-date-big[data-v-e0a59db3]{font-family:var(--font-mono);color:var(--text);font-size:1.05rem;font-weight:700}.detail-meta-row[data-v-e0a59db3]{flex-wrap:wrap;gap:10px;display:flex}.meta-pill[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.76rem;display:flex}.detail-sections[data-v-e0a59db3]{flex-direction:column;gap:16px;display:flex}.detail-section[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px}.detail-section-title[data-v-e0a59db3]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.78rem;font-weight:700;font-family:var(--font-mono);margin:0 0 14px}.detail-row-2col[data-v-e0a59db3]{grid-template-columns:1fr 1fr;gap:16px;display:grid}.detail-table-wrap[data-v-e0a59db3]{overflow-x:auto}.detail-table[data-v-e0a59db3]{border-collapse:collapse;width:100%;font-size:.82rem}.detail-table th[data-v-e0a59db3]{text-align:left;background:var(--surface-2);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);padding:8px 12px;font-size:.7rem;font-weight:600}.detail-table td[data-v-e0a59db3]{color:var(--text-muted);border-bottom:1px solid var(--border);padding:9px 12px;font-size:.82rem}.detail-table tr:last-child td[data-v-e0a59db3]{border-bottom:none}.labor-chips[data-v-e0a59db3]{flex-wrap:wrap;gap:10px;display:flex}.labor-chip[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;min-width:70px;padding:10px 16px;display:flex}.labor-count[data-v-e0a59db3]{font-family:var(--font-mono);color:var(--accent);font-size:1.4rem;font-weight:700}.labor-role[data-v-e0a59db3]{color:var(--text-muted);text-align:center;margin-top:4px;font-size:.72rem}.labor-satuan[data-v-e0a59db3]{color:var(--text-dim);margin-top:2px;font-size:.68rem;font-style:italic}.detail-text[data-v-e0a59db3]{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.6}.detail-admin-actions[data-v-e0a59db3]{gap:10px;margin-top:20px;display:flex}.photo-gallery[data-v-e0a59db3]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.photo-gallery--edit[data-v-e0a59db3]{margin-top:16px}.photo-card[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color var(--t);position:relative;overflow:hidden}.photo-card[data-v-e0a59db3]:hover{border-color:var(--accent)}.photo-thumb[data-v-e0a59db3]{aspect-ratio:4/3;overflow:hidden}.photo-thumb img[data-v-e0a59db3]{object-fit:cover;width:100%;height:100%;display:block}.photo-desc[data-v-e0a59db3]{color:var(--text-muted);margin:0;padding:7px 8px;font-size:.72rem;line-height:1.4}.photo-delete-btn[data-v-e0a59db3]{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.9rem;line-height:1;display:flex;position:absolute;top:6px;right:6px}.side-card[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.side-card-title[data-v-e0a59db3]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.72rem;font-weight:700;font-family:var(--font-mono);margin-bottom:12px}.side-info-row[data-v-e0a59db3]{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.side-label[data-v-e0a59db3]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:.68rem;font-weight:600}.side-val[data-v-e0a59db3]{color:var(--text-muted);font-size:.8rem;line-height:1.3}.side-val.mono[data-v-e0a59db3]{font-family:var(--font-mono);font-size:.75rem}.side-divider[data-v-e0a59db3]{background:var(--border);height:1px;margin:12px 0}.side-stats[data-v-e0a59db3]{grid-template-columns:1fr 1fr;gap:6px;display:grid}.side-stat[data-v-e0a59db3]{background:var(--surface-2);border-radius:var(--radius-sm);text-align:center;padding:8px 6px}.side-stat-num[data-v-e0a59db3]{font-family:var(--font-mono);color:var(--accent);font-size:1.1rem;font-weight:700;display:block}.side-stat-lbl[data-v-e0a59db3]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:.6rem;display:block}.side-action-btn[data-v-e0a59db3]{justify-content:center;width:100%;margin-top:6px}.side-progress-list[data-v-e0a59db3]{flex-direction:column;gap:8px;display:flex}.side-progress-item[data-v-e0a59db3]{color:var(--text-dim);align-items:center;gap:8px;font-size:.79rem;display:flex}.side-progress-item.done[data-v-e0a59db3]{color:var(--text-muted)}.side-check[data-v-e0a59db3]{flex-shrink:0}.side-progress-item span[data-v-e0a59db3]:nth-child(2){flex:1}.side-req[data-v-e0a59db3]{color:var(--accent);background:var(--accent-dim);border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:.65rem}.side-count[data-v-e0a59db3]{font-size:.68rem;font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);border-radius:10px;flex-shrink:0;padding:1px 7px;font-weight:700}.print-header[data-v-e0a59db3],.print-signature[data-v-e0a59db3]{display:none}.report-form-layout[data-v-e0a59db3]{align-items:flex-start;gap:20px;display:flex}.report-form[data-v-e0a59db3]{flex:1;min-width:0}.form-side[data-v-e0a59db3]{flex-shrink:0;width:230px;position:sticky;top:20px}.form-title[data-v-e0a59db3]{color:var(--text);margin:0 0 20px;font-size:1.1rem;font-weight:700}.form-section[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;padding:18px 20px}.form-section-header[data-v-e0a59db3]{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.form-section-title[data-v-e0a59db3]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.78rem;font-weight:700;font-family:var(--font-mono);margin:0}.form-empty-hint[data-v-e0a59db3]{color:var(--text-dim);padding:8px 0;font-size:.8rem;font-style:italic}.form-grid-2[data-v-e0a59db3]{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-group[data-v-e0a59db3]{flex-direction:column;gap:6px;display:flex}.form-group label[data-v-e0a59db3]{color:var(--text-muted);font-size:.75rem;font-weight:600}.form-input[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:.83rem;font-family:var(--font-sans);transition:border-color var(--t);box-sizing:border-box;outline:none;width:100%;padding:8px 10px}.form-input[data-v-e0a59db3]:focus{border-color:var(--accent)}textarea.form-input[data-v-e0a59db3]{resize:vertical;min-height:70px}.req[data-v-e0a59db3]{color:var(--accent)}.form-item-card[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;padding:12px 14px}.form-item-card[data-v-e0a59db3]:last-child{margin-bottom:0}.form-item-row-inner[data-v-e0a59db3]{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.btn-remove[data-v-e0a59db3]{background:var(--red-dim);width:28px;height:28px;color:var(--red);cursor:pointer;transition:background var(--t);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;margin-bottom:1px;font-size:1.1rem;line-height:1;display:flex}.btn-remove[data-v-e0a59db3]:hover{background:#ef444440}.form-actions[data-v-e0a59db3]{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:8px;padding-top:16px;display:flex}.form-info-note[data-v-e0a59db3]{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:6px;margin-bottom:12px;padding:8px 12px;font-size:.78rem;display:flex}.photo-upload-area[data-v-e0a59db3]{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-dim);transition:border-color var(--t);cursor:default;flex-direction:column;align-items:center;gap:10px;padding:28px;font-size:.83rem;display:flex}.photo-upload-area[data-v-e0a59db3]:hover{border-color:var(--accent);color:var(--text-muted)}.pending-photos[data-v-e0a59db3]{flex-direction:column;gap:10px;margin-top:14px;display:flex}.pending-photo-row[data-v-e0a59db3]{background:var(--surface-2);border-radius:var(--radius);border:1px solid var(--border);align-items:flex-end;gap:10px;padding:10px;display:flex}.pending-thumb[data-v-e0a59db3]{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:60px;height:60px}.lightbox[data-v-e0a59db3]{z-index:9999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-close[data-v-e0a59db3]{color:#fff;cursor:pointer;background:0 0;border:none;font-size:2rem;line-height:1;position:absolute;top:16px;right:20px}.lightbox-inner[data-v-e0a59db3]{text-align:center;max-width:90vw;max-height:90vh}.lightbox-inner img[data-v-e0a59db3]{border-radius:4px;max-width:100%;max-height:80vh;display:block}.lightbox-caption[data-v-e0a59db3]{color:#ffffffbf;margin-top:12px;font-size:.85rem}.searchable-select[data-v-e0a59db3]{position:relative}.ss-trigger[data-v-e0a59db3]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--t);justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:8px 10px;display:flex}.searchable-select.open .ss-trigger[data-v-e0a59db3],.ss-trigger[data-v-e0a59db3]:hover{border-color:var(--accent)}.ss-value[data-v-e0a59db3]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.83rem;overflow:hidden}.ss-placeholder[data-v-e0a59db3]{color:var(--text-dim);flex:1;font-size:.83rem}.ss-caret[data-v-e0a59db3]{color:var(--text-muted);transition:transform var(--t);flex-shrink:0}.searchable-select.open .ss-caret[data-v-e0a59db3]{transform:rotate(180deg)}.ss-dropdown[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);z-index:200;max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000026}.ss-dropdown-sm[data-v-e0a59db3]{max-height:120px}.ss-search-wrap[data-v-e0a59db3]{border-bottom:1px solid var(--border);background:var(--surface);padding:8px;position:sticky;top:0}.ss-search[data-v-e0a59db3]{box-sizing:border-box;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);font-size:.8rem;font-family:var(--font-sans);outline:none;padding:6px 10px}.ss-search[data-v-e0a59db3]:focus{border-color:var(--accent)}.ss-option[data-v-e0a59db3]{color:var(--text-muted);cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.ss-option[data-v-e0a59db3]:hover{background:var(--surface-2);color:var(--text)}.ss-option.selected[data-v-e0a59db3]{color:var(--accent);background:var(--accent-dim)}.ss-option-tag[data-v-e0a59db3]{color:var(--text-dim);background:var(--surface-3);border:1px solid var(--border);border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:.7rem}.ss-empty[data-v-e0a59db3]{text-align:center;color:var(--text-dim);padding:12px;font-size:.78rem}.modal-overlay[data-v-e0a59db3]{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal[data-v-e0a59db3]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:440px;padding:24px;box-shadow:0 20px 60px #0000004d}.confirm-modal .modal-title[data-v-e0a59db3]{color:var(--text);margin:0 0 12px;font-size:1rem;font-weight:700}.confirm-body[data-v-e0a59db3]{color:var(--text-muted);margin:0 0 16px;font-size:.85rem;line-height:1.55}.modal-actions[data-v-e0a59db3]{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.delete-error-box[data-v-e0a59db3]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-e0a59db3]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-e0a59db3]{color:var(--text);font-size:.8rem;line-height:1.45}.delete-error-detail[data-v-e0a59db3]{color:var(--text-dim);margin-top:6px;font-size:.75rem;line-height:1.45}.btn[data-v-e0a59db3]{border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem;font-weight:600;font-family:var(--font-sans);transition:all var(--t);border:none;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.btn[data-v-e0a59db3]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-e0a59db3]{background:var(--accent);color:#fff}.btn-primary[data-v-e0a59db3]:hover:not(:disabled){filter:brightness(1.1)}.btn-secondary[data-v-e0a59db3]{background:var(--surface-3);color:var(--text);border:1px solid var(--border)}.btn-secondary[data-v-e0a59db3]:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-ghost[data-v-e0a59db3]{color:var(--text-muted);border:1px solid var(--border);background:0 0}.btn-ghost[data-v-e0a59db3]:hover:not(:disabled){color:var(--text);border-color:var(--text-muted)}.btn-success[data-v-e0a59db3]{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.btn-success[data-v-e0a59db3]:hover:not(:disabled){background:#22c55e40}.btn-danger[data-v-e0a59db3]{color:#ef4444;background:#ef444426;border:1px solid #ef44444d}.btn-danger[data-v-e0a59db3]:hover:not(:disabled){background:#ef444440}.btn-danger-ghost[data-v-e0a59db3]{color:#ef4444;background:0 0;border:1px solid #ef444459}.btn-danger-ghost[data-v-e0a59db3]:hover:not(:disabled){background:#ef44441a}.btn-sm[data-v-e0a59db3]{padding:5px 11px;font-size:.76rem}.combobox[data-v-e0a59db3]{position:relative}.combobox-input-wrap[data-v-e0a59db3]{display:flex;position:relative}.combobox-input[data-v-e0a59db3]{padding-right:32px!important}.combobox-caret-btn[data-v-e0a59db3]{cursor:pointer;width:30px;color:var(--text-muted);transition:color var(--t);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.combobox-caret-btn[data-v-e0a59db3]:hover{color:var(--accent)}.combobox.open .combobox-caret-btn svg[data-v-e0a59db3]{transform:rotate(180deg)}.rab-link-badge[data-v-e0a59db3]{color:var(--accent);background:var(--accent-dim);border:1px solid #f9731640;border-radius:20px;align-items:center;gap:4px;max-width:100%;margin-top:5px;padding:2px 8px 2px 6px;font-size:.72rem;display:inline-flex;overflow:hidden}.rab-link-badge svg[data-v-e0a59db3]{flex-shrink:0}.rab-link-clear[data-v-e0a59db3]{cursor:pointer;color:var(--accent);opacity:.65;background:0 0;border:none;flex-shrink:0;padding:0 0 0 2px;font-size:.9rem;line-height:1}.rab-link-clear[data-v-e0a59db3]:hover{opacity:1}@media (width<=900px){.detail-view[data-v-e0a59db3]{flex-direction:column}.detail-side[data-v-e0a59db3]{width:100%;position:static}.report-form-layout[data-v-e0a59db3]{flex-direction:column}.form-side[data-v-e0a59db3]{width:100%;position:static}}@media (width<=768px){.report-grid[data-v-e0a59db3],.form-grid-2[data-v-e0a59db3],.detail-row-2col[data-v-e0a59db3]{grid-template-columns:1fr}.form-item-row-inner[data-v-e0a59db3]{flex-direction:column}.form-item-row-inner .form-group[data-v-e0a59db3]{width:100%!important;min-width:unset!important;max-width:unset!important}.report-stats[data-v-e0a59db3]{grid-template-columns:repeat(2,1fr)}}@page{size:A4 portrait;margin:1.6cm 2cm 1.8cm}@media print{body.daily-report-print,body.daily-report-print *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;font-family:Arial,Helvetica Neue,Helvetica,sans-serif!important}body.daily-report-print{color:#1a1a1a!important;background:#fff!important}body.daily-report-print .sidebar,body.daily-report-print .top-bar,body.daily-report-print .page-header,body.daily-report-print .filter-bar,body.daily-report-print .detail-admin-actions,body.daily-report-print .detail-header,body.daily-report-print .no-print,body.daily-report-print .photo-delete-btn,body.daily-report-print .lightbox,body.daily-report-print .modal-overlay{display:none!important}body.daily-report-print .app-shell,body.daily-report-print .main-area{height:auto!important;display:block!important;overflow:visible!important}body.daily-report-print .page-content{height:auto!important;padding:0!important;overflow:visible!important}body.daily-report-print .detail-view{max-width:none!important;display:block!important}body.daily-report-print .detail-main{flex:none!important}body.daily-report-print .detail-sections{gap:0!important}body.daily-report-print .print-header{border:none;margin-bottom:18pt;padding:0;display:block!important}body.daily-report-print .print-header-top{border-bottom:3pt solid #c0392b;justify-content:space-between;align-items:flex-start;margin-bottom:10pt;padding-bottom:10pt;display:flex}body.daily-report-print .print-brand-block{flex:none}body.daily-report-print .print-brand-name{letter-spacing:.12em;margin:0;line-height:1;color:#c0392b!important;font-size:18pt!important;font-weight:900!important}body.daily-report-print .print-brand-sub{letter-spacing:.08em;text-transform:uppercase;margin-top:3pt;color:#777!important;font-size:7pt!important;font-weight:400!important}body.daily-report-print .print-doc-title-block{text-align:right;flex:none}body.daily-report-print .print-doc-title{letter-spacing:.06em;text-transform:uppercase;margin:0;color:#1a1a1a!important;font-size:15pt!important;font-weight:800!important}body.daily-report-print .print-header-divider{display:none}body.daily-report-print .print-header-meta{grid-template-columns:1fr 1fr;gap:2pt 24pt;padding:4pt 0 0;display:grid!important}body.daily-report-print .print-meta-row{gap:0;line-height:1.7;display:flex;color:#333!important;font-size:8.5pt!important}body.daily-report-print .print-meta-key{flex-shrink:0;width:80pt;color:#444!important;font-weight:600!important}body.daily-report-print .print-meta-sep{flex-shrink:0;width:10pt;color:#888!important}body.daily-report-print .print-meta-val{color:#111!important;font-weight:400!important}body.daily-report-print .print-meta-status{text-transform:uppercase;letter-spacing:.05em;color:#c0392b!important;font-weight:700!important}body.daily-report-print .detail-sections{counter-reset:section-num}body.daily-report-print .detail-section{break-inside:avoid;page-break-inside:avoid;counter-increment:section-num;background:0 0!important;border:none!important;border-bottom:1pt solid #ddd!important;border-radius:0!important;margin:0!important;padding:11pt 0!important}body.daily-report-print .detail-section:last-child{border-bottom:none!important}body.daily-report-print .detail-section-title{text-transform:uppercase!important;letter-spacing:.1em!important;color:#c0392b!important;border-bottom:.5pt solid #e8c4c4!important;margin:0 0 8pt!important;padding:0 0 4pt!important;font-family:Arial,sans-serif!important;font-size:8pt!important;font-weight:800!important}body.daily-report-print .detail-section-title:before{content:counter(section-num) ".  ";color:#c0392b;font-weight:900}body.daily-report-print .detail-row-2col{counter-increment:section-num;border-bottom:1pt solid #ddd;padding:11pt 0;grid-template-columns:1fr 1fr!important;gap:16pt!important;display:grid!important}body.daily-report-print .detail-row-2col .detail-section{counter-increment:none;border:none!important;margin:0!important;padding:0!important}body.daily-report-print .detail-row-2col .detail-section-title:before{content:""}body.daily-report-print .detail-table-wrap{overflow:visible!important}body.daily-report-print .detail-table{border-collapse:collapse!important;width:100%!important;font-size:8pt!important}body.daily-report-print .detail-table th{color:#222!important;text-transform:uppercase!important;letter-spacing:.05em!important;text-align:left!important;background:#f0f0f0!important;border:.75pt solid #bbb!important;padding:5pt 7pt!important;font-size:7.5pt!important;font-weight:700!important}body.daily-report-print .detail-table td{color:#222!important;vertical-align:top!important;border:.75pt solid #bbb!important;padding:5pt 7pt!important;font-size:8pt!important}body.daily-report-print .detail-table tr:nth-child(2n) td{background:#fafafa!important}body.daily-report-print .labor-chips{border-collapse:collapse!important;width:100%!important;display:table!important}body.daily-report-print .labor-chip{min-width:unset!important;flex-direction:unset!important;align-items:unset!important;background:0 0!important;border:none!important;padding:0!important;display:table-row!important}body.daily-report-print .labor-count,body.daily-report-print .labor-role,body.daily-report-print .labor-satuan{vertical-align:middle!important;border:.75pt solid #bbb!important;padding:4pt 7pt!important;font-size:8pt!important;display:table-cell!important}body.daily-report-print .labor-count{width:50pt;color:#222!important;text-align:center!important;font-size:8pt!important;font-weight:700!important}body.daily-report-print .labor-role{color:#222!important;text-align:left!important;margin-top:0!important;font-size:8pt!important;font-weight:600!important}body.daily-report-print .labor-satuan{color:#555!important;margin-top:0!important;font-size:7.5pt!important;font-style:normal!important}body.daily-report-print .labor-chips:before{content:"";display:table-row}body.daily-report-print .detail-text{min-height:36pt;color:#333!important;background:#fafafa!important;border:.75pt solid #ddd!important;border-radius:0!important;margin:0!important;padding:7pt 9pt!important;font-size:8.5pt!important;line-height:1.6!important}body.daily-report-print .photo-gallery{grid-template-columns:repeat(3,1fr)!important;gap:8pt!important;display:grid!important}body.daily-report-print .photo-card{break-inside:avoid;cursor:default!important;background:0 0!important;border:.75pt solid #bbb!important;border-radius:0!important}body.daily-report-print .photo-thumb{aspect-ratio:4/3!important}body.daily-report-print .photo-desc{color:#444!important;text-align:center!important;border-top:.5pt solid #ddd!important;padding:4pt 5pt!important;font-size:7pt!important}body.daily-report-print .print-signature{page-break-inside:avoid;border-top:1.5pt solid #c0392b;margin-top:20pt;padding-top:12pt;display:block!important}body.daily-report-print .print-sig-header{margin-bottom:14pt;text-transform:uppercase!important;letter-spacing:.1em!important;color:#c0392b!important;font-size:8pt!important;font-weight:800!important}body.daily-report-print .print-sig-row{grid-template-columns:repeat(3,1fr)!important;gap:16pt!important;display:grid!important}body.daily-report-print .print-sig-block{text-align:center}body.daily-report-print .print-sig-heading{color:#333!important;margin:0 0 2pt!important;font-size:8pt!important;font-weight:400!important}body.daily-report-print .print-sig-space{height:44pt}body.daily-report-print .print-sig-line{border-bottom:.75pt solid #333;width:70%;margin:0 auto 4pt}body.daily-report-print .print-sig-name{color:#111!important;margin:0!important;font-size:8pt!important;font-weight:700!important}body.daily-report-print .print-sig-role{text-transform:uppercase;letter-spacing:.06em;color:#666!important;margin:2pt 0 0!important;font-size:7pt!important}body.daily-report-print .status-badge{display:none!important}}.confirm-body[data-v-f2f312fe]{color:var(--text-muted);margin:0 0 4px;font-size:.85rem;line-height:1.55}.delete-error-box[data-v-f2f312fe]{border-radius:var(--radius);background:#dc354514;border:1px solid #dc354540;margin-top:10px;padding:10px 12px}.delete-error-title[data-v-f2f312fe]{color:#e05c6a;margin-bottom:4px;font-size:.78rem;font-weight:700}.delete-error-message[data-v-f2f312fe]{color:var(--text);font-size:.8rem;line-height:1.45}.page-header[data-v-f2f312fe]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-title[data-v-f2f312fe]{color:var(--text);margin:0;font-size:1.25rem;font-weight:700}.page-sub[data-v-f2f312fe]{color:var(--text-dim);margin:2px 0 0;font-size:.78rem}.page-header-right[data-v-f2f312fe]{align-items:center;gap:8px;display:flex}.tab-nav[data-v-f2f312fe]{border-bottom:1px solid var(--border);gap:0;margin-bottom:20px;display:flex}.admin-tab[data-v-f2f312fe]{color:var(--text-muted);cursor:pointer;font-size:.82rem;font-weight:500;font-family:var(--font-sans);transition:all var(--t);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 20px}.admin-tab.active[data-v-f2f312fe]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.admin-tab[data-v-f2f312fe]:hover:not(.active){color:var(--text)}.toolbar[data-v-f2f312fe]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.search-wrap[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;align-items:center;gap:8px;max-width:320px;padding:0 10px;display:flex}.search-icon[data-v-f2f312fe]{color:var(--text-dim);flex-shrink:0}.search-input[data-v-f2f312fe]{color:var(--text);font-size:.82rem;font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;padding:7px 0}.filter-pills[data-v-f2f312fe]{gap:6px;display:flex}.filter-tab[data-v-f2f312fe]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all var(--t);font-size:.75rem;font-family:var(--font-sans);background:0 0;border-radius:20px;padding:5px 12px}.filter-tab.active[data-v-f2f312fe]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.filter-tab[data-v-f2f312fe]:hover:not(.active){border-color:var(--accent);color:var(--accent)}.summary-kpi-row[data-v-f2f312fe],.opname-summary-row[data-v-f2f312fe]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:20px;display:grid}.kpi-card[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:16px}.kpi-num[data-v-f2f312fe]{font-family:var(--font-mono);color:var(--text);font-size:1.8rem;font-weight:700;display:block}.kpi-lbl[data-v-f2f312fe]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:.68rem;display:block}.kpi-green .kpi-num[data-v-f2f312fe]{color:#22c55e}.kpi-red .kpi-num[data-v-f2f312fe]{color:#ef4444}.kpi-yellow .kpi-num[data-v-f2f312fe]{color:#f59e0b}.table-wrap[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}.data-table[data-v-f2f312fe]{border-collapse:collapse;width:100%;font-size:.82rem}.data-table th[data-v-f2f312fe]{text-align:left;background:var(--surface-2);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px;font-size:.7rem;font-weight:600}.data-table td[data-v-f2f312fe]{color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px}.data-table tr:last-child td[data-v-f2f312fe]{border-bottom:none}.data-table tr.row-warn td[data-v-f2f312fe]{background:#f59e0b0a}.num-col[data-v-f2f312fe]{text-align:right}.name-cell[data-v-f2f312fe]{color:var(--text);white-space:normal;max-width:200px;font-weight:500}.text-green[data-v-f2f312fe]{color:#22c55e;font-weight:600}.text-red[data-v-f2f312fe]{color:#ef4444;font-weight:600}.text-muted[data-v-f2f312fe]{color:var(--text-muted)}.type-badge[data-v-f2f312fe]{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:2px 7px;font-size:.65rem;font-weight:600}.badge-blue[data-v-f2f312fe]{color:#60a5fa;background:#3b82f626}.badge-green[data-v-f2f312fe]{color:#22c55e;background:#22c55e1f}.badge-yellow[data-v-f2f312fe]{color:#f59e0b;background:#f59e0b26}.stock-badge[data-v-f2f312fe]{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;padding:2px 8px;font-size:.65rem;font-weight:700}.stock-ok[data-v-f2f312fe]{color:#22c55e;background:#22c55e1f}.stock-empty[data-v-f2f312fe]{color:#ef4444;background:#ef44441a}.empty-state[data-v-f2f312fe]{color:var(--text-dim);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.opname-list[data-v-f2f312fe]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.opname-card[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--t), box-shadow var(--t);overflow:hidden}.opname-card[data-v-f2f312fe]:hover{border-color:var(--accent);box-shadow:0 4px 20px #f973161a}.opname-card-header[data-v-f2f312fe]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.opname-id[data-v-f2f312fe]{flex-direction:column;display:flex}.opname-code[data-v-f2f312fe]{font-family:var(--font-mono);color:var(--accent);font-size:1rem;font-weight:700}.opname-date[data-v-f2f312fe]{color:var(--text-dim);margin-top:2px;font-size:.72rem}.opname-card-body[data-v-f2f312fe]{padding:12px 16px}.opname-stats[data-v-f2f312fe]{color:var(--text-muted);flex-wrap:wrap;gap:14px;font-size:.78rem;display:flex}.opname-notes[data-v-f2f312fe]{color:var(--text-dim);margin:8px 0 0;font-size:.78rem;font-style:italic}.opname-card-actions[data-v-f2f312fe]{border-top:1px solid var(--border);gap:8px;padding:10px 16px;display:flex}.status-badge[data-v-f2f312fe]{letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:600;font-family:var(--font-mono);border-radius:20px;padding:3px 8px}.badge-yellow[data-v-f2f312fe]{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-green[data-v-f2f312fe]{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.badge-red[data-v-f2f312fe]{color:#ef4444;background:#ef44441f;border:1px solid #ef44444d}.badge-dim[data-v-f2f312fe]{background:var(--surface-3);color:var(--text-muted)}.opname-detail[data-v-f2f312fe]{max-width:1000px}.detail-header[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px 24px}.detail-title-row[data-v-f2f312fe]{align-items:center;gap:14px;margin-bottom:10px;display:flex}.detail-code[data-v-f2f312fe]{font-family:var(--font-mono);color:var(--text);font-size:1.1rem;font-weight:700}.detail-meta-row[data-v-f2f312fe]{flex-wrap:wrap;gap:10px;margin-bottom:8px;display:flex}.meta-pill[data-v-f2f312fe]{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.76rem;display:flex}.detail-notes[data-v-f2f312fe]{color:var(--text-muted);margin:8px 0 0;font-size:.82rem}.detail-admin-actions[data-v-f2f312fe]{gap:10px;margin-top:20px;display:flex}.opname-form[data-v-f2f312fe]{max-width:1000px}.form-title[data-v-f2f312fe]{color:var(--text);margin:0 0 20px;font-size:1.1rem;font-weight:700}.form-section[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;padding:18px 20px}.form-section-header[data-v-f2f312fe]{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.form-section-title[data-v-f2f312fe]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.78rem;font-weight:700;font-family:var(--font-mono);margin:0}.form-section-hint[data-v-f2f312fe]{color:var(--text-dim);font-size:.72rem;font-style:italic}.form-empty-hint[data-v-f2f312fe]{color:var(--text-dim);padding:8px 0;font-size:.8rem;font-style:italic}.form-group[data-v-f2f312fe]{flex-direction:column;gap:6px;display:flex}.form-group label[data-v-f2f312fe]{color:var(--text-muted);font-size:.75rem;font-weight:600}.form-input[data-v-f2f312fe]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:.83rem;font-family:var(--font-sans);transition:border-color var(--t);outline:none;width:100%;padding:8px 10px}.form-input[data-v-f2f312fe]:focus{border-color:var(--accent)}.form-input.compact[data-v-f2f312fe]{padding:5px 7px;font-size:.78rem}textarea.form-input[data-v-f2f312fe]{resize:vertical;min-height:60px}.opname-item-header[data-v-f2f312fe],.opname-item-row[data-v-f2f312fe]{grid-template-columns:2fr 60px 90px 100px 80px 130px 1fr 32px;align-items:center;gap:8px;padding:6px 4px;font-size:.78rem;display:grid}.opname-item-header[data-v-f2f312fe]{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);margin-bottom:4px;padding-bottom:8px;font-size:.67rem}.opname-item-row[data-v-f2f312fe]{border-bottom:1px solid var(--border)}.opname-item-row[data-v-f2f312fe]:last-child{border-bottom:none}.col-name[data-v-f2f312fe]{color:var(--text);font-weight:500}.col-sys[data-v-f2f312fe]{color:var(--text-muted);text-align:right;padding-right:4px}.suggestion-list[data-v-f2f312fe]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;overflow:hidden}.suggestion-item[data-v-f2f312fe]{cursor:pointer;transition:background var(--t);align-items:center;gap:14px;padding:9px 14px;font-size:.82rem;display:flex}.suggestion-item[data-v-f2f312fe]:hover{background:var(--surface-2)}.suggestion-name[data-v-f2f312fe]{color:var(--text);flex:1;font-weight:500}.suggestion-unit[data-v-f2f312fe]{color:var(--text-dim);font-size:.72rem}.suggestion-stock[data-v-f2f312fe]{color:var(--text-muted);font-size:.72rem;font-family:var(--font-mono)}.btn-remove[data-v-f2f312fe]{background:var(--red-dim);width:28px;height:28px;color:var(--red);cursor:pointer;transition:background var(--t);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex}.btn-remove[data-v-f2f312fe]:hover{background:#ef444440}.form-actions[data-v-f2f312fe]{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:8px;padding-top:16px;display:flex}.btn[data-v-f2f312fe]{border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem;font-weight:600;font-family:var(--font-sans);transition:all var(--t);border:none;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.btn[data-v-f2f312fe]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-f2f312fe]{background:var(--accent);color:#fff}.btn-primary[data-v-f2f312fe]:hover:not(:disabled){filter:brightness(1.1)}.btn-secondary[data-v-f2f312fe]{background:var(--surface-3);color:var(--text);border:1px solid var(--border)}.btn-secondary[data-v-f2f312fe]:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-ghost[data-v-f2f312fe]{color:var(--text-muted);border:1px solid var(--border);background:0 0}.btn-ghost[data-v-f2f312fe]:hover:not(:disabled){color:var(--text);border-color:var(--text-muted)}.btn-success[data-v-f2f312fe]{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.btn-success[data-v-f2f312fe]:hover:not(:disabled){background:#22c55e40}.btn-danger-ghost[data-v-f2f312fe]{color:#ef4444;background:0 0;border:1px solid #ef444459}.btn-danger-ghost[data-v-f2f312fe]:hover:not(:disabled){background:#ef44441a}.btn-sm[data-v-f2f312fe]{padding:5px 11px;font-size:.76rem}@media (width<=640px){.opname-list[data-v-f2f312fe]{grid-template-columns:1fr}.summary-kpi-row[data-v-f2f312fe],.opname-summary-row[data-v-f2f312fe],.opname-item-header[data-v-f2f312fe],.opname-item-row[data-v-f2f312fe]{grid-template-columns:1fr 1fr}}.admin-tabs[data-v-bac90158]{border-bottom:1px solid var(--border);gap:0;margin-bottom:28px;display:flex}.admin-tab[data-v-bac90158]{font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;transition:color var(--t), border-color var(--t);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 22px;font-size:.82rem;font-weight:500}.admin-tab[data-v-bac90158]:hover{color:var(--text)}.admin-tab.active[data-v-bac90158]{color:var(--accent);border-bottom-color:var(--accent)}.user-cell[data-v-bac90158]{align-items:center;gap:10px;display:flex}.user-avatar[data-v-bac90158]{background:var(--surface-3);border:1px solid var(--border-2);width:30px;height:30px;font-size:.6rem;font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-avatar.role-admin[data-v-bac90158]{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.user-avatar.role-manager[data-v-bac90158]{border-color:var(--blue);color:var(--blue);background:var(--blue-dim)}.user-avatar.role-employee[data-v-bac90158]{border-color:var(--green);color:var(--green);background:var(--green-dim)}.user-name[data-v-bac90158]{color:var(--text);font-size:.83rem}.self-badge[data-v-bac90158]{background:var(--surface-3);color:var(--text-dim);font-size:.65rem;font-family:var(--font-mono);letter-spacing:.04em;border-radius:100px;padding:2px 6px}.section-note[data-v-bac90158]{color:var(--text-muted);margin-bottom:20px;font-size:.82rem}.roles-grid[data-v-bac90158]{grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;display:grid}.role-card[data-v-bac90158]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);border-left-width:3px;padding:20px}.role-card--admin[data-v-bac90158]{border-left-color:var(--accent)}.role-card--manajer[data-v-bac90158]{border-left-color:var(--blue)}.role-card--pengamat[data-v-bac90158]{border-left-color:var(--green)}.role-card-head[data-v-bac90158]{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px;display:flex}.role-title[data-v-bac90158]{font-family:var(--font-mono);letter-spacing:.04em;margin-bottom:3px;font-size:.95rem;font-weight:700}.role-title--admin[data-v-bac90158]{color:var(--accent)}.role-title--manajer[data-v-bac90158]{color:var(--blue)}.role-title--pengamat[data-v-bac90158]{color:var(--green)}.role-desc[data-v-bac90158]{color:var(--text-muted);font-size:.75rem;line-height:1.4}.role-lock[data-v-bac90158]{color:var(--text-dim);flex-shrink:0;margin-top:2px}.role-user-count[data-v-bac90158]{color:var(--text-dim);font-size:.72rem;font-family:var(--font-mono);letter-spacing:.04em;border-top:1px solid var(--border);margin-bottom:14px;padding-top:8px}.role-perms[data-v-bac90158]{flex-wrap:wrap;gap:5px;display:flex}.perm-chip[data-v-bac90158]{font-size:.68rem;font-family:var(--font-sans);border-radius:100px;padding:3px 8px;font-weight:500}.perm-chip--on.perm-chip--admin[data-v-bac90158]{background:var(--accent-dim);color:var(--accent)}.perm-chip--on.perm-chip--manajer[data-v-bac90158]{background:var(--blue-dim);color:var(--blue)}.perm-chip--on.perm-chip--pengamat[data-v-bac90158]{background:var(--green-dim);color:var(--green)}.perm-chip--off[data-v-bac90158]{background:var(--surface-3);color:var(--text-dim)}.modal-wide[data-v-bac90158]{max-width:520px}.perm-matrix[data-v-bac90158]{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:4px;overflow:hidden}.perm-matrix-header[data-v-bac90158]{background:var(--surface-2);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);grid-template-columns:1fr 64px 64px;gap:8px;padding:6px 14px;font-size:.68rem;font-weight:600;display:grid}.perm-col-head[data-v-bac90158]{text-align:center}.perm-matrix-row[data-v-bac90158]{border-bottom:1px solid var(--border);transition:background var(--t);grid-template-columns:1fr 64px 64px;align-items:center;gap:8px;padding:8px 14px;display:grid}.perm-matrix-row[data-v-bac90158]:last-child{border-bottom:none}.perm-matrix-row[data-v-bac90158]:hover{background:var(--surface-2)}.perm-menu-label[data-v-bac90158]{color:var(--text);font-size:.82rem}.perm-toggle-cell[data-v-bac90158]{cursor:pointer;justify-content:center;align-items:center;display:flex}.perm-no-edit[data-v-bac90158]{text-align:center;color:var(--text-dim);font-size:.8rem;display:block}.perm-checkbox[data-v-bac90158]{accent-color:var(--accent);cursor:pointer;width:14px;height:14px}.toggle-row[data-v-bac90158]{align-items:center;gap:10px;display:flex}.toggle[data-v-bac90158]{cursor:pointer;align-items:center;display:inline-flex;position:relative}.toggle input[data-v-bac90158]{opacity:0;width:0;height:0;position:absolute}.toggle-track[data-v-bac90158]{background:var(--surface-3);border:1px solid var(--border-2);width:36px;height:20px;transition:background var(--t), border-color var(--t);border-radius:100px;position:relative}.toggle-track[data-v-bac90158]:after{content:"";background:var(--text-dim);width:12px;height:12px;transition:transform var(--t), background var(--t);border-radius:50%;position:absolute;top:3px;left:3px}.toggle input:checked~.toggle-track[data-v-bac90158]{background:var(--accent-dim);border-color:var(--accent-ring)}.toggle input:checked~.toggle-track[data-v-bac90158]:after{background:var(--accent);transform:translate(16px)}.toggle input:disabled~.toggle-track[data-v-bac90158]{opacity:.4;cursor:not-allowed}@media (width<=900px){.roles-grid[data-v-bac90158],.perm-checklist[data-v-bac90158]{grid-template-columns:1fr}}.page-root[data-v-18cd1946]{position:relative}.project-banner[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;align-items:center;gap:12px;margin-bottom:16px;padding:10px 16px;display:flex}.project-banner-left[data-v-18cd1946]{align-items:center;gap:8px;display:flex}.project-dot[data-v-18cd1946]{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.project-banner-name[data-v-18cd1946]{font-size:.9rem;font-weight:600}.toolbar[data-v-18cd1946]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filter-bar[data-v-18cd1946]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-tab[data-v-18cd1946]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-18cd1946]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-18cd1946]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-18cd1946]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-18cd1946]{background:var(--accent-dim);color:var(--accent)}.view-toggle[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);flex-shrink:0;gap:2px;padding:3px;display:flex}.view-btn[data-v-18cd1946]{border-radius:calc(var(--radius) - 2px);width:28px;height:26px;color:var(--text-dim);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.view-btn[data-v-18cd1946]:hover{color:var(--text);background:var(--surface-3)}.view-btn.active[data-v-18cd1946]{background:var(--surface-3);color:var(--accent)}.drop-zone-empty[data-v-18cd1946]{border:2px dashed var(--border);text-align:center;color:var(--text-dim);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:64px 32px;display:flex}.drop-zone-icon[data-v-18cd1946]{color:var(--text-dim);opacity:.6}.drop-zone-title[data-v-18cd1946]{color:var(--text-muted);margin:0;font-size:.95rem;font-weight:500}.drop-zone-hint[data-v-18cd1946]{color:var(--text-dim);margin:0;font-size:.8rem}.list-name-cell[data-v-18cd1946]{align-items:center;gap:10px;display:flex}.list-ext-badge[data-v-18cd1946]{color:#fff;letter-spacing:.04em;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;min-width:36px;height:22px;padding:0 4px;font-size:.62rem;font-weight:700;display:inline-flex}.file-name-label[data-v-18cd1946]{font-weight:500}.action-row[data-v-18cd1946]{flex-wrap:wrap;gap:6px;display:flex}.category-chip[data-v-18cd1946]{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:100px;padding:2px 8px;font-size:.72rem;display:inline-block}.gallery-header[data-v-18cd1946]{align-items:center;gap:8px;margin-bottom:12px;display:flex}.gallery[data-v-18cd1946]{gap:12px;display:grid}.gallery-small[data-v-18cd1946]{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.gallery-large[data-v-18cd1946]{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.file-card[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);transition:border-color var(--t), transform var(--t), box-shadow var(--t);cursor:default;border-radius:10px;position:relative;overflow:hidden}.file-card[data-v-18cd1946]:hover{border-color:var(--accent-ring);transform:translateY(-1px);box-shadow:0 4px 16px #00000040}.card-preview-link[data-v-18cd1946]{text-decoration:none;display:block}.card-preview[data-v-18cd1946]{width:100%;overflow:hidden}.gallery-small .card-preview[data-v-18cd1946]{height:120px}.gallery-large .card-preview[data-v-18cd1946]{height:190px}.card-img[data-v-18cd1946]{object-fit:cover;width:100%;height:100%;display:block}.card-type-icon[data-v-18cd1946]{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.card-ext-text[data-v-18cd1946]{color:#ffffffe6;letter-spacing:.04em;font-size:1rem;font-weight:800;font-family:var(--font-mono)}.gallery-small .card-ext-text[data-v-18cd1946]{font-size:.85rem}.card-info[data-v-18cd1946]{flex-direction:row;align-items:center;gap:6px;padding:4px 8px 5px;display:flex}.card-name[data-v-18cd1946]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.75rem;font-weight:500;overflow:hidden}.gallery-large .card-name[data-v-18cd1946]{font-size:.78rem}.card-meta[data-v-18cd1946]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.category-chip-sm[data-v-18cd1946]{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-ring);white-space:nowrap;border-radius:100px;padding:1px 6px;font-size:.65rem}.card-size[data-v-18cd1946]{color:var(--text-dim);flex-shrink:0;font-size:.68rem}.card-date[data-v-18cd1946]{color:var(--text-dim);margin:0;font-size:.7rem}.card-actions[data-v-18cd1946]{opacity:0;transition:opacity var(--t);gap:4px;display:flex;position:absolute;top:6px;right:6px}.file-card:hover .card-actions[data-v-18cd1946]{opacity:1}.card-action-btn[data-v-18cd1946]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;cursor:pointer;width:24px;height:24px;transition:background var(--t);background:#0000008c;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.card-action-btn[data-v-18cd1946]:hover{background:#000c}.card-action-btn.danger[data-v-18cd1946]:hover{background:#dc2626d9}.drag-overlay[data-v-18cd1946]{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:all;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.drag-overlay[data-v-18cd1946] *{pointer-events:none}.drag-overlay-inner[data-v-18cd1946]{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.drag-title[data-v-18cd1946]{color:#fff;margin:0;font-size:1.25rem;font-weight:600}.drag-hint[data-v-18cd1946]{color:#fff9;margin:0;font-size:.85rem}.bulk-toast[data-v-18cd1946]{z-index:9998;min-width:280px;max-width:400px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.bulk-toast-inner[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;padding:12px 16px;display:flex;box-shadow:0 8px 32px #0006}.bulk-toast-text[data-v-18cd1946]{color:var(--text);font-size:.82rem}.bulk-toast-error[data-v-18cd1946]{border-color:var(--red,#ef4444);flex-direction:row;align-items:center;gap:10px}.bulk-toast-error .bulk-toast-text[data-v-18cd1946]{color:var(--red,#ef4444);flex:1}.bulk-toast-close[data-v-18cd1946]{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.8rem;line-height:1}.bulk-toast-close[data-v-18cd1946]:hover{color:var(--text);background:var(--surface-3)}.bulk-bar[data-v-18cd1946]{background:var(--surface-3);border-radius:100px;height:4px;overflow:hidden}.bulk-fill[data-v-18cd1946]{background:var(--accent);border-radius:100px;height:100%;transition:width .2s}.modal-wide[data-v-18cd1946]{min-width:480px}.modal-head-row[data-v-18cd1946]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.cat-table[data-v-18cd1946]{border-collapse:collapse;width:100%;font-size:.83rem}.cat-table th[data-v-18cd1946]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.cat-table td[data-v-18cd1946]{border-bottom:1px solid var(--border);padding:8px}.cat-table tr:last-child td[data-v-18cd1946]{border-bottom:none}.cat-table .td-actions[data-v-18cd1946]{text-align:right;white-space:nowrap}.action-btn[data-v-18cd1946]{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t), background var(--t);background:0 0;border:none;padding:4px 5px;font-size:.82rem}.action-btn[data-v-18cd1946]:hover{color:var(--text);background:var(--surface-3)}.action-btn.danger[data-v-18cd1946]{color:var(--red,#ef4444)}.action-btn.danger[data-v-18cd1946]:hover{background:#ef444414}.img-modal-overlay[data-v-18cd1946]{z-index:10000;background:#000000e0;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.img-modal[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;max-width:min(92vw,1100px);max-height:calc(100vh - 40px);display:flex;overflow:hidden;box-shadow:0 24px 64px #0009}.img-modal-header[data-v-18cd1946]{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.img-modal-name[data-v-18cd1946]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.83rem;font-weight:500;overflow:hidden}.img-modal-btns[data-v-18cd1946]{flex-shrink:0;gap:6px;display:flex}.img-modal-btn[data-v-18cd1946]{border:1px solid var(--border);background:var(--surface-3);width:30px;height:30px;color:var(--text);cursor:pointer;transition:background var(--t), color var(--t);border-radius:6px;justify-content:center;align-items:center;text-decoration:none;display:flex}.img-modal-btn[data-v-18cd1946]:hover{background:var(--surface-2);color:var(--accent);border-color:var(--accent-ring)}.img-modal-body[data-v-18cd1946]{flex:1;justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.img-modal-img[data-v-18cd1946]{object-fit:contain;border-radius:4px;max-width:100%;max-height:calc(100vh - 120px);display:block}.form-hint[data-v-18cd1946]{color:var(--text-dim);margin-top:4px;font-size:.75rem}.required[data-v-18cd1946]{color:var(--red,#ef4444)}.optional[data-v-18cd1946]{color:var(--text-dim);font-weight:400}.text-dim[data-v-18cd1946]{color:var(--text-dim)}.th-check[data-v-18cd1946],.td-check[data-v-18cd1946]{width:36px;padding:0 8px!important}.row-selected td[data-v-18cd1946]{background:var(--accent-dim)!important}.card-selected[data-v-18cd1946]{border-color:var(--accent)!important}.card-checkbox-wrap[data-v-18cd1946]{z-index:2;cursor:pointer;position:absolute;top:6px;left:6px}.card-checkbox[data-v-18cd1946]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:18px;height:18px;transition:background var(--t), border-color var(--t);background:#0006;border:1.5px solid #ffffffb3;border-radius:4px;justify-content:center;align-items:center;display:flex}.card-checkbox.checked[data-v-18cd1946]{background:var(--accent);border-color:var(--accent)}.bulk-action-bar[data-v-18cd1946]{z-index:9997;min-width:320px;max-width:520px;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.bulk-action-inner[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex;box-shadow:0 8px 32px #0006}.bulk-action-label[data-v-18cd1946]{flex:1;min-width:0;font-size:.83rem;font-weight:500}.bulk-action-error[data-v-18cd1946]{color:var(--red,#ef4444);flex:1 0 100%;font-size:.78rem}.bulk-cat-dropdown[data-v-18cd1946]{background:var(--surface-2);border:1px solid var(--border);z-index:1;border-radius:8px;min-width:200px;position:absolute;bottom:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.bulk-cat-opt[data-v-18cd1946]{text-align:left;width:100%;color:var(--text);cursor:pointer;font-size:.82rem;font-family:var(--font-sans);transition:background var(--t);background:0 0;border:none;padding:8px 12px;display:block}.bulk-cat-opt[data-v-18cd1946]:hover{background:var(--surface-3)}.filter-bar[data-v-bc702c8c]{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.filter-tab[data-v-bc702c8c]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-bc702c8c]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-bc702c8c]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-bc702c8c]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-bc702c8c]{background:var(--accent-dim);color:var(--accent)}.category-filter-wrap[data-v-bc702c8c]{flex-shrink:0;position:relative}.category-btn[data-v-bc702c8c]{gap:4px}.cat-caret[data-v-bc702c8c]{margin-left:2px;font-size:.65rem}.cat-dropdown[data-v-bc702c8c]{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.cat-option[data-v-bc702c8c]{color:var(--text-muted);cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:.8rem;display:flex}.cat-option[data-v-bc702c8c]:hover{background:var(--surface-2);color:var(--text)}.cat-option.active[data-v-bc702c8c]{background:var(--accent-dim);color:var(--accent)}.search-inline[data-v-bc702c8c]{flex-shrink:0;width:200px}.file-name-label[data-v-bc702c8c]{font-weight:500}.action-row[data-v-bc702c8c]{flex-wrap:wrap;gap:6px;display:flex}.form-hint[data-v-bc702c8c]{color:var(--text-dim);margin-top:4px;font-size:.75rem}.required[data-v-bc702c8c]{color:var(--red,#ef4444)}.text-dim[data-v-bc702c8c]{color:var(--text-dim);font-size:.8rem}.category-chip[data-v-bc702c8c]{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:100px;padding:2px 8px;font-size:.72rem;display:inline-block}.modal-standar[data-v-bc702c8c]{min-width:480px}.standar-modal-head[data-v-bc702c8c]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.standar-table[data-v-bc702c8c]{border-collapse:collapse;width:100%;font-size:.83rem}.standar-table th[data-v-bc702c8c]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.standar-table td[data-v-bc702c8c]{border-bottom:1px solid var(--border);padding:8px}.standar-table tr:last-child td[data-v-bc702c8c]{border-bottom:none}.standar-table .td-actions[data-v-bc702c8c]{text-align:right;white-space:nowrap}.standar-table .td-actions .action-btn[data-v-bc702c8c]{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t), background var(--t);background:0 0;border:none;padding:4px 5px;font-size:.82rem}.standar-table .td-actions .action-btn[data-v-bc702c8c]:hover{color:var(--text);background:var(--surface-3)}.standar-table .td-actions .action-btn.danger[data-v-bc702c8c]{color:var(--red,#ef4444)}.standar-table .td-actions .action-btn.danger[data-v-bc702c8c]:hover{background:#ef444414}.filter-bar[data-v-97ac3f99]{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.filter-tab[data-v-97ac3f99]{border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t);background:0 0;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.filter-tab[data-v-97ac3f99]:hover{background:var(--surface-2);color:var(--text)}.filter-tab.active[data-v-97ac3f99]{background:var(--accent-dim);border-color:var(--accent-ring);color:var(--accent)}.filter-count[data-v-97ac3f99]{font-family:var(--font-mono);background:var(--surface-3);color:var(--text-dim);border-radius:100px;padding:1px 6px;font-size:.68rem}.filter-tab.active .filter-count[data-v-97ac3f99]{background:var(--accent-dim);color:var(--accent)}.category-filter-wrap[data-v-97ac3f99]{flex-shrink:0;position:relative}.category-btn[data-v-97ac3f99]{gap:4px}.cat-caret[data-v-97ac3f99]{margin-left:2px;font-size:.65rem}.cat-dropdown[data-v-97ac3f99]{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.cat-option[data-v-97ac3f99]{color:var(--text-muted);cursor:pointer;transition:background var(--t);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:.8rem;display:flex}.cat-option[data-v-97ac3f99]:hover{background:var(--surface-2);color:var(--text)}.cat-option.active[data-v-97ac3f99]{background:var(--accent-dim);color:var(--accent)}.search-inline[data-v-97ac3f99]{flex-shrink:0;width:200px}.file-name-label[data-v-97ac3f99]{font-weight:500}.action-row[data-v-97ac3f99]{flex-wrap:wrap;gap:6px;display:flex}.form-hint[data-v-97ac3f99]{color:var(--text-dim);margin-top:4px;font-size:.75rem}.required[data-v-97ac3f99]{color:var(--red,#ef4444)}.text-dim[data-v-97ac3f99]{color:var(--text-dim);font-size:.8rem}.category-chip[data-v-97ac3f99]{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:100px;padding:2px 8px;font-size:.72rem;display:inline-block}.modal-standar[data-v-97ac3f99]{min-width:480px}.standar-modal-head[data-v-97ac3f99]{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.standar-table[data-v-97ac3f99]{border-collapse:collapse;width:100%;font-size:.83rem}.standar-table th[data-v-97ac3f99]{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:.68rem}.standar-table td[data-v-97ac3f99]{border-bottom:1px solid var(--border);padding:8px}.standar-table tr:last-child td[data-v-97ac3f99]{border-bottom:none}.standar-table .td-actions[data-v-97ac3f99]{text-align:right;white-space:nowrap}.standar-table .td-actions .action-btn[data-v-97ac3f99]{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t), background var(--t);background:0 0;border:none;padding:4px 5px;font-size:.82rem}.standar-table .td-actions .action-btn[data-v-97ac3f99]:hover{color:var(--text);background:var(--surface-3)}.standar-table .td-actions .action-btn.danger[data-v-97ac3f99]{color:var(--red,#ef4444)}.standar-table .td-actions .action-btn.danger[data-v-97ac3f99]:hover{background:#ef444414}:root{--bg:#13151f;--surface:#1a1d2e;--surface-2:#1e2235;--surface-3:#252840;--border:#2a2d3e;--border-2:#353850;--text:#f0f2fc;--text-muted:#9ba3b5;--text-dim:#6b7380;--text-head:#fff;--accent:#f97316;--accent-dim:#f973161f;--accent-ring:#f9731659;--accent-h:#fb923c;--blue:#3b82f6;--blue-dim:#3b82f61f;--blue-h:#60a5fa;--green:#22c55e;--green-dim:#22c55e1f;--red:#ef4444;--red-dim:#ef44441f;--yellow:#eab308;--yellow-dim:#eab3081f;--teal:#14b8a6;--teal-dim:#14b8a61f;--font-mono:"Space Mono", ui-monospace, monospace;--font-sans:"Plus Jakarta Sans", system-ui, sans-serif;--radius-sm:4px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--t:.18s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text);background-image:linear-gradient(#2a2d3e99 1px,#0000 1px),linear-gradient(90deg,#2a2d3e99 1px,#0000 1px);background-size:48px 48px;min-height:100svh;font-weight:400;line-height:1.6}img,svg{max-width:100%;display:block}a{color:var(--accent);transition:color var(--t);text-decoration:none}a:hover{color:var(--accent-h)}h1,h2,h3,h4{font-family:var(--font-mono);color:var(--text-head);letter-spacing:.04em;font-weight:700;line-height:1.2}h1{font-size:1.8rem}h2{font-size:1.3rem}h3{font-size:1.05rem}h4{font-size:.9rem}p{line-height:1.65}.mono{font-family:var(--font-mono)}.price{font-family:var(--font-mono);color:var(--accent);letter-spacing:.03em;font-weight:700}#app{flex-direction:column;min-height:100svh;display:flex}.page-shell{flex-direction:column;flex:1;min-height:100svh;display:flex}.page-content{flex:1;padding:28px 32px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-title{font-family:var(--font-mono);color:var(--accent);letter-spacing:.06em;font-size:1.4rem;font-weight:700;line-height:1.2}.page-subtitle{color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);letter-spacing:0;margin-top:4px;font-weight:400}.btn{font-family:var(--font-sans);border-radius:var(--radius);cursor:pointer;transition:background var(--t), box-shadow var(--t), opacity var(--t);white-space:nowrap;border:1px solid #0000;align-items:center;gap:7px;padding:7px 16px;font-size:.82rem;font-weight:600;line-height:1;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-h);border-color:var(--accent-h);box-shadow:0 0 0 3px var(--accent-ring)}.btn-blue{background:var(--blue);color:#fff;border-color:var(--blue)}.btn-blue:hover:not(:disabled){background:var(--blue-h);border-color:var(--blue-h)}.btn-ghost{color:var(--text-muted);border-color:var(--border-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.btn-danger{background:var(--red-dim);color:var(--red);border-color:#0000}.btn-danger:hover:not(:disabled){background:var(--red);color:#fff}.btn-sm{padding:5px 11px;font-size:.75rem}.btn-icon{border-color:var(--border);color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;padding:7px}.btn-icon:hover{background:var(--surface-2);color:var(--text)}.input,.select,.textarea{font-family:var(--font-sans);color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);width:100%;transition:border-color var(--t), box-shadow var(--t);appearance:none;outline:none;padding:9px 13px;font-size:.85rem}.input::placeholder,.textarea::placeholder{color:var(--text-dim)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:500}.form-error{color:var(--red);margin-top:2px;font-size:.75rem}.input-group{position:relative}.input-group .input{padding-left:36px}.input-group .input-icon{color:var(--text-dim);pointer-events:none;width:15px;height:15px;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px}.card-sm{padding:14px 18px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;position:relative;overflow:hidden}.stat-card:after{content:"";border:11px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:76px;height:76px;position:absolute;bottom:-20px;right:-20px}.stat-card .stat-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:8px;font-size:.72rem;font-weight:500}.stat-card .stat-value{font-family:var(--font-mono);color:var(--text-head);letter-spacing:.02em;font-size:1.5rem;font-weight:700}.stat-card .stat-sub{color:var(--text-muted);margin-top:5px;font-size:.75rem}.stat-card.accent .stat-value{color:var(--accent)}.stat-card.blue .stat-value{color:var(--blue)}.tab-nav{border-bottom:1px solid var(--border);scrollbar-width:none;background:var(--bg);gap:0;padding:0 32px;display:flex;overflow-x:auto}.tab-nav::-webkit-scrollbar{display:none}.tab-item{font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color var(--t), border-color var(--t);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:11px 16px;font-size:.82rem;font-weight:500;text-decoration:none;display:inline-flex}.tab-item:hover{color:var(--text)}.tab-item.active,.tab-item.router-link-active{color:var(--accent);border-bottom-color:var(--accent)}.table-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.83rem}.data-table thead tr{border-bottom:1px solid var(--border)}.data-table th{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);text-align:left;background:var(--surface);white-space:nowrap;padding:11px 16px;font-size:.7rem;font-weight:600}.data-table td{color:var(--text);border-top:1px solid var(--border);background:var(--surface);padding:11px 16px}.data-table tbody tr:hover td{background:var(--surface-2)}.data-table td.td-price{font-family:var(--font-mono);letter-spacing:.03em;font-size:.82rem;font-weight:700}.data-table td.td-link{color:var(--accent);cursor:pointer}.data-table td.td-link:hover{color:var(--accent-h);text-decoration:underline}.data-table td.td-actions{text-align:right;white-space:nowrap}.data-table .td-actions .action-btn{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--t), background var(--t);background:0 0;border:none;padding:4px 5px;font-size:.82rem}.data-table .td-actions .action-btn:hover{color:var(--text);background:var(--surface-3)}.data-table .td-actions .action-btn.danger:hover{color:var(--red)}.badge{letter-spacing:.04em;border-radius:100px;align-items:center;gap:5px;padding:3px 9px;font-size:.7rem;font-weight:600;display:inline-flex}.badge-green{background:var(--green-dim);color:var(--green)}.badge-blue{background:var(--blue-dim);color:var(--blue)}.badge-yellow{background:var(--yellow-dim);color:var(--yellow)}.badge-red{background:var(--red-dim);color:var(--red)}.badge-orange{background:var(--accent-dim);color:var(--accent)}.badge-teal{background:var(--teal-dim);color:var(--teal)}.divider{background:var(--border);border:none;height:1px;margin:20px 0}.grid-2{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=900px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.page-content{padding:20px 18px}}@media (width<=560px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fade-enter-active,.fade-leave-active{transition:opacity .15s}.fade-enter-from,.fade-leave-to{opacity:0}.app-shell{height:100svh;display:flex;overflow:hidden}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:260px;display:flex;position:relative;overflow:hidden}.sidebar:before{content:"";border:28px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-70px;left:-65px}.sidebar:after{content:"";border:18px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:130px;height:130px;position:absolute;top:38px;right:-55px}.sidebar-nav{flex-direction:column;flex:1;min-height:0;padding:8px;display:flex;overflow-y:auto}.sidebar-nav>*{flex-shrink:0}.nav-section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:.6rem;font-family:var(--font-mono);flex-shrink:0;padding:14px 8px 4px}.nav-item{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);white-space:nowrap;text-align:left;width:100%;font-size:.8125rem;font-family:var(--font-sans);background:0 0;border:none;align-items:center;padding:7px 10px;text-decoration:none;display:flex}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.router-link-active,.nav-item.router-link-exact-active{background:var(--accent-dim);color:var(--accent)}.sidebar-footer{flex-shrink:0}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.main-area>.page-content{flex:1;overflow-y:auto}.top-bar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:16px;height:52px;padding:0 24px;display:flex;position:relative}.top-bar:after{content:"";border:13px solid var(--accent);opacity:.07;pointer-events:none;border-radius:50%;width:90px;height:90px;position:absolute;top:-20px;right:-20px}.top-bar-title{color:var(--text);font-size:.875rem;font-weight:600;font-family:var(--font-sans);flex:1}.top-bar-actions{align-items:center;gap:10px;display:flex}.top-bar-user{background:var(--surface-3);border:1px solid var(--border-2);width:30px;height:30px;font-size:.625rem;font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.project-selector{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--t);align-items:center;gap:6px;padding:5px 10px;display:flex;position:relative}.project-selector:hover{border-color:var(--border-2)}.project-selector-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.8rem;overflow:hidden}.project-selector-caret{color:var(--text-dim);font-size:.6rem}.project-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);z-index:200;min-width:300px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 28px #00000073}.project-dropdown-item{color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:8px 12px;font-size:.8125rem;text-decoration:none;display:flex}.project-dropdown-item:hover{background:var(--surface-2);color:var(--text)}.project-dropdown-item.active{color:var(--accent)}.project-dropdown-divider{background:var(--border);height:1px;margin:4px 0}.project-dropdown-empty{color:var(--text-dim);text-align:center;padding:10px 12px;font-size:.8rem}.project-dropdown-check{color:var(--accent);flex-shrink:0;margin-left:6px;font-size:.75rem}.project-dropdown-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.project-dropdown-other{color:var(--text-dim);font-style:italic}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{color:var(--text);font-size:.875rem;font-weight:600;font-family:var(--font-sans)}.empty-state{color:var(--text-dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:52px 24px;font-size:.875rem;display:flex}.alert-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--blue);border-radius:var(--radius);color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:13px 18px;font-size:.875rem;display:flex}.table-link{color:var(--accent);cursor:pointer;transition:color var(--t)}.table-link:hover{color:var(--accent-h);text-decoration:underline}.modal-overlay{z-index:500;background:#0000008c;justify-content:center;align-items:flex-start;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:16px;width:100%;max-width:460px;margin:auto;padding:24px 28px;display:flex;overflow:visible}.modal-md{max-width:620px}.modal-title{font-size:1rem;font-family:var(--font-mono);color:var(--text-head);letter-spacing:.04em}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.text-muted{color:var(--text-muted)}.text-dim{color:var(--text-dim)}.textarea{resize:vertical;min-height:72px}.sidebar{transition:width .22s,min-width .22s}.sidebar-collapsed .sidebar{border-right:none;overflow:hidden;width:0!important;min-width:0!important}.top-bar-hamburger{border:1px solid var(--border);border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:none}.top-bar-hamburger:hover{background:var(--surface-2);color:var(--text)}.top-bar-hamburger{touch-action:manipulation}@media (width<=768px){.app-shell{position:relative}.sidebar{z-index:400;height:100svh;transition:transform .22s,width;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);width:260px!important}.sidebar-open .sidebar{transform:translate(0);box-shadow:4px 0 24px #00000080}.sidebar-overlay{z-index:399;background:#00000080;display:none;position:fixed;inset:0}.sidebar-open .sidebar-overlay{display:block}.main-area{width:100%!important}.top-bar{padding:0 16px}.page-content{padding:16px 14px}.table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:500px;font-size:.82rem}.modal{padding:20px 18px}.modal-wide{border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:0;width:100%!important;max-width:100%!important}.modal-overlay{align-items:flex-end;padding:0}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.top-bar-hamburger{display:flex}.project-selector-label{max-width:100px}}.sidebar-toggle-btn{border:1px solid var(--border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;display:flex}.sidebar-toggle-btn:hover{background:var(--surface-2);color:var(--text)}.sidebar-show-btn{z-index:300;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);justify-content:center;align-items:center;font-size:1rem;display:flex;position:fixed;top:12px;left:12px;box-shadow:0 4px 12px #0000004d}.sidebar-show-btn:hover{background:var(--surface-2);color:var(--accent)}.confirm-modal{max-width:380px}.confirm-body{color:var(--text-muted);font-size:.88rem;line-height:1.5}.search-select-wrapper{position:relative}.search-select-dropdown{background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius);z-index:600;max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0006}.search-select-option{color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);padding:8px 12px;font-size:.84rem}.search-select-option:hover,.search-select-option.highlighted{background:var(--accent-dim);color:var(--text)}.search-select-empty{color:var(--text-dim);text-align:center;padding:12px;font-size:.82rem}.search-select-group{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);padding:6px 12px 2px;font-size:.65rem;font-weight:600}.rab-ahs-row td{background:var(--surface-3)!important;padding:0!important}.rab-ahs-panel{border-top:1px solid var(--border);padding:12px 20px 16px 32px}.rab-ahs-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:.7rem;font-family:var(--font-mono);margin-bottom:8px}.rab-ahs-item-row{border-bottom:1px solid var(--border);grid-template-columns:1fr 60px 90px 90px 40px;align-items:center;gap:8px;padding:5px 0;font-size:.8rem;display:grid}.rab-ahs-item-row:last-of-type{border-bottom:none}@media (width<=560px){.data-table{min-width:0}.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block}.data-table tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:8px;padding:10px 12px}.data-table td{border:none;padding:3px 0;background:0 0!important}.data-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-bottom:2px;font-size:.65rem;display:block}.data-table td.td-actions{text-align:left;border-top:1px solid var(--border);margin-top:8px;padding-top:8px}}.svg-icon[data-v-13f089aa]{vertical-align:middle;flex-shrink:0;display:inline-block}
