.page,.login{min-height:100vh;background-color:#374151;color:#f9fafb}.page--centered,.login{display:flex;align-items:center;justify-content:center}.page--centered .page__container,.login .page__container{text-align:center;max-width:400px;width:100%}.btn{display:inline-block;padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;text-decoration:none;border:none;border-radius:.5rem;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn:hover{background-color:#2563eb}.btn:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.login__container{max-width:400px;width:100%}.login__title{margin-bottom:2rem;text-align:center;font-size:2rem}.login__form{display:flex;flex-direction:column;gap:1rem}.login__submit{width:100%;margin-top:1rem}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background-color:#4b5563;border-radius:8px;box-shadow:0 10px 25px #00000080;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalFadeIn .2s ease-out}.modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem 1rem;border-bottom:1px solid #6b7280}.modal__title{margin:0;color:#f9fafb;font-size:1.5rem;font-weight:600}.modal__close-btn{background:none;border:none;color:#d1d5db;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal__close-btn:hover{background-color:#6b7280;color:#f9fafb}.modal__content{padding:1.5rem 2rem 2rem}.user-form{display:flex;flex-direction:column;gap:1.5rem}.user-form__field{display:flex;flex-direction:column;gap:.5rem}.user-form__label{color:#f9fafb;font-weight:500;font-size:.875rem}.user-form__input{padding:.75rem;border:1px solid #6b7280;border-radius:4px;background-color:#374151;color:#f9fafb;font-size:1rem;transition:all .2s ease}.user-form__input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.user-form__input::placeholder{color:#9ca3af}.user-form__input.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.user-form__error{color:#f87171;font-size:.85rem;margin-top:.25rem}.user-form__actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid #6b7280}.user-form__cancel-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.user-form__cancel-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.user-form__cancel-btn:active{transform:translateY(0)}.user-form__cancel-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.user-form__cancel-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.user-form__cancel-btn{background-color:#6c757d;border-color:#6c757d}.user-form__cancel-btn:hover:not(:disabled){background-color:#545b62;border-color:#545b62}.user-form__submit-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.user-form__submit-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.user-form__submit-btn:active{transform:translateY(0)}.user-form__submit-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.user-form__submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.user-form__submit-btn{background-color:#10b981;border-color:#10b981}.user-form__submit-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.user-form__submit-btn:disabled{background-color:#6b7280;cursor:not-allowed;opacity:.7}.user-form__role-multiselect .multi-select__trigger{font-size:1rem}.assignment-form{display:flex;flex-direction:column;gap:1.5rem}.assignment-form__field{display:flex;flex-direction:column;gap:.5rem}.assignment-form__label{color:#f9fafb;font-weight:500;font-size:.875rem}.assignment-form__input,.assignment-form__textarea{padding:.75rem;border:1px solid #6b7280;border-radius:4px;background-color:#374151;color:#f9fafb;font-size:1rem;font-family:inherit;transition:all .2s ease;resize:vertical}.assignment-form__input:focus,.assignment-form__textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.assignment-form__input::placeholder,.assignment-form__textarea::placeholder{color:#9ca3af}.assignment-form__input.error,.assignment-form__textarea.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.assignment-form__textarea{min-height:100px;max-height:200px}.assignment-form__error{color:#f87171;font-size:.85rem;margin-top:.25rem}.assignment-form__actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid #6b7280}.assignment-form__cancel-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignment-form__cancel-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignment-form__cancel-btn:active{transform:translateY(0)}.assignment-form__cancel-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignment-form__cancel-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignment-form__cancel-btn{background-color:#6c757d;border-color:#6c757d}.assignment-form__cancel-btn:hover:not(:disabled){background-color:#545b62;border-color:#545b62}.assignment-form__submit-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignment-form__submit-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignment-form__submit-btn:active{transform:translateY(0)}.assignment-form__submit-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignment-form__submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignment-form__submit-btn{background-color:#10b981;border-color:#10b981}.assignment-form__submit-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.assignment-form__submit-btn:disabled{background-color:#6b7280;cursor:not-allowed;opacity:.7}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.multi-select{position:relative;width:100%}.multi-select__trigger{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border:1px solid #6b7280;border-radius:4px;background-color:#374151;color:#f9fafb;cursor:pointer;min-height:38px;transition:all .2s ease}.multi-select__trigger:hover:not(.disabled){border-color:#007bffb3}.multi-select__trigger:focus-within:not(.disabled){outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.multi-select__trigger.disabled{opacity:.7;cursor:not-allowed;background-color:#37415180}.multi-select__selected{flex:1;min-height:1.5rem;display:flex;align-items:center}.multi-select__placeholder{color:#9ca3af;font-style:italic}.multi-select__tags{display:flex;flex-wrap:wrap;gap:.3rem;width:100%}.multi-select__tag{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .4rem;background-color:#007bff;color:#fff;border-radius:3px;font-size:.75rem;font-weight:500}.multi-select__tag-remove{background:none;border:none;color:#fff;cursor:pointer;font-size:.8rem;line-height:1;padding:0;margin-left:.15rem;border-radius:50%;width:12px;height:12px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.multi-select__tag-remove:hover:not(:disabled){background-color:#fff3}.multi-select__tag-remove:disabled{cursor:not-allowed;opacity:.5}.multi-select__arrow{margin-left:.5rem;font-size:.8rem;color:#9ca3af;transition:transform .2s ease}.multi-select__arrow.open{transform:rotate(180deg)}.multi-select__dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;border:1px solid #6b7280;border-top:none;border-radius:0 0 4px 4px;background-color:#374151;max-height:150px;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.multi-select__option{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(107,114,128,.5);font-size:.85rem}.multi-select__option:hover{background-color:#007bff1a}.multi-select__option.selected{background-color:#007bff33}.multi-select__option:last-child{border-bottom:none}.multi-select__checkbox{accent-color:#007bff;cursor:pointer;width:14px;height:14px;margin:0}.confirmation-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1002;padding:1rem}.confirmation-modal{background-color:#4b5563;border-radius:8px;box-shadow:0 10px 25px #00000080;max-width:450px;width:100%;animation:confirmationModalFadeIn .2s ease-out;border-left:4px solid}.confirmation-modal--danger{border-left-color:#dc3545}.confirmation-modal--warning{border-left-color:#ffc107}.confirmation-modal--info{border-left-color:#3b82f6}.confirmation-modal__header{display:flex;align-items:center;gap:16px;padding:1.5rem 2rem;border-bottom:1px solid #6b7280}.confirmation-modal__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;flex-shrink:0}.confirmation-modal__icon svg{width:24px;height:24px}.confirmation-modal--danger .confirmation-modal__icon{background-color:#dc354533;color:#dc3545}.confirmation-modal--warning .confirmation-modal__icon{background-color:#ffc10733;color:#ffc107}.confirmation-modal--info .confirmation-modal__icon{background-color:#3b82f633;color:#3b82f6}.confirmation-modal__title{margin:0;color:#f9fafb;font-size:1.25rem;font-weight:600;flex:1}.confirmation-modal__content{padding:1.5rem 2rem}.confirmation-modal__message{margin:0;color:#d1d5db;font-size:16px;line-height:1.5}.confirmation-modal__actions{display:flex;justify-content:flex-end;gap:12px;padding:1rem 2rem 1.5rem;border-top:1px solid #6b7280}.confirmation-modal__cancel-btn{background-color:#6c757d;border-color:#6c757d}.confirmation-modal__cancel-btn:hover:not(:disabled){background-color:#545b62;border-color:#545b62}.confirmation-modal__cancel-btn{padding:10px 20px;font-size:14px;font-weight:600}.confirmation-modal__confirm-btn{padding:10px 20px;font-size:14px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.confirmation-modal__confirm-btn--danger{background-color:#dc3545;border-color:#dc3545}.confirmation-modal__confirm-btn--danger:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.confirmation-modal__confirm-btn--warning{background-color:#ffc107;color:#000}.confirmation-modal__confirm-btn--warning:hover{background-color:#e0a800}.confirmation-modal__confirm-btn--info{background-color:#007bff;border-color:#007bff}.confirmation-modal__confirm-btn--info:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc}@keyframes confirmationModalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width: 480px){.confirmation-modal-overlay{padding:16px}.confirmation-modal{max-width:100%}.confirmation-modal__header{padding:16px 20px;gap:12px}.confirmation-modal__icon{width:36px;height:36px}.confirmation-modal__icon svg{width:20px;height:20px}.confirmation-modal__title{font-size:1.125rem}.confirmation-modal__content{padding:16px 20px}.confirmation-modal__message{font-size:14px}.confirmation-modal__actions{padding:12px 20px 16px;flex-direction:column;gap:8px}.confirmation-modal__actions button{width:100%}}.dashboard{padding:2rem;min-height:100vh;background-color:#374151}.dashboard__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #4b5563}.dashboard__header h1{margin:0;color:#f9fafb;font-size:2.5rem}.dashboard__header-actions{display:flex;gap:1rem;align-items:center}.dashboard__assignments-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.dashboard__assignments-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.dashboard__assignments-btn:active{transform:translateY(0)}.dashboard__assignments-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.dashboard__assignments-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.dashboard__assignments-btn{background-color:#3b82f6;border-color:#3b82f6}.dashboard__assignments-btn:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.dashboard__assignments-btn{font-size:1rem}.dashboard__logout-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.dashboard__logout-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.dashboard__logout-btn:active{transform:translateY(0)}.dashboard__logout-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.dashboard__logout-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.dashboard__logout-btn{background-color:#dc3545;border-color:#dc3545}.dashboard__logout-btn:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.dashboard__logout-btn{border-radius:6px;font-size:1rem}.dashboard__content{background:#4b5563;border-radius:8px;box-shadow:0 2px 10px #0000004d;padding:2rem}.users-table{width:100%}.users-table__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.users-table__header h2{margin:0;color:#f9fafb;font-size:1.8rem}.users-table__actions-header{display:flex;gap:.75rem;align-items:center}.users-table__create-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.users-table__create-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.users-table__create-btn:active{transform:translateY(0)}.users-table__create-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.users-table__create-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.users-table__create-btn{background-color:#10b981;border-color:#10b981}.users-table__create-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.users-table__create-btn{padding:.25rem .5rem;font-size:.875rem;min-height:36px}.users-table__refresh-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.users-table__refresh-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.users-table__refresh-btn:active{transform:translateY(0)}.users-table__refresh-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.users-table__refresh-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.users-table__refresh-btn{padding:.25rem .5rem;font-size:.875rem;min-height:36px}.users-table__loading,.users-table__empty{text-align:center;padding:3rem;color:#d1d5db;font-size:1.1rem}.users-table__error{text-align:center;padding:2rem;color:#f87171}.users-table__error p{margin-bottom:1rem;font-size:1.1rem}.users-table__retry-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.users-table__retry-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.users-table__retry-btn:active{transform:translateY(0)}.users-table__retry-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.users-table__retry-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.users-table__retry-btn{background-color:#10b981;border-color:#10b981}.users-table__retry-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.users-table__retry-btn{padding:.25rem .5rem;font-size:.875rem;min-height:36px}.users-table__table{width:100%;border-collapse:collapse;margin-top:1rem}.users-table__table th,.users-table__table td{padding:1rem;text-align:left;border-bottom:1px solid #6b7280}.users-table__table th{background-color:#374151;font-weight:600;color:#f9fafb;border-top:1px solid #6b7280}.users-table__table tbody tr{transition:background-color .2s ease}.users-table__table tbody tr:hover{background-color:#374151}.users-table__table td{color:#f9fafb}.users-table__actions{display:flex;gap:.5rem}.users-table__edit-btn,.users-table__delete-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.users-table__edit-btn:hover:not(:disabled),.users-table__delete-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.users-table__edit-btn:active,.users-table__delete-btn:active{transform:translateY(0)}.users-table__edit-btn:focus,.users-table__delete-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.users-table__edit-btn:disabled,.users-table__delete-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.users-table__edit-btn,.users-table__delete-btn{padding:.25rem .5rem;font-size:.875rem;min-height:36px}.users-table__edit-btn{background-color:#ffc107;border-color:#ffc107;color:#212529}.users-table__edit-btn:hover:not(:disabled){background-color:#e0a800;border-color:#e0a800;color:#212529}.users-table__delete-btn{background-color:#dc3545;border-color:#dc3545}.users-table__delete-btn:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.users-table__role-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background-color:#007bff33;color:#007bff;border:1px solid rgba(0,123,255,.3)}.assignment-card{background:#4b5563;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0003;cursor:pointer;transition:all .3s ease;border:1px solid #6b7280;height:100%;display:flex;flex-direction:column}.assignment-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d;border-color:#007bff}.assignment-card:active{transform:translateY(0)}.assignment-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:.5rem}.assignment-card__title{margin:0;color:#f9fafb;font-size:1.25rem;font-weight:600;line-height:1.4;flex:1}.assignment-card__title-section{display:flex;flex-direction:column;gap:.25rem;flex:1}.assignment-card__status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;align-self:flex-start}.assignment-card__status--not-started{background-color:#9ca3af33;color:#9ca3af}.assignment-card__status--in-progress,.assignment-card__status--needs-additional-work{background-color:#3b82f633;color:#3b82f6}.assignment-card__status--in-review{background-color:#ffc10733;color:#ffc107}.assignment-card__status--done{background-color:#10b98133;color:#10b981}.assignment-card__github-btn{background:none;border:1px solid #6b7280;color:#d1d5db;padding:.25rem;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;flex-shrink:0}.assignment-card__github-btn:hover{background-color:#6b7280;color:#f9fafb;border-color:#d1d5db}.assignment-card__github-btn:focus{outline:2px solid #007bff;outline-offset:2px}.assignment-card__github-btn svg{transition:transform .2s ease}.assignment-card__github-btn:hover svg{transform:scale(1.1)}.assignment-card__description{color:#d1d5db;line-height:1.6;margin:0 0 1rem;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;text-overflow:ellipsis}.assignment-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.5rem;border-top:1px solid #4b5563}.assignment-card__click-hint{color:#9ca3af;font-size:.875rem;font-style:italic}@media (max-width: 576px){.assignment-card{padding:1rem}.assignment-card__title{font-size:1.1rem}.assignment-card__description{-webkit-line-clamp:2;line-clamp:2}}.assignment-card:focus-visible{outline:2px solid #007bff;outline-offset:2px}.assignment-card--loading{opacity:.7;cursor:not-allowed}.assignment-card--loading:hover{transform:none;box-shadow:0 2px 8px #0003}.assignments{min-height:100vh;background-color:#374151;padding:2rem}.assignments__container{max-width:1200px;margin:0 auto}.assignments__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #4b5563}.assignments__header h1{margin:0;color:#f9fafb;font-size:2.5rem}.assignments__header-actions{display:flex;gap:1rem;align-items:center}.assignments__dashboard-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignments__dashboard-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignments__dashboard-btn:active{transform:translateY(0)}.assignments__dashboard-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignments__dashboard-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignments__dashboard-btn{background-color:#3b82f6;border-color:#3b82f6}.assignments__dashboard-btn:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.assignments__dashboard-btn{padding:.75rem 1.5rem;font-size:1rem}.assignments__logout-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignments__logout-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignments__logout-btn:active{transform:translateY(0)}.assignments__logout-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignments__logout-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignments__logout-btn{background-color:#dc3545;border-color:#dc3545}.assignments__logout-btn:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.assignments__logout-btn{padding:.75rem 1.5rem;font-size:1rem}.assignments__loading,.assignments__error{text-align:center;padding:2rem;color:#d1d5db;font-size:1.1rem}.assignments__error{color:#f87171}.assignments__retry-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignments__retry-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignments__retry-btn:active{transform:translateY(0)}.assignments__retry-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignments__retry-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignments__retry-btn{background-color:#10b981;border-color:#10b981}.assignments__retry-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.assignments__retry-btn{padding:.25rem .5rem;font-size:.875rem;min-height:36px;margin-top:1rem}.assignments__main,.assignments__content{width:100%}.assignments__content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.assignments__description{margin:0;color:#d1d5db;font-size:1.1rem}.assignments__create-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}.assignments__create-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}.assignments__create-btn:active{transform:translateY(0)}.assignments__create-btn:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}.assignments__create-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.assignments__create-btn{background-color:#10b981;border-color:#10b981}.assignments__create-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.assignments__create-btn{padding:.75rem 1.5rem;font-size:1rem}.assignments__empty{text-align:center;padding:4rem;color:#d1d5db}.assignments__empty p{margin:0 0 1rem;font-size:1.1rem}.assignments__empty p:last-child{margin-bottom:0;color:#9ca3af;font-style:italic}.assignments__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;width:100%}@media (max-width: 576px){.assignments__grid{grid-template-columns:1fr;gap:1rem}}@media (min-width: 768px) and (max-width: 992px){.assignments__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (min-width: 1200px){.assignments__grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media (max-width: 576px){.assignments{padding:1rem}.assignments__header{flex-direction:column;gap:1rem;text-align:center}.assignments__header h1{font-size:2rem}.assignments__header-actions{width:100%;justify-content:center}.assignments__content-header{flex-direction:column;align-items:stretch;text-align:center}.assignments__create-btn{width:100%}}@media (max-width: 768px){.assignments__content-header{flex-direction:column;align-items:flex-start;gap:1.5rem}}.notification-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:1001;padding-top:80px;pointer-events:all}.notification-modal{background-color:#4b5563;border-radius:8px;box-shadow:0 10px 25px #00000080;max-width:400px;width:100%;animation:notificationSlideIn .3s ease-out;border-left:4px solid}.notification-modal--success{border-left-color:#10b981}.notification-modal--error{border-left-color:#dc3545}.notification-modal--warning{border-left-color:#ffc107}.notification-modal--info{border-left-color:#3b82f6}.notification-modal__content{display:flex;align-items:center;gap:16px;padding:20px 24px;position:relative}.notification-modal__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;flex-shrink:0}.notification-modal__icon svg{width:24px;height:24px}.notification-modal--success .notification-modal__icon{background-color:#10b98133;color:#10b981}.notification-modal--error .notification-modal__icon{background-color:#dc354533;color:#dc3545}.notification-modal--warning .notification-modal__icon{background-color:#ffc10733;color:#ffc107}.notification-modal--info .notification-modal__icon{background-color:#3b82f633;color:#3b82f6}.notification-modal__message{flex:1;color:#f9fafb;font-size:16px;line-height:1.5;font-weight:500}.notification-modal__close-btn{position:absolute;top:12px;right:12px;background:none;border:none;color:#d1d5db;font-size:24px;cursor:pointer;padding:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.notification-modal__close-btn:hover{background-color:#d1d5db1a;color:#f9fafb}.notification-modal__close-btn:focus{outline:none;background-color:#d1d5db33}@keyframes notificationSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.notification-modal-overlay{padding:60px 20px 20px}.notification-modal{max-width:100%}.notification-modal__content{padding:16px 20px;gap:12px}.notification-modal__message{font-size:14px}.notification-modal__icon{width:28px;height:28px}.notification-modal__icon svg{width:20px;height:20px}}.assignment-detail{min-height:100vh;background-color:#374151;color:#f9fafb}.assignment-detail__loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#d1d5db}.assignment-detail__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px}.assignment-detail__error p{font-size:18px;color:#dc3545;margin:0}.assignment-detail__back-btn{background-color:#007bff;border-color:#007bff}.assignment-detail__back-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc}.assignment-detail__container{max-width:1200px;margin:0 auto;padding:24px}.assignment-detail__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid #6b7280}.assignment-detail__breadcrumb-btn{background-color:transparent;border-color:transparent;color:#f9fafb}.assignment-detail__breadcrumb-btn:hover:not(:disabled){background-color:#4b5563b3;border-color:transparent}.assignment-detail__breadcrumb-btn{font-size:16px;padding:8px 12px}.assignment-detail__breadcrumb-btn:hover{background-color:#4b5563cc}.assignment-detail__header-actions{display:flex;gap:12px}.assignment-detail__dashboard-btn{background-color:#6c757d;border-color:#6c757d}.assignment-detail__dashboard-btn:hover:not(:disabled){background-color:#545b62;border-color:#545b62}.assignment-detail__logout-btn{background-color:#dc3545;border-color:#dc3545}.assignment-detail__logout-btn:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.assignment-detail__main{display:flex;justify-content:center}.assignment-detail__content{width:100%}.assignment-detail__title-section{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:32px;flex-wrap:wrap}@media (max-width: 768px){.assignment-detail__title-section{flex-direction:column;align-items:stretch}}.assignment-detail__title{margin:0;font-size:2.5rem;font-weight:700;color:#f9fafb;line-height:1.2;flex:1}@media (max-width: 768px){.assignment-detail__title{font-size:2rem}}.assignment-detail__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}@media (max-width: 768px){.assignment-detail__actions{flex-direction:column;align-items:stretch;gap:8px}}.assignment-detail__github-btn{background-color:#007bff;border-color:#007bff}.assignment-detail__github-btn:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc}.assignment-detail__github-btn{display:flex;align-items:center;gap:8px;font-size:16px;white-space:nowrap;background-color:#2f81f7}.assignment-detail__github-btn:hover{background-color:#609ff9}.assignment-detail__github-btn svg{width:20px;height:20px}.assignment-detail__submit-review-btn{background-color:#10b981;border-color:#10b981}.assignment-detail__submit-review-btn:hover:not(:disabled){background-color:#059669;border-color:#059669}.assignment-detail__submit-review-btn{display:flex;align-items:center;gap:8px;font-size:16px;white-space:nowrap}.assignment-detail__submit-review-btn svg{width:16px;height:16px}.assignment-detail__delete-btn{background-color:#dc3545;border-color:#dc3545}.assignment-detail__delete-btn:hover:not(:disabled){background-color:#c82333;border-color:#c82333}.assignment-detail__delete-btn{display:flex;align-items:center;gap:8px;font-size:16px;white-space:nowrap}.assignment-detail__delete-btn svg{width:18px;height:18px}.assignment-detail__description-section{margin-bottom:32px}.assignment-detail__description-section h2{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:#f9fafb}.assignment-detail__description{background-color:#4b5563;padding:24px;border-radius:8px;border:1px solid #6b7280;line-height:1.6}.assignment-detail__description p{margin:0 0 16px;color:#d1d5db}.assignment-detail__description p:last-child{margin-bottom:0}.assignment-detail__user-status-section{margin-bottom:32px}.assignment-detail__user-status-section h2{color:#f9fafb;margin-bottom:16px;font-size:24px}.assignment-detail__current-status{display:flex;align-items:center;gap:12px;margin-bottom:12px}.assignment-detail__status-label{color:#d1d5db;font-weight:500}.assignment-detail__status-badge{padding:6px 12px;border-radius:20px;font-size:14px;font-weight:600;text-transform:uppercase}.assignment-detail__status-badge--in-progress,.assignment-detail__status-badge--needs-additional-work{background-color:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.assignment-detail__status-badge--in-review{background-color:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.assignment-detail__status-badge--completed{background-color:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.assignment-detail__status-badge--unknown{background-color:#9ca3af33;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.assignment-detail__status-help{color:#d1d5db;font-style:italic;margin:0;line-height:1.5}.assignment-detail__status-section{margin-bottom:32px}.assignment-detail__status-section h2{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:#f9fafb}.assignment-detail__status-table{background-color:#4b5563;border-radius:8px;border:1px solid #6b7280;overflow:hidden}.assignment-detail__table-header{display:grid;grid-template-columns:2fr 1fr;background-color:#566172;border-bottom:1px solid #6b7280}.assignment-detail__table-row{display:grid;grid-template-columns:2fr 1fr;border-bottom:1px solid rgba(107,114,128,.5)}.assignment-detail__table-row:last-child{border-bottom:none}.assignment-detail__table-row:hover{background-color:#525c6c}.assignment-detail__table-cell{padding:12px 16px;color:#d1d5db;font-size:14px;display:flex;align-items:center}.assignment-detail__table-cell--header{font-weight:600;color:#f9fafb;background-color:transparent}.assignment-detail__student-info{display:flex;flex-direction:column;gap:2px}.assignment-detail__student-name{color:#f9fafb;font-weight:600;font-size:14px}.assignment-detail__student-id{color:#9ca3af;font-size:12px;font-family:Courier New,monospace}.assignment-detail__status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.assignment-detail__status-select{padding:6px 12px;border-radius:4px;border:1px solid #6b7280;background-color:#4b5563;color:#f9fafb;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.assignment-detail__status-select:hover{border-color:#007bff}.assignment-detail__status-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff33}.assignment-detail__status-select--not-started{border-color:#9ca3af}.assignment-detail__status-select--in-progress{border-color:#3b82f6}.assignment-detail__status-select--in-review{border-color:#ffc107}.assignment-detail__status-select--needs-additional-work{border-color:#3b82f6}.assignment-detail__status-select--done{border-color:#10b981}.assignment-detail__status-select option{background-color:#4b5563;color:#f9fafb;padding:8px}.assignment-detail__metadata{padding:20px;background-color:#4b556380;border-radius:8px;border:1px solid #6b7280}.assignment-detail__metadata p{margin:0 0 8px;color:#d1d5db;font-size:14px}.assignment-detail__metadata p:last-child{margin-bottom:0}.assignment-detail__metadata p strong{color:#f9fafb;font-weight:600}.page,.home{min-height:100vh;background-color:#374151;color:#f9fafb}.page__container{max-width:1200px;margin:0 auto;padding:2rem}@media (max-width: 768px){.page__container{padding:1rem}}.page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #4b5563}@media (max-width: 768px){.page__header{flex-direction:column;gap:1rem;text-align:center}}.page__title{margin:0;font-size:2rem;color:#f9fafb}@media (max-width: 768px){.page__title{font-size:1.5rem}}.page__main{color:#d1d5db}.page--centered,.home{display:flex;align-items:center;justify-content:center}.page--centered .page__container,.home .page__container{text-align:center;max-width:400px;width:100%}.btn,.home__button{display:inline-block;padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;text-decoration:none;border:none;border-radius:.5rem;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn:hover,.home__button:hover{background-color:#2563eb}.btn:focus,.home__button:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.btn--danger{background-color:#dc2626}.btn--danger:hover{background-color:#b91c1c}.btn--outline{background-color:transparent;border:1px solid #4b5563;color:#f9fafb}.btn--outline:hover{background-color:#4b5563}.form__group{margin-bottom:1rem}.form__label{display:block;margin-bottom:.5rem;font-weight:500;color:#f9fafb}.form__input{width:100%;padding:.75rem;background-color:#4b5563;border:1px solid #6b7280;border-radius:.375rem;color:#f9fafb;font-size:1rem}.form__input::placeholder{color:#9ca3af}.form__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.form__error{color:#fca5a5;font-size:.875rem;margin-top:.5rem}.home h1{margin-bottom:2rem;font-size:2rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:1rem;line-height:1.6;color:#f9fafb;background-color:#374151;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0 0 1rem;font-weight:600;line-height:1.3;color:#f9fafb}h1{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:1.5rem}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}h4{font-size:clamp(1.125rem,2vw,1.25rem)}h5,h6{font-size:1rem}p{margin:0 0 1rem;line-height:1.6}button{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1;border:1px solid #007bff;border-radius:.375rem;background-color:#007bff;color:#fff;cursor:pointer;text-decoration:none;transition:all .2s ease-in-out;touch-action:manipulation}button:hover:not(:disabled){background-color:#0062cc;border-color:#0062cc;transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus{outline:none;box-shadow:0 0 0 3px #007bff4d}button:disabled{opacity:.6;cursor:not-allowed;transform:none}button.btn-secondary{background-color:#6c757d;border-color:#6c757d}button.btn-secondary:hover:not(:disabled){background-color:#545b62;border-color:#545b62}button.btn-danger{background-color:#dc3545;border-color:#dc3545}button.btn-danger:hover:not(:disabled){background-color:#bd2130;border-color:#bd2130}button.btn-success{background-color:#10b981;border-color:#10b981}button.btn-success:hover:not(:disabled){background-color:#059669;border-color:#059669}button.btn-info{background-color:#3b82f6;border-color:#3b82f6}button.btn-info:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}button.btn-warning{background-color:#ffc107;border-color:#ffc107;color:#212529}button.btn-warning:hover:not(:disabled){background-color:#e0a800;border-color:#e0a800;color:#212529}button.btn-outline{background-color:transparent;color:#007bff}button.btn-outline:hover:not(:disabled){background-color:#007bff;color:#fff}button.btn-sm{padding:.25rem .5rem;font-size:.875rem;min-height:36px}button.btn-lg{padding:1rem 1.5rem;font-size:1.125rem;min-height:52px}input,textarea,select{width:100%;padding:.5rem 1rem;min-height:44px;font-family:inherit;font-size:1rem;line-height:1.5;color:#f9fafb;background-color:#4b5563;border:1px solid #6b7280;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}input:focus,textarea:focus,select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}input::placeholder,textarea::placeholder,select::placeholder{color:#9ca3af;opacity:1}input:disabled,textarea:disabled,select:disabled{background-color:#374151;cursor:not-allowed;opacity:.8}textarea{resize:vertical;min-height:120px}label{display:block;margin-bottom:.25rem;font-weight:500;color:#f9fafb;font-size:.875rem}a{color:#007bff;text-decoration:none;transition:color .2s ease-in-out}a:hover{color:#0056b3;text-decoration:underline}a:focus{outline:2px solid #007bff;outline-offset:2px}table{width:100%;border-collapse:collapse;margin-bottom:1.5rem;background-color:#4b5563;border-radius:.375rem;overflow:hidden;box-shadow:0 1px 2px #0000000d}th,td{padding:.5rem 1rem;text-align:left;border-bottom:1px solid #6b7280}@media (max-width: 576px){th,td{padding:.25rem .5rem;font-size:.875rem}}th{background-color:#374151;font-weight:600;color:#f9fafb}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 576px){.container{padding:0 1.5rem}}.container-fluid{width:100%;padding:0 1rem}@media (min-width: 576px){.container-fluid{padding:0 1.5rem}}.row{display:flex;flex-wrap:wrap;margin:0 -.5rem}.col{flex:1;padding:0 .5rem;min-width:0}.col-1{flex:0 0 8.333%;max-width:8.333%;padding:0 .5rem}.col-2{flex:0 0 16.666%;max-width:16.666%;padding:0 .5rem}.col-3{flex:0 0 25%;max-width:25%;padding:0 .5rem}.col-4{flex:0 0 33.333%;max-width:33.333%;padding:0 .5rem}.col-5{flex:0 0 41.666%;max-width:41.666%;padding:0 .5rem}.col-6{flex:0 0 50%;max-width:50%;padding:0 .5rem}.col-7{flex:0 0 58.333%;max-width:58.333%;padding:0 .5rem}.col-8{flex:0 0 66.666%;max-width:66.666%;padding:0 .5rem}.col-9{flex:0 0 75%;max-width:75%;padding:0 .5rem}.col-10{flex:0 0 83.333%;max-width:83.333%;padding:0 .5rem}.col-11{flex:0 0 91.666%;max-width:91.666%;padding:0 .5rem}.col-12{flex:0 0 100%;max-width:100%;padding:0 .5rem}@media (min-width: 768px){.col-md-1{flex:0 0 8.333%;max-width:8.333%}.col-md-2{flex:0 0 16.666%;max-width:16.666%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333%;max-width:33.333%}.col-md-5{flex:0 0 41.666%;max-width:41.666%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333%;max-width:58.333%}.col-md-8{flex:0 0 66.666%;max-width:66.666%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333%;max-width:83.333%}.col-md-11{flex:0 0 91.666%;max-width:91.666%}.col-md-12{flex:0 0 100%;max-width:100%}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.align-items-start{align-items:flex-start}.align-items-center{align-items:center}.align-items-end{align-items:flex-end}.justify-content-start{justify-content:flex-start}.justify-content-center{justify-content:center}.justify-content-end{justify-content:flex-end}.justify-content-between{justify-content:space-between}@media (max-width: 576px){.d-sm-none{display:none}.d-sm-block{display:block}.text-sm-center{text-align:center}}.m-xs{margin:.25rem}.mt-xs{margin-top:.25rem}.mb-xs{margin-bottom:.25rem}.ml-xs{margin-left:.25rem}.mr-xs{margin-right:.25rem}.mx-xs{margin-left:.25rem;margin-right:.25rem}.my-xs{margin-top:.25rem;margin-bottom:.25rem}.p-xs{padding:.25rem}.pt-xs{padding-top:.25rem}.pb-xs{padding-bottom:.25rem}.pl-xs{padding-left:.25rem}.pr-xs{padding-right:.25rem}.px-xs{padding-left:.25rem;padding-right:.25rem}.py-xs{padding-top:.25rem;padding-bottom:.25rem}.m-sm{margin:.5rem}.mt-sm{margin-top:.5rem}.mb-sm{margin-bottom:.5rem}.ml-sm{margin-left:.5rem}.mr-sm{margin-right:.5rem}.mx-sm{margin-left:.5rem;margin-right:.5rem}.my-sm{margin-top:.5rem;margin-bottom:.5rem}.p-sm{padding:.5rem}.pt-sm{padding-top:.5rem}.pb-sm{padding-bottom:.5rem}.pl-sm{padding-left:.5rem}.pr-sm{padding-right:.5rem}.px-sm{padding-left:.5rem;padding-right:.5rem}.py-sm{padding-top:.5rem;padding-bottom:.5rem}.m-md{margin:1rem}.mt-md{margin-top:1rem}.mb-md{margin-bottom:1rem}.ml-md{margin-left:1rem}.mr-md{margin-right:1rem}.mx-md{margin-left:1rem;margin-right:1rem}.my-md{margin-top:1rem;margin-bottom:1rem}.p-md{padding:1rem}.pt-md{padding-top:1rem}.pb-md{padding-bottom:1rem}.pl-md{padding-left:1rem}.pr-md{padding-right:1rem}.px-md{padding-left:1rem;padding-right:1rem}.py-md{padding-top:1rem;padding-bottom:1rem}.m-lg{margin:1.5rem}.mt-lg{margin-top:1.5rem}.mb-lg{margin-bottom:1.5rem}.ml-lg{margin-left:1.5rem}.mr-lg{margin-right:1.5rem}.mx-lg{margin-left:1.5rem;margin-right:1.5rem}.my-lg{margin-top:1.5rem;margin-bottom:1.5rem}.p-lg{padding:1.5rem}.pt-lg{padding-top:1.5rem}.pb-lg{padding-bottom:1.5rem}.pl-lg{padding-left:1.5rem}.pr-lg{padding-right:1.5rem}.px-lg{padding-left:1.5rem;padding-right:1.5rem}.py-lg{padding-top:1.5rem;padding-bottom:1.5rem}.m-xl{margin:2rem}.mt-xl{margin-top:2rem}.mb-xl{margin-bottom:2rem}.ml-xl{margin-left:2rem}.mr-xl{margin-right:2rem}.mx-xl{margin-left:2rem;margin-right:2rem}.my-xl{margin-top:2rem;margin-bottom:2rem}.p-xl{padding:2rem}.pt-xl{padding-top:2rem}.pb-xl{padding-bottom:2rem}.pl-xl{padding-left:2rem}.pr-xl{padding-right:2rem}.px-xl{padding-left:2rem;padding-right:2rem}.py-xl{padding-top:2rem;padding-bottom:2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus-visible{outline:2px solid #007bff;outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
