:root { --dark-purple: #271f30; --light-red: #ff686b; --eggshell: #dfe2cf; --ucla-blue: #4d7298; --robin-egg-blue: #66ced6; } html { font-family: sans-serif; height: 100%; } body { margin: 0; height: 100%; display: flex; } #side-panel { height: 100%; background-color: var(--dark-purple); display: none; } #header button { transform: translateY(-.3em); width: auto; visibility: visible; } #side-panel { display: block; width: 100%; } #side-panel.invisible-on-mobile { display: none; } /* on desktop only */ @media only screen and (min-width: 768px) { #side-panel { display: block; width: auto; visibility: visible; border-right: 3px solid var(--eggshell); } #side-panel.invisible-on-mobile { display: block; } #header button { width: 0; margin: 0; padding: 0; visibility: hidden; } #side-panel .conversation { max-width: 300px; } } #side-panel .conversation { width: 100%; height: 70px; border-bottom: solid var(--eggshell) 3px; color: var(--eggshell); padding: .5em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } #side-panel .conversation:hover { background-color: var(--eggshell); color: var(--dark-purple); } #side-panel h2 { margin: 0; } #header { position: sticky; top: 0; } #main-panel { background-color: var(--dark-purple); float: right; display: flex; flex-direction: column; justify-content: flex-end; } #page { max-width: 600px; } h1 { display: inline-block; color: var(--eggshell); } .delay { display: inline; color: var(--robin-egg-blue); } .rounded-rectangle { border-width: 2px; border: black; border-style: none; border-radius: 1em; padding: .6em .8em; } .message-content { z-index: 1; float: right; } .message-content.theirs { background-color: var(--ucla-blue); float: left; } .theirs .message-text { color: var(--eggshell); } .message-content.ours { background-color: var(--eggshell); right: 0; margin-bottom: 0.5em; } .ours .message-text { color: var(--dark-purple); } ul { overflow: scroll; /*height:100%;*/ flex-grow: 1; margin: .5em; padding: 0; list-style: none; } li { height: 2.5em; width: 100%; margin-bottom: 1.5em; position: relative; display: inline-table; } #textbox { width: 100%; display: flex; /*position: sticky;*/ /*flex-position: end;*/ bottom: 0; margin-top: 0.5em; z-index: 1; background-color: var(--dark-purple); } #typing-indicator { color: var(--eggshell); margin: 0; margin-left: 1em; margin-bottom: 0.5em; position: fixed; bottom: 3em; } #textbox input { flex-grow: 2; color: var(--dark-purple); background-color: var(--eggshell); margin: 0.5em; left: 1em; font-size: 1em; z-index: 1; } button { background-color: var(--dark-purple); color: var(--eggshell); margin: 0.5em; padding: 0; flex-grow: 1; right: 0; font-size: 1em; } button:hover { color: var(--dark-purple); background-color: var(--eggshell); } .progress-bar { width: 100%; height: 100%; max-width: 400px; border-radius: 1em; overflow: hidden; position: absolute; z-index: -1; top: 0; left: 0; } .progress { opacity: 50%; width: 0; height: 100%; } .message-status { color: var(--eggshell); position: absolute; top: 2.3em; right: 1em; font-size: .8em; }