*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#172b4d;background:#f4f6f8}@media(prefers-color-scheme:dark){:root{color:#ffffffde;background:#1d2125}body{background:#1d2125}}body{margin:0;background:#f4f6f8}#root{padding-top:56px;min-height:100%}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f6f8;padding:20px}.login-card{width:100%;max-width:420px;background:#fff;padding:32px;border-radius:12px;box-shadow:0 10px 25px #00000014}.login-title{margin:0;font-size:24px;font-weight:600}.login-subtitle{margin-top:8px;color:#6b7280;font-size:14px}.login-field{margin-top:24px;display:flex;flex-direction:column}.login-field label{font-size:14px;margin-bottom:6px;font-weight:500}.login-field input{padding:12px;border-radius:8px;border:1px solid #d1d5db;font-size:14px;transition:border .2s ease,box-shadow .2s ease}.login-field input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.login-button{margin-top:24px;padding:12px;border:none;border-radius:8px;background:#3b82f6;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.login-button:hover{background:#2563eb}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f6f8;padding:20px;flex-direction:column}.tasks-page{padding:1rem 1.25rem 5rem;min-height:calc(100vh - 56px)}.tasks-page__fab{position:fixed;right:1.5rem;bottom:1.5rem;z-index:900;display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;padding:0;border:none;border-radius:999px;background:#0052cc;color:#fff;box-shadow:0 4px 12px #0052cc59,0 2px 4px #091e4226;cursor:pointer;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.tasks-page__fab:hover{background:#0747a6;transform:scale(1.05);box-shadow:0 6px 16px #0052cc66,0 2px 6px #091e4233}.tasks-page__fab:active{transform:scale(.98)}.tasks-page__fab-icon{width:1.75rem;height:1.75rem;fill:currentColor}.tasks-page__state{padding:2rem;text-align:center;color:#5e6c84}.task-board{display:flex;flex-direction:column;gap:1.25rem}.task-priority-row{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border-radius:8px;background:#f4f5f7;border-left:4px solid #dfe1e6}.task-priority-row--important_urgent{border-left-color:#bf2600;background:#fff8f6}.task-priority-row--important{border-left-color:#0747a6;background:#f4f9ff}.task-priority-row--urgent{border-left-color:#ff5630;background:#fffbf8}.task-priority-row--none{border-left-color:#97a0af;background:#f4f5f7}.task-priority-row__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .25rem}.task-priority-row__title{margin:0;font-size:.9375rem;font-weight:700;color:#172b4d}.task-priority-row__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .375rem;border-radius:999px;background:#dfe1e6;font-size:.75rem;font-weight:600;color:#42526e}.task-priority-row__columns{display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:.75rem;overflow-x:auto}.task-column{display:flex;flex-direction:column;gap:.5rem;min-height:8rem;padding:.5rem;border-radius:6px;background:#ffffffa6}.task-column--drag-over{outline:2px dashed #0052cc;background:#ebf2ff}.task-column__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.task-column__title{margin:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5e6c84}.task-column__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:999px;background:#dfe1e6;font-size:.6875rem;font-weight:600;color:#42526e}.task-column__cards{display:flex;flex-direction:column;gap:.5rem;flex:1}.task-card{padding:.75rem;border-radius:6px;background:#fff;box-shadow:0 1px 2px #091e4226;cursor:grab;transition:box-shadow .15s ease}.task-card:hover{box-shadow:0 4px 8px #091e4226}.task-card--dragging{opacity:.45;cursor:grabbing}.task-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.375rem}.task-card__title{margin:0;font-size:.875rem;font-weight:600;color:#172b4d;flex:1}.task-card__actions{display:flex;flex-shrink:0;gap:.125rem}.task-card__action{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:4px;background:transparent;color:#5e6c84;cursor:pointer}.task-card__action:disabled{opacity:.5;cursor:not-allowed}.task-card__action--edit:hover:not(:disabled){background:#ebecf0;color:#0052cc}.task-card__action--delete:hover:not(:disabled){background:#ffebe6;color:#bf2600}.task-card__action-icon{width:.875rem;height:.875rem;fill:currentColor}.task-card__description{margin:0 0 .5rem;font-size:.8125rem;color:#5e6c84;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.task-card__deadline{display:inline-flex;align-items:center;gap:.375rem;margin-top:.25rem;padding:.3125rem .5rem;border-radius:6px;font-size:.6875rem;font-weight:700;letter-spacing:.02em;border:1px solid transparent}.task-card__deadline-tag{padding:.125rem .375rem;border-radius:4px;font-size:.625rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.task-card__deadline-date{white-space:nowrap}.task-card__deadline--green{background:#e3fcef;color:#064;border-color:#57d9a3;box-shadow:inset 3px 0 #00875a}.task-card__deadline--green .task-card__deadline-tag{background:#00875a;color:#fff}.task-card__deadline--yellow{background:#fff7d6;color:#7a5c00;border-color:#ffc400;box-shadow:inset 3px 0 #ffab00}.task-card__deadline--yellow .task-card__deadline-tag{background:#ffab00;color:#172b4d}.task-card__deadline--orange{background:#fff4e5;color:#974f0c;border-color:#ff991f;box-shadow:inset 3px 0 #ff8b00}.task-card__deadline--orange .task-card__deadline-tag{background:#ff8b00;color:#fff}.task-card__deadline--red{background:#ae2e24;color:#fff;border-color:#7a1c15;box-shadow:inset 3px 0 #ff2d2d,0 0 0 1px #ae2e2459}.task-card__deadline--red .task-card__deadline-tag{background:#ff2d2d;color:#fff}@media(prefers-color-scheme:dark){.tasks-page__state{color:#fff9}.task-priority-row{background:#1d2125;border-left-color:#454f59}.task-priority-row--important_urgent{background:#2a1f1f;border-left-color:#ff5630}.task-priority-row--important{background:#1a2332;border-left-color:#579dff}.task-priority-row--urgent{background:#2a221f;border-left-color:#ff7452}.task-priority-row--none{background:#1d2125;border-left-color:#738496}.task-priority-row__title{color:#ffffffe6}.task-priority-row__count{background:#282e33;color:#fffc}.task-column{background:#22272bbf}.task-column--drag-over{background:#1c2b41;outline-color:#579dff}.task-column__title{color:#fff9}.task-column__count{background:#282e33;color:#fffc}.task-card{background:#22272b;box-shadow:0 1px 2px #0006}.task-card__title{color:#ffffffe6}.task-card__action{color:#ffffff8c}.task-card__action--edit:hover:not(:disabled){background:#282e33;color:#579dff}.task-card__action--delete:hover:not(:disabled){background:#4a1f1a;color:#ff8f73}.task-card__description{color:#fff9}.task-card__deadline--green{background:#1c3329;color:#79f2c0;border-color:#00875a;box-shadow:inset 3px 0 #57d9a3}.task-card__deadline--green .task-card__deadline-tag{background:#00875a;color:#e3fcef}.task-card__deadline--yellow{background:#3d3420;color:#ffe380;border-color:#ffab00;box-shadow:inset 3px 0 #ffc400}.task-card__deadline--yellow .task-card__deadline-tag{background:#ffab00;color:#172b4d}.task-card__deadline--orange{background:#3d2a14;color:#ffc46b;border-color:#ff8b00;box-shadow:inset 3px 0 #ff991f}.task-card__deadline--orange .task-card__deadline-tag{background:#ff8b00;color:#fff}.task-card__deadline--red{background:#5c1f18;color:#fff;border-color:#ff2d2d;box-shadow:inset 3px 0 #ff2d2d,0 0 0 1px #ff2d2d59}.task-card__deadline--red .task-card__deadline-tag{background:#ff2d2d;color:#fff}.tasks-page__fab{background:#579dff;color:#1d2125;box-shadow:0 4px 12px #579dff59,0 2px 4px #00000040}.tasks-page__fab:hover{background:#85b8ff;box-shadow:0 6px 16px #579dff73,0 2px 6px #0000004d}}@media(max-width:900px){.task-priority-row__columns{grid-template-columns:repeat(4,minmax(180px,1fr))}}@media(max-width:560px){.task-priority-row__columns{grid-template-columns:repeat(4,minmax(160px,1fr))}}.create-task-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.create-task-modal__backdrop{position:absolute;inset:0;border:none;padding:0;background:#091e4273;cursor:pointer}.create-task-modal__dialog{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 2rem);overflow-y:auto;padding:1.5rem;border-radius:12px;background:#fff;box-shadow:0 16px 40px #091e4240}.create-task-modal__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.create-task-modal__title{margin:0;font-size:1.25rem;font-weight:700;color:#172b4d}.create-task-modal__close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:6px;background:transparent;color:#5e6c84;font-size:1.5rem;line-height:1;cursor:pointer}.create-task-modal__close:hover{background:#f4f5f7;color:#172b4d}.create-task-modal__form{display:flex;flex-direction:column;gap:1rem}.create-task-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.create-task-modal__field{display:flex;flex-direction:column;gap:.375rem}.create-task-modal__field label{font-size:.875rem;font-weight:600;color:#42526e}.create-task-modal__field input,.create-task-modal__field textarea,.create-task-modal__field select{padding:.75rem;border:1px solid #dfe1e6;border-radius:8px;font:inherit;color:#172b4d;background:#fff}.create-task-modal__field input:focus,.create-task-modal__field textarea:focus,.create-task-modal__field select:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 3px #0052cc26}.create-task-modal__field textarea{resize:vertical;min-height:6rem}.create-task-modal__error{margin:0;font-size:.875rem;color:#bf2600}.create-task-modal__state{margin:0;font-size:.875rem;color:#5e6c84}.create-task-modal__message{margin:0 0 1.25rem;font-size:.9375rem;line-height:1.5;color:#42526e}.create-task-modal__message strong{color:#172b4d}.create-task-modal__button--danger{background:#de350b;color:#fff}.create-task-modal__button--danger:hover:not(:disabled){background:#bf2600}.create-task-modal__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.create-task-modal__button{padding:.625rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer}.create-task-modal__button:disabled{opacity:.6;cursor:not-allowed}.create-task-modal__button--secondary{background:#f4f5f7;color:#42526e}.create-task-modal__button--secondary:hover:not(:disabled){background:#ebecf0}.create-task-modal__button--primary{background:#0052cc;color:#fff}.create-task-modal__button--primary:hover:not(:disabled){background:#0747a6}@media(prefers-color-scheme:dark){.create-task-modal__dialog{background:#22272b;box-shadow:0 16px 40px #00000080}.create-task-modal__title{color:#ffffffe6}.create-task-modal__close{color:#fff9}.create-task-modal__close:hover{background:#282e33;color:#ffffffe6}.create-task-modal__field label{color:#ffffffb3}.create-task-modal__field input,.create-task-modal__field textarea,.create-task-modal__field select{border-color:#454f59;background:#1d2125;color:#ffffffe6}.create-task-modal__button--secondary{background:#282e33;color:#fffc}.create-task-modal__button--secondary:hover:not(:disabled){background:#454f59}.create-task-modal__message{color:#ffffffbf}.create-task-modal__message strong{color:#fffffff2}}@media(max-width:560px){.create-task-modal__row{grid-template-columns:1fr}}.app-header{position:fixed;top:0;left:0;width:100%;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:#fff;border-bottom:1px solid #dfe1e6;box-shadow:0 1px 3px #091e4214;z-index:1000}.app-header__brand{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:#0052cc}.app-header__logout{padding:.5rem .875rem;border:1px solid #dfe1e6;border-radius:8px;background:#fff;color:#42526e;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.app-header__logout:hover{background:#f4f5f7;border-color:#0052cc;color:#0052cc}@media(prefers-color-scheme:dark){.app-header{background:#22272b;border-bottom-color:#454f59;box-shadow:0 1px 3px #00000040}.app-header__brand{color:#579dff}.app-header__logout{background:#282e33;border-color:#454f59;color:#ffffffd9}.app-header__logout:hover{background:#1c2b41;border-color:#579dff;color:#579dff}}
