*{font-family:DM Mono,monospace;font-weight:400;margin:0;padding:0;box-sizing:border-box;color:var(--text-colour)}:root{--background-colour: #f5f4f3;--item-colour: white;--done-colour: rgb(228, 227, 227);--session-header-button: rgb(219, 219, 219);--text-colour: #202124;--toggle-background: rgb(219, 219, 219);--select-background: rgb(255,239, 97)}[data-theme=dark]{--background-colour: #222231;--item-colour: #303042;--done-colour: #2A2A39;--session-header-button: #2A2A39;--text-colour: #DDE3F5;--toggle-background: #303042;--select-background: #22AFCB}::selection{background:var(--select-background);color:var(--text-colour)}h1,h2,h3,input,button{font-family:DM Mono,monospace;font-weight:500}#root{min-height:100vh;display:flex;flex-direction:column;padding:14px;background:var(--background-colour);gap:14px}.App{display:flex;flex-direction:column;gap:14px;max-width:800px;width:100%;margin:0 auto}#root,header,.todo-header,.todoItem,.sessionHeader,.completedItem,button,input{transition:background-color .2s ease-in-out,color .2s ease-in-out,border-color .2s ease-in-out}button,.listHeader .fa-pencil,.listHeader .fa-floppy-disk,.listHeader .fa-trash-can{cursor:pointer}button:disabled{cursor:not-allowed}.listHeader .fa-pencil,.listHeader .fa-floppy-disk,.listHeader .fa-trash-can{transition:opacity .2s ease-in-out}.listHeader .fa-pencil:hover,.listHeader .fa-floppy-disk:hover,.listHeader .fa-trash-can:hover{opacity:.7}header{display:flex;align-items:stretch;padding-bottom:10px;position:sticky;top:0;z-index:10;background:var(--background-colour)}header,.main{max-width:800px;width:100%;margin:0 auto;gap:14px;padding-bottom:10px}header input{flex:1;border-radius:14px;outline:none;width:100%}header button{border-radius:14px;background:transparent;transition-duration:.2s;cursor:pointer}header button:hover{opacity:.7}header button,header input{padding:14px 18px;border:none;outline:none;background:var(--item-colour)}p{font-size:.9em}.main{display:flex;flex-direction:column;gap:14px}.todoItem{display:flex;align-items:center;gap:14px;padding:14px;border-radius:14px;background:var(--item-colour);border:1px solid transparent}.todoItem.isDragging{background:color-mix(in srgb,var(--select-background) 18%,var(--item-colour));border-color:color-mix(in srgb,var(--select-background) 50%,transparent);box-shadow:0 18px 36px #20212429}.todoItem.isDragging .fa-grip-lines,.list.isDragging .fa-grip-vertical{color:var(--select-background)}.todoItem p{flex:1}.actionsContainer{display:flex;align-items:center;gap:14px}.actionsContainer button{transition-duration:.2s;border:none;background:transparent;cursor:pointer}.actionsContainer button:hover{opacity:.7}.sessionHeader{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;max-width:800px;width:100%;margin:0 auto}.sessionHeader button{padding:14px 18px;border:none;outline:none;border-radius:14px;background:var(--session-header-button);transition-duration:.2s;cursor:pointer}.sessionHeader button:hover{opacity:.7}.completedItem{text-decoration:line-through;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border-radius:14px;background:var(--done-colour)}.completedItem button{transition-duration:.2s;border:none;background:transparent;cursor:pointer}.completedItem button:hover{opacity:.7}.list{background-color:var(--done-colour);padding:14px 18px;border-radius:18px;border:1px solid transparent}.list.isDragging{background:color-mix(in srgb,var(--select-background) 14%,var(--done-colour));border-color:color-mix(in srgb,var(--select-background) 40%,transparent);box-shadow:0 20px 40px #2021242e}.listHeader{display:flex;align-items:center;gap:8px;font-size:1em}.listHeader .fa-trash-can{margin-left:auto}.listHeader input{padding:14px 18px;border:none;border-radius:14px;outline:none;background:var(--item-colour);transition-duration:.2s;font-size:1em}.fa-pencil,.fa-floppy-disk{margin-left:12px}.listContainer{display:flex;flex-direction:column;gap:14px}.create-list-btn{margin-left:auto;padding:0;border:none;background:transparent;color:var(--text-colour);font-family:DM Mono,monospace;font-weight:500;font-size:1em;cursor:pointer;transition-duration:.2s}.create-list-btn:hover{opacity:.7}.listDropzone{min-height:72px;margin-top:8px;padding:8px;border:3px dashed var(--background-colour);border-radius:14px}.listDropzone.isOver{border-color:var(--select-background);background:color-mix(in srgb,var(--select-background) 12%,transparent)}.listDropzonePlaceholder{list-style:none;padding:14px;border-radius:14px;opacity:.7;text-align:center}.authForm{background:var(--item-colour);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:14px;max-width:400px;width:100%;margin:auto}.authForm input{padding:14px 18px;border:none;border-radius:14px;outline:none;background:var(--background-colour);width:100%;font-size:1em}.authForm button[type=submit]{padding:14px 18px;border:none;border-radius:14px;background:var(--select-background);cursor:pointer;font-size:1em;transition-duration:.2s}.authForm button[type=submit]:hover{opacity:.8}.authForm button[type=button]{padding:14px 18px;border:none;border-radius:14px;background:var(--session-header-button);cursor:pointer;font-size:1em;transition-duration:.2s}.authForm button[type=button]:hover{opacity:.7}.authError{color:#e25151}.authNotice{color:var(--select-background)}.authPasswordField{position:relative;display:flex}.authPasswordField input{padding-right:48px}.authPasswordToggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:none;background:transparent;cursor:pointer;padding:8px;opacity:.7}.authPasswordToggle:hover{opacity:1}.authLinkButton{background:transparent!important;text-decoration:underline;align-self:flex-start;padding:0!important;font-size:.9em}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.signOutButton{align-self:flex-start;padding:10px 16px;border:none;border-radius:14px;background:var(--session-header-button);cursor:pointer;font-size:.9em;transition-duration:.2s}.signOutButton:hover{opacity:.7}.page-nav{display:flex;flex-direction:row;align-items:center;gap:4px;flex-wrap:wrap}.page-tab{display:flex;align-items:center;gap:8px;border:none;border-radius:8px;background-color:var(--toggle-background);padding:8px 12px;cursor:pointer;transition:background-color .2s ease-in-out,color .2s ease-in-out;white-space:nowrap;font-size:.9em}.page-tab.active{background-color:var(--item-colour);border:2px solid;border-color:var(--select-background)}.page-tab:hover:not(.active):not(.page-tab--add){opacity:.8}.page-tab--add{background-color:transparent;opacity:.6}.page-tab--add:hover{opacity:1}.page-tab-title{flex:1}.page-tab-input{border:none;outline:none;background:transparent;font-family:DM Mono,monospace;font-weight:500;font-size:1em;width:90px;color:var(--text-colour)}.page-tab i{font-size:.75em;opacity:.5;flex-shrink:0}.page-tab i:hover{opacity:1}.page-tab .fa-pencil,.page-tab .fa-floppy-disk{margin-left:0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--item-colour);border-radius:18px;padding:24px 28px;max-width:360px;width:calc(100% - 32px);display:flex;flex-direction:column;gap:14px}.modal-title{font-size:1em;font-weight:500}.modal-message{opacity:.7}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-btn-cancel{padding:10px 18px;border:none;border-radius:10px;background:var(--session-header-button);cursor:pointer;font-size:.9em;transition-duration:.2s}.modal-btn-cancel:hover{opacity:.7}.modal-btn-confirm{padding:10px 18px;border:none;border-radius:10px;background:#e25151;color:#fff;cursor:pointer;font-size:.9em;transition-duration:.2s}.modal-btn-confirm:hover{opacity:.8}.notes-fab{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border:none;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:var(--item-colour);color:var(--text-colour);font-size:1.2em;box-shadow:0 8px 20px #00000040;cursor:pointer;z-index:900;transition-duration:.2s}.notes-fab .fa-pencil{margin-left:0}.notes-fab:hover{opacity:.8}.notes-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.notes-pad{position:relative;display:flex;flex-direction:column;width:100%;max-width:760px;height:min(80vh,700px);padding:48px 28px 24px;border-radius:18px;background:var(--item-colour)}.notes-close{position:absolute;top:14px;right:16px;border:none;background:transparent;color:var(--text-colour);font-size:1.2em;cursor:pointer;transition-duration:.2s}.notes-close:hover{opacity:.7}.notes-textarea{flex:1;width:100%;border:none;outline:none;resize:none;background:transparent;color:var(--text-colour);font-family:DM Mono,monospace;font-weight:500;font-size:1em;line-height:1.6}.notes-loading{opacity:.5}@media(min-width:640px){header button,header input{font-size:1.2em}p{font-size:1em}}.toggle-container{display:flex;justify-content:space-between;align-items:center;margin:0;padding:0}.toggle{visibility:hidden}.toggle+label{display:flex;align-items:center;font-size:1.2em;cursor:pointer;color:var(--text-colour);position:relative}.toggle+label:before{content:"";height:1em;width:2em;border-radius:1em;background-color:var(--toggle-background);margin-right:.5em;transition:background-color .25s ease-in-out,transform .25s ease-in-out}.toggle+label:after{content:"";height:.8em;width:.8em;border-radius:1em;background-color:var(--background-colour);position:absolute;left:.2em;transition:background-color .25s ease-in-out,transform .25s ease-in-out}.toggle:checked+label:after{transform:translate(100%)}
