.current-user-badge[data-v-249b40c2]{width:100%;min-width:0;max-width:100%;padding:16px;border:1px solid var(--workspace-border-soft);border-radius:var(--workspace-radius-lg);background:var(--workspace-surface);display:flex;align-items:center;gap:12px}.current-user-badge__avatar[data-v-249b40c2]{width:48px;height:48px;border:0;border-radius:999px;padding:0;overflow:hidden;background:var(--workspace-surface-muted, #eef2f7);color:var(--workspace-text-primary, #1f2937);display:grid;place-items:center;cursor:pointer;flex:none}.current-user-badge__avatar img[data-v-249b40c2]{width:100%;height:100%;object-fit:cover;display:block}.current-user-badge__avatar span[data-v-249b40c2]{font-size:18px;font-weight:700}.current-user-badge__body[data-v-249b40c2]{min-width:0;max-width:100%;display:grid;gap:6px}.current-user-badge__body>span[data-v-249b40c2]{font-size:11px;font-family:var(--workspace-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--workspace-text-tertiary)}.current-user-badge strong[data-v-249b40c2]{font-size:22px}.current-user-badge small[data-v-249b40c2]{color:var(--workspace-text-secondary);line-height:1.5}.current-user-badge__body>span[data-v-249b40c2],.current-user-badge strong[data-v-249b40c2],.current-user-badge small[data-v-249b40c2]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f-field-error[data-v-bc840609]{display:block;margin:var(--forest-field-error-margin, 0);color:var(--forest-field-error-color, var(--workspace-danger, #c2410c));font-size:var(--forest-field-error-font-size, 13px);line-height:var(--forest-field-error-line-height, 1.5);word-break:break-word}.forest-password-login-panel[data-v-ad3bd5ef]{display:grid;gap:14px;width:100%}.forest-password-login-panel__heading[data-v-ad3bd5ef]{display:grid;gap:8px}.forest-password-login-panel__heading h2[data-v-ad3bd5ef],.forest-password-login-panel__heading p[data-v-ad3bd5ef],.forest-password-login-panel__error[data-v-ad3bd5ef]{margin:0}.forest-password-login-panel__field[data-v-ad3bd5ef]{display:grid;gap:8px}.forest-password-login-panel__field span[data-v-ad3bd5ef]{color:var(--workspace-text-secondary)}.forest-password-login-panel__field input[data-v-ad3bd5ef]{width:100%;min-width:0}.forest-password-login-panel__history-field[data-v-ad3bd5ef]{position:relative}.forest-password-login-panel__history[data-v-ad3bd5ef]{position:absolute;z-index:10;top:calc(100% + 6px);right:0;left:0;display:grid;gap:4px;max-height:180px;overflow:auto;padding:6px;border:1px solid var(--workspace-border, #d8dee8);border-radius:10px;background:var(--workspace-surface, #fff);box-shadow:0 16px 36px #0f172a24}.forest-password-login-panel__history-item[data-v-ad3bd5ef]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;border-radius:8px;padding:9px 10px;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.forest-password-login-panel__history-item[data-v-ad3bd5ef]:hover{background:var(--workspace-surface-muted, #f4f6f8)}.forest-password-login-panel__history-item small[data-v-ad3bd5ef]{color:var(--workspace-text-tertiary, #7c8798);font-size:12px;white-space:nowrap}.forest-password-login-panel__remember[data-v-ad3bd5ef]{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--workspace-text-secondary);font-size:13px;cursor:pointer}.forest-password-login-panel__remember input[data-v-ad3bd5ef]{margin:0}.forest-password-login-panel__error[data-v-ad3bd5ef]{--forest-field-error-color: var(--workspace-danger)}.forest-sms-code-field[data-v-8404f677]{display:grid;gap:var(--forest-sms-code-gap, 8px)}.forest-sms-code-field__control[data-v-8404f677]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--forest-sms-code-control-gap, 10px);align-items:center}.forest-sms-code-field__input[data-v-8404f677]{min-width:0;width:100%}.forest-sms-code-field__send[data-v-8404f677]{min-width:var(--forest-sms-code-send-width, 112px);white-space:nowrap}.forest-sms-code-field__error[data-v-8404f677]{--forest-field-error-color: var(--forest-sms-code-error-color, #c2410c);--forest-field-error-font-size: var(--forest-sms-code-error-font-size, 13px)}.forest-phone-sms-login-panel[data-v-257bb337]{display:grid;gap:var(--forest-phone-sms-login-gap, 16px);width:100%}.forest-phone-sms-login-panel__heading[data-v-257bb337]{display:grid;gap:8px}.forest-phone-sms-login-panel__heading h2[data-v-257bb337],.forest-phone-sms-login-panel__heading p[data-v-257bb337],.forest-phone-sms-login-panel__error[data-v-257bb337]{margin:0}.forest-phone-sms-login-panel__field[data-v-257bb337]{display:grid;gap:8px}.forest-phone-sms-login-panel__field span[data-v-257bb337]{color:var(--forest-phone-sms-login-label-color, currentColor);font-size:var(--forest-phone-sms-login-label-font-size, 13px)}.forest-phone-sms-login-panel__field input[data-v-257bb337]{width:100%;min-width:0}.forest-phone-sms-login-panel__history-field[data-v-257bb337]{position:relative}.forest-phone-sms-login-panel__history[data-v-257bb337]{position:absolute;z-index:10;top:calc(100% + 6px);right:0;left:0;display:grid;gap:4px;max-height:180px;overflow:auto;padding:6px;border:1px solid var(--workspace-border, #d8dee8);border-radius:10px;background:var(--workspace-surface, #fff);box-shadow:0 16px 36px #0f172a24}.forest-phone-sms-login-panel__history-item[data-v-257bb337]{width:100%;border:0;border-radius:8px;padding:9px 10px;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.forest-phone-sms-login-panel__history-item[data-v-257bb337]:hover{background:var(--workspace-surface-muted, #f4f6f8)}.forest-phone-sms-login-panel__error[data-v-257bb337]{--forest-field-error-color: var(--forest-phone-sms-login-error-color, #c2410c)}.forest-phone-sms-login-panel__submit[data-v-257bb337]{width:100%}.forest-web-pc-login-panel[data-v-9b282c79]{display:grid;gap:var(--forest-web-pc-login-gap, 16px);width:100%}.forest-web-pc-login-panel__tabs[data-v-9b282c79]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--forest-web-pc-login-tab-gap, 4px);padding:var(--forest-web-pc-login-tabs-padding, 4px);border:var(--forest-web-pc-login-tabs-border, 1px solid #d8dee8);border-radius:var(--forest-web-pc-login-tabs-radius, 999px);background:var(--forest-web-pc-login-tabs-background, #f4f6f8)}.forest-web-pc-login-panel__tab[data-v-9b282c79]{min-width:0;border:0;border-radius:var(--forest-web-pc-login-tab-radius, 999px);padding:var(--forest-web-pc-login-tab-padding, 10px 12px);background:transparent;color:var(--forest-web-pc-login-tab-color, currentColor);cursor:pointer;font-size:var(--forest-web-pc-login-tab-font-size, 14px)}.forest-web-pc-login-panel__tab--active[data-v-9b282c79]{background:var(--forest-web-pc-login-tab-active-background, #111827);color:var(--forest-web-pc-login-tab-active-color, #fff)}.attendance-platform-layout[data-v-2bf524af]{--attendance-sidebar-width: clamp(232px, 16vw, 256px);min-height:100vh;display:grid;grid-template-columns:var(--attendance-sidebar-width) minmax(0,1fr);background:var(--workspace-page)}.attendance-platform-layout__sidebar[data-v-2bf524af]{min-width:0;max-width:100%;min-height:100vh;padding:22px 14px;border-right:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,var(--workspace-sidebar-start),var(--workspace-sidebar-end));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:22px}.attendance-platform-layout__sidebar[data-v-2bf524af]>*{min-width:0;max-width:100%}.attendance-platform-layout__brand[data-v-2bf524af]{display:grid;gap:8px;padding:0 6px}.attendance-platform-layout__brand h1[data-v-2bf524af]{margin:0;color:var(--workspace-text-inverse);font-size:24px;line-height:1.12}.attendance-platform-layout__brand p[data-v-2bf524af]{margin:0;color:#f8fafcb8;line-height:1.55}.attendance-platform-layout__nav[data-v-2bf524af]{min-width:0;max-width:100%;align-content:start;display:grid;gap:18px;overflow:auto}.attendance-platform-layout__nav-group[data-v-2bf524af]{display:grid;gap:6px}.attendance-platform-layout__nav-group>p[data-v-2bf524af]{margin:0;padding:0 10px;color:#f8fafc6b;font-size:11px;font-family:var(--workspace-font-mono);letter-spacing:.08em;text-transform:uppercase}.attendance-platform-layout__link[data-v-2bf524af]{display:block;width:100%;min-width:0;max-width:100%;position:relative;padding:10px 12px 10px 18px;border-radius:var(--workspace-radius-md);color:#f8fafcb8;border:1px solid transparent;background:var(--workspace-nav-item-background);font-size:14px;line-height:1.35}.attendance-platform-layout__link[data-v-2bf524af]:hover,.attendance-platform-layout__link.is-active[data-v-2bf524af]{color:#fff;border-color:var(--workspace-nav-item-active-border);background:var(--workspace-nav-item-active-background)}.attendance-platform-layout__link.is-active[data-v-2bf524af]:before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:3px;border-radius:999px;background:var(--workspace-accent)}.attendance-platform-layout__main[data-v-2bf524af]{min-width:0;max-width:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}.attendance-platform-layout__header[data-v-2bf524af]{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:0 32px;border-bottom:1px solid var(--workspace-border-soft);background:var(--workspace-surface-strong);box-shadow:0 1px 8px #1522380a}.attendance-platform-layout__header h2[data-v-2bf524af]{margin:0;font-size:18px;line-height:1.25}.attendance-platform-layout__content[data-v-2bf524af]{min-width:0;padding:28px 32px 40px}.attendance-platform-layout[data-v-2bf524af] .workspace-page{gap:18px}.attendance-platform-layout[data-v-2bf524af] .workspace-card{box-shadow:var(--workspace-shadow-card);-webkit-backdrop-filter:none;backdrop-filter:none}.attendance-platform-layout[data-v-2bf524af] .workspace-card__body{padding:18px}.attendance-platform-layout[data-v-2bf524af] .workspace-card__heading h3{font-size:22px}.attendance-platform-layout[data-v-2bf524af] .workspace-button,.attendance-platform-layout[data-v-2bf524af] .workspace-button-soft,.attendance-platform-layout[data-v-2bf524af] .workspace-button-danger,.attendance-platform-layout[data-v-2bf524af] .workspace-button-success{padding:10px 14px;border-radius:var(--workspace-radius-md)}.attendance-platform-layout[data-v-2bf524af] .current-user-badge{border-color:#ffffff0f;background:#0a111d38;color:var(--workspace-text-inverse)}.attendance-platform-layout[data-v-2bf524af] .current-user-badge__avatar{background:#2563ff24;color:#fff}.attendance-platform-layout[data-v-2bf524af] .current-user-badge__body>span,.attendance-platform-layout[data-v-2bf524af] .current-user-badge small{color:#f8fafc9e}.attendance-platform-layout[data-v-2bf524af] .current-user-badge strong{color:#fff;font-size:18px}@media(max-width:960px){.attendance-platform-layout[data-v-2bf524af]{grid-template-columns:1fr}.attendance-platform-layout__sidebar[data-v-2bf524af]{min-height:auto}.attendance-platform-layout__header[data-v-2bf524af],.attendance-platform-layout__content[data-v-2bf524af]{padding-inline:18px}}.oversight-note[data-v-b787d3b0]{margin:0;line-height:1.7;color:var(--workspace-text-secondary)}.platform-dashboard[data-v-bcdb25e3]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.platform-dashboard__text[data-v-bcdb25e3]{margin:0;line-height:1.7;color:var(--workspace-text-secondary)}@media(max-width:900px){.platform-dashboard[data-v-bcdb25e3]{grid-template-columns:1fr}}.attendance-platform-login[data-v-0aee0825]{min-height:100vh;display:grid;align-items:center;grid-template-columns:minmax(0,1.1fr) minmax(360px,440px);gap:22px;padding:28px}.attendance-platform-login__hero[data-v-0aee0825]{align-self:stretch;min-height:520px;overflow:hidden}.attendance-platform-login__hero img[data-v-0aee0825]{width:100%;height:100%;display:block;object-fit:cover}.attendance-platform-login__panel[data-v-0aee0825]{display:flex;align-items:center;justify-content:center}.attendance-platform-login__panel[data-v-0aee0825] .forest-web-pc-login-panel{width:min(100%,420px);padding:28px;--forest-web-pc-login-tabs-border: 1px solid var(--workspace-border);--forest-web-pc-login-tabs-background: var(--workspace-surface-muted);--forest-web-pc-login-tab-color: var(--workspace-text-secondary);--forest-web-pc-login-tab-active-background: var(--workspace-button-primary-background);--forest-web-pc-login-tab-active-color: var(--workspace-button-primary-text)}.attendance-platform-login__panel[data-v-0aee0825] .forest-password-login-panel__heading h2,.attendance-platform-login__panel[data-v-0aee0825] .forest-phone-sms-login-panel__heading h2{margin:10px 0 0;font-size:34px}.attendance-platform-login__panel[data-v-0aee0825] .forest-password-login-panel__heading p,.attendance-platform-login__panel[data-v-0aee0825] .forest-phone-sms-login-panel__heading p{margin-top:10px;color:var(--workspace-text-secondary);line-height:1.6}.attendance-platform-login__panel[data-v-0aee0825] .forest-password-login-panel__field,.attendance-platform-login__panel[data-v-0aee0825] .forest-phone-sms-login-panel__field{margin-top:18px}.attendance-platform-login__panel[data-v-0aee0825] input{padding:14px 16px}.attendance-platform-login__panel[data-v-0aee0825] .workspace-button,.attendance-platform-login__panel[data-v-0aee0825] .forest-phone-sms-login-panel__submit{margin-top:8px;width:100%;border:1px solid transparent;border-radius:var(--workspace-radius-pill);padding:14px 18px;background:var(--workspace-button-primary-background);color:var(--workspace-button-primary-text);cursor:pointer;font-size:16px;box-shadow:var(--workspace-button-primary-shadow)}@media(max-width:900px){.attendance-platform-login[data-v-0aee0825]{grid-template-columns:1fr;padding:18px}.attendance-platform-login__hero[data-v-0aee0825]{min-height:240px}}.oversight-note[data-v-cacf7851]{margin:0;line-height:1.7;color:var(--workspace-text-secondary)}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;color:var(--workspace-text-primary);background:radial-gradient(circle at top left,var(--workspace-page-decor-primary),transparent 22%),radial-gradient(circle at 88% 8%,var(--workspace-page-decor-secondary),transparent 18%),linear-gradient(180deg,var(--workspace-page) 0%,var(--workspace-page) 48%,var(--workspace-page-accent) 100%);font-family:var(--workspace-font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--workspace-font-heading);font-weight:600;letter-spacing:-.02em}input,select,textarea{border:1px solid var(--workspace-border-soft);border-radius:var(--workspace-radius-md);padding:12px 14px;background:var(--workspace-input-background);color:var(--workspace-text-primary);transition:border-color var(--workspace-motion-normal) var(--workspace-ease-standard),box-shadow var(--workspace-motion-normal) var(--workspace-ease-standard),background-color var(--workspace-motion-normal) var(--workspace-ease-standard)}input::placeholder,textarea::placeholder{color:var(--workspace-text-tertiary)}input:focus,select:focus,textarea:focus{outline-color:var(--workspace-focus-outline-color);outline-style:var(--workspace-focus-outline-style);outline-width:var(--workspace-focus-outline-width);outline-offset:var(--workspace-focus-outline-offset);border-color:var(--workspace-accent);box-shadow:0 0 0 4px var(--workspace-focus-ring);background:var(--workspace-input-background-focus)}button{transition:transform var(--workspace-motion-fast) var(--workspace-ease-standard),box-shadow var(--workspace-motion-fast) var(--workspace-ease-standard),background-color var(--workspace-motion-fast) var(--workspace-ease-standard),border-color var(--workspace-motion-fast) var(--workspace-ease-standard)}button:hover:not(:disabled){transform:translateY(-1px)}button:focus-visible,a:focus-visible{outline-color:var(--workspace-focus-outline-color);outline-style:var(--workspace-focus-outline-style);outline-width:var(--workspace-focus-outline-width);outline-offset:var(--workspace-focus-outline-offset)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.66}.workspace-page{display:grid;gap:20px}.workspace-page__header{display:grid;gap:10px}.workspace-page__eyebrow{margin:0;font-size:11px;font-family:var(--workspace-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--workspace-text-tertiary)}.workspace-page__title{margin:0;font-size:clamp(30px,4vw,44px);line-height:1}.workspace-page__description{margin:0;max-width:780px;color:var(--workspace-text-secondary);line-height:1.7}.workspace-grid{display:grid;gap:18px}.workspace-grid--split{grid-template-columns:minmax(0,1.28fr) minmax(320px,420px)}.workspace-card{background:var(--workspace-surface);border:1px solid var(--workspace-border-soft);border-radius:var(--workspace-radius-xl);box-shadow:var(--workspace-shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.workspace-card--paper{background:linear-gradient(180deg,var(--workspace-card-paper-start),var(--workspace-card-paper-end))}.workspace-card__body{padding:22px}.workspace-card__heading{display:grid;gap:8px;margin-bottom:18px}.workspace-card__heading p{margin:0;font-size:11px;font-family:var(--workspace-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--workspace-text-tertiary)}.workspace-card__heading h3{margin:0;font-size:28px;line-height:1.08}.workspace-toolbar{display:grid;gap:12px;margin-bottom:18px}.workspace-toolbar--users{grid-template-columns:repeat(6,minmax(0,1fr))}.workspace-toolbar--point{grid-template-columns:minmax(220px,320px) 140px}.workspace-toolbar--lead{grid-template-columns:1fr 1fr 140px}.workspace-button,.workspace-button-soft,.workspace-button-danger,.workspace-button-success{border-radius:var(--workspace-radius-pill);padding:12px 16px;border:1px solid transparent;cursor:pointer;font-weight:500}.workspace-button{background:var(--workspace-button-primary-background);color:var(--workspace-button-primary-text);box-shadow:var(--workspace-button-primary-shadow)}.workspace-button-soft{background:var(--workspace-button-soft-background);color:var(--workspace-text-primary);border-color:var(--workspace-border-soft)}.workspace-button-danger{background:var(--workspace-danger-soft);color:var(--workspace-danger);border-color:var(--workspace-danger-border)}.workspace-button-success{background:var(--workspace-success-soft);color:var(--workspace-success);border-color:var(--workspace-success-border)}.workspace-note{margin:0;padding:12px 14px;border-radius:var(--workspace-radius-md);background:var(--workspace-accent-soft);color:var(--workspace-text-secondary);line-height:1.6}.workspace-error{margin:0;padding:12px 14px;border-radius:var(--workspace-radius-md);background:var(--workspace-danger-soft);color:var(--workspace-danger)}.workspace-table{border:1px solid var(--workspace-border-soft);border-radius:18px;overflow:hidden;background:var(--workspace-surface-strong)}.workspace-table__row{display:grid;gap:12px;padding:14px 16px}.workspace-table__head{background:var(--workspace-table-header-bg);color:var(--workspace-table-header-text);font-family:var(--workspace-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.workspace-table__button{width:100%;border:none;text-align:left;background:transparent;color:var(--workspace-text-primary);cursor:pointer;border-top:1px solid var(--workspace-border-soft)}.workspace-table__button:hover{background:var(--workspace-table-row-hover)}.workspace-pager,.workspace-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.workspace-pager__actions,.workspace-actions{display:flex;gap:10px;flex-wrap:wrap}.workspace-placeholder{color:var(--workspace-text-secondary);line-height:1.7}@media(max-width:1080px){.workspace-grid--split,.workspace-toolbar--users,.workspace-toolbar--point,.workspace-toolbar--lead{grid-template-columns:1fr}}
