.commute-table th[data-v-81fbe841],.commute-table td[data-v-81fbe841]{padding:.25rem;border-bottom:1px solid #eee;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commute-table th[data-v-81fbe841]{border:2px solid #eee;background-color:#f8f9fa;font-weight:600;color:#333;text-align:center}.commute-table tr[data-v-81fbe841]:hover{background-color:#f9f9f9}.commute-table th.col-date[data-v-81fbe841],.commute-table td.col-date[data-v-81fbe841]{width:12%;text-align:center}.commute-table th.col-checkin[data-v-81fbe841],.commute-table td.col-checkin[data-v-81fbe841],.commute-table th.col-checkout[data-v-81fbe841],.commute-table td.col-checkout[data-v-81fbe841],.commute-table th.col-worktime[data-v-81fbe841],.commute-table td.col-worktime[data-v-81fbe841]{width:15%;text-align:center}.commute-table th.col-status[data-v-81fbe841],.commute-table td.col-status[data-v-81fbe841],.commute-table th.col-actions[data-v-81fbe841],.commute-table td.col-actions[data-v-81fbe841]{width:12%;text-align:center}.date-display[data-v-81fbe841]{display:flex;flex-direction:column;line-height:1.2;align-items:center}.date-part[data-v-81fbe841]{font-weight:500;color:#333}.date-part.muted[data-v-81fbe841]{color:#9ca3af;font-size:.85em}.day-part[data-v-81fbe841]{font-size:.8em;color:#666;margin-top:2px}.day-part.saturday[data-v-81fbe841]{color:#3498db;font-weight:600}.day-part.sunday[data-v-81fbe841]{color:#e74c3c;font-weight:600}.date-original[data-v-81fbe841]{font-weight:500;color:#333}.date-my[data-v-81fbe841]{font-size:.8em;color:#666;margin-top:2px}.date-my.highlight[data-v-81fbe841]{color:#3498db;font-weight:700;font-size:1em}.time-display[data-v-81fbe841]{font-weight:500;color:#333}.time-display.late[data-v-81fbe841]{color:#e74c3c;font-weight:600}.worktime-display[data-v-81fbe841]{font-weight:500;color:#333}.status-badge[data-v-81fbe841]{display:inline-block;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;text-align:center}.status-badge.normal[data-v-81fbe841]{background-color:#42b98326;color:#42b983}.status-badge.late[data-v-81fbe841]{background-color:#f8797926;color:#e74c3c}.status-badge.working[data-v-81fbe841]{background-color:#3498db26;color:#3498db}.status-badge.absent[data-v-81fbe841]{background-color:#95a5a626;color:#95a5a6}.status-badge.overtime[data-v-81fbe841]{background-color:#e67e2238;color:#e67e22}.status-badge.none[data-v-81fbe841]{background-color:#95a5a626;color:#95a5a6}.commute-table tr.expanded[data-v-81fbe841]{background-color:#f5f9ff}.commute-table tr.detail-row[data-v-81fbe841]{background-color:#f8fafc}.note-content[data-v-81fbe841]{white-space:pre-wrap;line-height:var(--line-height-normal)}.action-button[data-v-81fbe841]{background:none;border:none;cursor:pointer;padding:6px;border-radius:4px;color:#666;transition:all .2s}.action-button[data-v-81fbe841]:hover{background-color:#f0f0f0;color:#42b983}.edit-button[data-v-81fbe841]:hover{background-color:#dbeafe;color:#1d4ed8}.commute-table th.col-actions[data-v-81fbe841],.commute-table td.col-actions[data-v-81fbe841]{min-width:120px}.summary-stats[data-v-81fbe841]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.stat-item[data-v-81fbe841]{text-align:center;padding:15px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000f}.stat-label[data-v-81fbe841]{font-size:.9rem;color:#666;margin-bottom:8px}.stat-value[data-v-81fbe841]{font-size:1.5rem;font-weight:600;color:#333}.stat-value.late-count[data-v-81fbe841]{color:#e74c3c}.form-group[data-v-81fbe841]{margin-bottom:16px}.form-group label[data-v-81fbe841]{display:block;margin-bottom:6px;font-weight:600;color:#333}.cancel-button[data-v-81fbe841],.save-button[data-v-81fbe841]{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s}.cancel-button[data-v-81fbe841]{background-color:#f1f1f1;color:#666;border:none}.cancel-button[data-v-81fbe841]:hover{background-color:#e0e0e0}.save-button[data-v-81fbe841]{background-color:#42b983;color:#fff;border:none}.save-button[data-v-81fbe841]:hover{background-color:#3aa876}@media (max-width: 768px){.summary-stats[data-v-81fbe841]{grid-template-columns:repeat(2,1fr);gap:15px}.stat-item[data-v-81fbe841]{padding:12px}.stat-value[data-v-81fbe841]{font-size:1.2rem}.commute-table th[data-v-81fbe841],.commute-table td[data-v-81fbe841]{padding:8px;font-size:13px;white-space:normal;text-overflow:initial}}@media (max-width: 480px){.commute-table thead[data-v-81fbe841]{display:none}.commute-table[data-v-81fbe841],.commute-table tbody[data-v-81fbe841],.commute-table tr[data-v-81fbe841]{display:block;width:100%}.commute-table tr[data-v-81fbe841]{margin-bottom:16px;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;position:relative;background-color:#fff;box-shadow:0 4px 12px #0f172a0d}.commute-table td[data-v-81fbe841]{display:flex;align-items:flex-start;gap:12px;border:none;padding:6px 0;text-align:left;position:relative;white-space:normal;overflow:visible;text-overflow:initial;word-break:keep-all}.commute-table td[data-v-81fbe841]:before{content:attr(data-label);flex:0 0 88px;font-weight:600;font-size:12px;color:#6b7280;text-align:left;line-height:var(--line-height-normal)}.commute-table td.col-actions[data-v-81fbe841]{gap:8px}.commute-table td.col-actions[data-v-81fbe841]:before{margin-top:4px}.commute-table td.col-actions .action-button[data-v-81fbe841]{margin-right:0}.commute-table tr.detail-row[data-v-81fbe841]{background:#f8fafc;box-shadow:none}.commute-table tr.detail-row td[data-v-81fbe841]{display:block;padding:8px 10px!important}.commute-table tr.detail-row td[data-v-81fbe841]:before{display:none}.summary-stats[data-v-81fbe841]{grid-template-columns:1fr}}.work-log[data-v-78b29a0f]{width:100%;background:#f8fafc;border-radius:12px;padding:16px;box-shadow:0 1px 4px #42b98314}.work-log-header[data-v-78b29a0f]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.work-log-title[data-v-78b29a0f]{font-size:1.15rem;color:#0f172a;margin:0}.work-log-subtitle[data-v-78b29a0f]{margin:2px 0 0;font-size:.85rem;color:#64748b}.refresh-button[data-v-78b29a0f]{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:6px;border:1px solid #d1fae5;background:#ecfdf5;color:#047857;font-size:.85rem;cursor:pointer;transition:background .2s ease}.refresh-button[data-v-78b29a0f]:disabled{opacity:.5;cursor:not-allowed}.refresh-button[data-v-78b29a0f]:not(:disabled):hover{background:#d1fae5}.log-grid[data-v-78b29a0f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.log-column[data-v-78b29a0f]{background:#fff;border-radius:10px;padding:14px;border:1px solid #e2e8f0;min-height:180px}.column-header[data-v-78b29a0f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.column-title[data-v-78b29a0f]{display:flex;align-items:center;gap:10px}.column-title .material-icons[data-v-78b29a0f]{padding:8px;border-radius:8px;background:#ecfdf5;color:#10b981}.column-title .material-icons.upcoming[data-v-78b29a0f]{background:#eff6ff;color:#2563eb}.column-title .title[data-v-78b29a0f]{margin:0;font-size:.95rem;font-weight:600;color:#0f172a}.column-title .caption[data-v-78b29a0f]{margin:0;font-size:.78rem;color:#64748b}.count[data-v-78b29a0f]{background:#f1f5f9;border-radius:999px;padding:2px 10px;font-size:.8rem;color:#475569}.task-list[data-v-78b29a0f]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.task-item[data-v-78b29a0f]{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#f8fafc}.task-main[data-v-78b29a0f]{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.task-name[data-v-78b29a0f]{font-size:.95rem;font-weight:600;color:#0f172a;margin:0 0 2px}.task-queue[data-v-78b29a0f]{margin:0;font-size:.78rem;color:#64748b}.task-meta[data-v-78b29a0f]{display:flex;flex-wrap:wrap;font-size:.78rem;color:#475569}.task-desc[data-v-78b29a0f]{margin:6px 0 0;font-size:.78rem;color:#475569}.status-badge[data-v-78b29a0f]{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.status-badge.started[data-v-78b29a0f]{background:#16a34a}.status-badge.pending[data-v-78b29a0f]{background:#fbbf24;color:#78350f}.status-badge.retry[data-v-78b29a0f]{background:#f97316}.status-badge.failure[data-v-78b29a0f]{background:#ef4444}.status-badge.success[data-v-78b29a0f]{background:#22c55e}.status-badge.revoked[data-v-78b29a0f],.status-badge.unknown[data-v-78b29a0f]{background:#94a3b8}.empty-state[data-v-78b29a0f]{margin:0;font-size:.86rem;color:#94a3b8;text-align:center;padding:24px 0}.loading-state[data-v-78b29a0f]{font-size:.85rem;display:flex;align-items:center;gap:6px;color:#0f172a}.material-icons.spinning[data-v-78b29a0f]{animation:spin 1s linear infinite}.error-banner[data-v-78b29a0f]{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:8px 12px;font-size:.85rem;color:#b91c1c;display:flex;justify-content:space-between;align-items:center;gap:10px}.retry-button[data-v-78b29a0f]{background:transparent;border:none;color:#b91c1c;font-weight:600;cursor:pointer}.private-content-container[data-v-7dafa24a]{position:relative;max-width:1200px;margin:0 auto;padding:1.5rem;overflow:hidden}.private-content-flex[data-v-7dafa24a]{display:flex;gap:1.5rem;align-items:flex-start;flex-wrap:wrap}h3[data-v-7dafa24a]{color:#42b983;margin-top:0;margin:2.5rem 0 0}.private-data[data-v-7dafa24a]{padding:.625rem;display:flex;justify-content:flex-end;font-size:.8rem}.login-icon[data-v-7dafa24a]{font-size:.8125rem;color:#42b983;margin-right:.25rem}.login-label[data-v-7dafa24a]{color:#2c8c6d;font-weight:600;margin-right:.375rem}.login-time{&[data-v-7dafa24a]{color:var(--text-primary);font-weight:var(--font-weight-medium);white-space:nowrap}.dark &[data-v-7dafa24a]{color:var(--text-inverse)}}h4[data-v-7dafa24a]{color:#555;margin-bottom:.625rem}p[data-v-7dafa24a]{margin:.5rem 0;color:#666}ul[data-v-7dafa24a]{list-style-type:none;padding:0}li[data-v-7dafa24a]{display:inline-block;margin:0 .625rem}a[data-v-7dafa24a]{color:#42b983}.loading[data-v-7dafa24a]{margin:10px 0;font-style:italic;color:#666}.error[data-v-7dafa24a]{margin:10px 0;padding:10px;background-color:#ffebee;border-left:4px solid #f44336;color:#d32f2f}.response-data[data-v-7dafa24a]{margin:10px 0;padding:15px;background-color:#e8f5e9;border-radius:4px;overflow-x:auto}.response-data pre[data-v-7dafa24a]{margin:0}.items-list[data-v-7dafa24a]{margin:10px 0}.items-list ul[data-v-7dafa24a]{list-style-type:disc;padding-left:20px}.items-list li[data-v-7dafa24a]{display:block;margin:5px 0}.quote-section[data-v-7dafa24a]{background:linear-gradient(120deg,#e0f7fa,#f8fafc);border-radius:.875rem .875rem 0 0;box-shadow:0 .125rem .75rem #42b98314;padding:.5rem;display:flex;align-items:center;justify-content:center;min-height:2rem;position:relative}.quote-text[data-v-7dafa24a]{font-size:1rem;color:#2c8c6d;font-weight:600;text-align:center;margin:0;display:flex;align-items:center;justify-content:center}.quote-icon[data-v-7dafa24a]{font-size:1.375rem;color:#42b983;margin:0 .625rem;font-family:serif;opacity:.25}.info-flex-row[data-v-7dafa24a]{display:flex;flex-direction:column;gap:16px;width:100%}.info-flex-row[data-v-7dafa24a]>*{width:100%;min-width:0}@media (max-width: 900px){.private-content-flex[data-v-7dafa24a]{flex-direction:column;gap:18px}.info-flex-row[data-v-7dafa24a]{gap:12px}}@media (max-width: 600px){.private-content-container[data-v-7dafa24a]{padding:0}}.pointer-events-none[data-v-4bc4df15]{pointer-events:none}.toast-container{position:fixed;top:1rem;right:1rem;z-index:9999;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;margin-bottom:.5rem;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;backdrop-filter:blur(8px);pointer-events:auto;max-width:24rem;min-width:16rem}.toast-success{background-color:#10b981f2;color:#fff;border-left:4px solid #059669}.toast-error{background-color:#ef4444f2;color:#fff;border-left:4px solid #dc2626}.toast-warning{background-color:#f59e0bf2;color:#fff;border-left:4px solid #d97706}.toast-info{background-color:#3b82f6f2;color:#fff;border-left:4px solid #2563eb}.toast-icon{flex-shrink:0;margin-top:.125rem}.toast-content{flex:1;min-width:0}.toast-message{font-weight:500;font-size:.875rem;line-height:1.25rem}.toast-description{font-size:.75rem;line-height:1rem;margin-top:.25rem;opacity:.9}.toast-close{flex-shrink:0;padding:.25rem;border-radius:.25rem;background:transparent;border:none;color:currentColor;cursor:pointer;opacity:.7;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-closable{cursor:pointer}.toast-enter-active{transition:all .3s ease-out}.toast-leave-active{transition:all .3s ease-in}.toast-enter-from,.toast-leave-to{transform:translate(100%);opacity:0}.toast-move{transition:transform .3s ease}@media (max-width: 640px){.toast-container{top:.5rem;right:.5rem;left:.5rem}.toast{max-width:none;min-width:0}}
