body{font-family:Inter,Arial,sans-serif}@tailwind base;@tailwind components;@tailwind utilities;.attendance-bg-modern{align-items:center;background:radial-gradient(ellipse at 60% 5%,#fae8ff 0,#e0f6ff 90%);background-size:cover;display:flex;justify-content:center;min-height:100vh;transition:background .5s}.attendance-modern-card{align-items:center;animation:cardPop .5s cubic-bezier(.65,1.63,.49,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd9;border:1.5px solid #f1e6ff;border-radius:30px;box-shadow:0 10px 50px #adadf444,0 3px 20px #6ad1ff33;display:flex;flex-direction:column;padding:38px 32px 48px;position:relative;width:410px}.attendance-modern-card h2{color:#4642c7;font-size:2.2rem;font-weight:800;letter-spacing:1.1px;margin-bottom:10px;margin-top:8px}.attendance-modern-card .modern-desc{color:#888;font-size:1.13rem;margin-bottom:30px;text-align:center}.attendance-modern-input-wrap{align-items:center;background:#f4f9ff;border:1.7px solid #e1e7fd;border-radius:13px;box-shadow:0 1.5px 8px #98b6ff11;display:flex;margin-bottom:30px;width:100%}.attendance-modern-input{background:#0000;border:none;border-radius:13px;color:#363360;flex:1 1;font-size:1.13rem;letter-spacing:1.2px;outline:none;padding:15px 18px}.attendance-modern-input:disabled{background:#ece6fa;color:#aaa}.attendance-modern-icon-user{color:#5c5cd6;font-size:1.3rem;margin-left:12px;margin-right:3px;opacity:.85}.attendance-modern-btn-group{display:flex;gap:18px;margin-bottom:18px;width:100%}.attendance-modern-btn{background:linear-gradient(90deg,#7367ff 10%,#4dd0fa);border:none;border-radius:11px;box-shadow:0 2px 10px #c8d2ff40;color:#fff;cursor:pointer;flex:1 1;font-size:1.08rem;font-weight:600;letter-spacing:1px;padding:14px 0;transition:background .18s,transform .11s}.attendance-modern-btn.checkout{background:linear-gradient(90deg,#ff9c59 10%,#ff616f)}.attendance-modern-btn:active{transform:scale(.98)}.attendance-modern-btn:disabled{cursor:wait;filter:grayscale(.11);opacity:.63}.attendance-modern-toast{animation:toastFadeIn .7s cubic-bezier(.44,1.3,.54,.95) forwards;background:#f2f9fffa;border:1.5px solid #c6eaff;border-radius:22px;box-shadow:0 6px 24px #c6c2ff36;color:#3e315b;font-size:1.09rem;font-weight:500;left:50%;letter-spacing:.13px;max-width:90vw;min-width:220px;opacity:0;padding:13px 32px;pointer-events:none;position:absolute;top:14px;transform:translateX(-50%);z-index:50}@keyframes toastFadeIn{0%{opacity:0;transform:translate(-50%,-25px) scale(.96)}70%{opacity:1;transform:translate(-50%,4px) scale(1.04)}to{opacity:1;transform:translate(-50%) scale(1)}}.attendance-modern-tick-success{align-items:center;animation:tickBgShow .25s;background:#fffffff2;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;text-align:center;top:0;z-index:90}@keyframes tickBgShow{0%{opacity:0}to{opacity:1}}.tick-animate-wrap{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:13px}.tick-animate-svg{display:block;height:84px;margin-bottom:0;width:84px}.tick-animate-circle{stroke:#7367ff;stroke-width:6px;fill:#e2fff7;filter:drop-shadow(0 2px 14px #87efce5c)}.tick-animate-path{stroke:#16d486;stroke-width:7px;stroke-linecap:round;fill:none;stroke-dasharray:38;stroke-dashoffset:38;animation:tickPath .54s cubic-bezier(.47,1.6,.53,.98) .15s forwards}@keyframes tickPath{0%{stroke-dashoffset:38}to{stroke-dashoffset:0}}.attendance-modern-success-title{ext-align:center;animation:toastFadeIn .55s cubic-bezier(.44,1.3,.54,.95) .22s both;color:#00975b;font-size:1.25rem;font-weight:700;letter-spacing:.2px;margin-bottom:7px}.attendance-modern-success-desc{animation:toastFadeIn .51s cubic-bezier(.44,1.3,.54,.95) .36s both;color:#757bb7;font-size:1.05rem}@media (max-width:640px){.attendance-modern-card{padding:23px 6vw 26px;width:98vw}.attendance-modern-card h2{font-size:1.44rem}}.task-bg-modern{align-items:center;background:radial-gradient(ellipse at 60% 5%,#e7f4ff 0,#f9ecff 100%);display:flex;justify-content:center;min-height:100vh}.task-modern-card{align-items:center;animation:cardPop .5s cubic-bezier(.65,1.63,.49,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1.5px solid #ece2ff;border-radius:30px;box-shadow:0 12px 48px #b6e7ff33,0 2px 18px #a77fff22;display:flex;flex-direction:column;padding:40px 30px 30px;position:relative;width:410px}@keyframes cardPop{0%{opacity:0;transform:translateY(35px) scale(.96)}80%{transform:translateY(-6px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}.task-modern-card h2{color:#7b35e9;font-size:2.1rem;font-weight:800;letter-spacing:1.1px;margin-bottom:16px;text-align:center}.task-modern-card .modern-desc{color:#7d7d8c;font-size:1.11rem;margin-bottom:32px;text-align:center}.task-modern-input-wrap{align-items:center;background:#f5f9ff;border:1.7px solid #efe2fd;border-radius:13px;display:flex;margin-bottom:28px;width:100%}.task-modern-input{background:#0000;border:none;border-radius:13px;color:#3a3360;flex:1 1;font-size:1.14rem;letter-spacing:1.1px;outline:none;padding:14px 18px}.task-modern-input:disabled{background:#ece6fa;color:#aaa}.task-modern-btn{background:linear-gradient(90deg,#8767ff 10%,#55c9fa);border:none;border-radius:11px;box-shadow:0 1.5px 8px #8ee7ff33;color:#fff;cursor:pointer;flex:1 1;font-size:1.08rem;font-weight:600;letter-spacing:1px;margin-left:12px;padding:13px 0;transition:background .17s,transform .11s}.task-modern-btn:active{transform:scale(.98)}.task-modern-btn:disabled{cursor:wait;filter:grayscale(.14);opacity:.67}.task-modern-tasklist{margin-top:10px;width:100%}.task-modern-task-item{align-items:center;background:#f8f8ff;border:1.2px solid #f3e8ff;border-radius:13px;box-shadow:0 1px 8px #c3a9ff0d;color:#6145a9;display:flex;font-size:1.13rem;font-weight:500;justify-content:space-between;letter-spacing:.04em;margin-bottom:15px;padding:17px 18px;transition:background .19s}.task-modern-task-item.done{background:#e8ffed;color:#7ba18b;opacity:.74;text-decoration:line-through}.task-modern-complete-btn{background:linear-gradient(90deg,#42e695,#3bb2b8);border:none;border-radius:8px;box-shadow:0 1.5px 8px #6af0bb55;color:#fff;cursor:pointer;font-size:1rem;margin-left:16px;padding:7px 15px;transition:background .19s,transform .11s}.task-modern-complete-btn:active{transform:scale(.96)}.task-modern-empty{color:#9a9cbe;font-size:1.13rem;font-style:italic;margin-top:27px;text-align:center}.task-modern-success{animation:toastFadeIn .7s cubic-bezier(.44,1.3,.54,.95) both;color:#13b468;font-size:1.17rem;font-weight:700;letter-spacing:.14px;margin-bottom:11px;margin-top:3px;text-align:center}@media (max-width:640px){.task-modern-card{padding:24px 3vw 23px;width:99vw}.task-modern-card h2{font-size:1.25rem}}.event-bg{background:linear-gradient(135deg,#f8e8ff,#e3f3ff);justify-content:center;min-height:100vh;padding:36px 0}.event-bg,.event-calendar-card{align-items:center;display:flex}.event-calendar-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffffa;border:1.5px solid #f7eaff;border-radius:28px;box-shadow:0 10px 40px #e7aaff25,0 2px 18px #8edbff1c;flex-direction:column;padding:34px 26px 28px;position:relative;width:410px}.event-calendar-card h2{color:#ff6c2d;font-size:2.1rem;font-weight:800;letter-spacing:1.1px;margin-bottom:17px;text-align:center}.event-calendar-form{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:21px;width:100%}.event-calendar-form input{border:1.3px solid #ece2ff;border-radius:9px;font-size:1.04rem;margin-bottom:5px;outline:none;padding:8px 13px}.event-calendar-form input[type=date]{min-width:135px}.event-calendar-form button{background:linear-gradient(90deg,#ff6c2d,#ffb86c);border:none;border-radius:9px;box-shadow:0 2px 8px #ffd6a440;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:8px 20px;transition:background .18s}.event-calendar-form button:active{transform:scale(.97)}.event-calendar-message{color:#13b468;font-size:1.05rem;margin-bottom:8px;text-align:center}.event-calendar-wrap{margin-bottom:17px;width:100%}.event-calendar-month{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.event-calendar-month button{background:none;border:none;color:#b493f9;cursor:pointer;font-size:1.6rem;transition:color .17s}.event-calendar-month button:active{color:#7142fc}.event-calendar-title{color:#6d3eff;font-size:1.23rem;font-weight:700;letter-spacing:.7px}.event-calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.event-calendar-cell,.event-calendar-day{border-radius:9px;font-size:1.03rem;font-weight:600;height:34px;line-height:34px;margin-bottom:2px;text-align:center;width:34px}.event-calendar-day{background:none;color:#999;font-size:.97rem;font-weight:700}.event-calendar-cell{background:#faf4ff;border:1.3px solid #f2e7ff;color:#6844d4;cursor:pointer;transition:background .14s,color .13s,box-shadow .18s}.event-calendar-cell.has-event{animation:eventpulse .4s;background:linear-gradient(120deg,#fff0f4 40%,#d2fff7);border:1.8px solid #ffb86c;box-shadow:0 2px 8px #ffb86c2b;color:#ff6c2d;font-weight:800}@keyframes eventpulse{0%{box-shadow:0 0 0 #ffb86c00}70%{box-shadow:0 0 24px #ffbc6c60}to{box-shadow:0 2px 8px #ffb86c2b}}.event-calendar-cell.selected{background:linear-gradient(90deg,#ffb2e4 30%,#ffecd2);border:2px solid #7b35e9;color:#6e3afc}.event-eventlist{margin-top:7px;width:100%}.event-eventitem{background:#f2f9ff;border:1.1px solid #ffdfcc;border-radius:13px;box-shadow:0 2px 9px #ffd5c533;display:flex;flex-direction:column;margin-bottom:13px;padding:13px 14px 10px;position:relative}.event-eventitem-title{color:#ff6c2d;font-size:1.13rem;font-weight:700;margin-bottom:1px}.event-eventitem-date{color:#888;font-size:.99rem;margin-bottom:2px}.event-eventitem-notes{color:#606070;font-size:.97rem}.event-eventitem-delete{background:none;border:none;color:#e26767;cursor:pointer;font-size:.97rem;font-weight:700;position:absolute;right:12px;text-decoration:underline;top:8px;transition:color .17s}.event-eventitem-delete:active{color:#f11414}.event-calendar-empty{color:#999;font-size:1.1rem;font-style:italic;margin-top:10px;text-align:center}@media (max-width:520px){.event-calendar-card{padding:18px 3vw;width:99vw}.event-calendar-form button,.event-calendar-form input{font-size:.97rem}.event-calendar-cell,.event-calendar-day{font-size:.95rem;height:27px;width:27px}}.employee-bg{background:linear-gradient(110deg,#f1eaff,#e4f6ff);justify-content:center;min-height:100vh;padding:48px 0}.employee-bg,.employee-card{align-items:center;display:flex}.employee-card{background:#fff;border:1.4px solid #eae1ff;border-radius:26px;box-shadow:0 10px 34px #a7e0f44d,0 2px 8px #f2c3ff29;flex-direction:column;max-width:98vw;padding:38px 30px 32px;width:410px}.employee-card h2{color:#ff820c;font-size:2rem;font-weight:800;letter-spacing:.7px;margin-bottom:20px;text-align:center}.employee-form{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px;width:100%}.employee-form input{background:#faf8ff;border:1.2px solid #efe6ff;border-radius:10px;flex:1 1;font-size:1.08rem;min-width:0;outline:none;padding:11px 14px}.employee-btn{background:linear-gradient(90deg,#ff6c2d 50%,#ffb86c);border:none;border-radius:10px;box-shadow:0 1.5px 8px #ffd6a440;color:#fff;cursor:pointer;font-size:1.08rem;font-weight:700;min-height:40px;padding:0 22px;transition:background .17s,transform .09s;white-space:nowrap}.employee-btn:active{transform:scale(.97)}.employee-message{animation:fadeIn .7s;color:#34b36a;font-size:1.05rem;font-weight:600;margin-bottom:8px;min-height:24px;text-align:center}.employee-list{margin-top:14px;width:100%}.employee-item{align-items:center;background:#f9f5ff;border:1.1px solid #eee2fd;border-radius:10px;box-shadow:0 1px 6px #d0cbff17;display:flex;justify-content:space-between;margin-bottom:10px;padding:13px 12px 11px 14px;transition:box-shadow .14s}.employee-item:hover{box-shadow:0 3px 12px #bdabfd38}.employee-info{display:flex;flex-direction:column}.employee-name{color:#6b33c2;font-size:1.1rem;font-weight:700}.employee-code{color:#888;font-size:.97rem;margin-top:2px}.employee-delete-btn{background:none;border:none;color:#e84141;cursor:pointer;font-size:1.09rem;font-weight:600;margin-left:15px;text-decoration:underline;transition:color .13s}.employee-delete-btn:active{color:#d20000}@media (max-width:540px){.employee-card{padding:13px 2vw 15px;width:98vw}.employee-card h2{font-size:1.18rem}.employee-form{flex-direction:column;gap:10px}.employee-btn,.employee-form input{box-sizing:border-box;min-width:0;width:100%}}.export-bg{background:linear-gradient(120deg,#e0eeff,#fbe9ff);justify-content:center;min-height:100vh;padding:44px 0}.export-bg,.export-card{align-items:center;display:flex}.export-card{background:#fff;border:1.4px solid #efe3ff;border-radius:27px;box-shadow:0 10px 38px #b7c6f94d,0 2px 12px #e9baff1c;flex-direction:column;padding:36px 30px 38px;width:410px}.export-icon{color:#34ba7a;font-size:3.8rem;margin-bottom:7px;margin-top:-6px}.export-card h2{color:#ff851a;font-size:2rem;font-weight:800;letter-spacing:.1rem;margin-bottom:7px;text-align:center}.export-desc{color:#666ea3;font-size:1.1rem;margin-bottom:21px;text-align:center}.export-btn{background:linear-gradient(90deg,#34ba7a 50%,#27e9a0);border:none;border-radius:12px;box-shadow:0 2px 11px #b2ffe766;color:#fff;cursor:pointer;font-size:1.11rem;font-weight:700;padding:13px 32px;transition:background .18s,transform .1s}.export-btn:active{transform:scale(.97)}.export-success{animation:fadeIn .65s;color:#2bb665;font-size:1.05rem;font-weight:600;margin-top:13px}@keyframes fadeIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width:520px){.export-card{padding:19px 2vw 22px;width:98vw}.export-icon{font-size:2.4rem}.export-card h2{font-size:1.15rem}}.calendar-nav-btn{background:#e7defe;border:none;border-radius:8px;color:#8c62ff;cursor:pointer;font-size:1.1em;font-weight:700;padding:3px 11px;transition:background .15s}.calendar-nav-btn:hover{background:#d1baff}.ad-table{border-radius:10px;margin-bottom:18px;overflow:hidden}.ad-table td,.ad-table th{padding:10px 12px}.ad-table th{background:#f7f7f7;border-bottom:2px solid #e2e2e2}.ad-table tr{border-bottom:1px solid #f1f1f1}.ad-table tr:last-child{border-bottom:none}.ad-table tr:hover{background:#f9fafc}.event-layout{align-items:flex-start;display:flex;gap:32px;margin-top:0}.event-detail{flex:1 1;min-width:270px;padding:32px 24px 24px}.event-calendar{background:#fff;border-radius:14px;box-shadow:0 2px 10px #0001;min-width:320px;padding:18px 18px 12px}@media (max-width:700px){.event-layout{flex-direction:column;gap:12px}.event-calendar{min-width:0}}.calendar-root{width:100%}.calendar-header{font-size:18px;margin-bottom:7px;text-align:center}.calendar-days{display:grid;font-size:15px;font-weight:700;grid-template-columns:repeat(7,1fr);margin-bottom:3px;text-align:center}.calendar-weeks{display:flex;flex-direction:column;gap:2px}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-cell{align-items:center;border-radius:8px;cursor:pointer;display:flex;height:32px;justify-content:center;margin:1px auto;text-align:center;transition:box-shadow .2s,background .2s,color .2s;width:35px}.calendar-cell:hover{background:#eee}.calendar-cell.event{background:#fffbe7;box-shadow:0 0 0 2px orange,0 0 10px #ffe49c;color:#db8900;font-weight:700}.calendar-cell.selected{background:#ffc107;box-shadow:0 0 0 2px #ffc107,0 0 10px #ffe49c;color:#fff;font-weight:700}.ad-btn-danger{background:#e84545!important;border:none!important;color:#fff!important}.ad-root{background:radial-gradient(ellipse 80% 100% at 50% 0,#fff7ed 60%,#ffedd5 100%);font-family:Segoe UI,Arial,sans-serif;min-height:100vh}.ad-card{animation:fadein .7s cubic-bezier(.48,0,.18,1.12);background:#fff;border-radius:22px;box-shadow:0 8px 32px 0 #ff980041,0 1.5px 4px #fff7ed;margin:32px auto;max-width:1050px;padding:38px 40px 28px}.ad-title{align-items:center;color:#ed6c02;display:flex;font-size:2.1rem;font-weight:700;gap:14px;letter-spacing:1px;margin-bottom:24px}.ad-logo{background:#ff9800;border-radius:8px;display:inline-block;height:36px;width:36px}.ad-tabs{display:flex;gap:13px;margin-bottom:34px}.ad-tab{background:#ffedd5;border:none;border-radius:8px 8px 0 0;color:#ed6c02;cursor:pointer;font-size:1.1rem;font-weight:600;outline:none;padding:10px 25px;transition:all .16s}.ad-tab.active,.ad-tab:hover{background:#ff9800;color:#fff}.ad-cale{background:#fff8f1;border:none;border-radius:16px;box-shadow:0 2px 8px #ff980018;font-size:1rem;margin-bottom:18px;max-width:460px;width:100%}.ad-cale td,.ad-cale th{padding:7.5px 0;text-align:center;width:40px}.ad-cale th{background:#fff7ed;color:#ff9800;font-size:1rem;font-weight:700}.ad-cale td{border-radius:8px;position:relative;transition:background .15s}.ad-cale td:hover{background:#ffe0b2}.ad-cale-today{background:#fff3e0!important;box-shadow:inset 0 0 0 2px #ff9800;font-weight:700}.ad-cale-has{color:#e65100}.ad-cale-dot{background:#ed6c02;border-radius:50%;bottom:6px;display:inline-block;height:6px;left:50%;position:absolute;transform:translateX(-50%);width:6px}.ad-table{border-collapse:collapse;margin-bottom:8px;width:100%}.ad-table td,.ad-table th{border-bottom:1.5px solid #ffe0b2;padding:8px 11px;text-align:left}.ad-table th{background:#fff3e0;color:#ed6c02}.ad-table td.empty{color:#c2410c;font-style:italic}.ad-checklist-wrap{display:flex;gap:38px}.ad-checklist{background:#fff8f1;border-radius:12px;box-shadow:0 2px 8px #ff980015;flex:1 1;min-width:180px;padding:20px 18px}.ad-checklist-title{color:#ed6c02;font-size:1.1rem;font-weight:700;margin-bottom:10px}.ad-task{align-items:center;display:flex;gap:10px;margin-bottom:8px}.ad-task input[type=checkbox]{accent-color:#ff9800;height:1.15em;width:1.15em}.ad-task.done span{color:#16a34a;text-decoration:line-through}.ad-task span{font-size:1.06rem}.ad-event-btn{background:#ff9800;border:none;border-radius:18px;box-shadow:0 2px 8px #ed6c0268;color:#fff;cursor:pointer;display:inline-block;font-size:1.15rem;font-weight:700;margin:8px 10px 8px 0;overflow:hidden;padding:14px 30px;position:relative;transition:background .15s,transform .15s}.ad-event-btn:after{background:#fff7ed38;content:"";height:100%;left:0;position:absolute;top:0;transition:width .3s;width:0}.ad-event-btn:hover{background:#ed6c02;transform:scale(1.04)}.ad-event-btn:hover:after{width:100%}.ad-popup-mask{background:#2228;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:100}.ad-popup{animation:popin .28s;background:#fff;border-radius:15px;box-shadow:0 6px 48px #ff980088;left:50%;max-width:90vw;min-width:340px;padding:32px 26px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:101}@keyframes fadein{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes popin{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.ad-popup-title{color:#ed6c02;font-size:1.2rem;font-weight:700;margin-bottom:12px}.ad-popup-close{color:#ed6c02;cursor:pointer;font-size:1.8rem;position:absolute;right:18px;top:10px}.ad-footer{color:#eab308;font-size:1.01rem;margin-top:38px;opacity:.85;text-align:center}::-webkit-scrollbar{background:#fff7ed;width:8px}::-webkit-scrollbar-thumb{background:#ffd699;border-radius:6px}
/*# sourceMappingURL=main.ea8e9ba1.css.map*/