:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}@media (prefers-color-scheme: dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;padding:2rem;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media (hover: hover){a:hover{background-color:#00bd7e33}}@media (min-width: 1024px){body{display:flex;place-items:center}}.attendance-container[data-v-de407b84]{max-width:1200px;margin:0 auto;padding:20px}.dashboard-title[data-v-de407b84]{text-align:center;margin-bottom:30px;color:#333;font-weight:500;font-size:2.2rem}.filter-card[data-v-de407b84]{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014;padding:20px;margin-bottom:20px}.filter-row[data-v-de407b84]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.date-inputs[data-v-de407b84]{display:flex;gap:20px;flex-wrap:wrap}.date-field[data-v-de407b84]{display:flex;align-items:center;gap:12px}.date-field label[data-v-de407b84]{font-weight:500;color:#666;font-size:1rem}.date-input[data-v-de407b84]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-family:inherit;min-width:160px}.action-buttons[data-v-de407b84]{display:flex;gap:10px}.btn[data-v-de407b84]{padding:10px 20px;border-radius:4px;border:none;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:all .2s;font-size:1rem}.btn-primary[data-v-de407b84]{background-color:#3498db;color:#fff}.btn-primary[data-v-de407b84]:hover{background-color:#2980b9}.btn-success[data-v-de407b84]{background-color:#2ecc71;color:#fff}.btn-success[data-v-de407b84]:hover{background-color:#27ae60}.checkbox-label[data-v-de407b84]{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;color:#666;font-size:1rem}.checkbox-input[data-v-de407b84]{width:16px;height:16px;cursor:pointer;accent-color:#3498db}.checkbox-text[data-v-de407b84]{-webkit-user-select:none;user-select:none}.date-groups[data-v-de407b84]{display:flex;flex-direction:column;gap:8px}.date-card[data-v-de407b84]{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f;overflow:hidden}.date-header[data-v-de407b84]{padding:15px 20px;background-color:#f8f9fa;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background-color .2s;border-left:4px solid #3498db}.date-header[data-v-de407b84]:hover{background-color:#e9ecef}.date-title[data-v-de407b84]{font-weight:600;font-size:1.1rem;color:#333;display:flex;align-items:center}.collapse-icon[data-v-de407b84]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:10px;color:#3498db}.employee-count[data-v-de407b84]{display:flex;align-items:center;gap:8px;color:#6c757d;font-size:.9rem}.date-content[data-v-de407b84]{border-top:1px solid #e9ecef}.table-container[data-v-de407b84]{position:relative;overflow-x:auto;margin:0;border-radius:0 0 8px 8px}.attendance-table[data-v-de407b84]{width:100%;border-collapse:collapse;font-size:.9rem;table-layout:auto}.attendance-table th[data-v-de407b84],.attendance-table td[data-v-de407b84]{padding:12px 15px;text-align:left;border-bottom:1px solid #eee;position:relative}.attendance-table th[data-v-de407b84]{background-color:#f8f9fa;font-weight:600;color:#495057;position:sticky;top:0;z-index:10;white-space:nowrap}.text-cell[data-v-de407b84]{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.truncate[data-v-de407b84]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-cell[data-v-de407b84]{min-width:70px;text-align:center;position:relative;cursor:help}.number-cell[data-v-de407b84]{min-width:70px;text-align:right;position:relative}.center[data-v-de407b84]{text-align:center;position:relative}.attendance-table tbody tr[data-v-de407b84]:nth-child(2n){background-color:#f8f9fa}.attendance-table tbody tr[data-v-de407b84]:hover{background-color:#f1f5f9}.same-time-row[data-v-de407b84]{background-color:#fff8e1!important}.incomplete-row[data-v-de407b84]{background-color:#ffebee!important}.status-badge[data-v-de407b84]{display:inline-block;padding:4px 10px;border-radius:50px;font-size:.8rem;font-weight:500;text-align:center;white-space:nowrap}.status-complete[data-v-de407b84]{background-color:#e8f5e9;color:#2e7d32}.status-incomplete[data-v-de407b84]{background-color:#fff3e0;color:#f57c00}.status-insufficient[data-v-de407b84]{background-color:#ffebee;color:#c62828}.attendance-table th[data-v-de407b84]:hover:after,.attendance-table td[data-v-de407b84]:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:8px 12px;background-color:#34495ef2;color:#fff;border-radius:4px;font-size:.85rem;white-space:normal;max-width:300px;word-wrap:break-word;z-index:1000;box-shadow:0 2px 5px #0003;pointer-events:none;text-align:center}.with-tooltip[data-v-de407b84]:hover:after{max-width:400px}.attendance-table th[data-v-de407b84]:hover:before,.attendance-table td[data-v-de407b84]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#34495ef2;margin-bottom:-6px;pointer-events:none}.with-tooltip[data-v-de407b84]{cursor:help}.loading-container[data-v-de407b84]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f}.loading-spinner[data-v-de407b84]{border:4px solid rgba(0,0,0,.1);border-left-color:#3498db;border-radius:50%;width:36px;height:36px;animation:spin-de407b84 1s linear infinite;margin-bottom:20px}.loading-text[data-v-de407b84]{color:#666;font-size:1rem;margin:0}@keyframes spin-de407b84{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container[data-v-de407b84]{padding:20px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f;text-align:center;color:#e74c3c}.empty-state[data-v-de407b84]{padding:40px;text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f;color:#7f8c8d}@media (max-width: 992px){.filter-row[data-v-de407b84]{flex-direction:column;align-items:flex-start}.action-buttons[data-v-de407b84]{margin-top:15px}.attendance-container[data-v-de407b84]{padding:10px}}@media (max-width: 768px){.date-inputs[data-v-de407b84]{flex-direction:column}.date-header[data-v-de407b84]{flex-direction:column;align-items:flex-start;gap:10px}.date-summary[data-v-de407b84]{margin-left:24px}}@media screen and (max-width: 600px){.dashboard-title[data-v-de407b84]{font-size:1.8rem}.attendance-container[data-v-de407b84]{padding:5px}}.attendance-table td[data-v-de407b84]{color:#333}.notification-config[data-v-0baf6278]{padding:20px;min-width:600px;margin:0 auto}.config-form[data-v-0baf6278]{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.form-group[data-v-0baf6278]{margin-bottom:20px}.form-group label[data-v-0baf6278]{display:block;margin-bottom:8px;font-weight:500;color:#333}.form-control[data-v-0baf6278]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.help-text[data-v-0baf6278]{display:block;margin-top:4px;color:#666;font-size:12px}.checkbox-label[data-v-0baf6278]{display:flex;align-items:center;gap:8px;cursor:pointer}.form-actions[data-v-0baf6278]{margin-top:24px}.btn[data-v-0baf6278]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.btn-primary[data-v-0baf6278]{background-color:#4caf50;color:#fff}.btn-primary[data-v-0baf6278]:hover{background-color:#45a049}.btn-primary[data-v-0baf6278]:disabled{background-color:#ccc;cursor:not-allowed}.loading[data-v-0baf6278]{text-align:center;color:#666;padding:20px}.file-upload-section[data-v-0baf6278]{display:flex;gap:12px;align-items:center}.file-input[data-v-0baf6278]{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;cursor:pointer}.file-input[data-v-0baf6278]:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-secondary[data-v-0baf6278]{background-color:#2196f3;color:#fff;padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.btn-secondary[data-v-0baf6278]:hover:not(:disabled){background-color:#1976d2}.btn-secondary[data-v-0baf6278]:disabled{background-color:#ccc;cursor:not-allowed}.import-result[data-v-0baf6278]{margin-top:8px;padding:8px 12px;border-radius:4px;font-size:13px}.import-result.success[data-v-0baf6278]{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.import-result.error[data-v-0baf6278]{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}.app-container{max-width:100%;margin:0 auto;padding:0;min-height:100vh}header{margin-bottom:30px;text-align:center}header h1{color:#333;font-size:2rem;margin:0;padding:20px 0}main{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.tabs{display:flex;gap:10px;margin-bottom:20px;padding:0 20px}.tab-button{padding:10px 20px;border:none;background:#f5f5f5;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s}.tab-button:hover{background:#e0e0e0}.tab-button.active{background:#4caf50;color:#fff}.tab-content{padding:20px}
