.app[data-v-07e62d0c]{min-height:100vh;display:flex;flex-direction:column}.app__header[data-v-07e62d0c]{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#1f2937;color:#fff}.app__nav[data-v-07e62d0c]{display:flex;gap:1rem}.app__nav a[data-v-07e62d0c]{color:#cbd5f5;text-decoration:none}.app__nav a.router-link-active[data-v-07e62d0c]{font-weight:600;color:#60a5fa}.logout-btn[data-v-07e62d0c]{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem}.logout-btn[data-v-07e62d0c]:hover{background:#b91c1c}.app__content[data-v-07e62d0c]{flex:1;padding:2rem;background:#f9fafb}.error[data-v-403d68d3],.error[data-v-31727691],.error[data-v-c3c05b8c],.error[data-v-11de75ec]{margin-top:1rem;color:#b91c1c}.toast[data-v-11de75ec]{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:1rem 1.25rem;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;align-items:center;justify-content:space-between;gap:1rem;z-index:2000;animation:slideIn-11de75ec .3s ease-out;cursor:pointer;transition:transform .2s,opacity .2s}.toast[data-v-11de75ec]:hover{transform:translateY(-2px);box-shadow:0 15px 20px -3px #00000026,0 6px 8px -2px #0000001a}.toast-success[data-v-11de75ec]{background-color:#10b981;color:#fff}.toast-error[data-v-11de75ec]{background-color:#ef4444;color:#fff}.toast-info[data-v-11de75ec]{background-color:#3b82f6;color:#fff}.toast span[data-v-11de75ec]{flex:1;font-size:.9375rem;line-height:1.5}.toast-close[data-v-11de75ec]{background:none;border:none;color:inherit;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;opacity:.8;transition:opacity .2s,background-color .2s}.toast-close[data-v-11de75ec]:hover{opacity:1;background-color:#0000001a}@keyframes slideIn-11de75ec{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.required[data-v-11de75ec]{color:#dc2626}.modal-overlay[data-v-11de75ec]{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-11de75ec]{background:#fff;border-radius:8px;max-width:1200px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header[data-v-11de75ec]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-11de75ec]{margin:0;font-size:1.5rem;color:#1f2937}.close-btn[data-v-11de75ec]{background:none;border:none;font-size:2rem;line-height:1;cursor:pointer;color:#6b7280;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.close-btn[data-v-11de75ec]:hover{background-color:#f3f4f6}.modal-body[data-v-11de75ec]{padding:1.5rem;overflow-y:auto;flex:1}.detail-section[data-v-11de75ec]{margin-bottom:2rem}.detail-section h3[data-v-11de75ec]{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:#374151;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.detail-grid[data-v-11de75ec]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item[data-v-11de75ec]{display:flex;flex-direction:column}.detail-item.full-width[data-v-11de75ec]{grid-column:1 / -1}.detail-item label[data-v-11de75ec]{font-weight:600;color:#6b7280;font-size:.875rem;margin-bottom:.25rem}.detail-item span[data-v-11de75ec]{color:#1f2937;font-size:1rem}.badge[data-v-11de75ec]{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500;width:fit-content}.badge-draft[data-v-11de75ec]{background-color:#dbeafe;color:#1e40af}.badge-submitted[data-v-11de75ec]{background-color:#fef3c7;color:#92400e}.badge-approved[data-v-11de75ec]{background-color:#d1fae5;color:#065f46}.badge-cancelled[data-v-11de75ec]{background-color:#fee2e2;color:#991b1b}.modal-footer[data-v-11de75ec]{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.5rem}.error[data-v-17650620]{margin-top:1rem;color:#b91c1c}.todo-controls[data-v-17650620]{padding:1rem;background:#f9fafb;border-radius:8px}.todo-groups[data-v-17650620]{display:flex;flex-direction:column;gap:2rem}.date-group[data-v-17650620]{border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;background:#fff}.overdue-group[data-v-17650620]{border:2px solid #dc2626;background:#fef2f2}.date-header[data-v-17650620]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.date-header h3[data-v-17650620]{margin:0;font-size:1.25rem;color:#1f2937}.date-badge[data-v-17650620]{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.badge-overdue[data-v-17650620]{background:#fee2e2;color:#991b1b}.badge-today[data-v-17650620]{background:#fed7aa;color:#9a3412}.badge-upcoming[data-v-17650620]{background:#fef3c7;color:#92400e}.badge-on-track[data-v-17650620]{background:#d1fae5;color:#065f46}.todo-section[data-v-17650620]{margin-top:1rem;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.section-header-small[data-v-17650620]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f3f4f6;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;color:#374151}.section-header-small[data-v-17650620]:hover{background:#e5e7eb}.toggle-icon[data-v-17650620]{font-size:.75rem;color:#6b7280}.section-content[data-v-17650620]{padding:0}.completed-row[data-v-17650620]{opacity:.6;background:#f9fafb}.completed-row td[data-v-17650620]{text-decoration:line-through}.status-badge[data-v-17650620]{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;display:inline-block}.status-completed[data-v-17650620]{background:#d1d5db;color:#374151}.status-overdue[data-v-17650620]{background:#fee2e2;color:#991b1b}.status-due-today[data-v-17650620]{background:#fed7aa;color:#9a3412}.status-upcoming[data-v-17650620]{background:#fef3c7;color:#92400e}.status-on-track[data-v-17650620]{background:#d1fae5;color:#065f46}.no-todos[data-v-17650620]{text-align:center;padding:3rem;color:#6b7280}.form-grid[data-v-17650620]{display:grid;gap:1rem}.error[data-v-104e5bc1]{margin-top:1rem;color:#b91c1c;padding:.75rem;background:#fee2e2;border-radius:4px}.required[data-v-104e5bc1]{color:#dc2626}.tabs[data-v-104e5bc1]{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb}.tab[data-v-104e5bc1]{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:1rem;color:#6b7280;transition:all .2s}.tab[data-v-104e5bc1]:hover{color:#1f2937}.tab.active[data-v-104e5bc1]{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.tab-content[data-v-104e5bc1]{margin-top:1rem}.subsection[data-v-104e5bc1]{margin-bottom:3rem}.section-header-small[data-v-104e5bc1]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.loading[data-v-104e5bc1],.no-data[data-v-104e5bc1]{text-align:center;padding:2rem;color:#6b7280}.badge[data-v-104e5bc1]{padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:500}.badge-global[data-v-104e5bc1]{background:#dbeafe;color:#1e40af}.badge-company[data-v-104e5bc1]{background:#fef3c7;color:#92400e}.badge-project[data-v-104e5bc1]{background:#d1fae5;color:#065f46}.modal-overlay[data-v-104e5bc1]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-104e5bc1]{background:#fff;border-radius:8px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header[data-v-104e5bc1]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-104e5bc1]{margin:0}.close-btn[data-v-104e5bc1]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.close-btn[data-v-104e5bc1]:hover{color:#1f2937}.modal-body[data-v-104e5bc1]{padding:1.5rem}.modal-footer[data-v-104e5bc1]{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.detail-section[data-v-104e5bc1]{margin-bottom:2rem}.detail-grid[data-v-104e5bc1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1rem}.detail-item[data-v-104e5bc1]{display:flex;flex-direction:column;gap:.25rem}.detail-item label[data-v-104e5bc1]{font-weight:600;color:#6b7280;font-size:.875rem}.detail-item span[data-v-104e5bc1]{color:#1f2937}.permissions-checklist[data-v-104e5bc1]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-top:1rem}.permission-item[data-v-104e5bc1]{display:flex;align-items:center;gap:.5rem;padding:.75rem;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;transition:all .2s}.permission-item[data-v-104e5bc1]:hover{background:#f9fafb;border-color:#2563eb}.permission-item input[type=checkbox][data-v-104e5bc1]{cursor:pointer;width:1.25rem;height:1.25rem}.badge-permission[data-v-104e5bc1]{background:#dbeafe;color:#1e40af;padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500}.login-container[data-v-a448f8d8]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f9fafb}.login-card[data-v-a448f8d8]{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:100%;max-width:400px}.login-card h1[data-v-a448f8d8]{margin:0 0 1.5rem;color:#1f2937;text-align:center}.form-group[data-v-a448f8d8]{margin-bottom:1rem}.form-group label[data-v-a448f8d8]{display:block;margin-bottom:.5rem;color:#374151;font-weight:500}.form-group input[data-v-a448f8d8]{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-a448f8d8]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}button[data-v-a448f8d8]{width:100%;padding:.75rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;margin-top:1rem}button[data-v-a448f8d8]:hover:not(:disabled){background:#2563eb}button[data-v-a448f8d8]:disabled{background:#9ca3af;cursor:not-allowed}.error[data-v-a448f8d8]{color:#dc2626;margin-top:.5rem;font-size:.875rem}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#111827;background-color:#f9fafb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}body{margin:0;min-height:100vh}button{border-radius:.5rem;border:1px solid #d1d5db;padding:.5rem 1rem;font-size:.95rem;font-weight:500;background-color:#111827;color:#fff;cursor:pointer}button.secondary{background-color:#fff;color:#111827}input,select,textarea{width:100%;padding:.5rem;border-radius:.5rem;border:1px solid #d1d5db;font-size:.95rem;box-sizing:border-box}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.75rem;border-bottom:1px solid #e5e7eb;text-align:left}.table th{background-color:#f3f4f6;font-weight:600}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-actions{display:flex;gap:.75rem;justify-content:flex-end}.section-card{background:#fff;border-radius:1rem;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 2px #0f172a14}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{margin:0}
