body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{-ms-overflow-style:none;background-color:#f3f4f6;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;overflow-x:hidden;scrollbar-width:none}body::-webkit-scrollbar,html::-webkit-scrollbar{display:none}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}.page-container{align-items:center;background-color:#f3f4f6;display:flex;justify-content:center;min-height:100vh}.form-wrapper{background:#fff;border-radius:16px;box-shadow:0 10px 25px #0000001a;padding:3rem 2.5rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease;width:360px}.form-wrapper:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-4px)}.logo{height:80px;margin-bottom:1rem;padding:10px;width:80px}.logo,.logo img{object-fit:contain}.form-wrapper h1{color:#000;font-size:1.8rem;margin-bottom:1.5rem}.form-wrapper input{border:1px solid #ccc;border-radius:10px;box-sizing:border-box;font-size:1rem;margin-bottom:1rem;padding:.65rem .75rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-wrapper input:focus{border-color:#2563eb;box-shadow:0 0 5px #2563eb80;outline:none}.form-wrapper button{background-color:#2563eb;border:none;border-radius:10px;box-sizing:border-box;color:#fff;cursor:pointer;display:block;font-size:1rem;padding:.65rem .75rem;transition:background-color .2s ease,transform .1s ease;width:100%}.form-wrapper button:hover{background-color:#1e40af;transform:translateY(-2px)}.form-wrapper p{font-size:.9rem;margin-top:1rem}.form-wrapper p a{color:#2563eb;font-weight:500}.form-wrapper p a:hover{text-decoration:underline}.form-wrapper{animation:fadeIn .4s forwards;opacity:0;transform:translateY(10px)}.form-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;width:100%}@media (max-width:768px){.form-actions{gap:1.5rem}}@media (max-width:480px){.form-actions{gap:2rem}}.field-hint{color:#6b7280;font-size:.875rem;font-style:italic;margin:.25rem 0 .75rem}.task-reorder-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.task-reorder-item{align-items:center;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:.5rem;cursor:move;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.task-reorder-item:hover{background-color:#f3f4f6;border-color:#d1d5db}.task-reorder-item.dragging{cursor:grabbing;opacity:.5}.task-reorder-item.drag-over{background-color:#eff6ff;border-color:#3b82f6;border-style:dashed;transform:scale(1.02)}.task-reorder-content{align-items:center;display:flex;flex:1 1;gap:.75rem}.drag-handle{color:#9ca3af;cursor:grab;font-size:1.25rem}.task-reorder-item.dragging .drag-handle{cursor:grabbing}.task-order-number{color:#6b7280;font-weight:600;min-width:2rem}.task-name{color:#1f2937;flex:1 1;font-weight:500}.task-actions{align-items:center;display:flex;gap:.5rem}.inline-edit-btn,.inline-remove-btn{border:1px solid;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.375rem .75rem;transition:all .15s ease}.inline-edit-btn{background-color:#fff;border-color:#3b82f6;color:#3b82f6}.inline-edit-btn:hover{background-color:#3b82f6;color:#fff}.inline-remove-btn{background-color:#fff;border-color:#ef4444;color:#ef4444}.inline-remove-btn:hover{background-color:#ef4444;color:#fff}.task-selection-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.task-checkbox-item{border:1px solid #e5e7eb;border-radius:.375rem;justify-content:space-between;padding:.75rem 1rem;transition:all .15s ease}.task-checkbox-item:hover{background-color:#f9fafb;border-color:#d1d5db}.task-checkbox-item input[type=checkbox]{height:1.125rem;width:1.125rem}.task-checkbox-item label{-webkit-user-select:none;user-select:none}.selection-count{color:#6b7280;display:inline-block;font-weight:500;margin-top:.5rem}.no-tasks-message{background-color:#f9fafb;border-radius:.5rem;color:#9ca3af;font-style:italic;margin:0;padding:2rem;text-align:center}@media (max-width:768px){.task-reorder-item{align-items:flex-start;flex-direction:column;gap:.75rem}.task-actions{justify-content:flex-end;width:100%}.drag-handle{font-size:1rem}}.task-reorder-item:focus-within{outline:2px solid #3b82f6;outline-offset:2px}.inline-edit-btn:focus,.inline-remove-btn:focus{outline:2px solid;outline-offset:2px}.inline-edit-btn:focus{outline-color:#3b82f6}.inline-remove-btn:focus{outline-color:#ef4444}.task-reorder-list{touch-action:none}.task-reorder-item.dragging{opacity:.6}.drag-handle{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.tb-modal-overlay{align-items:center;animation:fadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.tb-modal{animation:slideUp .22s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 28px #00000026;max-width:95%;padding:2rem;width:420px}.tb-modal h3{font-size:1.35rem;margin-bottom:.5rem;margin-top:0}.tb-modal-text{color:#444;font-size:.95rem;margin-bottom:1.5rem}.tb-modal-buttons{display:flex;flex-direction:column;gap:.75rem}.tb-btn-delete{background:#d32f2f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem;transition:.15s}.tb-btn-delete:hover{background:#b81f1f}.tb-btn-secondary{background:#1565c0;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem;transition:.15s}.tb-btn-secondary:hover{background:#0d47a1}.tb-btn-cancel{background:#eee;border:none;border-radius:6px;color:#333;cursor:pointer;font-weight:600;padding:.75rem;transition:.15s}.tb-btn-cancel:hover{background:#ddd}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dashboard-container{background-color:#f3f4f6;display:block;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1000px}.dashboard-header{border-radius:12px;box-shadow:0 6px 18px #00000014;margin-bottom:2rem;padding:1rem 2rem}.dashboard-header h1{color:#1f2937;font-size:1.8rem}.logo-box{background:#0000;height:80px;justify-content:center;padding:10px;transition:transform .2s;width:80px}.logo-box:hover{transform:scale(1.05)}.logo-box img{height:100%;object-fit:contain;width:100%}.dashboard-brand{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;margin:0;padding:0}.dashboard-brand:focus-visible,.logo-box-button:focus-visible{outline:2px solid #000}.logo-box-button{border:none;cursor:pointer;padding:0}.dashboard-title-actions{align-items:center;display:flex;justify-content:space-between}.dashboard-title-actions h2{color:#111827;font-size:1.5rem}.dashboard-buttons button:hover{background-color:#1e293b;transform:translateY(-2px)}.dashboard-buttons button{background-color:#0f172a;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:.5rem 1rem;transition:background-color .2s ease}.dashboard-buttons .create-button{margin-left:.5rem}.dashboard-buttons .delete-button{background-color:#dc3545}.dashboard-buttons .delete-button:hover{background-color:#c82333}.project-row,.task-row{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem 1.5rem;transition:transform .2s,box-shadow .2s}.project-row-button,.task-row-button{background:#fff;border:none;color:inherit;cursor:pointer;text-align:left;width:100%}.project-row-button:focus-visible,.task-row-button:focus-visible{outline:2px solid #2563eb}.project-row:hover,.task-row:hover{box-shadow:0 6px 18px #0000001a;transform:translateY(-2px)}.project-row>div,.task-row>div{align-items:center;display:flex;flex:1 1;justify-content:center;text-align:center}.project-row>div:first-child,.task-row>div:first-child{justify-content:flex-start;text-align:left}.task-overdue{background-color:#fee2e2!important;border-left:6px solid #ef4444!important;border-radius:6px!important}.task-overdue:hover{background-color:#fecaca!important}.task-overdue .task-status-icon{margin-left:-4px}.task-due-today{background-color:#fee2e2!important;border-left:4px solid #ef4444}.task-due-today:hover{background-color:#fecaca!important}.task-status-icon{align-items:center;display:inline-flex;font-size:1.2rem;margin-right:.25rem;vertical-align:middle}.status-icon-inprogress{color:#3b82f6}.status-icon-notstarted{color:#9ca3af}.status-icon-completed{color:#10b981}.status-icon-onhold{color:#f59e0b}.status-icon-blocked{color:#ef4444}.status-icon-default{color:#6b7280}.form-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:2rem;padding:2rem}.form-row{display:flex;gap:1.5rem;margin-bottom:1.5rem}.form-group{display:flex;flex:1 1;flex-direction:column}.form-group.full-width{flex:1 1 100%}.form-group label{color:#374151;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textar ea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.form-group select{background-color:#fff;cursor:pointer}@media (max-width:768px){.form-row{flex-direction:column;gap:1rem}}.form-group input.error,.form-group select.error,.form-group textarea.error{background-color:#fef2f2;border-color:#dc2626}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.home-section{margin-bottom:2.5rem}.section-footer-button{background-color:#111827;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;margin-top:1rem;padding:.75rem 1.5rem;transition:background .3s,transform .2s;width:100%}.section-footer-button:hover{background-color:#0b1220;transform:translateY(-2px)}.home-bottom-buttons{display:flex;gap:1.5rem;justify-content:center;margin-top:3rem}.home-bottom-buttons button{background-color:#111827;border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1 160px;font-weight:600;max-width:200px;padding:.85rem 1.5rem;transition:background .3s,transform .2s}.home-bottom-buttons button:hover{background-color:#0b1220;transform:translateY(-2px)}.stats-main{background:#fff;border-radius:12px;box-shadow:0 6px 18px #00000014;padding:2rem}.stats-main h2{margin-bottom:1.5rem}.stats-metric{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;font-size:1rem;justify-content:space-between;padding:.75rem 0}.stats-main h3{color:#1f2937;font-size:1.1rem;margin-bottom:1rem;margin-top:2rem}.stats-graph{align-items:flex-end;background:linear-gradient(0deg,#2563eb0d,#2563eb1f);border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:.75rem;min-height:200px;padding:1.5rem}.stats-bar-wrapper{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.4rem;justify-content:flex-end;min-width:48px}.stats-bar{align-items:flex-end;background:#2563eba6;border-radius:8px 8px 0 0;color:#fff;display:flex;font-weight:600;justify-content:center;position:relative;width:100%}.stats-bar-count{background:#111827;border-radius:999px;box-shadow:0 4px 10px #00000026;color:#fff;font-size:.8rem;padding:.2rem .6rem;position:absolute;top:-30px;transform:translateY(-50%);white-space:nowrap}.stats-bar-label{color:#1f2937;font-size:.85rem;font-weight:500;text-align:center}.stats-return{margin-top:2rem}.settings-list{margin:0 0 2rem}.settings-list li{border-bottom:1px solid #e5e7eb;font-size:1rem;padding:.85rem 0}.settings-return{margin-top:1rem}.error-message{display:block;font-size:.875rem;font-weight:500;margin-top:.25rem}.task-selection-list{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:8px;max-height:300px;overflow-y:auto;padding:1rem}.task-checkbox-item{align-items:center;background-color:#fff;border-radius:6px;display:flex;margin-bottom:.5rem;padding:.75rem;transition:background-color .2s}.task-checkbox-item:hover{background-color:#f3f4f6}.task-checkbox-item:last-child{margin-bottom:0}.task-checkbox-item input[type=checkbox]{cursor:pointer;height:18px;margin-right:.75rem;width:18px}.task-checkbox-item label{color:#374151;cursor:pointer;flex:1 1;font-weight:400;margin:0}.selection-count{color:#2563eb;display:block;font-size:.875rem;font-weight:600;margin-top:.75rem}.dashboard-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-bottom:2rem}.filter-dropdown-container,.sort-dropdown-container{display:inline-block;position:relative}.sort-dropdown-menu{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:.5rem;max-height:400px;min-width:200px;overflow:hidden;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.sort-option{background:none;border:none;border-bottom:1px solid #e5e7eb;border-radius:0!important;color:#374151;cursor:pointer;display:block;font-size:.9rem;margin:0!important;padding:.75rem 1rem;text-align:left;transition:background-color .2s;width:100%}.sort-option:last-child{border-bottom:none}.sort-option:hover{background-color:#f3f4f6}.sort-option.active{background-color:#eff6ff;color:#2563eb;font-weight:600}.filter-category-label{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.8rem;font-weight:700;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.filter-permanent-notice{background-color:#eff6ff;border-bottom:2px solid #bfdbfe;color:#2563eb;font-size:.85rem;font-weight:600;padding:.75rem 1rem;text-align:center}.filter-no-options{color:#6b7280;font-size:.9rem;font-style:italic;padding:1rem;text-align:center}.active-filter-item{align-items:center;background-color:#eff6ff;border-bottom:1px solid #bfdbfe;color:#1e40af;display:flex;font-size:.9rem;justify-content:space-between;padding:.75rem 1rem}.active-filter-item span{font-weight:500}.remove-filter-btn{background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem .5rem;transition:background-color .2s}.remove-filter-btn:hover{background-color:#fee2e2}.grade-circle{align-items:center;background-color:#28a745;border-radius:50%;color:#fff;cursor:default;display:inline-flex;font-size:14px;font-weight:700;height:30px;justify-content:center;transition:transform .2s,box-shadow .2s;width:30px}.grade-circle:hover{box-shadow:0 0 8px #0000004d;transform:scale(1.2)}.settings-main{background:#fff;border-radius:12px;box-shadow:0 6px 18px #00000014;margin:0 auto 2rem;max-width:1000px;padding:2rem}.settings-main h2{color:#111827;font-size:1.5rem;margin-bottom:1.5rem}.settings-list{list-style:none;margin:0;padding:0}.settings-item{align-items:center;border-bottom:1px solid #e5e7eb;color:#374151;display:flex;font-size:1rem;justify-content:space-between;padding:.75rem 0;transition:background .2s,transform .1s}.settings-item:last-child{border-bottom:none}.settings-item:hover{background-color:#f3f4f6;transform:translateY(-1px)}.settings-left{align-items:center;display:flex;gap:12px}.settings-icon{color:#4b5563;font-size:1.2rem}.settings-name{color:#111827;font-weight:500}.settings-value{color:#000;font-weight:700;min-width:40px;text-align:right}.search-button{align-items:center;background-color:#1f2937;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:700;justify-content:center;padding:.6rem 1rem;transition:background .3s,transform .2s}.search-button:hover{background-color:#111827;transform:translateY(-2px)}.popup-overlay{align-items:center;background-color:#0006;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:999}.popup-content{background-color:#fff;border-radius:12px;box-shadow:0 6px 18px #0000001a;max-width:400px;padding:2rem;text-align:center;width:90%}.popup-content h3{color:#111827;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.popup-buttons{display:flex;gap:1rem;justify-content:center}.popup-btn{background-color:#1f2937;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:.7rem 1.5rem;transition:background .3s,transform .2s}.popup-btn:hover{background-color:#111827;transform:translateY(-2px)}.popup-btn.no{background-color:#6b7280}.popup-btn.no:hover{background-color:#4b5563}.change-password-page{background:#fff;border-radius:12px;box-shadow:0 6px 18px #00000014;margin:0 auto 2rem;max-width:1000px;padding:2rem}.change-password-page h2{color:#111827;font-size:1.5rem;margin-bottom:1.5rem}.change-password-form label{color:#374151;display:block;font-size:.95rem;font-weight:600;margin-bottom:.75rem}.change-password-form input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.change-password-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.change-password-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.change-password-buttons button{background-color:#1f2937;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:.7rem 1.5rem;transition:background .3s,transform .2s}.change-password-buttons button:hover{background-color:#111827;transform:translateY(-2px)}.change-password-buttons .cancel{background-color:#6b7280}.change-password-buttons .cancel:hover{background-color:#4b5563}.error-message{color:#dc2626}.error-message,.success-message{font-size:.9rem;margin-bottom:.5rem;margin-top:-.5rem;text-align:center}.success-message{color:#16a34a}.primary-button{background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;margin:8px;padding:10px 18px;transition:background-color .2s ease}.primary-button:hover{background-color:#2563eb}.task-row.task-due-soon{background-color:#fff3cd!important}.toggle-password-btn{background:none;border:none;color:#007bff;cursor:pointer;font-size:.8rem;margin-top:5px;padding:0}.toggle-password-btn:hover{text-decoration:underline}@media (max-width:768px){.dashboard-buttons button,.search-button{font-size:.9rem;padding:.4rem .8rem}}@media (max-width:480px){.dashboard-buttons button,.search-button{font-size:.85rem;padding:.35rem .7rem}}.dashboard-container{background-color:#f9fafb;font-family:Arial,sans-serif;min-height:100vh;padding:2rem}.project-details{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:1.5rem;padding:1rem 1.5rem}.task-list{list-style:none;margin-top:1rem;padding:0}.task-row{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:.8rem;padding:1rem 1.5rem;transition:transform .1s ease,box-shadow .1s ease}.task-row.clickable{cursor:pointer}.task-row.clickable:hover{background-color:#f8fafc;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.dashboard-header{background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 4px #0000000d;justify-content:space-between;padding:1rem 1.5rem}.dashboard-header,.logo-box{align-items:center;display:flex}.logo-image{height:40px;width:40px}.btn-edit{background-color:#2563eb}.btn-edit:hover{background-color:#1e40af}.btn-return{background-color:#6b7280}.btn-return:hover{background-color:#4b5563}.circular-progress-container{align-items:center;display:inline-flex;justify-content:center;position:relative}.circular-progress-svg{transform:rotate(-90deg)}.circular-progress-bg{fill:none;stroke:#e5e7eb}.circular-progress-bar{fill:none;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.circular-progress-text{align-items:center;display:flex;flex-direction:column;justify-content:center;position:absolute;text-align:center}.circular-progress-percentage{color:#111827;font-size:1.5rem;font-weight:700;line-height:1}.circular-progress-label{color:#6b7280;font-size:.75rem;font-weight:500;margin-top:4px}.circular-progress-sublabel{color:#9ca3af;font-size:.65rem;margin-top:2px}
/*# sourceMappingURL=main.8819e40d.css.map*/