.login-title[data-v-8970e599]{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:6px}.login-title h2[data-v-8970e599]{margin:0;line-height:1}.login-logo[data-v-8970e599]{width:28px;height:28px;border-radius:8px;object-fit:cover;box-shadow:0 6px 14px #00000026}.login-sso-hint[data-v-8970e599]{margin-bottom:12px;color:#495057;font-size:13px}.filter-autocomplete[data-v-d1214d3c]{position:relative}.filter-bar[data-v-d1214d3c]{position:relative;z-index:50}.opportunity-filters[data-v-d1214d3c],.opportunity-filters .filter-left[data-v-d1214d3c]{overflow:visible}.filter-suggestions[data-v-d1214d3c]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 24px #0f172a1f;max-height:220px;overflow:auto;z-index:60}.filter-suggestion[data-v-d1214d3c]{padding:8px 10px;cursor:pointer}.filter-suggestion[data-v-d1214d3c]:hover{background:#f1f5f9}.filter-empty[data-v-d1214d3c]{padding:8px 10px;color:#94a3b8}.followup-detail-table th[data-v-4684086d]:first-child,.followup-detail-table td[data-v-4684086d]:first-child{width:4em;min-width:4em;max-width:4em;text-align:center;white-space:nowrap}.attachment-list[data-v-f1d1d20a]{margin-top:12px;display:grid;gap:8px}.attachment-item[data-v-f1d1d20a]{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center;padding:8px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;font-size:13px}.attachment-name[data-v-f1d1d20a]{font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-desc[data-v-f1d1d20a]{color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-page .section-title[data-v-849b662b],.account-form-card label[data-v-849b662b],.account-form-card input[data-v-849b662b],.account-form-card select[data-v-849b662b],.account-form-card textarea[data-v-849b662b]{font-size:14px}.account-detail label[data-v-42734ff8]{font-size:11px}.account-header-line[data-v-42734ff8]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.account-header-line .page-title[data-v-42734ff8],.account-header-line .detail-meta[data-v-42734ff8]{margin:0}.account-detail input[data-v-42734ff8],.account-detail select[data-v-42734ff8],.account-detail textarea[data-v-42734ff8]{padding:6px 8px;border-radius:7px;font-size:13px}.filter-autocomplete[data-v-602d6c98]{position:relative}.contract-table-wrap[data-v-602d6c98]{--sticky-no-width: 3em;--sticky-name-width: 15em}.contract-table th[data-v-602d6c98]:nth-child(1),.contract-table td[data-v-602d6c98]:nth-child(1),.contract-receivable-table th[data-v-602d6c98]:nth-child(1),.contract-receivable-table td[data-v-602d6c98]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.contract-table thead th[data-v-602d6c98]:nth-child(1),.contract-receivable-table thead th[data-v-602d6c98]:nth-child(1){z-index:7;background:#f1f5fb}.contract-table th[data-v-602d6c98]:nth-child(2),.contract-table td[data-v-602d6c98]:nth-child(2),.contract-receivable-table th[data-v-602d6c98]:nth-child(2),.contract-receivable-table td[data-v-602d6c98]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.contract-table thead th[data-v-602d6c98]:nth-child(2),.contract-receivable-table thead th[data-v-602d6c98]:nth-child(2){z-index:6;background:#f1f5fb}.row-urgent td[data-v-602d6c98]:nth-child(1),.row-urgent td[data-v-602d6c98]:nth-child(2){background:#ffe8cc}.contract-name-cell[data-v-602d6c98]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.filter-left[data-v-602d6c98]{flex-direction:column;align-items:flex-start;gap:8px}.filter-line[data-v-602d6c98]{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.filter-line input[data-v-602d6c98],.filter-line select[data-v-602d6c98]{width:160px;flex:0 0 auto}.filter-line input[type=date][data-v-602d6c98]{width:140px}.filter-line .filter-search[data-v-602d6c98]{width:220px}.filter-line .filter-autocomplete input[data-v-602d6c98]{width:200px}.filter-range[data-v-602d6c98]{display:flex;align-items:center;gap:8px}.filter-label[data-v-602d6c98]{color:#64748b;font-size:12px;white-space:nowrap}.range-split[data-v-602d6c98]{color:#94a3b8}.filter-suggestions[data-v-602d6c98]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 24px #0f172a1f;max-height:220px;overflow:auto;z-index:20}.filter-suggestion[data-v-602d6c98]{padding:8px 10px;cursor:pointer}.filter-suggestion[data-v-602d6c98]:hover{background:#f1f5f9}.filter-empty[data-v-602d6c98]{padding:8px 10px;color:#94a3b8}.row-urgent td[data-v-602d6c98]{background:#ffe8cc}.urgent-badge[data-v-602d6c98]{margin-left:6px}.modal-overlay[data-v-b4140d42]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-b4140d42]{background:#fff;border-radius:10px;width:720px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-b4140d42]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-b4140d42]{margin:0;font-size:16px}.modal-close[data-v-b4140d42]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-b4140d42]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-b4140d42]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.picker-filters .filter-search[data-v-b4140d42]{width:200px}.picker-table-wrap[data-v-b4140d42]{overflow-x:auto}.picker-table[data-v-b4140d42]{font-size:13px}.picker-table td[data-v-b4140d42]:last-child{white-space:nowrap}.row-selected[data-v-b4140d42]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-b4140d42]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-b4140d42]{padding:2px 10px;font-size:12px}.contract-detail[data-v-53d3513c]{font-size:13px}.invoice-toolbar[data-v-53d3513c]{display:flex;align-items:center;gap:8px}.invoice-modal-card[data-v-53d3513c]{padding-top:14px}.modal-actions[data-v-53d3513c]{margin-top:12px;display:flex;align-items:center;gap:8px}.project-picker[data-v-53d3513c]{display:flex;align-items:center;gap:8px}.project-selected[data-v-53d3513c]{color:#2e7d32;font-size:12px;display:flex;align-items:center}.button.small[data-v-53d3513c]{padding:2px 8px;font-size:12px}.table.payment-table th[data-v-cb74f1b2]:nth-child(2),.table.payment-table td[data-v-cb74f1b2]:nth-child(2){min-width:150px}.filter-range[data-v-cb74f1b2]{display:flex;align-items:center;gap:8px}.range-split[data-v-cb74f1b2]{color:#94a3b8}.filter-autocomplete[data-v-4979acaf]{position:relative}.filter-suggestions[data-v-4979acaf]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 24px #0f172a1f;max-height:220px;overflow:auto;z-index:20}.filter-suggestion[data-v-4979acaf]{padding:8px 10px;cursor:pointer}.filter-suggestion[data-v-4979acaf]:hover{background:#f1f5f9}.filter-empty[data-v-4979acaf]{padding:8px 10px;color:#94a3b8}.invoice-subsection-title[data-v-4979acaf]{margin:14px 0 10px;font-size:13px;font-weight:600;color:#475569}.filter-range[data-v-16c5252d]{display:flex;align-items:center;gap:8px}.range-split[data-v-16c5252d]{color:#94a3b8}.filter-autocomplete[data-v-5ab04fe6]{position:relative}.filter-suggestions[data-v-5ab04fe6]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 24px #0f172a1f;max-height:220px;overflow:auto;z-index:20}.filter-suggestion[data-v-5ab04fe6]{padding:8px 10px;cursor:pointer}.filter-suggestion[data-v-5ab04fe6]:hover{background:#f1f5f9}.filter-empty[data-v-5ab04fe6]{padding:8px 10px;color:#94a3b8}.preview-modal[data-v-2104ee3a]{width:min(90vw,900px)}.preview-content[data-v-2104ee3a]{max-height:70vh;overflow:auto;border:1px solid #e2e8f0;border-radius:4px;background:#f8fafc;display:flex;justify-content:center}.preview-image[data-v-2104ee3a]{max-width:100%;max-height:65vh;object-fit:contain}.preview-frame[data-v-2104ee3a]{width:100%;height:70vh;border:none}.preview-text[data-v-2104ee3a]{width:100%;padding:16px;margin:0;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-all;overflow-x:auto}.mini-progress-wrap[data-v-2104ee3a]{margin:8px 0}.mini-progress-text[data-v-2104ee3a]{font-size:12px;color:#64748b;margin-bottom:4px}.mini-progress[data-v-2104ee3a]{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.mini-progress-fill[data-v-2104ee3a]{height:100%;background:#3b82f6;border-radius:3px;transition:width .3s ease}.mini-progress-fill.indeterminate[data-v-2104ee3a]{width:30%;animation:indeterminate-2104ee3a 1.5s ease-in-out infinite}@keyframes indeterminate-2104ee3a{0%{transform:translate(-100%)}to{transform:translate(100vw)}}.approval-cockpit[data-v-bd8d77a6]{--cockpit-line: #d9e3f0;--cockpit-muted: #5b677c;--cockpit-soft: #f8fbff;--cockpit-blue-soft: #eef5ff;--cockpit-blue-line: #8bb6ff;--cockpit-green-soft: #ebfbf3;--cockpit-green-line: #7dd3ae;--cockpit-red-soft: #fff1f2;--cockpit-red-line: #f9a8b4;--cockpit-wait-soft: #f7f9fc;--cockpit-wait-line: #d5dde9;display:grid;gap:10px;padding:16px}.approval-cockpit .card[data-v-bd8d77a6]{margin-bottom:0}.cockpit-hero[data-v-bd8d77a6]{background:linear-gradient(135deg,#fff,#f6faff 55%,#fff8ee);border-color:var(--cockpit-line);box-shadow:0 16px 28px #13203a14;padding:12px 14px}.hero-back[data-v-bd8d77a6]{padding:6px 12px;min-height:30px;font-size:12px}.hero-main[data-v-bd8d77a6]{display:flex;justify-content:space-between;align-items:center;gap:10px}.hero-main-left[data-v-bd8d77a6]{display:flex;align-items:center;gap:10px;min-width:0}.hero-main-right[data-v-bd8d77a6]{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;max-width:58%}.meta-chip[data-v-bd8d77a6]{font-size:12px;color:#51607a;background:#ffffffc7;border:1px solid #dbe4f3;border-radius:999px;padding:3px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.title-main[data-v-bd8d77a6]{font-size:20px;line-height:1.2;letter-spacing:-.2px;font-weight:700;color:#122442;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.title-meta[data-v-bd8d77a6]{margin-top:8px;color:var(--cockpit-muted);font-size:13px;display:flex;flex-wrap:wrap;gap:12px}.status-pill[data-v-bd8d77a6]{font-size:11px;line-height:1;padding:6px 10px;border-radius:999px;border:1px solid transparent;font-weight:600;white-space:nowrap}.status-pill.status-pending[data-v-bd8d77a6]{color:#1d4ed8;border-color:#93c5fd;background:#eff6ff}.status-pill.status-approved[data-v-bd8d77a6]{color:#047857;border-color:#86efac;background:#ecfdf5}.status-pill.status-rejected[data-v-bd8d77a6]{color:#be123c;border-color:#fda4af;background:#fff1f2}.status-pill.status-withdrawn[data-v-bd8d77a6]{color:#6b7280;border-color:#d1d5db;background:#f3f4f6}.head-type[data-v-bd8d77a6]{font-size:11px;letter-spacing:.5px;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:#fff4e5;color:#9a3412;border:1px solid #f3d1a0;font-weight:600;white-space:nowrap}.progress-meter[data-v-bd8d77a6]{margin-top:6px;height:6px;border-radius:999px;background:#ecf1f7;overflow:hidden}.progress-meter-bar[data-v-bd8d77a6]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#d97706,#f59e0b);transition:width .3s ease}.step-empty[data-v-bd8d77a6]{color:#7a869d;font-size:12px;padding:4px 0}.timeline-card[data-v-bd8d77a6]{padding:10px 12px}.timeline-progress[data-v-bd8d77a6]{margin-top:6px;border:1px solid var(--cockpit-line);border-radius:10px;padding:8px;background:#f8fbff}.timeline-progress-head[data-v-bd8d77a6]{display:flex;justify-content:space-between;align-items:center;gap:8px}.timeline-progress-title[data-v-bd8d77a6]{font-size:12px;font-weight:600;color:#223a61}.timeline-progress-meta[data-v-bd8d77a6]{font-size:11px;color:var(--cockpit-muted)}.timeline-step-list[data-v-bd8d77a6]{margin-top:6px;display:grid;gap:6px}.timeline-step-item[data-v-bd8d77a6]{border:1px solid var(--cockpit-wait-line);border-radius:8px;padding:6px 8px;background:var(--cockpit-wait-soft);display:grid;gap:4px}.timeline-step-item.status-done[data-v-bd8d77a6]{border-color:var(--cockpit-green-line);background:var(--cockpit-green-soft)}.timeline-step-item.status-active[data-v-bd8d77a6]{border-color:var(--cockpit-blue-line);background:var(--cockpit-blue-soft)}.timeline-step-item.status-rejected[data-v-bd8d77a6],.timeline-step-item.status-canceled[data-v-bd8d77a6]{border-color:var(--cockpit-red-line);background:var(--cockpit-red-soft)}.timeline-step-main[data-v-bd8d77a6],.timeline-step-right[data-v-bd8d77a6]{display:flex;align-items:center;justify-content:space-between;gap:8px}.timeline-step-order[data-v-bd8d77a6]{font-size:10px;color:#64748b;background:#ffffffd6;border:1px solid rgba(148,163,184,.3);border-radius:999px;padding:1px 6px;white-space:nowrap}.timeline-step-name[data-v-bd8d77a6]{flex:1;min-width:0;font-size:12px;font-weight:600;color:#152947;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-step-approvers[data-v-bd8d77a6]{font-size:11px;color:#4f5f7a;line-height:1.35}.timeline-step-ratio[data-v-bd8d77a6]{font-size:11px;font-weight:600;color:#475569;white-space:nowrap}.timeline-step-state[data-v-bd8d77a6]{font-size:10px;color:#334155;background:#fffc;border:1px solid rgba(148,163,184,.42);border-radius:999px;padding:1px 6px;white-space:nowrap}.timeline-section-title[data-v-bd8d77a6]{margin-top:8px;font-size:12px;font-weight:600;color:#223a61}.cockpit-main[data-v-bd8d77a6]{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr);gap:10px}.main-left[data-v-bd8d77a6],.main-right[data-v-bd8d77a6]{display:grid;gap:10px}.approval-grid[data-v-bd8d77a6]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.approval-field label[data-v-bd8d77a6]{font-size:12px;color:var(--cockpit-muted);display:block;margin-bottom:4px}.approval-remark[data-v-bd8d77a6]{margin-top:12px}.approval-remark label[data-v-bd8d77a6]{font-size:12px;color:var(--cockpit-muted);display:block;margin-bottom:4px}.field-value[data-v-bd8d77a6]{border:1px solid var(--cockpit-line);border-radius:8px;padding:9px 10px;background:var(--cockpit-soft);font-size:13px}.field-value-remark[data-v-bd8d77a6]{white-space:pre-wrap;word-break:break-word}.attachment-list[data-v-bd8d77a6]{display:grid;gap:8px}.attachment-item[data-v-bd8d77a6]{border:1px dashed #d7e2f0;border-radius:8px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fbfdff}.attachment-name[data-v-bd8d77a6]{font-size:13px;font-weight:600;color:#173057}.attachment-meta[data-v-bd8d77a6]{margin-top:2px;font-size:12px;color:var(--cockpit-muted)}.attachment-view-link[data-v-bd8d77a6]{color:var(--accent);text-decoration:none}.attachment-view-link[data-v-bd8d77a6]:hover{text-decoration:underline;color:#b45309}.task-group+.task-group[data-v-bd8d77a6]{margin-top:14px}.task-group-title[data-v-bd8d77a6]{font-size:13px;font-weight:600;margin-bottom:8px;color:#1e3558}.task-status-tag[data-v-bd8d77a6]{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600;border:1px solid transparent}.task-status-pending[data-v-bd8d77a6]{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.task-status-approved[data-v-bd8d77a6]{color:#047857;background:#ecfdf5;border-color:#86efac}.task-status-rejected[data-v-bd8d77a6]{color:#be123c;background:#fff1f2;border-color:#fda4af}.task-status-blocked[data-v-bd8d77a6]{color:#64748b;background:#f1f5f9;border-color:#cbd5e1}.task-status-canceled[data-v-bd8d77a6]{color:#52525b;background:#f4f4f5;border-color:#d4d4d8}.timeline[data-v-bd8d77a6]{position:relative;display:grid;gap:12px;margin-top:8px}.timeline[data-v-bd8d77a6]:before{content:"";position:absolute;left:6px;top:2px;bottom:2px;width:2px;background:linear-gradient(180deg,#d97706,#e3e8f0 90%)}.timeline-item[data-v-bd8d77a6]{position:relative;padding-left:22px}.timeline-dot[data-v-bd8d77a6]{width:12px;height:12px;border-radius:999px;border:2px solid #d97706;background:#fff;position:absolute;left:1px;top:4px}.timeline-time[data-v-bd8d77a6]{margin-top:4px;font-size:11px;color:#64748b}.timeline-content[data-v-bd8d77a6]{border:1px solid var(--cockpit-line);background:#f9fbff;border-radius:8px;padding:8px 10px}.timeline-title[data-v-bd8d77a6]{font-size:13px;font-weight:600;color:#142b4e}.timeline-actor[data-v-bd8d77a6]{margin-left:8px;font-size:12px;color:#64748b;font-weight:500}.timeline-comment[data-v-bd8d77a6]{margin-top:6px;font-size:12px;color:var(--cockpit-muted)}.action-bar[data-v-bd8d77a6]{position:sticky;bottom:10px;z-index:20;border-color:#d9e4f2;box-shadow:0 16px 30px #13203a29;background:#fffffff0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-bar-head[data-v-bd8d77a6]{display:flex;justify-content:space-between;align-items:center;gap:8px}.action-bar-title[data-v-bd8d77a6]{font-size:14px;font-weight:600;color:#162c4d}.action-bar-tip[data-v-bd8d77a6]{font-size:12px;color:var(--cockpit-muted)}.action-bar-main[data-v-bd8d77a6]{margin-top:10px;display:grid;grid-template-columns:minmax(260px,1fr) auto auto auto auto;gap:10px;align-items:center}.action-bar-main.with-task-selector[data-v-bd8d77a6]{grid-template-columns:220px minmax(240px,1fr) auto auto auto auto}.action-bar textarea[data-v-bd8d77a6],.action-bar select[data-v-bd8d77a6]{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:9px 10px;font-size:13px}.action-bar-main .button[data-v-bd8d77a6]{min-width:74px;padding:8px 12px}.action-bar textarea[data-v-bd8d77a6]{min-height:44px;resize:vertical}.empty-text[data-v-bd8d77a6]{margin-top:8px;color:#7a869d;font-size:12px}.modal-mask[data-v-bd8d77a6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a47;z-index:70;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card[data-v-bd8d77a6]{width:min(520px,100%);background:#fff;border:1px solid #d7e3f4;border-radius:12px;box-shadow:0 20px 36px #11182733;padding:14px}.modal-head[data-v-bd8d77a6]{display:flex;justify-content:space-between;align-items:center;gap:10px}.modal-title[data-v-bd8d77a6]{font-size:15px;font-weight:700;color:#0f2747}.modal-close[data-v-bd8d77a6]{min-width:62px}.modal-body[data-v-bd8d77a6]{margin-top:12px;display:grid;gap:10px}.modal-row[data-v-bd8d77a6]{display:grid;gap:6px}.modal-row label[data-v-bd8d77a6]{font-size:12px;color:#465874}.modal-row select[data-v-bd8d77a6],.modal-row textarea[data-v-bd8d77a6]{border:1px solid #d1d5db;border-radius:8px;padding:9px 10px;font-size:13px}.modal-row textarea[data-v-bd8d77a6]{resize:vertical}.modal-actions[data-v-bd8d77a6]{margin-top:12px;display:flex;justify-content:flex-end;gap:8px}@media (max-width: 1080px){.hero-main[data-v-bd8d77a6]{align-items:flex-start;flex-direction:column}.hero-main-right[data-v-bd8d77a6]{max-width:100%;justify-content:flex-start}.title-main[data-v-bd8d77a6]{max-width:none}.cockpit-main[data-v-bd8d77a6],.approval-grid[data-v-bd8d77a6],.action-bar-main[data-v-bd8d77a6],.action-bar-main.with-task-selector[data-v-bd8d77a6]{grid-template-columns:1fr}}@media (max-width: 680px){.title-main[data-v-bd8d77a6]{font-size:18px}.hero-main-left[data-v-bd8d77a6]{flex-wrap:wrap}}@media print{body.print-mode .sidebar,body.print-mode .tab-bar{display:none!important}body.print-mode .layout{grid-template-columns:1fr!important}body.print-mode .main-content{padding:0!important}}@media print{.hero-back[data-v-bd8d77a6],.cockpit-hero .button[data-v-bd8d77a6],.action-bar[data-v-bd8d77a6],.modal-mask[data-v-bd8d77a6],.main-right[data-v-bd8d77a6]{display:none!important}.cockpit-main[data-v-bd8d77a6]{grid-template-columns:1fr!important}.main-left[data-v-bd8d77a6]{max-width:100%!important}.card[data-v-bd8d77a6]{box-shadow:none!important;border:1px solid #ddd!important;break-inside:avoid}.field-value[data-v-bd8d77a6]{border:none!important;background:transparent!important;padding:4px 0!important}.approval-grid[data-v-bd8d77a6]{grid-template-columns:repeat(2,1fr)!important}.title-main[data-v-bd8d77a6]{font-size:18px!important}.hero-main-right[data-v-bd8d77a6]{max-width:100%!important}}.approval-workbench[data-v-cac00983]{display:grid;gap:8px}.metrics-grid[data-v-cac00983]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.metric-card[data-v-cac00983]{background:#f8fbff;border:1px solid #dbe7f6;border-radius:10px;padding:8px 10px}.metric-card.danger[data-v-cac00983]{background:#fff5f5;border-color:#ffd6d6}.metric-label[data-v-cac00983]{font-size:11px;color:#6b7280;line-height:1.3}.metric-value[data-v-cac00983]{margin-top:2px;font-size:18px;font-weight:700;color:#111827;line-height:1.2}.approval-workbench .list-head[data-v-cac00983]{padding:8px 14px}.approval-workbench .section-title[data-v-cac00983]{margin-bottom:2px}.row-actions[data-v-cac00983]{display:flex;align-items:center;gap:8px}.button.mini[data-v-cac00983]{padding:4px 8px;font-size:12px;min-height:auto}.sla[data-v-cac00983]{font-size:12px;font-weight:600}.sla.overdue[data-v-cac00983]{color:#c92a2a}.sla.warning[data-v-cac00983]{color:#d97904}.sla.normal[data-v-cac00983]{color:#0f766e}.row-overdue[data-v-cac00983]{background:#fff6f6}.row-warning[data-v-cac00983]{background:#fffaf2}@media (max-width: 1200px){.metrics-grid[data-v-cac00983]{grid-template-columns:repeat(2,minmax(0,1fr))}}.approval-config-grid[data-v-9266a010]{display:grid;grid-template-columns:300px 1fr;gap:14px}.approval-config-alert[data-v-9266a010]{padding:10px 12px;border-radius:10px;margin-bottom:12px;font-size:13px}.approval-config-alert.warning[data-v-9266a010]{background:#fff8e8;color:#8a4b00;border:1px solid #f4d39a}.warning-list[data-v-9266a010]{margin:8px 0 0;padding-left:18px}.warning-list li[data-v-9266a010]{margin:2px 0}.warning-more[data-v-9266a010]{margin-top:8px;font-size:12px}.approval-config-toolbar[data-v-9266a010]{display:flex;gap:8px;margin-bottom:12px}.approval-config-toolbar select[data-v-9266a010]{flex:1}.approval-flow-items[data-v-9266a010]{display:grid;gap:8px}.approval-flow-item[data-v-9266a010]{border:1px solid var(--line);background:#fff;border-radius:10px;text-align:left;padding:10px;cursor:pointer}.approval-flow-item.active[data-v-9266a010]{border-color:#e5a347;box-shadow:inset 0 0 0 1px #e5a347}.flow-title[data-v-9266a010]{font-weight:600;margin-bottom:6px}.flow-meta[data-v-9266a010]{display:flex;align-items:center;justify-content:space-between;color:#64748b;font-size:12px}.form-grid.two-cols[data-v-9266a010]{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.form-grid.two-cols .full[data-v-9266a010]{grid-column:1 / -1}.form-grid label[data-v-9266a010]{display:block;color:#64748b;font-size:12px;margin-bottom:4px}.form-grid input[data-v-9266a010],.form-grid select[data-v-9266a010],td input[data-v-9266a010],td select[data-v-9266a010]{width:100%}.step-actions[data-v-9266a010]{display:flex;gap:6px}.step-add[data-v-9266a010]{margin-top:10px}.approval-config-actions[data-v-9266a010]{margin-top:14px;display:flex;gap:8px;align-items:center}.preview-block[data-v-9266a010]{margin-top:16px;display:grid;gap:12px}.preview-region[data-v-9266a010]{border:1px solid var(--line);border-radius:10px;padding:10px}.preview-title[data-v-9266a010]{font-weight:600;margin-bottom:8px}.warn-text[data-v-9266a010]{color:#b54708;font-weight:600}.empty-line[data-v-9266a010]{color:#7c879a;text-align:center;padding:10px}@media (max-width: 1200px){.approval-config-grid[data-v-9266a010]{grid-template-columns:1fr}}.common-doc-layout[data-v-4cb7858f]{display:grid;grid-template-columns:320px 1fr;gap:16px}.directory-panel[data-v-4cb7858f],.doc-panel[data-v-4cb7858f]{min-height:70vh}.directory-create[data-v-4cb7858f]{display:flex;gap:8px;margin-bottom:12px}.directory-create input[data-v-4cb7858f]{flex:1}.directory-list[data-v-4cb7858f]{display:flex;flex-direction:column;gap:6px}.directory-item[data-v-4cb7858f]{text-align:left;border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer}.directory-item.active[data-v-4cb7858f]{border-color:#3b82f6;background:#eff6ff}.directory-meta[data-v-4cb7858f]{margin-top:12px;font-size:13px;color:#475569;display:grid;gap:4px}.directory-actions[data-v-4cb7858f]{margin-top:12px;display:grid;gap:8px}.doc-form[data-v-4cb7858f]{margin:10px 0 14px}.common-doc-table[data-v-4cb7858f]{min-width:980px}.mini-progress-wrap[data-v-4cb7858f]{margin-top:6px;max-width:220px}.mini-progress-text[data-v-4cb7858f]{font-size:12px;color:#64748b;margin-bottom:4px}.mini-progress[data-v-4cb7858f]{width:100%;height:4px;border-radius:999px;background:#e2e8f0;overflow:hidden}.mini-progress-fill[data-v-4cb7858f]{height:100%;background:#2563eb;border-radius:999px;transition:width .2s ease}.mini-progress-fill.indeterminate[data-v-4cb7858f]{width:35%!important;animation:progress-slide-4cb7858f 1.1s linear infinite}.preview-progress-wrap[data-v-4cb7858f]{margin-bottom:8px;max-width:360px}.modal-mask[data-v-4cb7858f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a52;display:flex;align-items:center;justify-content:center;z-index:3000}.modal-card[data-v-4cb7858f]{width:min(980px,92vw);max-height:82vh;overflow:auto;background:#fff;border-radius:12px;padding:16px}.preview-modal[data-v-4cb7858f]{width:min(1100px,94vw)}.preview-content[data-v-4cb7858f]{min-height:360px;max-height:68vh;overflow:auto;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:8px}.preview-image[data-v-4cb7858f]{display:block;max-width:100%;height:auto;margin:0 auto}.preview-frame[data-v-4cb7858f]{width:100%;min-height:62vh;border:none;background:#fff}.preview-text[data-v-4cb7858f]{margin:0;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5;color:#1e293b}@keyframes progress-slide-4cb7858f{0%{transform:translate(-120%)}to{transform:translate(380%)}}@media (max-width: 1024px){.common-doc-layout[data-v-4cb7858f]{grid-template-columns:1fr}}.supplier-table-wrap[data-v-9f9ffc9f]{--sticky-no-width: 3em;--sticky-name-width: 16em}.supplier-table th[data-v-9f9ffc9f],.supplier-table td[data-v-9f9ffc9f]{white-space:nowrap}.supplier-table th[data-v-9f9ffc9f]:nth-child(1),.supplier-table td[data-v-9f9ffc9f]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.supplier-table thead th[data-v-9f9ffc9f]:nth-child(1){z-index:7;background:#f1f5fb}.supplier-table th[data-v-9f9ffc9f]:nth-child(2),.supplier-table td[data-v-9f9ffc9f]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.supplier-table thead th[data-v-9f9ffc9f]:nth-child(2){z-index:6;background:#f1f5fb}.supplier-name-cell[data-v-9f9ffc9f]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.purchase-item-table-wrap[data-v-1725ac66]{--sticky-no-width: 3em;--sticky-name-width: 14em}.purchase-item-table th[data-v-1725ac66],.purchase-item-table td[data-v-1725ac66]{white-space:nowrap}.purchase-item-table th[data-v-1725ac66]:nth-child(1),.purchase-item-table td[data-v-1725ac66]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.purchase-item-table thead th[data-v-1725ac66]:nth-child(1){z-index:7;background:#f1f5fb}.purchase-item-table th[data-v-1725ac66]:nth-child(3),.purchase-item-table td[data-v-1725ac66]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.purchase-item-table thead th[data-v-1725ac66]:nth-child(3){z-index:6;background:#f1f5fb}.purchase-item-name-cell[data-v-1725ac66]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.framework-agreement-table-wrap[data-v-cb6ec175]{--sticky-no-width: 3em;--sticky-name-width: 16em}.framework-agreement-table th[data-v-cb6ec175],.framework-agreement-table td[data-v-cb6ec175]{white-space:nowrap}.framework-agreement-table th[data-v-cb6ec175]:nth-child(1),.framework-agreement-table td[data-v-cb6ec175]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.framework-agreement-table thead th[data-v-cb6ec175]:nth-child(1){z-index:7;background:#f1f5fb}.framework-agreement-table th[data-v-cb6ec175]:nth-child(3),.framework-agreement-table td[data-v-cb6ec175]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.framework-agreement-table thead th[data-v-cb6ec175]:nth-child(3){z-index:6;background:#f1f5fb}.framework-agreement-name-cell[data-v-cb6ec175]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.supplier-autocomplete[data-v-eb505b39]{position:relative;width:160px;flex:0 0 auto}.sa-input-wrap[data-v-eb505b39]{position:relative;display:flex;align-items:center}.sa-input-wrap input[data-v-eb505b39]{width:100%;padding:8px 28px 8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:inherit;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.sa-input-wrap input[data-v-eb505b39]:focus{outline:none;border-color:#8bb3f4;box-shadow:0 0 0 3px #8bb3f440}.sa-input-wrap input[data-v-eb505b39]::placeholder{color:#a0a8b8}.sa-input-wrap input[data-v-eb505b39]:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.sa-clear-btn[data-v-eb505b39]{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:#999;cursor:pointer;font-size:16px;line-height:1;padding:2px 6px;border-radius:4px}.sa-clear-btn[data-v-eb505b39]:hover{color:#333;background:#f0f0f0}.sa-dropdown[data-v-eb505b39]{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 24px #0f172a1f;max-height:240px;overflow-y:auto;padding:4px 0}.sa-status[data-v-eb505b39]{padding:10px 12px;color:#888;font-size:13px;text-align:center}.sa-option[data-v-eb505b39]{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:transparent;cursor:pointer;font-size:13px;color:var(--ink);transition:background .1s ease}.sa-option[data-v-eb505b39]:hover,.sa-option-highlighted[data-v-eb505b39]{background:var(--accent-soft)}.sa-option-name[data-v-eb505b39]{font-weight:500}.sa-option-short[data-v-eb505b39]{color:var(--muted);font-size:12px}.payment-summary[data-v-044eac5e]{display:flex;gap:16px;padding:10px 14px;background:#f8f9fa;border-radius:6px;font-size:13px;margin-bottom:8px}.payment-summary .remaining[data-v-044eac5e]{color:#2e7d32;font-weight:600}.pr-attachment-section[data-v-044eac5e]{background:#f8f9fa;border-radius:6px;padding:12px;margin:8px 0}.pr-attachment-row[data-v-044eac5e]{background:#fafbfc}.link-button[data-v-044eac5e]{background:none;border:none;color:#1976d2;cursor:pointer;padding:0;font-size:inherit;text-decoration:none}.link-button[data-v-044eac5e]:hover{text-decoration:underline}.project-picker[data-v-044eac5e]{display:flex;align-items:center;gap:8px}.project-selected[data-v-044eac5e]{color:#2e7d32;font-size:12px;display:flex;align-items:center}.purchase-request-table-wrap[data-v-2a793a73]{--sticky-no-width: 3em;--sticky-name-width: 16em}.purchase-request-table th[data-v-2a793a73],.purchase-request-table td[data-v-2a793a73]{white-space:nowrap}.purchase-request-table th[data-v-2a793a73]:nth-child(1),.purchase-request-table td[data-v-2a793a73]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.purchase-request-table thead th[data-v-2a793a73]:nth-child(1){z-index:7;background:#f1f5fb}.purchase-request-table th[data-v-2a793a73]:nth-child(3),.purchase-request-table td[data-v-2a793a73]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.purchase-request-table thead th[data-v-2a793a73]:nth-child(3){z-index:6;background:#f1f5fb}.purchase-request-name-cell[data-v-2a793a73]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.po-table-wrap[data-v-f1ad15e6]{--sticky-no-width: 3em;--sticky-name-width: 15em}.po-table th[data-v-f1ad15e6],.po-table td[data-v-f1ad15e6]{white-space:nowrap}.po-table th[data-v-f1ad15e6]:nth-child(1),.po-table td[data-v-f1ad15e6]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.po-table thead th[data-v-f1ad15e6]:nth-child(1){z-index:7;background:#f1f5fb}.po-table th[data-v-f1ad15e6]:nth-child(3),.po-table td[data-v-f1ad15e6]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.po-table thead th[data-v-f1ad15e6]:nth-child(3){z-index:6;background:#f1f5fb}.po-name-cell[data-v-f1ad15e6]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.modal-overlay[data-v-edc283f0]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-edc283f0]{background:#fff;border-radius:10px;width:680px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-edc283f0]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-edc283f0]{margin:0;font-size:16px}.modal-close[data-v-edc283f0]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-edc283f0]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-edc283f0]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-edc283f0]{width:200px}.picker-table-wrap[data-v-edc283f0]{overflow-x:auto}.picker-table[data-v-edc283f0]{font-size:13px}.picker-table td[data-v-edc283f0]:last-child{white-space:nowrap}.row-selected[data-v-edc283f0]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-edc283f0]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-edc283f0]{padding:2px 10px;font-size:12px}.modal-overlay[data-v-1e322e8a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-1e322e8a]{background:#fff;border-radius:10px;width:780px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-1e322e8a]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-1e322e8a]{margin:0;font-size:16px}.modal-close[data-v-1e322e8a]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-1e322e8a]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-1e322e8a]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-1e322e8a]{width:200px}.picker-table-wrap[data-v-1e322e8a]{overflow-x:auto}.picker-table[data-v-1e322e8a]{font-size:13px}.picker-table td[data-v-1e322e8a]:last-child{white-space:nowrap}.row-selected[data-v-1e322e8a]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-1e322e8a]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-1e322e8a]{padding:2px 10px;font-size:12px}.project-picker[data-v-fb969221]{display:flex;align-items:center;gap:8px}.project-selected[data-v-fb969221]{color:#2e7d32;font-size:12px;display:flex;align-items:center}.button.small[data-v-fb969221]{padding:2px 8px;font-size:12px}.payment-summary[data-v-fb969221]{display:flex;gap:16px;padding:10px 14px;background:#f8f9fa;border-radius:6px;font-size:13px;margin-bottom:8px}.payment-summary .remaining[data-v-fb969221]{color:#2e7d32;font-weight:600}.pr-attachment-section[data-v-fb969221]{background:#f8f9fa;border-radius:6px;padding:12px;margin:8px 0}.pr-attachment-row[data-v-fb969221]{background:#fafbfc}.link-button[data-v-fb969221]{background:none;border:none;color:#1976d2;cursor:pointer;padding:0;font-size:inherit;text-decoration:none}.link-button[data-v-fb969221]:hover{text-decoration:underline}.modal-overlay[data-v-a39b7164]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-a39b7164]{background:#fff;padding:24px;border-radius:8px;min-width:400px;max-width:500px}.modal-actions[data-v-a39b7164]{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.rfq-table-wrap[data-v-a39b7164]{--sticky-no-width: 3em;--sticky-name-width: 16em}.rfq-table th[data-v-a39b7164],.rfq-table td[data-v-a39b7164]{white-space:nowrap}.rfq-table th[data-v-a39b7164]:nth-child(1),.rfq-table td[data-v-a39b7164]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.rfq-table thead th[data-v-a39b7164]:nth-child(1){z-index:7;background:#f1f5fb}.rfq-table th[data-v-a39b7164]:nth-child(3),.rfq-table td[data-v-a39b7164]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.rfq-table thead th[data-v-a39b7164]:nth-child(3){z-index:6;background:#f1f5fb}.rfq-name-cell[data-v-a39b7164]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.modal-overlay[data-v-f710da2e]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-f710da2e]{background:#fff;padding:24px;border-radius:8px;min-width:450px;max-width:550px}.modal-actions[data-v-f710da2e]{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.attachment-row[data-v-f710da2e]{background:#fafbfc}.attachment-section[data-v-f710da2e]{background:#f8f9fa;border-radius:6px;padding:12px;margin:8px 0}.attachment-header[data-v-f710da2e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:600;font-size:13px}.attachment-upload[data-v-f710da2e]{display:flex;gap:8px;align-items:center;font-weight:400}.attachment-upload input[type=text][data-v-f710da2e],.attachment-upload input[data-v-f710da2e]:not([type]){padding:6px 8px;font-size:13px}.attachment-table[data-v-f710da2e]{font-size:13px}.no-attachments[data-v-f710da2e]{color:#888;font-size:13px;padding:8px 0}.file-hint[data-v-f710da2e]{margin-top:6px;font-size:12px;color:#2e7d32}.link-button[data-v-f710da2e]{background:none;border:none;color:#1976d2;cursor:pointer;padding:0;font-size:inherit;text-decoration:none}.link-button[data-v-f710da2e]:hover{text-decoration:underline}.link-button.danger[data-v-f710da2e]{color:#c92a2a}.modal-overlay[data-v-b41b89e3]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-b41b89e3]{background:#fff;padding:24px;border-radius:8px;min-width:400px;max-width:500px}.modal-actions[data-v-b41b89e3]{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.receipt-table-wrap[data-v-546ab163]{--sticky-no-width: 3em;--sticky-name-width: 12em}.receipt-table th[data-v-546ab163],.receipt-table td[data-v-546ab163]{white-space:nowrap}.receipt-table th[data-v-546ab163]:nth-child(1),.receipt-table td[data-v-546ab163]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.receipt-table thead th[data-v-546ab163]:nth-child(1){z-index:7;background:#f1f5fb}.receipt-table th[data-v-546ab163]:nth-child(2),.receipt-table td[data-v-546ab163]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.receipt-table thead th[data-v-546ab163]:nth-child(2){z-index:6;background:#f1f5fb}.tabs[data-v-37c9c55c]{display:flex;gap:8px;margin-bottom:16px}.tab-btn[data-v-37c9c55c]{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.tab-btn.active[data-v-37c9c55c]{background:var(--primary-color, #2563eb);color:#fff;border-color:var(--primary-color, #2563eb)}.modal-overlay[data-v-948a1519]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-948a1519]{background:#fff;padding:24px;border-radius:8px;min-width:500px;max-width:600px}.payment-request-table-wrap[data-v-948a1519]{--sticky-no-width: 3em;--sticky-name-width: 12em}.payment-request-table th[data-v-948a1519],.payment-request-table td[data-v-948a1519]{white-space:nowrap}.payment-request-table th[data-v-948a1519]:nth-child(1),.payment-request-table td[data-v-948a1519]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.payment-request-table thead th[data-v-948a1519]:nth-child(1){z-index:7;background:#f1f5fb}.payment-request-table th[data-v-948a1519]:nth-child(2),.payment-request-table td[data-v-948a1519]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.payment-request-table thead th[data-v-948a1519]:nth-child(2){z-index:6;background:#f1f5fb}.payment-request-name-cell[data-v-948a1519]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.modal-overlay[data-v-21f9844a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-21f9844a]{background:#fff;border-radius:10px;width:780px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-21f9844a]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-21f9844a]{margin:0;font-size:16px}.modal-close[data-v-21f9844a]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-21f9844a]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-21f9844a]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-21f9844a]{width:200px}.picker-table-wrap[data-v-21f9844a]{overflow-x:auto}.picker-table[data-v-21f9844a]{font-size:13px}.picker-table td[data-v-21f9844a]:last-child{white-space:nowrap}.row-selected[data-v-21f9844a]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-21f9844a]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-21f9844a]{padding:2px 10px;font-size:12px}.modal-overlay[data-v-e8e468f1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-e8e468f1]{background:#fff;border-radius:10px;width:780px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-e8e468f1]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-e8e468f1]{margin:0;font-size:16px}.modal-close[data-v-e8e468f1]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-e8e468f1]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-e8e468f1]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-e8e468f1]{width:200px}.picker-table-wrap[data-v-e8e468f1]{overflow-x:auto}.picker-table[data-v-e8e468f1]{font-size:13px}.picker-table td[data-v-e8e468f1]:last-child{white-space:nowrap}.row-selected[data-v-e8e468f1]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-e8e468f1]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-e8e468f1]{padding:2px 10px;font-size:12px}.modal-overlay[data-v-0a6c7492]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-0a6c7492]{background:#fff;padding:24px;border-radius:8px;min-width:500px;max-width:600px}.modal-actions[data-v-0a6c7492]{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.picker-display[data-v-0a6c7492]{display:flex;align-items:center;gap:8px}.picker-input[data-v-0a6c7492]{flex:1}.order-amount-info[data-v-0a6c7492]{display:flex;gap:16px;margin-top:6px;font-size:13px;color:#666}.order-amount-info .remaining[data-v-0a6c7492]{color:#0a7;font-weight:600}.bank-info-header[data-v-0a6c7492]{display:flex;justify-content:space-between;align-items:center}.bank-info-hint[data-v-0a6c7492]{font-size:13px;color:#888;margin-top:8px;padding:0 20px 12px}.payment-record-table-wrap[data-v-f719e8be]{--sticky-no-width: 3em;--sticky-name-width: 12em}.payment-record-table th[data-v-f719e8be],.payment-record-table td[data-v-f719e8be]{white-space:nowrap}.payment-record-table th[data-v-f719e8be]:nth-child(1),.payment-record-table td[data-v-f719e8be]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.payment-record-table thead th[data-v-f719e8be]:nth-child(1){z-index:7;background:#f1f5fb}.payment-record-table th[data-v-f719e8be]:nth-child(2),.payment-record-table td[data-v-f719e8be]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.payment-record-table thead th[data-v-f719e8be]:nth-child(2){z-index:6;background:#f1f5fb}.payment-record-name-cell[data-v-f719e8be]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.modal-overlay[data-v-c67e4ba4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-c67e4ba4]{background:#fff;border-radius:10px;width:900px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-c67e4ba4]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-c67e4ba4]{margin:0;font-size:16px}.modal-close[data-v-c67e4ba4]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-c67e4ba4]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-c67e4ba4]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-c67e4ba4]{width:200px}.picker-table-wrap[data-v-c67e4ba4]{overflow-x:auto}.picker-table[data-v-c67e4ba4]{font-size:13px}.picker-table td[data-v-c67e4ba4]:last-child{white-space:nowrap}.row-selected[data-v-c67e4ba4]{background:var(--accent-soft, #e8f0fe)}.remaining-amount[data-v-c67e4ba4]{color:#2e7d32;font-weight:500}.picker-pager[data-v-c67e4ba4]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-c67e4ba4]{padding:2px 10px;font-size:12px}.picker-display[data-v-d031c753]{display:flex;align-items:center;gap:8px}.picker-input[data-v-d031c753]{flex:1}.outbound-table-wrap[data-v-9e85dc63]{--sticky-no-width: 3em;--sticky-name-width: 12em}.outbound-table th[data-v-9e85dc63],.outbound-table td[data-v-9e85dc63]{white-space:nowrap}.outbound-table th[data-v-9e85dc63]:nth-child(1),.outbound-table td[data-v-9e85dc63]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.outbound-table thead th[data-v-9e85dc63]:nth-child(1){z-index:7;background:#f1f5fb}.outbound-table th[data-v-9e85dc63]:nth-child(2),.outbound-table td[data-v-9e85dc63]:nth-child(2){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.outbound-table thead th[data-v-9e85dc63]:nth-child(2){z-index:6;background:#f1f5fb}.chart-wrap[data-v-5424ef74]{height:260px}.chart-wrap-wide[data-v-5424ef74]{height:300px}.empty-hint[data-v-5424ef74]{text-align:center;color:#8a94a6;padding:32px 0}.filter-autocomplete[data-v-9c1782d5]{position:relative}.filter-suggestions[data-v-9c1782d5]{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:6px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 2px 8px #00000014}.filter-suggestion[data-v-9c1782d5]{padding:6px 10px;cursor:pointer}.filter-suggestion[data-v-9c1782d5]:hover{background:var(--accent-soft)}.filter-empty[data-v-9c1782d5]{padding:6px 10px;color:#888}.project-table-wrap[data-v-9c1782d5]{--sticky-no-width: 3em;--sticky-name-width: 16em}.project-table th[data-v-9c1782d5],.project-table td[data-v-9c1782d5]{white-space:nowrap}.project-table th[data-v-9c1782d5]:nth-child(1),.project-table td[data-v-9c1782d5]:nth-child(1){position:sticky;left:0;z-index:4;background:#fff;width:var(--sticky-no-width);min-width:var(--sticky-no-width);max-width:var(--sticky-no-width);text-align:center}.project-table thead th[data-v-9c1782d5]:nth-child(1){z-index:7;background:#f1f5fb}.project-table th[data-v-9c1782d5]:nth-child(3),.project-table td[data-v-9c1782d5]:nth-child(3){position:sticky;left:var(--sticky-no-width);z-index:3;background:#fff;width:var(--sticky-name-width);min-width:var(--sticky-name-width);max-width:var(--sticky-name-width);box-shadow:10px 0 14px #0f172a14}.project-table thead th[data-v-9c1782d5]:nth-child(3){z-index:6;background:#f1f5fb}.project-name-cell[data-v-9c1782d5]{display:inline-block;max-width:var(--sticky-name-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.modal-overlay[data-v-d012ad33]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-d012ad33]{background:#fff;border-radius:10px;width:800px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-d012ad33]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-d012ad33]{margin:0;font-size:16px}.modal-close[data-v-d012ad33]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-d012ad33]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-d012ad33]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-d012ad33]{width:200px}.picker-table-wrap[data-v-d012ad33]{overflow-x:auto}.picker-table[data-v-d012ad33]{font-size:13px}.picker-table td[data-v-d012ad33]:last-child{white-space:nowrap}.row-selected[data-v-d012ad33]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-d012ad33]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-d012ad33]{padding:2px 10px;font-size:12px}.modal-overlay[data-v-668eaee6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1500}.modal-dialog[data-v-668eaee6]{background:#fff;border-radius:10px;width:800px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-668eaee6]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.modal-header h3[data-v-668eaee6]{margin:0;font-size:16px}.modal-close[data-v-668eaee6]{background:none;border:none;font-size:22px;cursor:pointer;color:#888;padding:0 4px}.modal-body[data-v-668eaee6]{padding:16px 20px;overflow-y:auto;flex:1}.picker-filters[data-v-668eaee6]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.picker-filters .filter-search[data-v-668eaee6]{width:200px}.picker-table-wrap[data-v-668eaee6]{overflow-x:auto}.picker-table[data-v-668eaee6]{font-size:13px}.picker-table td[data-v-668eaee6]:last-child{white-space:nowrap}.row-selected[data-v-668eaee6]{background:var(--accent-soft, #e8f0fe)}.picker-pager[data-v-668eaee6]{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px}.button.small[data-v-668eaee6]{padding:2px 10px;font-size:12px}.project-detail[data-v-7ebbbd9d]{font-size:13px}.account-picker[data-v-7ebbbd9d]{position:relative}.account-search[data-v-7ebbbd9d]{display:flex;gap:6px}.account-search input[data-v-7ebbbd9d]{flex:1}.account-selected[data-v-7ebbbd9d]{margin-top:6px;color:#2e7d32;font-size:12px}.account-results[data-v-7ebbbd9d]{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:6px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 2px 8px #00000014;margin-top:4px}.account-option[data-v-7ebbbd9d]{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;cursor:pointer}.account-option[data-v-7ebbbd9d]:hover{background:var(--accent-soft)}.account-hint[data-v-7ebbbd9d]{margin-top:4px;font-size:12px;color:#888}:root{color-scheme:light;--bg: #f4f7fb;--ink: #13203a;--muted: #5a6578;--card: #ffffff;--line: #e3e8f0;--accent: #d97706;--accent-soft: #fff4e5;--accent-strong: #b45309;--shadow: 0 14px 30px rgba(19, 32, 58, .12);--shadow-soft: 0 8px 20px rgba(19, 32, 58, .08);--success: #118a4b;--warning: #d9761a;--info: #2563eb;--error: #dc2626}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Space Grotesk,Segoe UI,sans-serif;background:radial-gradient(circle at top left,#fff,#f4f7fb 45%,#eef2f8);color:var(--ink)}a{color:inherit;text-decoration:none}.layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh;transition:grid-template-columns .2s ease}.layout.sidebar-collapsed{grid-template-columns:72px 1fr}.sidebar{background:#3b1d00;color:#e6eefb;border-right:1px solid rgba(255,255,255,.08);padding:22px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;transition:padding .2s ease}.brand{display:flex;align-items:center;justify-content:space-between;font-weight:700;margin-bottom:20px;letter-spacing:.4px;color:#fff;font-size:15px}.brand-main{display:flex;align-items:center;gap:8px}.brand-logo{width:28px;height:28px;border-radius:8px;object-fit:cover;box-shadow:0 6px 14px #0000002e}.brand-text{font-size:15px}.sidebar-toggle{width:28px;height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.26);background:#ffffff14;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease,transform .2s ease}.sidebar-toggle:hover{background:#ffffff29;border-color:#fff6}.sidebar-toggle:focus-visible{outline:2px solid rgba(255,255,255,.55);outline-offset:1px}.nav{flex:1;overflow-y:auto}.sidebar-user{margin:0 6px 16px;padding:12px;border-radius:12px;background:linear-gradient(135deg,#ffffff1f,#ffffff0a);border:1px solid rgba(255,255,255,.14);display:grid;gap:10px;box-shadow:inset 0 0 0 1px #ffffff05}.sidebar-user-head{display:flex;align-items:center;gap:10px}.sidebar-user-label{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#e6eefbb3}.sidebar-user-name{font-size:12px;font-weight:600;color:#fff}.sidebar-user-actions{display:flex;gap:10px;flex-wrap:wrap}.sidebar-footer{display:grid;gap:10px;margin-top:12px}.sidebar-card{margin:0 6px 16px;padding:12px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.sidebar-card label{display:block;font-size:11px;color:#e6eefbcc;margin-top:8px}.sidebar-card input{width:100%;margin-top:6px;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0f1f3db3;color:#e6eefb;transition:border-color .2s ease,box-shadow .2s ease}.sidebar-card input:focus{outline:none;border-color:#66a3ffbf;box-shadow:0 0 0 2px #66a3ff33}.sidebar-actions{display:flex;gap:8px;margin-top:12px}.text-link{background:transparent;border:none;padding:0;color:#e6eefbe6;text-align:left;cursor:pointer;text-decoration:none;border-bottom:1px dashed rgba(230,238,251,.4);transition:color .2s ease,border-color .2s ease}.text-link.small{font-size:12px}.text-link:hover{color:#fff;border-color:#e6eefbe6}.text-link.danger{color:#ffb3bf;border-color:#ffb3bf99}.text-link.danger:hover{color:#ffd1d8;border-color:#ffd1d8e6}.text-link:disabled{color:#e6eefb73;cursor:not-allowed}.nav a{display:block;border-radius:10px;margin-bottom:8px;transition:all .2s ease;color:#e6eefb;position:relative;padding:10px 12px 10px 16px;display:flex;align-items:center;gap:8px}.nav a.router-link-active{background:#d9770638;color:#fff}.nav a.router-link-active:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:3px;border-radius:999px;background:var(--accent)}.nav a:hover{background:#ffffff1f}.nav-group-wrap{position:relative;margin-bottom:4px}.nav-group-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px 10px 16px;border-radius:10px;background:transparent;border:none;color:#e6eefb;cursor:pointer;font:inherit;font-size:inherit;text-align:left;transition:background .2s ease}.nav-group-header:hover{background:#ffffff1f}.nav-group-wrap.is-active>.nav-group-header{background:#ffffff0f}.nav-group-arrow{margin-left:auto;font-size:14px;opacity:.5;transition:transform .2s ease;line-height:1}.nav-group-arrow.is-open{transform:rotate(90deg)}.nav-group-body{max-height:0;overflow:hidden;opacity:0;transition:max-height .25s ease,opacity .2s ease}.nav-group-body.is-open{max-height:500px;opacity:1}.nav-group-body a{padding:6px 12px 6px 36px;margin-bottom:1px;line-height:1.4;font-size:15px}.nav-group-popup{display:none}.nav-group-popup-title{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#e6eefb99;padding:8px 12px 4px}.nav-icon{font-size:12px;opacity:.7}.nav-label{white-space:nowrap}.nav-badge{margin-left:auto;min-width:18px;height:18px;border-radius:999px;padding:0 6px;background:#dc2626;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.layout.sidebar-collapsed .brand-text{display:none}.layout.sidebar-collapsed .brand-main{justify-content:center}.layout.sidebar-collapsed .sidebar{padding:22px 10px}.layout.sidebar-collapsed .nav a{justify-content:center;padding-left:10px;padding-right:10px}.layout.sidebar-collapsed .nav-label{display:none}.layout.sidebar-collapsed .nav-badge{position:absolute;top:4px;right:4px;margin-left:0;min-width:16px;height:16px;padding:0 4px;line-height:16px;font-size:10px}.layout.sidebar-collapsed .nav a.router-link-active:before{left:2px}.layout.sidebar-collapsed .nav-group-header{justify-content:center;padding-left:10px;padding-right:10px}.layout.sidebar-collapsed .nav-group-header .nav-label,.layout.sidebar-collapsed .nav-group-header .nav-group-arrow,.layout.sidebar-collapsed .nav-group-body{display:none}.layout.sidebar-collapsed .nav-group-popup{display:block;position:absolute;left:100%;top:0;margin-left:6px;min-width:180px;background:#3b1d00;border-radius:10px;box-shadow:0 8px 24px #00000059;padding:6px;z-index:100;opacity:0;pointer-events:none;transform:translate(-4px);transition:opacity .15s ease,transform .15s ease}.layout.sidebar-collapsed .nav-group-wrap:hover .nav-group-popup{opacity:1;pointer-events:auto;transform:translate(0)}.layout.sidebar-collapsed .nav-group-wrap:after{content:"";position:absolute;left:100%;top:0;width:10px;height:100%}.layout.sidebar-collapsed .nav-group-popup a{justify-content:flex-start;padding-left:12px}.layout.sidebar-collapsed .nav-group-popup .nav-label{display:inline}.main{display:flex;flex-direction:column;min-width:0;min-height:100vh}.main-content{padding:28px 36px 60px;flex:1}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow-soft)}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow-soft);position:relative}.page-header:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:999px;background:linear-gradient(180deg,#f59e0b,#b45309)}.page-title{font-size:22px;margin:0}.page-subtitle{color:var(--muted);font-size:13px}.page-actions{display:flex;gap:8px}.button{background:var(--accent);color:#fff;border:none;padding:10px 14px;border-radius:999px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .2s ease;box-shadow:0 8px 18px #d9770647}.button.secondary{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:none}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--accent);color:#fff;border:none;padding:8px 18px;border-radius:8px;font-size:14px;font-weight:500;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .15s ease;box-shadow:0 2px 8px #d977062e}.btn:hover{background:#e07b0a;transform:translateY(-1px);box-shadow:0 4px 14px #d9770647}.btn:active{transform:translateY(0)}.btn-secondary{background:#fff;color:var(--ink);border:1px solid #d1d5db;box-shadow:0 1px 3px #0000000f}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 2px 8px #00000014}.table{width:100%;border-collapse:collapse}.table-wrap{overflow-x:auto}.opportunity-table{min-width:1040px}.opportunity-table th,.opportunity-table td{white-space:nowrap}.opportunity-table th:nth-child(1),.opportunity-table td:nth-child(1){min-width:64px}.opportunity-table th:nth-child(2),.opportunity-table td:nth-child(2){min-width:200px}.opportunity-table th:nth-child(3),.opportunity-table td:nth-child(3){min-width:110px}.opportunity-table th:nth-child(4),.opportunity-table td:nth-child(4){min-width:120px}.opportunity-table th:nth-child(5),.opportunity-table td:nth-child(5){min-width:160px}.opportunity-table th:nth-child(6),.opportunity-table td:nth-child(6){min-width:120px}.opportunity-table th:nth-child(7),.opportunity-table td:nth-child(7){min-width:120px}.opportunity-table th:nth-child(8),.opportunity-table td:nth-child(8){min-width:200px}.opportunity-table th:nth-child(9),.opportunity-table td:nth-child(9){min-width:140px}.account-table{min-width:1160px}.account-table th,.account-table td{white-space:nowrap}.account-table th:nth-child(1),.account-table td:nth-child(1){min-width:64px}.account-table th:nth-child(2),.account-table td:nth-child(2){min-width:200px}.account-table th:nth-child(3),.account-table td:nth-child(3){min-width:120px}.account-table th:nth-child(4),.account-table td:nth-child(4){min-width:100px}.account-table th:nth-child(5),.account-table td:nth-child(5){min-width:120px}.account-table th:nth-child(6),.account-table td:nth-child(6){min-width:120px}.account-table th:nth-child(7),.account-table td:nth-child(7){min-width:140px}.account-table th:nth-child(8),.account-table td:nth-child(8){min-width:80px}.account-table th:nth-child(9),.account-table td:nth-child(9){min-width:120px}.account-table th:nth-child(10),.account-table td:nth-child(10){min-width:120px}.account-table th:nth-child(11),.account-table td:nth-child(11){min-width:120px}.account-table-wrap{max-height:70vh;overflow:auto}.contract-table{min-width:1560px}.contract-table th,.contract-table td{white-space:nowrap}.contract-table th:nth-child(1),.contract-table td:nth-child(1){min-width:64px}.contract-table th:nth-child(2),.contract-table td:nth-child(2){min-width:200px}.contract-table th:nth-child(3),.contract-table td:nth-child(3){min-width:110px}.contract-table th:nth-child(4),.contract-table td:nth-child(4){min-width:110px}.contract-table th:nth-child(5),.contract-table td:nth-child(5){min-width:160px}.contract-table th:nth-child(6),.contract-table td:nth-child(6){min-width:60px}.contract-table th:nth-child(7),.contract-table td:nth-child(7){min-width:120px}.contract-table th:nth-child(8),.contract-table td:nth-child(8){min-width:120px}.contract-table th:nth-child(9),.contract-table td:nth-child(9){min-width:120px}.contract-table th:nth-child(10),.contract-table td:nth-child(10){min-width:120px}.contract-table th:nth-child(11),.contract-table td:nth-child(11){min-width:120px}.contract-table th:nth-child(12),.contract-table td:nth-child(12){min-width:120px}.contract-table th:nth-child(13),.contract-table td:nth-child(13){min-width:120px}.contract-table th:nth-child(14),.contract-table td:nth-child(14){min-width:140px}.contract-table-wrap{max-height:70vh;overflow:scroll;scrollbar-gutter:stable both-edges}.contract-table-wrap::-webkit-scrollbar{width:10px;height:10px}.contract-table-wrap::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.contract-table-wrap::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;border:2px solid #eef2f7}.contract-receivable-table{min-width:1180px}.contract-receivable-table th,.contract-receivable-table td{white-space:nowrap}.contract-receivable-table th:nth-child(1),.contract-receivable-table td:nth-child(1){min-width:64px}.contract-receivable-table th:nth-child(2),.contract-receivable-table td:nth-child(2){min-width:200px}.contract-receivable-table th:nth-child(3),.contract-receivable-table td:nth-child(3){min-width:160px}.contract-receivable-table th:nth-child(4),.contract-receivable-table td:nth-child(4){min-width:120px}.contract-receivable-table th:nth-child(5),.contract-receivable-table td:nth-child(5){min-width:120px}.contract-receivable-table th:nth-child(6),.contract-receivable-table td:nth-child(6){min-width:120px}.contract-receivable-table th:nth-child(7),.contract-receivable-table td:nth-child(7){min-width:120px}.contract-receivable-table th:nth-child(8),.contract-receivable-table td:nth-child(8){min-width:120px}.contract-receivable-table th:nth-child(9),.contract-receivable-table td:nth-child(9){min-width:120px}.contract-receivable-table th:nth-child(10),.contract-receivable-table td:nth-child(10){min-width:140px}.payment-table{min-width:1280px}.payment-table th,.payment-table td{white-space:nowrap}.payment-table th:nth-child(1),.payment-table td:nth-child(1){min-width:64px}.payment-table th:nth-child(2),.payment-table td:nth-child(2){min-width:200px}.payment-table th:nth-child(3),.payment-table td:nth-child(3){min-width:120px}.payment-table th:nth-child(4),.payment-table td:nth-child(4){min-width:160px}.payment-table th:nth-child(5),.payment-table td:nth-child(5){min-width:100px}.payment-table th:nth-child(6),.payment-table td:nth-child(6){min-width:100px}.payment-table th:nth-child(7),.payment-table td:nth-child(7){min-width:120px}.payment-table th:nth-child(8),.payment-table td:nth-child(8){min-width:160px}.payment-table th:nth-child(9),.payment-table td:nth-child(9){min-width:120px}.payment-table th:nth-child(10),.payment-table td:nth-child(10){min-width:120px}.payment-table th:nth-child(11),.payment-table td:nth-child(11){min-width:140px}.payment-table th:nth-child(12),.payment-table td:nth-child(12){min-width:140px}.payment-table th:nth-child(13),.payment-table td:nth-child(13){min-width:140px}.opportunity-table th:nth-child(1),.opportunity-table td:nth-child(1),.account-table th:nth-child(1),.account-table td:nth-child(1),.contract-table th:nth-child(1),.contract-table td:nth-child(1),.contract-receivable-table th:nth-child(1),.contract-receivable-table td:nth-child(1),.payment-table th:nth-child(1),.payment-table td:nth-child(1){width:3em;min-width:3em;max-width:3em;text-align:center;padding-left:6px;padding-right:6px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:10px;overflow-x:visible;overflow-y:visible}.filter-bar input,.filter-bar select{width:160px;flex:0 0 auto}.filter-bar .filter-search{width:220px}.filter-bar .button{white-space:nowrap}.filter-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1 1 auto}.filter-right{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin-left:auto}.filter-line{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.opportunity-filters{flex-wrap:nowrap;overflow-x:auto;align-items:center;margin-bottom:6px}.opportunity-filters .filter-left{flex-wrap:nowrap;align-items:center}.opportunity-filters input,.opportunity-filters select{min-width:140px}.opportunity-filters .button{white-space:nowrap}.account-filters,.payment-filters{flex-wrap:nowrap;overflow-x:auto}.account-filters .filter-left,.payment-filters .filter-left,.dashboard-filters .filter-left{flex-wrap:nowrap}.dashboard-filters select{min-width:140px}.dashboard-filters .button{white-space:nowrap;min-width:92px}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:6px 10px}.toolbar-left{display:flex;align-items:center;gap:8px}.toolbar-label{font-size:12px;color:var(--muted)}.compact-select{height:32px;padding:4px 10px;border-radius:8px;border:1px solid var(--line);background:#fff}.button.small{padding:6px 12px;font-size:13px;box-shadow:none}.button.icon-only{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.button .icon{font-size:14px;line-height:1}.pager{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:13px;color:var(--muted)}.pager span{white-space:nowrap}.pager select,.pager .compact-select{width:auto;min-width:76px;flex:0 0 auto}.pager button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer}.pager button.active{background:#fff4e6;border-color:#ffd8a8;color:var(--accent)}.pager button:disabled{opacity:.5;cursor:not-allowed}.table th,.table td{text-align:left;padding:10px;border-bottom:1px solid var(--line);font-size:14px}.table thead th{background:#f1f5fb;color:#31415d;font-weight:600}.table tbody tr:hover{background:#fffaf3}.table tbody tr:nth-child(2n){background:#fbfdff}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}input,select,textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#8bb3f4;box-shadow:0 0 0 3px #8bb3f440}input::placeholder,textarea::placeholder{color:#a0a8b8}.toolbar{display:flex;gap:10px;margin-bottom:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer;font-size:13px;transition:all .2s ease}.tab.active{background:var(--accent-soft);border-color:#f6d7b0;color:var(--accent-strong)}.tab:hover{background:#fff2e0}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;background:#f1f3f5}.badge.green{background:#e8f7ee;color:var(--success)}.badge.orange{background:#fff1e5;color:var(--warning)}.badge.blue{background:#fff2e0;color:#b45309}.badge.gray{background:#f1f3f5;color:#495057}.badge.red{background:#fde8e8;color:#c92a2a}.content-grid{display:grid;grid-template-columns:280px 1fr;gap:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:12px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f59e0b,#b45309)}.stat-label{color:var(--muted);font-size:12px}.stat-value{font-size:20px;font-weight:700}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px}.dashboard-card{display:grid;gap:12px}.mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.mini-card{border-radius:12px;border:1px solid var(--line);background:#f7f9fc;padding:12px}.mini-label{font-size:12px;color:var(--muted)}.mini-value{font-size:18px;font-weight:700;margin-top:6px}.bar-list{display:grid;gap:10px}.bar-item{display:grid;grid-template-columns:120px 1fr 72px;gap:10px;align-items:center;font-size:12px}.bar-label{color:#2a3b56;font-weight:600}.bar-track{height:8px;border-radius:999px;background:#eef2f7;overflow:hidden}.bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#b45309);transition:width .3s ease}.bar-value{text-align:right;color:var(--muted)}.dashboard-table .table td,.dashboard-table .table th{font-size:12px}.field{margin-bottom:10px}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.detail-header{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.detail-title{font-size:22px;font-weight:700;margin-bottom:6px}.detail-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:13px}.section-title{font-size:14px;font-weight:600;margin-bottom:10px;letter-spacing:.2px;text-transform:uppercase;color:#2a3b56}.opportunity-detail{font-size:13px}.opportunity-detail .detail-header{margin-bottom:10px}.opportunity-detail .detail-title{font-size:18px;margin-bottom:4px}.detail-title-wrap{display:flex;align-items:flex-start;gap:8px}.back-button{border:1px solid var(--line);background:#fff;color:var(--ink);width:28px;height:28px;border-radius:8px;cursor:pointer;line-height:1;font-size:16px;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.back-button:hover{transform:translateY(-1px)}.opportunity-detail .detail-meta{gap:10px;font-size:12px}.opportunity-detail .card{padding:12px;margin-bottom:12px}.opportunity-detail .section-title{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:#1f2f4d;background:#f3f6fb;border:1px solid var(--line);padding:6px 10px;border-radius:8px;margin-bottom:8px;display:inline-flex;align-items:center;gap:6px}.opportunity-detail .section-title:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--accent);display:inline-block}.opportunity-detail .form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.opportunity-detail label{font-size:11px}.opportunity-detail input,.opportunity-detail select,.opportunity-detail textarea{padding:6px 8px;border-radius:7px;font-size:13px}.opportunity-detail .table th,.opportunity-detail .table td{padding:8px;font-size:12px}.filter-actions{display:flex;gap:8px;margin-top:10px}.list-card{padding:0;min-width:0;overflow-x:auto}.list-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted);background:#f1f5fb;gap:12px}.list-head-info{display:flex;flex-direction:column;gap:4px}.list-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.list-row{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);transition:background .2s ease}.list-row:last-child{border-bottom:none}.list-row:hover{background:#fffaf3}.list-title{font-size:15px;font-weight:600;margin-bottom:6px}.list-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.account-picker{display:flex;flex-direction:column;gap:8px;position:relative}.account-search{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.account-selected,.account-hint{font-size:12px;color:var(--muted)}.account-results{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;display:flex;flex-wrap:wrap;gap:8px;padding:8px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 24px #0f172a1f;max-height:220px;overflow:auto}.account-option{border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:#fff;cursor:pointer;font-size:12px;transition:all .2s ease}.account-option:hover{background:var(--accent-soft);border-color:#f6d7b0}.account-create{padding-top:8px;border-top:1px dashed var(--line)}.list-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.link-button{color:var(--accent);font-size:13px;transition:color .2s ease}.link-button:hover{color:#a23b0e}@media (max-width: 960px){.layout,.layout.sidebar-collapsed{grid-template-columns:1fr}.sidebar{display:none}.content-grid{grid-template-columns:1fr}.list-toolbar{flex-wrap:wrap}.filter-right{width:100%;margin-left:0;justify-content:flex-start}.bar-item{grid-template-columns:1fr;gap:6px}.bar-value{text-align:left}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:min(380px,calc(100vw - 40px))}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);border-left:4px solid var(--line);pointer-events:auto;font-size:14px;line-height:1.4}.toast.info{border-left-color:var(--info)}.toast.success{border-left-color:var(--success)}.toast.warning{border-left-color:var(--warning)}.toast.error{border-left-color:var(--error)}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;border-radius:50%}.toast.info .toast-icon{color:var(--info)}.toast.success .toast-icon{color:var(--success)}.toast.warning .toast-icon{color:var(--warning)}.toast.error .toast-icon{color:var(--error)}.toast-body{flex:1;min-width:0;word-break:break-word;color:var(--ink)}.toast-close{flex-shrink:0;width:20px;height:20px;border:none;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;border-radius:4px;transition:background .15s ease,color .15s ease;padding:0}.toast-close:hover{background:#f1f5f9;color:var(--ink)}.toast-enter-active{transition:transform .25s ease,opacity .25s ease}.toast-leave-active{transition:transform .2s ease,opacity .2s ease}.toast-enter-from{transform:translate(100%);opacity:0}.toast-leave-to{transform:translate(40px);opacity:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#0f172a59;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:min(1120px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:12px;box-shadow:0 24px 80px #0f172a40;padding:18px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.modal-title{font-size:16px;font-weight:600;color:var(--ink)}.modal-body{margin-bottom:16px}.modal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.confirm-card{width:min(420px,calc(100vw - 40px));padding:22px}.confirm-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.confirm-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1}.confirm-icon.warn{background:#fff4e5;color:var(--warning)}.confirm-icon.danger{background:#fef2f2;color:var(--error)}.confirm-title{font-size:15px;font-weight:600;color:var(--ink);margin-bottom:4px}.confirm-message{font-size:13px;color:var(--muted);line-height:1.5}.confirm-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.button.danger{background:var(--error);color:#fff;box-shadow:0 8px 18px #dc262647}.button.danger:hover{background:#b91c1c}label.required:before{content:"*";color:var(--error);margin-right:4px;font-weight:600}.field-error input,.field-error select,.field-error textarea{border-color:var(--error);box-shadow:0 0 0 3px #dc26261f}.field-error label{color:var(--error)}.field-error-msg{color:var(--error);font-size:12px;margin-top:4px;line-height:1.3}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg,#f0f2f5 25%,#e4e8ed,#f0f2f5 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease infinite;border-radius:6px}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-title{height:22px;width:60%;margin-bottom:12px}.skeleton-card{height:120px;border-radius:14px;margin-bottom:16px}.skeleton-stat{height:68px;border-radius:14px}.skeleton-table-row{height:44px;margin-bottom:1px;border-radius:0}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffb3;z-index:10;display:flex;align-items:center;justify-content:center;border-radius:inherit}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:24px;height:24px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}.spinner.small{width:16px;height:16px;border-width:2px}.table-loading{position:relative}.button.loading{opacity:.75;cursor:not-allowed;pointer-events:none}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:6px}.button.secondary .btn-spinner{border-color:#13203a33;border-top-color:var(--accent)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.empty-state-icon{font-size:48px;line-height:1;margin-bottom:12px;opacity:.4}.empty-state-text{font-size:16px;color:var(--muted);margin-bottom:4px}.empty-state-hint{font-size:13px;color:var(--muted);opacity:.7;margin-bottom:12px}.empty-state-action{margin-top:8px}.tab-bar{display:flex;align-items:center;background:var(--card);border-bottom:1px solid var(--line);height:40px;flex-shrink:0}.tab-bar-scroll{display:flex;align-items:stretch;overflow-x:auto;overflow-y:hidden;white-space:nowrap;height:100%;scrollbar-width:none}.tab-bar-scroll::-webkit-scrollbar{display:none}.tab-item{display:inline-flex;align-items:center;gap:6px;padding:0 14px;font-size:13px;color:var(--muted);background:transparent;border:none;border-right:1px solid var(--line);cursor:pointer;position:relative;transition:color .15s,background .15s;white-space:nowrap;flex-shrink:0}.tab-item:hover{background:var(--bg);color:var(--ink)}.tab-item.active{color:var(--ink);font-weight:500}.tab-item.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent)}.tab-close{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--muted);font-size:14px;line-height:1;cursor:pointer;transition:background .15s,color .15s;padding:0;flex-shrink:0}.tab-close:hover{background:var(--error);color:#fff}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.toast-container{top:12px;left:12px;right:12px;max-width:none}.modal-card{width:100%;max-height:85vh;border-radius:12px 12px 0 0}.modal-backdrop{align-items:flex-end;padding:0}.confirm-card{width:100%;border-radius:12px 12px 0 0}}
