From 7dff78f90adbc7aa145996eba6166a593c3e89d0 Mon Sep 17 00:00:00 2001 From: Mark Carver Date: Sun, 31 Mar 2013 22:22:37 -0500 Subject: [PATCH] Fixes [#1844448] - Add sub-theme starter kit --- bootstrap_subtheme/README.txt | 91 +++++++ .../bootstrap_subtheme.info.starterkit | 52 ++++ bootstrap_subtheme/css/README.txt | 5 + bootstrap_subtheme/css/theme.css | 4 + bootstrap_subtheme/less/README.txt | 35 +++ bootstrap_subtheme/less/bootstrap.less | 53 ++++ bootstrap_subtheme/less/content.less | 20 ++ bootstrap_subtheme/less/fixes.less | 82 ++++++ bootstrap_subtheme/less/footer.less | 1 + bootstrap_subtheme/less/header.less | 5 + bootstrap_subtheme/less/responsive.less | 37 +++ bootstrap_subtheme/less/theme.less | 11 + bootstrap_subtheme/less/variables.less | 301 +++++++++++++++++++++ bootstrap_subtheme/logo.png | Bin 0 -> 2499 bytes bootstrap_subtheme/screenshot.png | Bin 0 -> 54650 bytes bootstrap_subtheme/template.php | 5 + bootstrap_subtheme/templates/README.txt | 3 + 17 files changed, 705 insertions(+) create mode 100644 bootstrap_subtheme/README.txt create mode 100644 bootstrap_subtheme/bootstrap_subtheme.info.starterkit create mode 100644 bootstrap_subtheme/css/README.txt create mode 100644 bootstrap_subtheme/css/theme.css create mode 100644 bootstrap_subtheme/less/README.txt create mode 100644 bootstrap_subtheme/less/bootstrap.less create mode 100644 bootstrap_subtheme/less/content.less create mode 100644 bootstrap_subtheme/less/fixes.less create mode 100644 bootstrap_subtheme/less/footer.less create mode 100644 bootstrap_subtheme/less/header.less create mode 100644 bootstrap_subtheme/less/responsive.less create mode 100644 bootstrap_subtheme/less/theme.less create mode 100644 bootstrap_subtheme/less/variables.less create mode 100644 bootstrap_subtheme/logo.png create mode 100644 bootstrap_subtheme/screenshot.png create mode 100755 bootstrap_subtheme/template.php create mode 100644 bootstrap_subtheme/templates/README.txt diff --git a/bootstrap_subtheme/README.txt b/bootstrap_subtheme/README.txt new file mode 100644 index 0000000..eebbf33 --- /dev/null +++ b/bootstrap_subtheme/README.txt @@ -0,0 +1,91 @@ +# Bootstrap Sub-theme Starter Kit +* [Requirements](#requirements) +* [Setup](#setup) +* [Enable](#enable) +* [File Structure](#file-structure) +* [Icons](#icons) + +## Requirements +* [Bootstrap Base Theme](http://drupal.org/project/bootstrap) - 7.x-2.0-beta3 or higher (must be enabled). +* [jQuery Update](http://drupal.org/project/jquery_update) - 7.x-2.3 or higher. Bootstrap requires a minimum jQuery version of 1.7 or higher. You must manually set this in the configuration upon install. + +#### Conditional Requirements for Method 1: Bootstrap Source Files +* [Bootstrap Source](https://github.com/twitter/bootstrap/tags) +* The Bootstrap Library source files are in LESS. You must use either a local LESS preprocessor or install and enable the [LESS](http://dgo.to/less) module - 7.x-3.0-beta1 or higher (see [setup](#setup)). + +## Setup +You will need to copy this starter kit sub-theme into `sites/all/themes` or a +respectable `sites/*/themes` folder. You should never modify a theme or bundled +sub-theme directly as all changes would be lost if the base theme were to be +updated. Once copied, rename the folder to something of your choosing: +`my_bootstrap_theme`. Then make sure you rename the `bootstrap_subtheme.info.starterkit` +file to match the folder name, like: `my_bootstrap_theme.info`. Be sure to +change the name and description properties inside the file as well. + +**IMPORTANT NOTE** +Ensure that the `.starterkit` suffix is not added to your sub-theme's .info +filename. This suffix is simply a stop-gap measure to ensure that the bundled +starter kit sub-theme cannot be enabled or used directly. This helps people +unfamiliar with Drupal avoid modifying the starter kit sub-theme directly and +forces the new sub-theme to be properly configured. + +#### Bootstrap Library Methods +There a currently two types of supported methods for adding the Bootstrap +Library into your sub-theme. By default, the Bootstrap base theme enables a CDN +to provide the necessary files. If this method suites you then you can skip +this step. + +The second method is probably the most dynamic and will grant you the ability +to change the variables and utilize the mixins provided by the Bootstrap +Library. If this method is chosen, you will need to un-comment the lines for +this method in your sub-theme's .info file before anything will happen. + +##### Method 1: Bootstrap Source Files +Downloaded and extract the latest 2.x version of the [Bootstrap Library](https://github.com/twitter/bootstrap/tags) into your new sub-theme. +After it has been extracted, the folder should read `bootstrap`. If for +whatever reason you have an additional bootstrap folder wrapping the the +bootstrap folder (like: bootstrap/bootstrap), remove the wrapping bootstrap +folder. You will not need to touch these files again. This allows the framework +to be updated in the future. + +**IF USING THE LESS MODULE** +Change the stylesheets include of your sub-theme's .info file from +`css/theme.css` to `less/theme.less`. These will be generated once the theme is +enabled and viewed. + +**IF USING A LOCAL PREPROCESSOR** +Compile the `./less/theme.less` file. A new file should be generated as +`./css/theme.css`. + +Lastly, you will need to uncomment the lines in your sub-theme's .info file +(pertaining to this method) before anything will work. + +##### Method 2: Bootstrap CDN +This method is rather simple, you don't have to do anything unless you wish to +override the default Bootstrap base theme settings. If so, just uncomment the +lines pertaining to Method 2. + +Edit the provided `./css/theme.css` file to your liking. + +## Enable +Navigate to `admin/appearance` and click "Enable and set default" for your +sub-theme. + +## File Structure +The following paths are relative to your sub-theme's base folder. These folders +have an additional README.txt file. Please read them for a more detailed +explanation of their contents. + +`./css` - Compiled sub-theme source files. +`./less` - Sub-theme source files. +`./templates` - Template files. + +## Icons +These instructions are intended for use with Method 1. By default, this +sub-theme uses the packaged [Glyphicons](http://twitter.github.com/bootstrap/base-css.html#icons). +However, given the limited capability of static sprite images, it is +recommended that these not be used and an alternative solution, like +[Fontello](http://drupal.org/project/fontello), be used. If a different icon +implementation is used, comment out or remove the line +`@import "./bootstrap/less/sprites.less";` from `./less/bootstrap.less`. +Recompile or flush cached LESS files if using the LESS module. diff --git a/bootstrap_subtheme/bootstrap_subtheme.info.starterkit b/bootstrap_subtheme/bootstrap_subtheme.info.starterkit new file mode 100644 index 0000000..eb1cd10 --- /dev/null +++ b/bootstrap_subtheme/bootstrap_subtheme.info.starterkit @@ -0,0 +1,52 @@ +name = Bootstrap Sub-theme +description = A Bootstrap Sub-theme. +core = 7.x +base theme = bootstrap + +; Regions +regions[navigation] = 'Navigation' +regions[header] = 'Top Bar' +regions[highlighted] = 'Highlighted' +regions[help] = 'Help' +regions[content] = 'Content' +regions[sidebar_first] = 'Primary' +regions[sidebar_second] = 'Secondary' +regions[footer] = 'Footer' + +; Stylesheets +stylesheets[all][] = css/theme.css + +;********************************** +; METHOD 1: Bootstrap Source Files +;********************************** +; +; ; Scripts +; scripts[] = 'bootstrap/js/bootstrap-affix.js' +; scripts[] = 'bootstrap/js/bootstrap-alert.js' +; scripts[] = 'bootstrap/js/bootstrap-button.js' +; scripts[] = 'bootstrap/js/bootstrap-carousel.js' +; scripts[] = 'bootstrap/js/bootstrap-collapse.js' +; scripts[] = 'bootstrap/js/bootstrap-dropdown.js' +; scripts[] = 'bootstrap/js/bootstrap-modal.js' +; scripts[] = 'bootstrap/js/bootstrap-tooltip.js' +; scripts[] = 'bootstrap/js/bootstrap-popover.js' +; scripts[] = 'bootstrap/js/bootstrap-scrollspy.js' +; scripts[] = 'bootstrap/js/bootstrap-transition.js' +; scripts[] = 'bootstrap/js/bootstrap-typeahead.js' +; +; ; Settings inherited by base theme, uncomment to override. +; ;settings[toggle_name] = 0 +; ;settings[toggle_search] = 1 +; ; Disable the CDN as we are using our own source files. +; settings[cdn_bootstrap] = 0 + + +;************************* +; METHOD 2: Bootstrap CDN +;************************* +; +; ; Settings inherited by base theme, uncomment to override. +; ;settings[toggle_name] = 0 +; ;settings[toggle_search] = 1 +; ;settings[cdn_bootstrap] = 1 +; ;settings[cdn_bootstrap_version] = 2.3.1 diff --git a/bootstrap_subtheme/css/README.txt b/bootstrap_subtheme/css/README.txt new file mode 100644 index 0000000..1a1270e --- /dev/null +++ b/bootstrap_subtheme/css/README.txt @@ -0,0 +1,5 @@ +If using Method 1, this folder is where the output from the compiled LESS files +should be generated. If using the LESS module, this folder can be ignored or +removed. + +If using Method 2, edit the theme.css file to your liking. \ No newline at end of file diff --git a/bootstrap_subtheme/css/theme.css b/bootstrap_subtheme/css/theme.css new file mode 100644 index 0000000..ec772b9 --- /dev/null +++ b/bootstrap_subtheme/css/theme.css @@ -0,0 +1,4 @@ +/** + * This file should get overwritten if Method 1 is used. If Method 2 is chosen, + * remove this comment and start adding your styles to this file. + */ \ No newline at end of file diff --git a/bootstrap_subtheme/less/README.txt b/bootstrap_subtheme/less/README.txt new file mode 100644 index 0000000..a23855d --- /dev/null +++ b/bootstrap_subtheme/less/README.txt @@ -0,0 +1,35 @@ +The following files are simply duplicates from the Bootstrap library. With +modifications in were to reference the imports. In theory, you could replace +them if you update the Bootstrap framework by copying them from that framework +again. Just make sure to modify the import paths to reference the +`./bootstrap/less` folder: +``` +./less/bootstrap.less +./less/responsive.less +./less/variables.less +``` + +The `./less/variables.less` file is generally where you will spend most of +your time customizing the various Bootstrap settings. Feel free to manually +edit it or even replace it with a service like +[BootTheme](http://www.boottheme.com). + +The `./less/fixes.less` file contains various Bootstrap and Drupal fixes. It +may contain a few enhancements, feel free to edit this file as you see fit. + +The following files are relatively blank (they may contain some code for the +inital sub-theme), but this is where you will actually spend most of your time +specifying specific styling for your sites configuration. +``` +./less/header.less +./less/content.less +./less/footer.less +``` + +And finally, the `./less/theme.less` file is the glue that holds it all +together and compiles everything into one file. Generally, you will not need +to modify this file unless you need to add or remove imported files. For +example, if you do not want your site to have responsive capabilities, free to +comment or remove that line. If you are a file hierarchy wizard and need to +separate your theme into multiple files, insert additional `@import '...';` +lines. diff --git a/bootstrap_subtheme/less/bootstrap.less b/bootstrap_subtheme/less/bootstrap.less new file mode 100644 index 0000000..a9ecb8e --- /dev/null +++ b/bootstrap_subtheme/less/bootstrap.less @@ -0,0 +1,53 @@ +// Core variables and mixins +@import "variables.less"; // Modify this for custom colors, font-sizes, etc +@import "../bootstrap/less/mixins.less"; + +// CSS Reset +@import "../bootstrap/less/reset.less"; + +// Grid system and page structure +@import "../bootstrap/less/scaffolding.less"; +@import "../bootstrap/less/grid.less"; +@import "../bootstrap/less/layouts.less"; + +// Base CSS +@import "../bootstrap/less/type.less"; +@import "../bootstrap/less/code.less"; +@import "../bootstrap/less/forms.less"; +@import "../bootstrap/less/tables.less"; + +// Components: common +@import "../bootstrap/less/sprites.less"; +@import "../bootstrap/less/dropdowns.less"; +@import "../bootstrap/less/wells.less"; +@import "../bootstrap/less/component-animations.less"; +@import "../bootstrap/less/close.less"; + +// Components: Buttons & Alerts +@import "../bootstrap/less/buttons.less"; +@import "../bootstrap/less/button-groups.less"; +@import "../bootstrap/less/alerts.less"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less + +// Components: Nav +@import "../bootstrap/less/navs.less"; +@import "../bootstrap/less/navbar.less"; +@import "../bootstrap/less/breadcrumbs.less"; +@import "../bootstrap/less/pagination.less"; +@import "../bootstrap/less/pager.less"; + +// Components: Popovers +@import "../bootstrap/less/modals.less"; +@import "../bootstrap/less/tooltip.less"; +@import "../bootstrap/less/popovers.less"; + +// Components: Misc +@import "../bootstrap/less/thumbnails.less"; +@import "../bootstrap/less/media.less"; +@import "../bootstrap/less/labels-badges.less"; +@import "../bootstrap/less/progress-bars.less"; +@import "../bootstrap/less/accordion.less"; +@import "../bootstrap/less/carousel.less"; +@import "../bootstrap/less/hero-unit.less"; + +// Utility classes +@import "../bootstrap/less/utilities.less"; // Has to be last to override when necessary diff --git a/bootstrap_subtheme/less/content.less b/bootstrap_subtheme/less/content.less new file mode 100644 index 0000000..61b3c22 --- /dev/null +++ b/bootstrap_subtheme/less/content.less @@ -0,0 +1,20 @@ +// Insert your styling here. + +.ds-2col { + & > .group-left { + margin-right: 3%; + width: auto; + @media @mobile { + float: none; + margin: 0; + } + } + & > .group-right { + float: none; + overflow: hidden; + width: auto; + h2 { + margin-top: 0; + } + } +} diff --git a/bootstrap_subtheme/less/fixes.less b/bootstrap_subtheme/less/fixes.less new file mode 100644 index 0000000..d6f54a1 --- /dev/null +++ b/bootstrap_subtheme/less/fixes.less @@ -0,0 +1,82 @@ +// Fix admin menu +html body.admin-menu { + margin-top: 27px !important; +} +body.admin-menu .navbar-fixed-top { + top: 28px; +} +#admin-menu { + .box-shadow(none); +} + +// Bootstrap likes to manually set line-heights to pixels, bad... +body, h1, h2, h3, h4, h5, h6 { + line-height: 1.25em; +} +// Input elements need to be controlled if container is smaller. +input, textarea, select, .uneditable-input { + max-width: 100%; +} +// Fix inputs +select, textarea, 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"], .uneditable-input { + .box-sizing(border-box); + height: 31px; +} +// Fix appended inputs so they don't overflow the containers. +.input-append { + .box-sizing(border-box); + padding-right: 40px; + width: 100%; + input, textarea, select, .uneditable-input { + width: 100% !important; + } +} +// Remove floats from forms. +form.pull-left { + float: none; +} + +// Drupal Core Overrides +ul li.collapsed, +ul li.expanded, +ul li.leaf { + list-style: none; + list-style-image: none; +} +// Fix labels not clearing initially. +label { + clear: both; +} +// Remove the top header margin in blocks. +.block h2.block-title { + margin-top: 0; +} +// Remove background image from form-item errors. +div.error, +table tr.error { + background-color: @errorBackground; + color: @errorText; +} +.control-group.error { + background: none; + label, .control-label { + color: @errorText; + font-weight: 600; + } + input, textarea, select, .uneditable-input { + border: 1px solid @inputBorder; + } + &, .help-block, .help-inline { + color: @textColor; + } +} + +// Icon Overrides +[class^="icon-"]:before, [class*=" icon-"]:before { + margin: 0; +} + +// Text enhancement +#content { + text-shadow: 0 1px 0 @white; +} \ No newline at end of file diff --git a/bootstrap_subtheme/less/footer.less b/bootstrap_subtheme/less/footer.less new file mode 100644 index 0000000..d1ec0dd --- /dev/null +++ b/bootstrap_subtheme/less/footer.less @@ -0,0 +1 @@ +// Insert your styling here. \ No newline at end of file diff --git a/bootstrap_subtheme/less/header.less b/bootstrap_subtheme/less/header.less new file mode 100644 index 0000000..4d79149 --- /dev/null +++ b/bootstrap_subtheme/less/header.less @@ -0,0 +1,5 @@ +// Insert your styling here. + +#logo { + margin-top: -5px; +} \ No newline at end of file diff --git a/bootstrap_subtheme/less/responsive.less b/bootstrap_subtheme/less/responsive.less new file mode 100644 index 0000000..1d14bff --- /dev/null +++ b/bootstrap_subtheme/less/responsive.less @@ -0,0 +1,37 @@ +// Responsive.less +// For phone and tablet devices +// ------------------------------------------------------------- + + +// REPEAT VARIABLES & MIXINS +// ------------------------- +// Required since we compile the responsive stuff separately + +@import "variables.less"; // Modify this for custom colors, font-sizes, etc +@import "../bootstrap/less/mixins.less"; + + +// RESPONSIVE CLASSES +// ------------------ + +@import "../bootstrap/less/responsive-utilities.less"; + + +// MEDIA QUERIES +// ------------------ + +// Large desktops +@import "../bootstrap/less/responsive-1200px-min.less"; + +// Tablets to regular desktops +@import "../bootstrap/less/responsive-768px-979px.less"; + +// Phones to portrait tablets and narrow desktops +@import "../bootstrap/less/responsive-767px-max.less"; + + +// RESPONSIVE NAVBAR +// ------------------ + +// From 979px and below, show a button to toggle navbar contents +@import "../bootstrap/less/responsive-navbar.less"; diff --git a/bootstrap_subtheme/less/theme.less b/bootstrap_subtheme/less/theme.less new file mode 100644 index 0000000..02df860 --- /dev/null +++ b/bootstrap_subtheme/less/theme.less @@ -0,0 +1,11 @@ +// @media Query Mixin Variables +@mobile: ~"(max-width: 767px)"; +@tablet: ~"(min-width: 768px) and (max-width: 979px)"; +@wide: ~"(min-width: 1200px)"; + +@import 'bootstrap.less'; +@import 'responsive.less'; +@import 'fixes.less'; +@import 'header.less'; +@import 'content.less'; +@import 'footer.less'; diff --git a/bootstrap_subtheme/less/variables.less b/bootstrap_subtheme/less/variables.less new file mode 100644 index 0000000..6788b7e --- /dev/null +++ b/bootstrap_subtheme/less/variables.less @@ -0,0 +1,301 @@ +// +// Variables +// -------------------------------------------------- + + +// Global values +// -------------------------------------------------- + + +// Grays +// ------------------------- +@black: #000; +@grayDarker: #222; +@grayDark: #333; +@gray: #555; +@grayLight: #999; +@grayLighter: #eee; +@white: #fff; + + +// Accent colors +// ------------------------- +@blue: #049cdb; +@blueDark: #0064cd; +@green: #46a546; +@red: #9d261d; +@yellow: #ffc40d; +@orange: #f89406; +@pink: #c3325f; +@purple: #7a43b6; + + +// Scaffolding +// ------------------------- +@bodyBackground: @white; +@textColor: @grayDark; + + +// Links +// ------------------------- +@linkColor: #08c; +@linkColorHover: darken(@linkColor, 15%); + + +// Typography +// ------------------------- +@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif; +@serifFontFamily: Georgia, "Times New Roman", Times, serif; +@monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace; + +@baseFontSize: 14px; +@baseFontFamily: @sansFontFamily; +@baseLineHeight: 20px; +@altFontFamily: @serifFontFamily; + +@headingsFontFamily: inherit; // empty to use BS default, @baseFontFamily +@headingsFontWeight: bold; // instead of browser default, bold +@headingsColor: inherit; // empty to use BS default, @textColor + + +// Component sizing +// ------------------------- +// Based on 14px font-size and 20px line-height + +@fontSizeLarge: @baseFontSize * 1.25; // ~18px +@fontSizeSmall: @baseFontSize * 0.85; // ~12px +@fontSizeMini: @baseFontSize * 0.75; // ~11px + +@paddingLarge: 11px 19px; // 44px +@paddingSmall: 2px 10px; // 26px +@paddingMini: 0 6px; // 22px + +@baseBorderRadius: 4px; +@borderRadiusLarge: 6px; +@borderRadiusSmall: 3px; + + +// Tables +// ------------------------- +@tableBackground: transparent; // overall background-color +@tableBackgroundAccent: #f9f9f9; // for striping +@tableBackgroundHover: #f5f5f5; // for hover +@tableBorder: #ddd; // table and cell border + +// Buttons +// ------------------------- +@btnBackground: @white; +@btnBackgroundHighlight: darken(@white, 10%); +@btnBorder: #ccc; + +@btnPrimaryBackground: @linkColor; +@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 20%); + +@btnInfoBackground: #5bc0de; +@btnInfoBackgroundHighlight: #2f96b4; + +@btnSuccessBackground: #62c462; +@btnSuccessBackgroundHighlight: #51a351; + +@btnWarningBackground: lighten(@orange, 15%); +@btnWarningBackgroundHighlight: @orange; + +@btnDangerBackground: #ee5f5b; +@btnDangerBackgroundHighlight: #bd362f; + +@btnInverseBackground: #444; +@btnInverseBackgroundHighlight: @grayDarker; + + +// Forms +// ------------------------- +@inputBackground: @white; +@inputBorder: #ccc; +@inputBorderRadius: @baseBorderRadius; +@inputDisabledBackground: @grayLighter; +@formActionsBackground: #f5f5f5; +@inputHeight: @baseLineHeight + 10px; // base line-height + 8px vertical padding + 2px top/bottom border + + +// Dropdowns +// ------------------------- +@dropdownBackground: @white; +@dropdownBorder: rgba(0,0,0,.2); +@dropdownDividerTop: #e5e5e5; +@dropdownDividerBottom: @white; + +@dropdownLinkColor: @grayDark; +@dropdownLinkColorHover: @white; +@dropdownLinkColorActive: @white; + +@dropdownLinkBackgroundActive: @linkColor; +@dropdownLinkBackgroundHover: @dropdownLinkBackgroundActive; + + + +// COMPONENT VARIABLES +// -------------------------------------------------- + + +// Z-index master list +// ------------------------- +// Used for a bird's eye view of components dependent on the z-axis +// Try to avoid customizing these :) +@zindexDropdown: 1000; +@zindexPopover: 1010; +@zindexTooltip: 1030; +@zindexFixedNavbar: 1030; +@zindexModalBackdrop: 1040; +@zindexModal: 1050; + + +// Sprite icons path +// ------------------------- +@iconSpritePath: "../bootstrap/img/glyphicons-halflings.png"; +@iconWhiteSpritePath: "../bootstrap/img/glyphicons-halflings-white.png"; + + +// Input placeholder text color +// ------------------------- +@placeholderText: @grayLight; + + +// Hr border color +// ------------------------- +@hrBorder: @grayLighter; + + +// Horizontal forms & lists +// ------------------------- +@horizontalComponentOffset: 180px; + + +// Wells +// ------------------------- +@wellBackground: #f5f5f5; + + +// Navbar +// ------------------------- +@navbarCollapseWidth: 979px; +@navbarCollapseDesktopWidth: @navbarCollapseWidth + 1; + +@navbarHeight: 40px; +@navbarBackgroundHighlight: #ffffff; +@navbarBackground: darken(@navbarBackgroundHighlight, 5%); +@navbarBorder: darken(@navbarBackground, 12%); + +@navbarText: #777; +@navbarLinkColor: #777; +@navbarLinkColorHover: @grayDark; +@navbarLinkColorActive: @gray; +@navbarLinkBackgroundHover: transparent; +@navbarLinkBackgroundActive: darken(@navbarBackground, 5%); + +@navbarBrandColor: @navbarLinkColor; + +// Inverted navbar +@navbarInverseBackground: #111111; +@navbarInverseBackgroundHighlight: #222222; +@navbarInverseBorder: #252525; + +@navbarInverseText: @grayLight; +@navbarInverseLinkColor: @grayLight; +@navbarInverseLinkColorHover: @white; +@navbarInverseLinkColorActive: @navbarInverseLinkColorHover; +@navbarInverseLinkBackgroundHover: transparent; +@navbarInverseLinkBackgroundActive: @navbarInverseBackground; + +@navbarInverseSearchBackground: lighten(@navbarInverseBackground, 25%); +@navbarInverseSearchBackgroundFocus: @white; +@navbarInverseSearchBorder: @navbarInverseBackground; +@navbarInverseSearchPlaceholderColor: #ccc; + +@navbarInverseBrandColor: @navbarInverseLinkColor; + + +// Pagination +// ------------------------- +@paginationBackground: #fff; +@paginationBorder: #ddd; +@paginationActiveBackground: #f5f5f5; + + +// Hero unit +// ------------------------- +@heroUnitBackground: @grayLighter; +@heroUnitHeadingColor: inherit; +@heroUnitLeadColor: inherit; + + +// Form states and alerts +// ------------------------- +@warningText: #c09853; +@warningBackground: #fcf8e3; +@warningBorder: darken(spin(@warningBackground, -10), 3%); + +@errorText: #b94a48; +@errorBackground: #f2dede; +@errorBorder: darken(spin(@errorBackground, -10), 3%); + +@successText: #468847; +@successBackground: #dff0d8; +@successBorder: darken(spin(@successBackground, -10), 5%); + +@infoText: #3a87ad; +@infoBackground: #d9edf7; +@infoBorder: darken(spin(@infoBackground, -10), 7%); + + +// Tooltips and popovers +// ------------------------- +@tooltipColor: #fff; +@tooltipBackground: #000; +@tooltipArrowWidth: 5px; +@tooltipArrowColor: @tooltipBackground; + +@popoverBackground: #fff; +@popoverArrowWidth: 10px; +@popoverArrowColor: #fff; +@popoverTitleBackground: darken(@popoverBackground, 3%); + +// Special enhancement for popovers +@popoverArrowOuterWidth: @popoverArrowWidth + 1; +@popoverArrowOuterColor: rgba(0,0,0,.25); + + + +// GRID +// -------------------------------------------------- + + +// Default 940px grid +// ------------------------- +@gridColumns: 12; +@gridColumnWidth: 60px; +@gridGutterWidth: 20px; +@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1)); + +// 1200px min +@gridColumnWidth1200: 70px; +@gridGutterWidth1200: 30px; +@gridRowWidth1200: (@gridColumns * @gridColumnWidth1200) + (@gridGutterWidth1200 * (@gridColumns - 1)); + +// 768px-979px +@gridColumnWidth768: 42px; +@gridGutterWidth768: 20px; +@gridRowWidth768: (@gridColumns * @gridColumnWidth768) + (@gridGutterWidth768 * (@gridColumns - 1)); + + +// Fluid grid +// ------------------------- +@fluidGridColumnWidth: percentage(@gridColumnWidth/@gridRowWidth); +@fluidGridGutterWidth: percentage(@gridGutterWidth/@gridRowWidth); + +// 1200px min +@fluidGridColumnWidth1200: percentage(@gridColumnWidth1200/@gridRowWidth1200); +@fluidGridGutterWidth1200: percentage(@gridGutterWidth1200/@gridRowWidth1200); + +// 768px-979px +@fluidGridColumnWidth768: percentage(@gridColumnWidth768/@gridRowWidth768); +@fluidGridGutterWidth768: percentage(@gridGutterWidth768/@gridRowWidth768); diff --git a/bootstrap_subtheme/logo.png b/bootstrap_subtheme/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..462877d0d4edc9880704b9804ffea6c940617d62 GIT binary patch literal 2499 zcmaJ@c{o)2AD$NbBU7&BCov5n%a|DqGj?-qF^I{&&2VU97Bj;PiA*E=RaeOsDM>4$ zCd&wSqEy69meM6RA}xrtxVWQR-QOR-e&;#oe3$2a-_Pg!`Ml3_PL`L4v%IXDECd3P zcXa{0#iN?|(U6uDztO{+hQz~v*pB{eA9@s_p;dxoUt*7!$ELN5Oij=F$#;tu4$mrMq-2!E0M+~agAs!t#1kd z$ckW67;Fli23u1kk?HYlYq&Vme~v(9e3zxMzLrT`Fk>!>VT?i`*N*fJNFe-wD3$sh z&0>3l|K|HYg;~Tz259UJvgq;52yx@0wAMl~aCjz2V$+#KIz9GV6}|S-*>u)kIs=CH z!NBzVD6~jAhqdzyo1cefbGd0IzOfVP+G~US^g>pn&V6aGW zshm)zcnds$wfM#b=n?T$kjDPTjr^C3{~>qH3RH$TG5|6u31FlXlTL+wIWms&<6N*m z)ceYf{BbV!Kja#VlQCXv?0+@-+m_fpYt!$x6)(OUAEb%h&J^2vyrd%>0+BR#1?-6~ zcd80wyp9hl9WE%1XTgo5)jSkHnjq~K0o zaR1zLvwgjpo4SGXyiAzNZk|qP)@@W(ad8qo*EKeqx+Unq(sQkyl3Q|LTFyUMsU3XM z6FPcDFu7qhc(x}!t`Yi{-x-_PefYF`(G*`*!JYY=wl07@{JdQl3ObRbacUE*mr|$8empDsRfc}}LssaqRO6fh2 zji}rHNOF6Rs53fk=T8Xw)4Dkx&{fBg*|imDP$HMCN_iD+a1=N?x`|aJ^xyx2)+=6~9}zy`)q$VyNB?PiPdwe+(S9+NXFazAH2P1@Yp zo9*eKc{*HoqY&09Ve2-2A}f9InqSR_$SDEG=Fx$ll~LzI8v^$qQtuXxkcob5B7jv! zg~OiC^uJlxb~RR&l&(pbxI0e%pkfU%r;Yf=4P%$v2DBe?k~dUjydji_x9V9KraVtN zbubR91{O)_9`e&0!ACoo4TYa;#$P1}vYKy-hzWT}IlvNCX&V)1@83`9 z9%AmYHJV217x~b&u|X|c+kYq9#aebOOu%u*Inb@p@WZ*&uPi>u%_nRKr?;55omhOW z7!c&hY~)ssZ%LVlv|jgm_k=H89#LqyRVCTk9O`bMXmUa(Y-wYrfj+nrdeMp!w z)P#38QgXcy1g1+Toq;|az<4v-iqh$p+UEntF{zgAf6z=F-pQUVt~k-Yut&7upj0$i zR{pGNBb@t^9^jC?y6E!RHp%Z}!%!^pp0vy9rri+b4Hy zP#?V&*i}UyNVrt~yg9HZ`HImU8?SxuWscr-)21$k^>K0hnEZ7z2|1ncj>3L@8l@_8 z|L&qfQ-|p$%=5nYkN`Euq?;J^h6^q1>1p|n)?`4NrZ}IF(;P+mTsm7j6*oWA&sccv zS9{H1xZQtJx#$LaVw(~+2zZDwdc5CbnQ|-5;N7nMgxssyZB_w;f~jjk^=~t=EA@!Y z&-616iY|`VtDUn91bokGbPZRXTy3lp_O%LTdMP2F8!q?!aZ5!A95Iq`>e^;^d*I|x z37nDKz;wTsDq;W8z7y9k*7~T_j83su^QAmfAM_Mx9z5d%qm9XCTjmY8*9<<-!F`rc zZ)Ff}y{K05jLN#xMUJfYtuK46q#|JW>}Yk7Ouoa*U&Rltz+Py+JvAK?cwly4*+EZQ za;3z{;q)?}2-X=;MI{B+q@F} zqwkwsh7BvL3nu!l_gO6Z#g{ZyY%7hPs7}EvoVx-&GWNbNbWP?u8DFm&$%F*AO>f0}x@^2cajeJaqJpMTGo&;*piQ zqS_}er+jG^P5$c~gCU7Vf?W2~0$^J*5RLnFIJ%#xpUduww zoy`?HD)fO;?Zccg&b9?;wS0=^W4AIgzb5T;0{Z zt=Mn5@|Q5mV2xaTs80J$-k59t+;ye(Dt27oRG2OR+Od^C;@UGAxeX;u1YW~vA3R$mYm1qI8MG*jpR>Rf%3fi>YdvdDz--m8+u%Q0)-T`x|}q BASnO< literal 0 HcmV?d00001 diff --git a/bootstrap_subtheme/screenshot.png b/bootstrap_subtheme/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..568cf563b91493b02de28d4dd7d23ac412703ac6 GIT binary patch literal 54650 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�<;*Smy*d-q=&vr%&-Zz$u_ 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