// Import Bootstrap (Custom Vanilla build) // -------------------------------------------------// @import "bootstrap/bootstrap"; // Bootswatches // -------------------------------------------------// @import "swatches/Vanilla/variables"; @import "swatches/Vanilla/bootswatch"; /*--------------------------------------------------*/ /* If you want to embed your Vanilla forum, uncomment the following line to enable the special embed.less */ /*--------------------------------------------------*/ //@import "skins/embed.less"; /*--------------------------------------------------*/ /* The following files are optional LESS skins */ /*--------------------------------------------------*/ //@import "skins/linen.less"; /*--------------------------------------------------*/ /* The following files are stylesheets for plugins */ /*--------------------------------------------------*/ //@import "plugins/CLEditor.less"; //CLEditor Plugin @import "plugins/Emotify"; //Emotify Plugin @import "plugins/LastEdited"; //Last Edited Plugin @import "plugins/Flagging"; //Flagging Plugin @import "plugins/QnA"; //QnA Plugin @import "plugins/Signatures"; //Signatures Plugin // Additional variables // -------------------------------------------------// @whiteSmoke: darken(@bodyBackground, 3%); @whiterSmoke: darken(@bodyBackground, 1%); @vanillaBodyBackground: lighten(@bodyBackground, 2%); // Mixins // -------------------------------------------------// .fontIcon(@icon) { font-family: FontAwesome; font-weight: normal; content: @icon; } .legend { display: block; width: 100%; padding: 0; margin-bottom: 27px; font-size: 19.5px; line-height: 36px; color: #333; border: 0; border-bottom: 1px solid @tableBorder; } // Main elements // -------------------------------------------------// body { text-align: left; padding: 100px 0; &.Entry { text-align: left; } } a { &:hover { text-decoration: none; } } ul, ol { list-style: none; margin: 0; } form { margin: 0; li { margin: 10px 0 0; &:first-child { margin: 0; } } } .Loading { width: 40px; margin: 0 auto; } body.Categories.discussions .CategoryBox { margin-bottom: 10px; .DataList { border-bottom: none; .border-radius(0); } .Foot { border: 1px solid @tableBorder; } } body.Entry .Panel, body.Conversations.add .Panel, body.Vanilla.Post .Panel { display: none; } body.Entry .Content, body.Conversations.add .Content, body.Vanilla.Post .Content { width: 100%; margin-left: 0; } // Modals // -------------------------------------------------// .Overlay { background: rgba(0,0,0,0.8); z-index: @zindexModal; } #Popup { .Box { border: none; background: none; padding: 0; } .Border { .modal(); padding: 0; margin: -250px 0 0 -250px; } .Body { background: none; padding: 10px 15px; .Content { border: none; .border-radius(6px); h1, h2 { font-size: 18px; line-height: 27px; margin: -10px -15px 15px; font-weight: bold; .modal-header(); color: @textColor; } h3 { padding: 0 0 9px !important; } p { padding: 0; } form, .Preview { .modal-body(); overflow-x: visible; overflow-y: visible; padding: 0; border-bottom: none; } .Preview { overflow-y: scroll; } table { width: 100%; td { border: solid @tableBorder; border-width: 1px 0; padding: 2px 6px; } } .Info { margin-top: 0; } .SingleEntryMethod, .MultipleEntryMethods { width: 100%; } } .Footer { clear: both; .modal-footer(); margin: 15px -15px -10px; border-top: 1px solid @tableBorder; .Close { .close(); top: 14px; font-size: 24px; font-weight: normal; } } input.Button { font-size: 13px; &:focus { outline: none; } } } } body.Post.discussion #Popup { .Border { width: 940px; max-width: 940px; position: relative; margin: 0 auto; top: auto; left: auto; .Preview { max-height: 100%; } } } // Pagination // -------------------------------------------------// #PagerMore { text-align: center; } body.Discussions .NumberedPager { position: absolute; margin: 10px 0 0; } body.Discussion .NumberedPager { border-width: 0 1px 1px; border-left: 1px solid @tableBorder; .border-radius(0); a.Next, span.Next, a.Previous, span.Previous { .border-radius(0); } } .NumberedPager { border: 1px solid @tableBorder; .border-radius(3px); a, span { background: @vanillaBodyBackground; font-size: 13px; font-weight: normal; display: inline-block; line-height: 34px; padding: 0 14px; border-left: 1px solid @tableBorder; &.Highlight { background: @whiteSmoke; } &.Next, &.Previous { margin: 0; font: 0/0 a; &:after { font-family: @sansFontFamily; font-size: 13px; line-height: 34px; } } &.Next { .border-radius(0 3px 3px 0); &:after { content: "»"; } } &.Previous { .border-radius(3px 0 0 3px); &:after { content: "«"; } } } a { &:hover { background: @whiteSmoke; } } &:first-child { border-left: none; } } // Forms // -------------------------------------------------// form { .form-horizontal(); } textarea { .box-sizing(border-box); } input { height: 28px; .box-sizing(border-box); } .CheckBoxLabel { .checkbox(); padding-left: 0; input[type="checkbox"] { float: left; margin-right: 5px; } } .RadioLabel { display: block; .checkbox(); padding-left: 0; input[type="radio"] { float: left; margin-right: 5px; margin-left: 1px; } } // Buttons // -------------------------------------------------// input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] { border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); } a.Button, .Button, .TabLink, .Tabs .TabLink { .btn(); &:hover { color: inherit; } } .Buttons { .Back { display: none; } } a.BigButton { .btn(); .btn-primary(); display: block; font-weight: normal; margin: 0 0 10px; font-size: 15px; padding: 8px 0; &.ClearConversation { .btn-danger(); } } .Cancel { .btn(); .btn-danger(); } .DraftButton { .btn-info(); &.TabLink { .btn-primary(); } } .PreviewButton { .btn-primary(); &.TabLink { .btn-info(); } } #Form_Share.Button { .btn-primary(); margin-top: 5px; } .Panel a.SignInPopup, .Content a.SignInPopup { .btn-info(); } a.ApplyButton { .btn-primary(); } li.Active a { &.Button, &.TabLink { background-image: none; outline: 0; .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)"); } &.PreviewButton { background: @btnPrimaryBackgroundHighlight; &.TabLink { background: @btnInfoBackgroundHighlight; } } } // Widgets, panels and containers // -------------------------------------------------// .Box { background: @whiterSmoke; padding: 10px 15px; border: 1px solid @tableBorder; .border-radius(4px); .box-shadow(none); > h4 { color: @grayDark; background-color: @whiteSmoke; border-bottom: 1px solid @tableBorder; .border-radius(4px 4px 0 0); .whiteBorderTop(); margin: -10px -15px 10px; a { color: @grayDark; } } &.BoxCategories { > h4 { a:after { float: right; .fontIcon("\f00b"); } } } &.BoxSearch { background: @whiteSmoke; form { .whiteBorderTop(); input { width: 100%; margin: 0; height: auto; } #Form_Go { display: none; } } } &.About { dl { .dl-horizontal(); margin-bottom: 0; } } .PanelInfo { border-top: none; margin: -10px -15px; &.PanelCategories { li { &.Heading { background: @whiteSmoke; } a { color: darken(@textColor, 5%); font-weight: bold; &:before { color: lighten(@textColor, 40%); .fontIcon("\f07b"); margin-right: 5px; } &:hover { color: @linkColor; } } &.Active a { color: @linkColor; &:before { color: @linkColor; content: "\f07c"; } } &.Depth3 { padding: 6px 15px 6px 32px; } } } li { background: @whiterSmoke; border-bottom: 1px solid @tableBorder; padding: 6px 15px; &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } &.Active { background: @whiteSmoke; .box-shadow(inset 0 3px 8px rgba(0, 0, 0, 0.05)); } } } } // Navbar dropdown // -------------------------------------------------// .nav .dropdown-menu a { span { .label(); background: @infoText; } &:hover span { background: @vanillaBodyBackground; color: @linkColor; } } // Login pages // -------------------------------------------------// .SingleEntryMethod { width: 470px; h1 { .legend(); font-weight: normal; margin-bottom: 15px; } li { margin: 10px 0 0; } #Form_User_SignIn { display: block !important; label[for="Form_Email"], label[for="Form_Password"] { font-size: 13px; display: inline-block; text-align: right; font-weight: normal; width: 130px; margin-right: 10px; } input { &#Form_Password { width: 210px; border-right: none; .border-radius(3px 0 0 3px); } &#Form_Email { width: 280px; } &#Form_SignIn { .btn-primary(); float: right; position: relative; right: 45px; width: 70px; margin: 0; } } .ForgotPassword { .btn(); .btn-info(); margin: 0; width: 70px; .border-radius(0 3px 3px 0); .box-sizing(border-box); } label[for="SignInRememberMe"] { position: relative; left: 145px; width: 210px; padding: 5px 0; margin: 0; } .Buttons { margin: 15px 0 0; } .CreateAccount { position: relative; left: 145px; width: 260px; } } #Form_User_Password { label[for="Form_Email"] { font-size: 13px; margin-top: 15px; margin-right: 10px; margin-bottom: 0; display: inline-block; text-align: right; font-weight: normal; width: 130px; } input { &.InputBox { width: 280px; margin-top: -20px; } &#Form_Requestanewpassword { display: inline-block; position: relative; font-size: 12px; left: 145px; width: 160px; border-right: none; .border-radius(3px 0 0 3px); .box-sizing(border-box); } } .Buttons { margin-top: 0; div { display: inline-block; float: right; position: relative; right: 45px; } a { .btn(); font-size: 12px; margin: 10px 0; width: 120px; .border-radius(0 3px 3px 0); .box-sizing(border-box); } } } } .MultipleEntryMethods { width: 470px; .MainForm { float: left; margin-bottom: 15px; .box-sizing(border-box); } .Methods { display: block !important; position: relative; float: right; top: 0; padding: 15px 0 15px 15px; margin-top: -15px; border-color: transparent; .box-sizing(border-box); } h1 { .legend(); font-weight: normal; margin-bottom: 15px; } li { margin: 10px 0 0; &:first-child { margin: 0; } } .Errors { width: 260px; } #Form_User_SignIn { display: block !important; label[for="Form_Email"], label[for="Form_Password"] { font-size: 13px; font-weight: normal; } input { &#Form_Password { width: 210px; border-right: none; .border-radius(3px 0 0 3px); } &#Form_Email { width: 280px; } &#Form_SignIn { .btn-primary(); float: right; width: 70px; margin: 0; } } .ForgotPassword { .btn(); .btn-info(); margin: 0; width: 70px; .border-radius(0 3px 3px 0); .box-sizing(border-box); } label[for="SignInRememberMe"] { width: 210px; padding: 5px 0; margin: 0; } .Buttons { margin: 15px 0 0; } .CreateAccount { width: 280px; } } #Form_User_Password { label[for="Form_Email"] { font-size: 13px; font-weight: normal; margin-top: 15px; } input { &.InputBox { width: 280px; } &#Form_Requestanewpassword { display: inline-block; float: left; font-size: 12px; width: 160px; border-right: none; .border-radius(3px 0 0 3px); .box-sizing(border-box); } } .Buttons { margin-top: 0; div { display: inline-block; float: right; position: relative; } a { .btn(); font-size: 12px; margin: 10px 0; width: 120px; .border-radius(0 3px 3px 0); .box-sizing(border-box); } } } } #FacebookAuth, #GoogleAuth, #OpenIDAuth, #TwitterAuth { float: right; padding: 3px; } // Request password page // -------------------------------------------------// body.Entry.passwordrequest, .Popup { .Content { float: none; .center-block(); width: 470px; h1 { .legend(); font-weight: normal; margin-bottom: 15px; } .Box { border: none; background: none; padding: 0; #Form_User_Password { label[for="Form_Email"] { font-size: 13px; display: inline-block; text-align: right; font-weight: normal; width: 130px; padding: 0; margin-right: 10px; } input { &.InputBox { width: 310px; margin-top: -20px; } &#Form_Requestanewpassword { display: inline-block; position: relative; left: 145px; width: 180px; border-right: none; .border-radius(3px 0 0 3px); .box-sizing(border-box); } } .Buttons { margin-top: 0; div { display: inline-block; float: right; position: relative; right: 15px; } a { .btn(); margin: 10px 0; width: 130px; .border-radius(0 3px 3px 0); .box-sizing(border-box); } } } } } } // Apply for membership page // -------------------------------------------------// body.Entry.register .container-fluid, body.Entry.register .container { .Content { float: none; .center-block(); width: 470px; .Box { border: none; background: none; padding: 0; } h1 { .legend(); font-weight: normal; margin-bottom: 15px; } li { margin: 10px 0; &:first-child { margin: 0; } } #Form_User_Register { label[for="Form_InvitationCode"], label[for="Form_Email"], label[for="Form_Name"], label[for="Form_Password"], label[for="Form_PasswordMatch"], label[for="Form_Gender"] { display: inline-block; text-align: right; font-size: 13px; font-weight: normal; width: 130px; margin-right: 10px; } label.RadioLabel { width: auto; display: inline-block; text-align: left; margin-right: 20px; } label.CheckBoxLabel { clear: both; } input.InputBox { width: 280px; } textarea.TextBox { width: 100%; .box-sizing(border-box); } #recaptcha_table { width: 100%; } #recaptcha_response_field { padding: 4px !important; font-size: 13px; line-height: 18px; color: @gray !important; background-color: @vanillaBodyBackground; border: 1px solid @inputBorder !important; &:focus { border-color: rgba(82, 168, 236, 0.8) !important; } } } .Buttons { .form-actions(); .Button { .btn-primary(); margin: 0; } } } } // Conversations // -------------------------------------------------// #Form_Conversation { background: @whiteSmoke; textarea { &#Form_To { min-height: 28px; } } } .ac_results { width: auto !important; .dropdown-menu(); z-index: @zindexModal; .box-sizing(border-box); li { &.ac_over { color: @dropdownLinkColorHover; background: @linkColor; strong { background: none; } } } } body.Conversations.Index { .Content { > h1 { background: @whiteSmoke; border: 1px solid @tableBorder; padding: 10px 15px; font-size: 20px; line-height: 28px; .border-radius(4px 4px 0 0); } .MessageList { border: 1px solid @tableBorder; border-width: 0 1px; .Item { background: @vanillaBodyBackground; padding: 10px 15px 4px; border-bottom: 1px solid whiteSmoke; &:last-child { border-bottom: none; } } } #MessageForm { padding: 10px 15px; background: @whiteSmoke; border: 1px solid @tableBorder; margin: 0; h2 { font-size: 13px; font-weight: normal; line-height: 18px; color: darken(@textColor, 10%); margin-bottom: 5px; } textarea.MessageBox { height: 50px; min-height: 50px; } } } } // Tabs // -------------------------------------------------// .whiteBorderTop { padding: 10px 15px; margin: -10px -15px; border-top: 1px solid @vanillaBodyBackground; .border-radius(4px 4px 0 0); } .DiscussionsTabs, .DiscussionTabs, .ActivityTabs, .ProfileTabs, .CategoryHeadings, .CategoryTabs, .Profile .User, .ConversationsTabs { background: @whiteSmoke; border: 1px solid @tableBorder; padding: 10px 15px; .border-radius(4px 4px 0 0); .Breadcrumbs { .breadcrumb(); .border-radius(0); border-width: 1px 0 0; margin: 10px -15px -10px; } } .SearchTabs { display: none; } .HeadingTabs { .SubTab { font-size: 20px; line-height: 28px; } } body#vanilla_discussions_index { .Tabs .AdminCheck { top: 0; height: 20%; margin: 30% 0; } } .Tabs .AdminCheck { position: absolute; right: 26px; } span.AdminCheck { input { margin: 6px 0; } } div.Options { margin: 4px 4px 0 0; } // Datalist // -------------------------------------------------// .DataList { &.MessageList, &.Discussions, &.Drafts, &.Activities, &.Conversations, &.SearchResults { border: 1px solid @tableBorder; border-top: none; } &.Discussions, &.Drafts, &.Activities, &.Conversations, &.SearchResults { .border-radius(0 0 4px 4px); } &.MessageList { padding: 0; margin-bottom: 0; .Item { background: @vanillaBodyBackground; padding: 10px 15px 4px; border-bottom: 1px solid @whiteSmoke; &:last-child { border-bottom: none; } .CommentInfo { margin: 4px 0 0; } .Message { margin: 9px 9px 9px 0; } .Meta { padding: 4px 0; } } .Options { margin: 2px 6px 0 0; } } &.ActivityComments { .CommentForm { border: solid @tableBorder; border-width: 1px 0 0; background: @whiteSmoke; } } &.Discussions { .Item { background: @vanillaBodyBackground; padding: 4px 6px; border-bottom: 1px solid @whiteSmoke; .Title{ font-size: 16px; padding: 4px 0; } .Meta { padding: 4px 0; .Category { .label(); } strong { color: white; background: @linkColor; padding: 3px 4px; } } &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } } } &.CategoryList { border: solid @tableBorder; border-width: 0 1px 1px; .border-radius(0 0 4px 4px); .Item { background: @vanillaBodyBackground; padding: 8px 6px 8px 0; border-bottom: 1px solid @whiteSmoke; .ItemContent { margin: 0 0 0 15px; } .Meta { span { margin-right: 12px; } } &.CategoryHeading { padding: 6px 6px 6px 0; background: @whiterSmoke; } &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } } } &.Drafts { .Item { background: @vanillaBodyBackground; padding: 10px 6px; border-bottom: 1px solid @whiteSmoke; &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } .Excerpt { margin: 10px 0 0; } } } &.Activities { margin-top: 0; .Item { background: @vanillaBodyBackground; padding: 10px 15px; border-bottom: 1px solid @whiteSmoke; &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } } } &.Conversations { .Item { background: @vanillaBodyBackground; padding: 10px 6px; border-bottom: 1px solid @whiteSmoke; &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } .MetaItem { margin-right: 12px; } strong.MetaItem { color: white; background: @linkColor; padding: 3px 4px; } } } &.SearchResults { .Item { background: @vanillaBodyBackground; padding: 10px 6px; border-bottom: 1px solid @whiteSmoke; .Title { font-size: 16px; } .Excerpt { margin: 10px 0; } &:last-child { border-bottom: none; .border-radius(0 0 4px 4px); } } } .OptionsMenu { margin-top: 1px; .MenuTitle { .btn(); .btn-mini(); } .MenuItems { .dropdown-menu(); float: right; right: 0; left: auto; a:hover { color: @dropdownLinkColorHover; background: @linkColor; } } &.Open { .MenuTitle { background-color: darken(@white, 10%); background-color: darken(@white, 15%) e("\9"); background-image: none; outline: 0; .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)"); } } } } // Search // -------------------------------------------------// body.Search .DataList.SearchResults { border: none; .Item { border-bottom: 1px solid @tableBorder; .Excerpt { margin: 10px 0; } &:first-child { border-top: 1px solid @tableBorder; } &:last-child { .border-radius(0); } } } // New Discussion // -------------------------------------------------// #DiscussionForm { h1 { display: none; } input.InputBox { height: auto; width: 100%; } textarea.TextBox { width: 100%; } form { background: @whiteSmoke; border: 1px solid @tableBorder; } .Tabs { padding: 10px 20px; margin: 0 -20px 15px; background: none; border-bottom: 1px solid @tableBorder; } } // Activity // -------------------------------------------------// form.Activity { padding: 15px; background: @whiterSmoke; border: 1px solid @tableBorder; border-top: none; textarea.TextBox { width: 100%; .box-sizing(border-box); } } // Profile // -------------------------------------------------// .ProfileTabs { .breadcrumb(); border-width: 0 1px 1px; margin: 0; .border-radius(0); } .Profile { .User { h1 { font-size: 20px; line-height: 28px; padding: 0; } } } .Box.About { clear: both; dl { margin: -10px -15px; dt { font-size: 12px; width: 25%; height: 30px; line-height: 30px; padding: 0 20px; border-bottom: 1px solid @tableBorder; &:nth-last-child(2) { border-bottom: none; } } dd { font-size: 14px; margin-left: 25%; height: 30px; line-height: 30px; border-bottom: 1px solid @tableBorder; &:last-child { border-bottom: none; } } } } div.Box.Group { .PanelInfo { border-bottom: none; li { border-bottom: 1px solid @tableBorder; &:first-child { .border-radius(4px 4px 0 0); } &:last-child { border-bottom: none; } } } } body.Profile .Panel > .Photo { margin: 0 0 10px; .box-sizing(border-box); img { width: 100%; margin: 0 auto; .border-radius(4px); .box-sizing(border-box); .thumbnail(); } } .Thumbnail { img { max-width: inherit; } } // Comments // -------------------------------------------------// form#Form_Comment { margin-bottom: 0; } .CommentTabs { position: absolute; bottom: 10px; } .CommentForm { background: @whiteSmoke; border: 1px solid @tableBorder; border-top: none; .border-radius(0 0 4px 4px); label { color: lighten(@textColor, 30%); } .Buttons { span { position: relative; top: 1px; color: lighten(@textColor, 30%); margin: 0 20px; } } textarea.TextBox { height: 50px; min-height: 50px; width: 100%; .box-sizing(border-box); } .Preview { width: 100%; background: @vanillaBodyBackground; border: 1px solid @tableBorder; margin: 0; .box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.05)); .border-radius(3px); .box-sizing(border-box); } } .MessageForm { padding: 10px 15px; } .Foot { background: @whiteSmoke; border: 1px solid @tableBorder; border-top: none; padding: 10px 15px; .border-radius(0 0 4px 4px); .Note { line-height: 28px; &.Closed { .label(); background-color: @errorText; line-height: 26px; margin: 1px 0 0; padding: 0 8px; } } } // Bookmarks // -------------------------------------------------// body.Discussion a.Bookmark { margin: 2px 0 0 8px; } // Messages // -------------------------------------------------// .DismissMessage { .alert(); .alert-success(); a.Dismiss { .close(); position: relative; right: -25px; } &.Warning { .alert-error(); } &.Info { .alert-info(); } &.Box { .alert(); } } // Errors and alerts // -------------------------------------------------// .Empty { background: @whiterSmoke; border: 1px solid @tableBorder; border-top: none; margin: 0; padding: 10px 15px; .border-radius(0 0 4px 4px); } .Errors { margin: 0 0 15px; .box-sizing(border-box); ul { .btn(); .btn-danger(); display: block; width: auto; li { display: inline; } } } .Warning { .alert(); } // Labels // -------------------------------------------------// span.Announcement { .label(); background-color: @infoText; } span.Count, .TabLink span { .label(); background-color: @infoText; } span.Closed { .label(); background-color: @errorText; } // Inputs // -------------------------------------------------// .TextBoxWrapper { width: auto; padding-right: 0; } // Credits // -------------------------------------------------// .well.credits { text-align: center; .box-shadow(none); padding: 10px 15px; } // Import Custom styles // This file must be placed at the end of this file, // to make sure that it properly overrides it. // -------------------------------------------------// @import "custom";