* { margin: 0; font-family: sans-serif; } nav { height: 48px; line-height: 48px; border-bottom: 2px solid black; } #nav-container { max-width: 1000px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; } .nav-section { padding: 0 13px; display: flex; flex-direction: row; gap: 15px; } #new-button { text-transform: uppercase; cursor: pointer; text-align: center; font-size: 2em; font-weight: 600; font-family: sans-serif; color: inherit; text-decoration: none; display: inline-block; } .focus-highlight:hover { background-color: #ddd; } #profile { position: relative; } #profile-icon { padding: 0 10px; cursor: pointer; } #profile-dropdown { position: absolute; top: 48px; right: 0px; height: 0; width: 100px; z-index: 9999; border: 0px solid black; transition: height .5s, border-width 0s .5s; overflow: hidden; background-color: white; } #profile:hover > #profile-dropdown { height: 64px; border-width: 2px; transition: height .5s, border-width 0s; } #profile-dropdown > div { cursor: pointer; line-height: 32px; padding: 0 4px; } #main-content { height: calc(100vh - 100px); height: calc(100lvh - 100px); position: relative; } #lists { height: 100%; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: center; gap: 38px; padding: 25px; } #overdue-list { border: 4px solid hsl(0, 90%, 67.72%); } #today-list { border: 4px solid hsl(210, 57.14%, 58.04%); } #upcoming-list { border: 4px solid hsl(262.5, 44.44%, 58.62%); } .todo-list { width: 300px; height: min(calc(100lvh - 100px), 450px); border: 4px solid black; border-radius: 12px; overflow: hidden; } .todo-list-title { height: 50px; line-height: 50px; text-align: center; color: #333; font-size: 2rem; } .todo-list-items { max-height: min(calc(100lvh - 150px), 400px); overflow-y: scroll; } #overdue-list > .todo-list-title { background-color: #FAA0A0; } #today-list > .todo-list-title { background-color: #A7C7E7; } #upcoming-list > .todo-list-title { background-color: #C3B1E1; } .todo-item { height: 40px; margin: 6px; padding: 0 12px; border-radius: 5px; border: 1px solid gray; display: flex; align-items: center; justify-content: start; gap: 10px; } [data-show-completed="false"] .todo-item:has(input[type="checkbox"]:checked) { display: none; } .todo-text { flex: 1; text-wrap: nowrap; overflow: hidden; } .todo-item-actions { max-width: 0px; overflow: hidden; transition: max-width .2s; display: flex; flex-direction: row; align-items: center; justify-content: end; gap: 5px; } .todo-item:hover > .todo-item-actions { max-width: 30%; transition: max-width .7s; } .todo-item-actions > i { cursor: pointer; } form { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); border: 2px solid black; border-radius: 10px; width: min(calc(100vw - 110px), 900px); height: min(calc(100lvh - 250px), 440px); background: white; box-shadow: black 5px 5px 5px -3px; visibility: hidden; opacity: 0; transition: visibility 1s, top .5s, opacity .5s linear; display: flex; flex-direction: column; padding: 30px; } form:target { top: 48%; visibility: visible; opacity: 1; transition: visibility 0s, top .5s, opacity .5s linear; } .form-title { font-size: 2em; font-weight: bold; margin-top: -10px; } .form-container { display: flex; flex: 1; flex-direction: row; } .form-column { flex: 1; padding: 20px; } .form-column input { margin-bottom: 20px; } .form-button-container { display: flex; flex-direction: row; align-items: center; justify-content: end; margin: 0 10px; gap: 20px; } form .button { padding: 10px 20px; text-decoration: none; border: 2px solid; border-radius: 6px; box-shadow: black 2px 2px 3px 0; background-color: white; font-size: 1rem; cursor: pointer; } form .button:hover { background-color: #ddd; } .form-close-button { color: initial; } .form-save-button { color: blue; border-color: blue; } .new-item, .filler-item { display: none; } [data-item-count="0"] .filler-item { display: block; width: calc(100% - 12px); flex: 1; text-align: center; font-weight: bold; font-size: 1.5rem; line-height: 40px; margin: 6px; }