/** Common layout **/ html { height: 100%; } body { height: 100%; font-family: "Myriad Pro", "Myriad", Helvetica, Arial, sans-serif; font-size: 12pt; margin: 0px; } h1 { font-size: 20pt; } a:link { color: #666; } a:visited { color: #666; } a:hover { color: #000; } a:active { color: #000; } textarea, input { font-family: inherit; font-size: inherit; } .page { min-height: 100%; margin-bottom: -32px; /* to make room for the footer */ } #wrapper { margin: auto; max-width: 1280px; padding-top: 40px; padding-bottom: 40px; padding-left: 20px; padding-right: 20px; } #unsupportedBrowser { padding-top: 240px; text-align: center; } #header { position: absolute; z-index: 2; top: 0px; width: 100%; background-color: #333; height: 32px; } #callBar { float: left; height: 32px; margin: auto; text-align: right; line-height: 16px; } .callIcon { margin-left: 4px; margin-right: 4px; margin-top: 8px; } #callEndedIcon { transition:all linear 0.5s; } #callEndedIcon { transform: rotateZ(45deg); } #callEndedIcon.ng-hide { transform: rotateZ(0deg); } #callPeerImage { width: 32px; height: 32px; border: none; float: left; } #callPeerNameAndState { float: left; margin-left: 4px; } #callState { font-size: 60%; } #callPeerName { font-size: 80%; } #videoBackground { position: absolute; height: 100%; width: 100%; top: 0px; left: 0px; z-index: 1; background-color: rgba(0,0,0,0.0); pointer-events: none; transition: background-color linear 500ms; } #videoBackground.large { background-color: rgba(0,0,0,0.85); pointer-events: auto; } #videoContainer { position: relative; top: 32px; max-width: 1280px; margin: auto; } #videoContainerPadding { width: 1280px; } #localVideo { position: absolute; width: 128px; height: 72px; z-index: 1; transition: left linear 500ms, top linear 500ms, width linear 500ms, height linear 500ms; } #localVideo.mini { top: 0px; left: 130px; } #localVideo.large { top: 70px; left: 20px; } #localVideo.ended { -webkit-filter: grayscale(1); filter: grayscale(1); } #remoteVideo { position: relative; height: auto; transition: left linear 500ms, top linear 500ms, width linear 500ms, height linear 500ms; } #remoteVideo.mini { left: 260px; top: 0px; width: 128px; } #remoteVideo.large { left: 0px; top: 50px; width: 100%; } #remoteVideo.ended { -webkit-filter: grayscale(1); filter: grayscale(1); } #headerContent { color: #ccc; max-width: 1280px; margin: auto; text-align: right; height: 32px; line-height: 32px; position: relative; } #headerContent a:link, #headerContent a:visited, #headerContent a:hover, #headerContent a:active { color: #fff; } #footer { width: 100%; border-top: #666 1px solid; background-color: #aaa; height: 32px; } #footerContent { font-size: 8pt; color: #fff; max-width: 1280px; margin: auto; text-align: center; height: 32px; line-height: 32px; } #genericHeading { margin-top: 13px; } #feedback { color: #800; } .mouse-pointer { cursor: pointer; } .invited { opacity: 0.2; } /*** Login Pages ***/ .loginWrapper { text-align: center; } #recaptcha_area { margin: auto } #loginForm { text-align: left; padding: 1em; margin-bottom: 40px; display: inline-block; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.15); -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.15); box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.15); background-color: #f8f8f8; border: 1px #ccc solid; } #loginForm input[type='radio'] { margin-right: 1em; } #serverConfig { text-align: center; } #serverConfig, #serverConfig input, #serverConfig button { font-size: 10pt ! important; } .smallPrint { color: #888; font-size: 9pt ! important; font-style: italic ! important; } #serverConfig label { display: inline-block; text-align: right; margin-right: 0.5em; width: 7em; } #loginForm, #loginForm input, #loginForm button, #loginForm select { font-size: 18px; } /*** Room page ***/ #roomPage { position: absolute; top: 120px; bottom: 120px; left: 20px; right: 20px; } #roomWrapper { margin: auto; max-width: 1280px; height: 100%; } #roomHeader { margin: auto; padding-left: 20px; padding-right: 20px; padding-top: 53px; max-width: 1280px; } #controlPanel { position: absolute; bottom: 0px; width: 100%; height: 100px; background-color: #f8f8f8; border-top: #aaa 1px solid; } #controls { max-width: 1280px; padding: 12px; margin: auto; } #buttonsCell { width: 150px; } #inputBarTable { width: 100%; } #inputBarTable tr td { padding: 1px 4px; } #mainInput { width: 100%; resize: none; } .blink { background-color: #faa; } .roomHighlight { font-weight: bold; } .publicTable { max-width: 480px; width: 100%; border-collapse: collapse; } .publicTable tr { width: 100%; } .publicTable td { vertical-align: text-top; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .publicRoomEntry { max-width: 430px; } .publicRoomJoinedUsers { width: 5em; text-align: right; font-size: 12px; color: #888; } .publicRoomTopic { color: #888; font-size: 12px; overflow: hidden; padding-bottom: 5px; border-bottom: 1px #ddd solid; } #roomName { font-size: 16px; text-align: right; } #roomTopic { font-size: 13px; text-align: right; } .roomNameInput, .roomTopicInput { width: 100%; } .roomNameSection, .roomTopicSection { float: right; width: 100%; } .roomNameSetNew, .roomTopicSetNew { float: right; } .roomHeaderInfo { float: right; margin-top: 15px; width: 50%; } /*** Participant list ***/ #usersTableWrapper { float: right; width: 120px; height: 100%; overflow-y: auto; } #usersTable { width: 100%; border-collapse: collapse; } #usersTable td { padding: 0px; } .userAvatar { width: 80px; height: 100px; position: relative; background-color: #000; } .userAvatar .userAvatarImage { position: absolute; top: 0px; object-fit: cover; width: 100%; } .userAvatar .userAvatarGradient { position: absolute; bottom: 20px; width: 100%; } .userAvatar .userName { position: absolute; color: #fff; margin: 2px; bottom: 0px; font-size: 12px; word-break: break-all; } .userAvatar .userPowerLevel { position: absolute; bottom: 0px; height: 2px; background-color: #f00; } .userPresence { text-align: center; font-size: 12px; color: #fff; background-color: #aaa; border-bottom: 1px #ddd solid; } .online { background-color: #38AF00; } .unavailable { background-color: #FFCC00; } /*** Message table ***/ #messageTableWrapper { height: 100%; margin-right: 140px; overflow-y: auto; width: auto; } #messageTable { margin: auto; max-width: 1280px; width: 100%; border-collapse: collapse; table-layout: fixed; } #messageTable td { padding: 0px; } .leftBlock { width: 14em; word-wrap: break-word; vertical-align: top; background-color: #fff; color: #888; font-weight: medium; font-size: 12px; text-align: right; border-top: 1px #ddd solid; } .rightBlock { width: 32px; color: #888; line-height: 0; vertical-align: top; } .sender, .timestamp { padding-right: 1em; padding-left: 1em; padding-top: 3px; } .sender { margin-bottom: -3px; } .avatar { width: 48px; text-align: right; vertical-align: top; line-height: 0; } .avatarImage { object-fit: cover; } .emote { background-color: transparent ! important; border: 0px ! important; } .membership { background-color: transparent ! important; border: 0px ! important; } .image { display: block; max-width:320px; max-height:320px; width: auto; height: auto; } .text { vertical-align: top; } .bubble { background-color: #eee; border: 1px solid #d8d8d8; display: inline-block; margin-bottom: -1px; max-width: 90%; font-size: 14px; word-wrap: break-word; padding-top: 7px; padding-bottom: 5px; padding-left: 1em; padding-right: 1em; vertical-align: middle; -webkit-text-size-adjust:100% } .bubble img { max-width: 100%; max-height: auto; } .differentUser td { padding-bottom: 5px ! important; } .mine { text-align: right; } .text.emote .bubble, .text.membership .bubble, .mine .text.emote .bubble, .mine .text.membership .bubble { background-color: transparent ! important; border: 0px ! important; } .mine .text .bubble { background-color: #f8f8ff ! important; text-align: left ! important; } .bubble .message { /* Wrap words and break lines on CR+LF */ white-space: pre-wrap; } .bubble .messagePending { opacity: 0.3 } .messageUnSent { color: #F00; } .messageBing { color: #00F; } #room-fullscreen-image { position: absolute; top: 0px; height: 0px; width: 100%; height: 100%; } #room-fullscreen-image img { max-width: 90%; max-height: 90%; bottom: 0; left: 0; margin: auto; overflow: auto; position: fixed; right: 0; top: 0; -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.75); -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.75); box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.75); } /*** Recents ***/ .recentsTable { max-width: 480px; width: 100%; border-collapse: collapse; table-layout: fixed; } .recentsTable tr { width: 100%; } .recentsTable td { vertical-align: text-top; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .recentsRoom { cursor: pointer; } .recentsRoom:hover { background-color: #f8f8ff; } .recentsRoomSelected { background-color: #eee; } .recentsRoomName { font-size: 16px; padding-top: 7px; width: auto; } .recentsPublicRoom { font-weight: bold; } .recentsRoomSummaryUsersCount, .recentsRoomSummaryTS { color: #888; font-size: 12px; width: 7em; text-align: right; } .recentsRoomSummary { color: #888; font-size: 12px; padding-bottom: 5px; } /* Do not show users count in the recents fragment displayed on the room page */ #roomPage .recentsRoomSummaryUsersCount { width: 0em; } /*** Recents in the room page ***/ #roomRecentsTableWrapper { float: left; max-width: 320px; padding-right: 10px; margin-right: 10px; height: 100%; border-right: 1px solid #ddd; overflow-y: auto; } /*** Profile ***/ .profile-avatar { width: 160px; height: 160px; display: table-cell; vertical-align: middle; text-align: center; } .profile-avatar img { width: 100%; height: 100%; object-fit: cover; } /*** User profile page ***/ #user-displayname { font-size: 24px; } #user-displayname-input { width: 160px; max-width: 155px; } #user-save-button { width: 160px; font-size: 14px; }