.layout[data-v-c39b581c]{min-height:100vh;font-family:Arial,sans-serif;color:#1f2937}.layout__header[data-v-c39b581c]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.layout__title[data-v-c39b581c]{margin:0;font-size:1.35rem}.layout__title-link[data-v-c39b581c]{color:#1f2937;text-decoration:none}.layout__title-link[data-v-c39b581c]:hover{color:#1f2937}.layout__burger[data-v-c39b581c]{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;min-height:44px;padding:10px;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:background-color .2s ease}.layout__burger[data-v-c39b581c]:hover{background:#f5f5f5}.layout__burger-line[data-v-c39b581c]{display:block;width:22px;height:2px;background:#374151;border-radius:1px}.layout__nav[data-v-c39b581c]{display:flex;align-items:center;gap:1rem}.layout__nav a[data-v-c39b581c]{text-decoration:none;color:#374151;transition:color .2s ease}.layout__nav a[data-v-c39b581c]:hover{color:#2563eb}.layout__nav a.router-link-active[data-v-c39b581c]{color:#111827;font-weight:600}.layout__logout[data-v-c39b581c]{display:inline-flex;align-items:center;min-height:36px;border:1px solid #d4d4d4;border-radius:8px;background:#fff;cursor:pointer;padding:.35rem .75rem;font:inherit;line-height:inherit;transition:background-color .2s ease,border-color .2s ease}.layout__logout[data-v-c39b581c]:hover{background:#f5f5f5;border-color:#a3a3a3}.layout__overlay[data-v-c39b581c]{display:none}.layout__content[data-v-c39b581c]{padding:1.25rem}@media(max-width:768px){.layout__header[data-v-c39b581c]{padding:.75rem 1rem}.layout__title[data-v-c39b581c]{font-size:1.2rem}.layout__burger[data-v-c39b581c]{display:flex}.layout__nav[data-v-c39b581c]{position:fixed;top:0;right:0;bottom:0;z-index:100;width:70%;max-width:280px;flex-direction:column;align-items:stretch;gap:0;padding:3.5rem 1rem 1.5rem;background:#fff;border-left:1px solid #e5e7eb;box-shadow:-4px 0 12px #00000014;transform:translate(100%);transition:transform .2s ease}.layout__nav--open[data-v-c39b581c]{transform:translate(0)}.layout__nav a[data-v-c39b581c],.layout__logout[data-v-c39b581c]{min-height:44px;display:inline-flex;align-items:center;padding:.6rem .75rem;border-radius:8px}.layout__logout[data-v-c39b581c]{min-height:44px;justify-content:flex-start;width:100%}.layout__overlay[data-v-c39b581c]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#0000004d}.layout__content[data-v-c39b581c]{padding:1rem}}.dashboard[data-v-679ba2b3]{display:grid;gap:1.5rem}.dashboard__header[data-v-679ba2b3]{display:grid;gap:.5rem}.dashboard__title[data-v-679ba2b3]{margin:0;font-size:1.5rem}.dashboard__subtitle[data-v-679ba2b3]{margin:0;color:#525252}.dashboard__guest-banner[data-v-679ba2b3]{margin:0;color:#7f1d1d;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:.5rem .75rem;width:fit-content;font-weight:600}.dashboard__grid[data-v-679ba2b3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.card[data-v-679ba2b3]{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.card__header[data-v-679ba2b3]{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.card__title[data-v-679ba2b3]{margin:0;font-size:1.125rem}.card__refresh[data-v-679ba2b3]{min-height:44px;padding:.5rem 1rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#171717;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.card__refresh[data-v-679ba2b3]:hover:not(:disabled){background:#f5f5f5;border-color:#a3a3a3}.card__refresh[data-v-679ba2b3]:disabled{opacity:.65;cursor:not-allowed}.status[data-v-679ba2b3]{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.status--loading[data-v-679ba2b3]{color:#525252}.status--ok[data-v-679ba2b3]{color:#10b981}.status--error[data-v-679ba2b3]{color:#ef4444}.status-meta[data-v-679ba2b3]{margin:0;display:grid;gap:.5rem}.status-meta__row[data-v-679ba2b3]{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem}.status-meta__row dt[data-v-679ba2b3]{color:#737373}.status-meta__row dd[data-v-679ba2b3]{margin:0;color:#171717;font-weight:500;text-align:right}.quick-actions[data-v-679ba2b3]{display:grid;gap:.75rem;margin-top:1rem}.quick-actions__link[data-v-679ba2b3]{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e5e5;border-radius:8px;text-decoration:none;color:#1a1a1a;background:#fafafa;transition:all .2s ease}.quick-actions__link[data-v-679ba2b3]:hover{border-color:#d4d4d4;background:#f5f5f5}.clients[data-v-cec7bc48]{display:grid;gap:1rem}.clients__header[data-v-cec7bc48]{display:grid;gap:.5rem}.clients__title[data-v-cec7bc48]{margin:0}.clients__subtitle[data-v-cec7bc48]{margin:0;color:#525252}.filters[data-v-cec7bc48]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;align-items:end}.filters__field[data-v-cec7bc48]{display:grid;gap:.35rem;font-size:.9rem}.filters__field input[data-v-cec7bc48],.filters__field select[data-v-cec7bc48]{min-height:40px;border:1px solid #d4d4d4;border-radius:8px;padding:.5rem .75rem;font-size:.95rem}.filters__actions[data-v-cec7bc48]{display:flex;gap:.5rem}.filters__actions button[data-v-cec7bc48]{min-height:40px;border:1px solid #d4d4d4;border-radius:8px;padding:.5rem .75rem;background:#fff;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.filters__actions button[data-v-cec7bc48]:hover:not(:disabled){background:#f5f5f5;border-color:#a3a3a3}.filters__actions button[data-v-cec7bc48]:disabled{opacity:.65;cursor:not-allowed}.clients__error[data-v-cec7bc48]{color:#dc2626}.clients__loading[data-v-cec7bc48]{color:#525252}.clients__table-wrapper[data-v-cec7bc48]{overflow-x:auto}.clients__table[data-v-cec7bc48]{width:100%;border-collapse:collapse}.clients__table th[data-v-cec7bc48],.clients__table td[data-v-cec7bc48]{border-bottom:1px solid #e5e7eb;text-align:left;padding:.65rem .5rem}.clients__table th[data-v-cec7bc48]{font-size:.85rem;color:#525252;font-weight:600}.clients__empty[data-v-cec7bc48]{margin:0;color:#525252}.groups[data-v-a869affa]{display:grid;gap:1rem}.groups__header[data-v-a869affa]{display:grid;gap:.5rem}.groups__title[data-v-a869affa]{margin:0}.groups__subtitle[data-v-a869affa]{margin:0;color:#525252}.groups__actions button[data-v-a869affa]{min-height:40px;border:1px solid #d4d4d4;border-radius:8px;padding:.5rem .75rem;background:#fff;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.groups__actions button[data-v-a869affa]:hover:not(:disabled){background:#f5f5f5;border-color:#a3a3a3}.groups__actions button[data-v-a869affa]:disabled{opacity:.65;cursor:not-allowed}.groups__error[data-v-a869affa]{color:#dc2626}.groups__loading[data-v-a869affa]{color:#525252}.groups__table-wrapper[data-v-a869affa]{overflow-x:auto}.groups__table[data-v-a869affa]{width:100%;border-collapse:collapse}.groups__table th[data-v-a869affa],.groups__table td[data-v-a869affa]{border-bottom:1px solid #e5e7eb;text-align:left;padding:.65rem .5rem}.groups__table th[data-v-a869affa]{font-size:.85rem;color:#525252;font-weight:600}.groups__empty[data-v-a869affa]{margin:0;color:#525252}.timesheet[data-v-6cedae2f]{border:1px solid #d1d5db;border-radius:8px;padding:1rem}.timesheet__header[data-v-6cedae2f]{display:flex;justify-content:space-between;align-items:center;gap:1rem}.timesheet__placeholder[data-v-6cedae2f]{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:6px}.auth-page[data-v-9bc23c47]{min-height:calc(100vh - 2.5rem);display:grid;place-items:center;padding:1rem}.auth-page__subtitle[data-v-9bc23c47]{margin:0;color:#525252}.auth-card[data-v-9bc23c47]{width:min(460px,100%);border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem;background:#fff}.auth-card h2[data-v-9bc23c47]{margin:0 0 .75rem}.auth-form[data-v-9bc23c47]{margin-top:1.25rem;display:grid;gap:1rem}.auth-form label[data-v-9bc23c47]{display:grid;gap:.6rem}.auth-form input[data-v-9bc23c47]{min-height:40px;border:1px solid #d4d4d4;border-radius:8px;padding:.5rem .75rem;transition:border-color .2s ease}.auth-form input.is-error[data-v-9bc23c47]{border-color:#dc2626}.auth-form input[data-v-9bc23c47]:focus{outline:none;border-color:#2563eb}.auth-form input.is-error[data-v-9bc23c47]:focus{border-color:#dc2626}.auth-form input.is-error[data-v-9bc23c47]::placeholder{color:#dc2626}.auth-error[data-v-9bc23c47]{margin:0 0 .75rem;padding:.5rem .75rem;font-size:.875rem;color:#dc2626;background:#fef2f2;border-radius:6px;border:1px solid #fecaca}.auth-btn-primary[data-v-9bc23c47]{min-height:40px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer;font-size:1rem;transition:background-color .2s ease,border-color .2s ease}.auth-btn-primary[data-v-9bc23c47]:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.auth-btn-primary[data-v-9bc23c47]:disabled{opacity:.65;cursor:not-allowed}.auth-switch[data-v-9bc23c47]{margin:0;text-align:center}.auth-link[data-v-9bc23c47]{background:none;border:none;padding:0;font-size:inherit;color:#2563eb;text-decoration:underline;cursor:pointer;transition:color .2s ease}.auth-link[data-v-9bc23c47]:hover{color:#1d4ed8}.auth-success[data-v-9bc23c47]{margin:0;color:#15803d;font-size:.875rem}.admin-users[data-v-85aa3640]{display:grid;gap:1rem}.admin-users__header h2[data-v-85aa3640],.admin-users__header p[data-v-85aa3640]{margin:0}.admin-users__card[data-v-85aa3640]{border:1px solid #e5e7eb;border-radius:12px;padding:1rem;display:grid;gap:.75rem}.admin-users__card h3[data-v-85aa3640]{margin:0}.admin-users__form[data-v-85aa3640]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;align-items:end}.admin-users__form label[data-v-85aa3640]{display:grid;gap:.35rem}.admin-users__form input[data-v-85aa3640],.admin-users__form select[data-v-85aa3640],.admin-users__toolbar select[data-v-85aa3640],.admin-users__table select[data-v-85aa3640]{min-height:38px;border:1px solid #d4d4d4;border-radius:8px;padding:.4rem .6rem;transition:border-color .2s ease}.admin-users__form select[data-v-85aa3640]:hover,.admin-users__toolbar select[data-v-85aa3640]:hover,.admin-users__table select[data-v-85aa3640]:hover{border-color:#a3a3a3}.admin-users__form button[data-v-85aa3640]{min-height:38px;border:1px solid #d4d4d4;border-radius:8px;background:#fff;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.admin-users__form button[data-v-85aa3640]:hover:not(:disabled){background:#f5f5f5;border-color:#a3a3a3}.admin-users__danger-btn[data-v-85aa3640]{min-height:38px;border:1px solid #fca5a5;border-radius:8px;background:#fff1f2;color:#9f1239;cursor:pointer;padding:.35rem .6rem;transition:background-color .2s ease,border-color .2s ease}.admin-users__danger-btn[data-v-85aa3640]:hover:not(:disabled){background:#ffe4e6;border-color:#f87171}.admin-users__danger-btn[data-v-85aa3640]:disabled{opacity:.65;cursor:not-allowed}.admin-users__toolbar[data-v-85aa3640]{display:flex;justify-content:space-between;gap:1rem;align-items:end}.admin-users__toolbar label[data-v-85aa3640]{display:grid;gap:.35rem}.admin-users__table[data-v-85aa3640]{width:100%;border-collapse:collapse}.admin-users__table th[data-v-85aa3640],.admin-users__table td[data-v-85aa3640]{border-bottom:1px solid #e5e7eb;text-align:left;padding:.55rem .4rem}.admin-users__error[data-v-85aa3640]{margin:0;color:#dc2626}.admin-users__success[data-v-85aa3640]{margin:0;color:#15803d}.admin-users__role-fixed[data-v-85aa3640]{font-weight:500}.admin-users__role-hint[data-v-85aa3640]{color:#737373;margin-left:.25rem}.admin-users__no-action[data-v-85aa3640]{color:#a3a3a3}.dev[data-v-0349a2d2]{display:grid;gap:1.5rem}.dev__header[data-v-0349a2d2]{display:grid;gap:.5rem}.dev__title[data-v-0349a2d2]{margin:0;font-size:1.5rem}.dev__subtitle[data-v-0349a2d2]{margin:0;color:#525252}.dev__grid[data-v-0349a2d2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.card[data-v-0349a2d2]{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.card--logs[data-v-0349a2d2]{grid-column:1 / -1}.card__header[data-v-0349a2d2]{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.card__header--logs[data-v-0349a2d2]{flex-wrap:wrap}.card__title[data-v-0349a2d2]{margin:0;font-size:1.125rem}.card__toolbar[data-v-0349a2d2]{display:flex;align-items:center;gap:.75rem}.card__label[data-v-0349a2d2]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#525252}.card__input[data-v-0349a2d2]{width:5rem;padding:.35rem .5rem;border:1px solid #d4d4d4;border-radius:6px;font-size:.875rem}.card__btn[data-v-0349a2d2]{min-height:36px;padding:.5rem 1rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#171717;cursor:pointer;font-size:.875rem;transition:background-color .2s ease,border-color .2s ease}.card__btn[data-v-0349a2d2]:hover:not(:disabled){background:#f5f5f5;border-color:#a3a3a3}.card__btn[data-v-0349a2d2]:disabled{opacity:.65;cursor:not-allowed}.status[data-v-0349a2d2]{margin:0 0 1rem;font-size:1rem;font-weight:600}.status--loading[data-v-0349a2d2]{color:#525252}.status--ok[data-v-0349a2d2]{color:#10b981}.status--error[data-v-0349a2d2]{color:#ef4444}.status-meta[data-v-0349a2d2]{margin:0;display:grid;gap:.5rem}.status-meta__row[data-v-0349a2d2]{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem}.status-meta__row dt[data-v-0349a2d2]{color:#737373}.status-meta__row dd[data-v-0349a2d2]{margin:0;color:#171717;font-weight:500;text-align:right}.logs-box[data-v-0349a2d2]{max-height:400px;overflow:auto;background:#1e1e1e;border-radius:8px;padding:1rem}.logs-box__pre[data-v-0349a2d2]{margin:0;font-family:ui-monospace,monospace;font-size:.8125rem;line-height:1.4;color:#d4d4d4;white-space:pre-wrap;word-break:break-all}
