body { font-family: 'Humbug', 'Helvetica Neue', Helvetica, Arial, sans-serif; overflow-y: scroll; } /* Common background color */ body, #tab_bar, #tab_bar_underpadding, .message_list, .message_comp { background-color: #f8f9f8; -webkit-transition: background-color 200ms linear; -moz-transition: background-color 200ms linear; -o-transition: background-color 200ms linear; -ms-transition: background-color 200ms linear; transition: background-color 200ms linear; } body.narrowed_view, .narrowed_view #tab_bar, .narrowed_view #tab_bar_underpadding, .narrowed_view .message_list { background-color: #f0f8ff; -webkit-transition: background-color 200ms linear; -moz-transition: background-color 200ms linear; -o-transition: background-color 200ms linear; -ms-transition: background-color 200ms linear; transition: background-color 200ms linear; } input, button, select, textarea { font-family: 'Humbug', 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: normal; } blockquote p { font-weight: normal; } a { cursor: pointer; } .container-fluid { max-width: 1230px; margin: 0px auto; padding-left: 5px; padding-right: 5px; } #right-sidebar { margin-left: 20px; } textarea, input { font-family: 'Humbug', Helvetica, Arial, sans-serif; } /* Override Bootstrap's fixed sizes for various elements */ textarea, label { font-size: inherit; line-height: inherit; } /* List of text-like input types taken from Bootstrap */ input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"] { font-size: inherit; height: 1.4em; } li, .table th, .table td { line-height: inherit; } .btn { font-size: inherit; height: auto; line-height: 100%; } .btn-large { font-size: 115%; } .navbar .logo { display: block; font-size: 120%; font-weight: 900; text-shadow: none; color: #ffffff; font-variant: small-caps; letter-spacing: 2px; line-height: 18px; padding-top: 10px; padding-left: 25px; text-decoration: none; } .navbar .logoimage { width: 45px; height: auto; } @media (max-width: 979px) { .navbar .logo { margin-left: -20px; } } .navbar .gravatar-profile { width: 25px; height: 25px; background-size: 25px 25px; background-repeat: none; border-radius: 25px; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.6), 0 1px 0px rgba(255, 255, 255, 1); -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.6), 0 1px 0px rgba(255, 255, 255, 1); -moz-mox-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.6), 0 1px 0px rgba(255, 255, 255, 1); position: absolute; left: 5px; top: 7px; } /* Classes for hiding and showing controls */ .notdisplayed { display: none !important; } .notvisible { visibility: hidden !important; width: 0px !important; min-width: 0px !important; min-height: 0px !important; height: 0px !important; overflow: hidden !important; position: absolute !important; } /* Relative positioning */ .position-relative { position: relative; } /* Lighter strong */ strong { font-weight: 600; } /* Inline and block code */ code { /* 12/14 em, so bootstrap's default 12 px, when body is the default 14 px */ font-size: 0.857em; } pre { /* 13/14 em, so bootstrap's default 13 px, when body is the default 14 px */ font-size: 0.929em; line-height: inherit; white-space: pre; overflow-x: auto; word-wrap: normal; } pre code { white-space: pre; } /* Style inline code inside a link to look more like a normal link */ a code { color: #08C; border-color: #08C; } a:hover code { color: #005580; border-color: #005580; } .preserve_spaces { white-space: pre-wrap; } .sidebar-nav { padding: 0px 10px 20px 0px; margin-top: 1em; overflow: hidden; text-overflow: ellipsis; /* This is a little hacky, but for whatever reason, span2 in a row-fluid doesn't consistently take on the right width when it's in an affix, so we need to specify a max size. */ max-width: 200px; } @media (max-width: 767px) { .sidebar-nav { padding: 0.5em; margin: 0px; border: 1px solid black; } } #left-sidebar .brand { display: table-row; } #left-sidebar .gravatar-profile { width: 35px; height: 35px; background-size: 35px 35px; background-repeat: none; border-radius: 35px; border: 1px solid #CCC; } #my_information { display: table-cell; vertical-align: middle; padding-left: 0.5em; } #my_information .my_fullname { font-weight: bold; white-space: nowrap; } .my_email { font-weight: 300; } .logout { white-space: nowrap; } .new_message_button { padding-top: 1.1em; } .bottom_sidebar { margin-top: 1em; } #streams_list { border-top: 1px solid #eee; margin-top: 5px; margin-left: 10px; } .streams_title { font-size: 0.9em; font-weight: normal; display: inline; } #streams_list:hover #streams_inline_cog { visibility: visible; opacity: 0.5; } #streams_list #streams_inline_cog:hover { opacity: 1.0; } #streams_inline_cog { float: right; color: #000; text-decoration: none; visibility: hidden; margin-top: 3px; } .tooltip { max-width: 10em; } #stream_filters { border-bottom: 1px solid #eee; overflow-y: hidden; margin: 2px 0px 10px 0px; padding: 2px 15px 10px 0; } #stream_filters .narrow-filter { display: block; padding-left: 1.5em; position: relative; padding-right: 10px; } #stream_filters:hover { overflow-y: auto; } #stream_filters li:hover { background-color: #e2e8dd; } #stream_filters li.active-subject-filter:hover { background-color: #ccd6cc; } #user_presences { list-style-position: inside; /* Draw the bullets inside our box */ margin-top: 1em; margin-left: 0; overflow-y: hidden; } #user_presences:hover { overflow-y: auto; } #user_presences li:hover { background-color: lightgrey; } #user_presences .user_sidebar_entry:hover { cursor: pointer; } #user_presences li { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .user_sidebar_entry .count { display: none; } #user_presences li.user_active { list-style-image: url(/static/images/presence/user-active.png); } #user_presences li.user_away { list-style-image: url(/static/images/presence/user-away.png); } #user_presences li.user_idle { list-style-image: url(/static/images/presence/user-idle.png); } #user_presences .arrow { font-size: 1em; width: 2em; } #user_presences .arrow-real { display: none; } #user_presences li:hover .arrow-real { display: inline; cursor: pointer; } #user_presences a { color: #333; } #invite-user-link i { text-decoration: none; margin-right: 5px; } ul.filters { list-style-type: none; padding-right: 1em; } ul.filters a { color: #333; } ul.filters hr { margin-top: 10px; margin-bottom: 10px; } li.active-filter, li.active-subject-filter { font-weight: bold; background: #ccd6cc; position: relative; } li.active-filter:after, li.active-subject-filter:after { content: ""; position: absolute; top: 50%; right: -6px; margin-top: -6px; display: block; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 6px solid #ccd6cc; } li.hidden-filter { visibility: hidden; display: none; } ul.filters { margin-left: 9px; } ul.filters .count { margin-left: 0.5em; display: none; } ul.filters i { padding-right: 0.25em; } ul.filters .arrow { position: absolute; right: 0px; top: 2px; font-size: 0.8em; display: none; } ul.filters li:hover .arrow { display: inline; cursor: pointer; color: #888; } ul.filters li .arrow:hover { display: inline; cursor: pointer; color: #000; } ul.filters li.out_of_home_view { opacity: 0.25; } .message_list { padding-left: 4px; } .message_area_padder { margin-top: 10px; padding-left: 5px; padding-right: 5px; /* This is needed for the floating recipient bar in Firefox only, for some reason; otherwise it gets a scrollbar */ overflow: visible; } .message_comp { display: none; } .message_comp, #compose_controls { border: 1px solid #EEE; background-color: white; padding: 8px 20px 8px 10px; box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.3); border-top-left-radius: 6px; border-top-right-radius: 6px; } #compose_buttons { text-align: center; } @media (max-width: 480px) { .compose_stream_button_label, .compose_private_button_label { display: none; } } td.pointer { vertical-align: top; padding-top: 10px; background-color: #fff; } .selected_message .messagebox, .selected_message .message_data { background-color: #f7f7f7; } .selected_message .inline_profile_picture { border-color: #AAA; } .selected_message.private-message .inline_profile_picture { border-color: #AAA; } .selected_message .info { visibility: visible; } .private-message .messagebox { background-color: #feffe0; } .selected_message.private-message .message_data, .selected_message.private-message .messagebox { background-color: #feffcc; } .new_messages { background-color: lightblue; } .new_messages, .new_messages_fadeout { -webkit-transition: all 3s ease-in-out; -moz-transition: all 3s ease-in-out; -o-transition: all 3s ease-in-out; transition: all 3s ease-in-out; } .selected_message .pointer, .selected_message.mention .pointer { background-color: #1f2170; } .private-message.selected_message .pointer { background-color: #1f2170; } /* Adjust certain message elements so they still stand out against the grey background */ .selected_message pre { background-color: white; } .selected_message code { background-color: white; } .selected_message blockquote { border-left-color: #BBB; } .message_time { position: absolute; right: -26px; top: 7px; display: inline-block; font-weight: normal; font-size: 75%; line-height: 100%; color: #999; } .message_controls { display: inline-block; position: absolute; top: 2px; right: -63px; } .message_data { vertical-align: top; text-align: left; padding: 0px; background-color: #fff; position: relative; } .include-sender .message_time { top: 7px; } .ztable_layout_row { visibility: collapse; } .ztable_col1 { /* colorblock */ width: 8px; } .ztable_col2 { /* messagebody */ width: 100%; } .ztable_comp_col1 { width: 40px; } .ztable_comp_col2 { width: 100%; } .message_header { vertical-align: middle; text-align: left; /* We can overflow-y if the font size gets big */ overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; line-height: 14px; padding: 3px 0px 2px 5px; border-radius: 0px 3px 0px 0px; background: rgb(220,220,220); /* Old browsers */ background: -moz-linear-gradient(top, rgba(220,220,220,1) 0%, rgba(230,230,230,1) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(220,220,220,1)), color-stop(100%,rgba(230,230,230,1))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* IE10+ */ background: linear-gradient(to bottom, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dcdcdc', endColorstr='#e6e6e6',GradientType=0 ); /* IE6-9 */ border-bottom: 1px solid #d2eee7; /* box-shadow: 0px 2px 3px #ccc; */ border-top: 1px solid #c1dbd5; border-right: 1px solid #c1dbd5; } .message_header .icon-vector-narrow { font-size: 0.6em; position: relative; top: -1px; } .message_header_colorblock { border-radius: 3px 0px 0px 0px; /* box-shadow: 0px 2px 3px #ccc; */ border-top: 1px solid #c1dbd5; border-left: 1px solid #c1dbd5; border-bottom: 1px solid #d2eee7; } .last_message .messagebox { height: 3px; border-radius: 0px 0px 3px 0px; border: 1px solid #c1dbd5; border-top: none; border-left: none; } .last_message .messagebox_colorblock { border-radius: 0px 0px 0px 3px; border: 1px solid #c1dbd5; border-top: none; border-right: none; } .floating_recipient .message_header, .floating_recipient .message_header_colorblock { box-shadow: none; border-bottom: 1px solid #d2eee7; } .compose_table .message_header.message_header_private_message, .message_header_private_message { background-image: none; background-color: #444444; } .compose_table .message_header { background: none; background-color: #ececec; border: none; border-radius: 0px; } .selected_message .messagebox_colorblock { box-shadow: inset -12px 0px 0px -1px rgba(40,40,40,0.5); } .selected_message .messagebox_colorblock.message_header_private_message { box-shadow: inset -12px 0px 0px -1px rgba(240,240,240,0.5); } .pointer_icon { width: 100%; text-align: center; display: none; color: #fff; } .selected_message .pointer_icon { display: inline-block; } .mention .messagebox { background-color: #ffe4e0; } .unread .messagebox .message_top_line { position: relative; } .unread .messagebox .message_top_line:before { content: ""; position: absolute; top: 0px; left: -7px; border-width: 8px 8px 0px 0; border-style: solid; border-color: #db1f1f transparent; } .include-sender.unread .messagebox .message_top_line:before { top: -7px; } .selected_message.mention .messagebox, .selected_message.mention .message_data { background-color: #FFE0DC; } .selected_message.private-message.mention .messagebox, .selected_message.private-message.mention .message_data { background-color: #FFE0DC; } .message_sender { height: 0px; vertical-align: top; position: relative; } .sender_name { color: #333; display: inline-block; font-weight: bold; vertical-align: top; position: relative; top: -2px; } .sender_name_hovered .sender_name { color: #0088CC; } .sender_name_hovered .inline_profile_picture { border-color: #0088CC; } .actions_hover:hover { color: #0088CC; } .message_label_clickable:hover { cursor: pointer; color: #08C; } .edit_subject { opacity: .7; } .edit_subject:hover { cursor: pointer; opacity: 1.0; } /* Brighten text because of the dark background */ .dark_background { color: #ffffff; } .dark_background .message_label_clickable:hover { color: #3BF; } .message_top_line { position: relative; } .message-right { float: right; } .small { font-size: 80%; } .tiny { font-size: 60%; } .actions_hovered .message_time, .actions_hovered .info { color: #0088CC; cursor: pointer; } .message_hovered .info { visibility: visible; } .actions_hovered .actions_link { text-decoration: underline; } table.message_table { table-layout: fixed; border-collapse: separate; margin-left: auto; display: none; width: 100%; } table.compose_table { table-layout: fixed; margin-left: auto; width: 100%; } table.focused_table { display: table; } .include-sender .message_content { margin-top: -8px; } .message_content { line-height: 18px; padding-left: 35px; } @media (max-width: 480px) { .message_content { margin-right: 5px; } } .message_content.condensed { max-height: 8.5em; overflow: hidden; } .message_content.collapsed { max-height: 0em; overflow: hidden; } .message_length_controller { display: none; text-align: center; color: #0088CC; /* to match .message_content */ margin-left: 5px; margin-right: 35px; } .message_length_controller:hover { text-decoration: underline; } blockquote { margin-bottom: 6px; } blockquote p { line-height: inherit; font-size: inherit; } .messagebox { padding: 7px 70px 0px 7px; background-color: #fff; word-wrap: break-word; cursor: pointer; vertical-align: top; border-right: 1px solid #c1dbd5; border-left: none; } .messagebox_colorblock { border-left: 1px solid #c1dbd5; } .messagebox p { margin: 3px 0px 3px 0px; } .messagebox blockquote { padding-left: 5px; margin-left: 10px; } #send_message_form { margin: 0px; } #send_message_form .messagebox { /* normally 5px 14px; pull in the right and bottom a bit */ padding-right: 5px; padding-bottom: 0px; border-top-width: 1px; cursor: default; } #enter-sends-label { margin-bottom: 0px; margin-top: 2px; } #send_message_form .message_content { display: table-row; margin-right: 0px; } #compose-send-button { height: 31px; /* Same as height of compose textarea. */ } #below-compose-content { display: table-row; font-size: 80%; white-space: nowrap; padding-top: 6px; } .bookend { padding-top: 10px; background-color: transparent; } .prev_is_same_sender.messagebox { padding-top: 0px; } .prev_is_same_sender.message_data { padding-top: 0px; } .next_is_same_sender { border-bottom: 0px; padding-bottom: 0px; } .profile_picture { display: block; float: right; margin-top: 5px; max-height: 15px; width: 15px; height: 15px; cursor: pointer; border-radius: 30px; -moz-box-shadow: 1px 1px 1px #777 inset; -webkit-box-shadow: 1px 1px 1px #777 inset; box-shadow: 1px 1px 1px #777 inset; background-size: 15px 15px; } .inline_profile_picture { display: inline-block; width: 25px; height: 25px; margin-right: 5px; background-size: 25px 25px; border-radius: 25px; border: 1px solid #CCC; vertical-align: top; position: relative; left: -1px; } #compose { position: fixed; bottom: 0px; background: white; z-index: 1; } #compose_close { display: none; position: absolute; right: 5px; top: 10px; } /* Like .nav-tabs > li > a */ #send-status { width: 90%; padding: 8px 14px 8px 14px; line-height: 20px; display: none; } /* Like .alert .close */ .send-status-close { font-size: 17px; font-weight: bold; color: black; text-shadow: 0 1px 0 white; opacity: .2; filter: alpha(opacity=20); float: right; } .send-status-close:hover { cursor: pointer; opacity: .4; filter: alpha(opacity=40); } .home-error-bar { margin-top: 5px; display: none; } #connection-error { font-size: 13px; } .streamname { font-weight: bold; } .home-error-bar .alert { margin-bottom: auto; } textarea.new_message_textarea { display: table-cell; width: 99%; height: 1.5em; max-height: 11em; margin-bottom: 0px; resize: none; } input.recipient_box { margin-bottom: 0px; margin-top: 0px; } #stream.recipient_box { width: 20%; } #subject.recipient_box { width: 15%; } #private_message_recipient.recipient_box { width: 72%; } #left-of-compose { vertical-align: top; padding-top: 3px; } #send_controls { display: table-cell; vertical-align: bottom; padding-left: 15px; /* jQuery's slideDown() animation seems to compute the target height by drawing these elements in an (offscreen) context where they would reflow onto multiple lines. We need to prevent that in order to avoid an animation glitch. See: http://is.gd/EVJFZ8 */ white-space: nowrap; /* This white-space nowrap is also critical for making sure that the button doesn't get smushed as the textarea expands; clearly the button is taking up more than the 1% width specified below. */ width: 1%; } #navbar-spacer { /* A spacer that is exactly a navbar size, so that all content gets pushed unerneath it */ width: 100%; height: 40px; } #navbar-middle { padding-left: 5px; padding-right: 10px; } .brand.skinny-user-gravatar { display: table-cell; padding-top: 0px; padding-bottom: 0px; margin-bottom: 0px; white-space: nowrap; } #searchbox { width: 100%; padding-right: 30px; } #tab_bar { position: fixed; top: 41px; z-index: 2; padding-top: 0px; padding-bottom: 10px; overflow: hidden; text-overflow: ellipsis; } #tab_list { list-style: none; height: 20px; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 5px; border: none; white-space: nowrap; } #tab_list li { white-space: nowrap; list-style-type: none; display: inline-block; position: relative; font-weight: 600; background-color: #f9f9f9; margin: 0px; padding: 0px; border-radius: 0px 0px 3px 3px; border-left: 10px solid; background: -moz-linear-gradient(top, rgba(220,220,220,1) 0%, rgba(230,230,230,1) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(220,220,220,1)), color-stop(100%,rgba(230,230,230,1))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* IE10+ */ background: linear-gradient(to bottom, rgba(220,220,220,1) 0%,rgba(230,230,230,1) 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dcdcdc', endColorstr='#e6e6e6',GradientType=0 ); /* IE6-9 */ border-bottom: 1px solid; border-right: 1px solid; text-overflow: ellipsis; } #tab_list li.narrow_spacer { margin: 0px; padding: 0px 0px 0px 1px; min-width: 0px; text-shadow: 0px 1px 0px #fff; border: none; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; background: none; } #tab_list li.private_message { border-color: #444; } #tab_list a { text-decoration: none; color: inherit; border-color: inherit; height: 15px; width: 100%; min-width: 80px; display: inline-block; padding: 3px 9px 6px 8px; } #tab_list li.active { padding: 3px 9px 6px 8px; height: 15px; min-width: 80px; } #tab_list .root { border-color: #7dcbff; margin: 0px; } #tab_bar_underpadding { position: fixed; z-index: 10; top: 74px; background-color: #FFF; height: 0px; } .navbar-top { background: rgb(172,197,193); /* Old browsers */ background: -moz-linear-gradient(top, rgba(172,197,193,1) 0%, rgba(220,241,234,1) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(172,197,193,1)), color-stop(100%,rgba(220,241,234,1))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, rgba(172,197,193,1) 0%,rgba(220,241,234,1) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, rgba(172,197,193,1) 0%,rgba(220,241,234,1) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, rgba(172,197,193,1) 0%,rgba(220,241,234,1) 100%); /* IE10+ */ background: linear-gradient(to bottom, rgba(172,197,193,1) 0%,rgba(220,241,234,1) 100%); /* W3C */ background-image: url(/static/images/backgrounds/header.jpg); background-size: 180px 180px; border-bottom: 1px solid #314945; position: relative; } #navbar-buttons { white-space: nowrap; position: absolute; right: 0px; top: 2px; } #navbar-buttons ul.nav { margin: 0px; /* Firefox-specific hack; Technically white-space: nowrap applies to text, not "stuff in general", so in Firefox without this, the