1 @import "bootstrap/less/bootstrap";
2 @import url(http://fonts.googleapis.com/css?family=Lato);
4 @icon-font-path: 'fonts/';
5 @brand-primary: #a24689;
6 @brand-dark: darken(@brand-primary, 6%);
7 @brand-light: lighten(@brand-primary, 10%);
8 @brand-text: saturate(lighten(@brand-primary, 46%), 5%);
10 @headings-font-family: Lato, Arial, sans-serif;
12 @navbar-margin-bottom: 0;
14 @navbar-default-bg: white;
15 @navbar-default-border: 0;
17 // indent level for various items list e.g. dl, fields lists, ...
21 box-sizing: border-box;
44 color: @brand-primary;
45 background-color: transparent;
46 border-color: @brand-primary;
47 &:hover, &:focus, &:active {
49 background-color: @brand-primary;
50 border-color: @brand-primary;
55 .btn-outline-inverse {
57 background-color: transparent;
58 border-color: @brand-text;
59 &:hover, &:focus, &:active {
60 color: @brand-primary;
62 background-color: #fff;
71 .navbar-nav > li > a {
76 > a:hover:before, &.current a:before {
88 background: @brand-primary;
90 .transition(all 0.3s ease-out);
95 display: inline-block;
99 vertical-align: middle;
100 border-top: 4px solid @gray-light;
101 border-right: 4px solid transparent;
102 border-left: 4px solid transparent;
104 .dropdown-menu > li.current > a.current {
105 background-color: @brand-primary;
110 /* version switcher */
115 display: inline-block;
121 font-family: Lato, Arial, sans-serif;
123 text-decoration: none;
129 // FIXME: protocol-relative urls for remote but absolute for local (file://)?
131 display: inline-block;
134 background-image: url(odoo_logo_rgb.png);
135 background-repeat: no-repeat;
136 background-position: center center;
137 background-size: contain;
138 color: rgba(255, 255, 255, 0);
139 text-decoration: none;
142 text-decoration: none;
143 color: rgb(143, 143, 143);
144 font-family: Lato, Arial, sans-serif;
153 * Scrollspy and affixed enhanced navigation to highlight sections and secondary
154 * sections of docs content.
157 /* By default it's not affixed in mobile views, so undo that */
158 .sphinxsidebarwrapper.affix {
161 @media (min-width: @screen-sm-min) {
162 .sphinxsidebarwrapper {
167 /* Side navigation visibility changes */
168 .sphinxsidebarwrapper {
169 > .nav { // root (contains document categories), always show
171 // hide sub-everything by default
177 // sub-items of a current or active li are shown
183 /* Side navigation graphical styling */
185 @nav-spacing-increment: 5px;
186 @nav-hover-offset: 1px;
187 @nav-hover: @nav-spacing - @nav-hover-offset;
188 @nav-current-offset: 2px;
189 @nav-current: @nav-spacing - @nav-current-offset;
194 .sphinxsidebarwrapper {
203 /* First level of nav */
211 padding-left: @nav-spacing;
215 padding-left: @nav-spacing + @nav-spacing-increment;
217 .nav .nav .nav > li > a {
219 padding-left: @nav-spacing + 2*@nav-spacing-increment;
221 .nav .nav .nav .nav > li > a {
223 padding-left: @nav-spacing + 3*@nav-spacing-increment;
226 /* All levels of nav */
230 padding: 4px @nav-spacing;
234 padding-left: @nav-hover;
235 color: @brand-primary;
236 text-decoration: none;
237 background-color: transparent;
238 border-left: @nav-hover-offset solid @brand-primary;
242 // before scrollspy is applied, need to use current for docs
243 > .current > a, > .current:hover > a, > .current:focus > a,
244 > .active > a, > .active:hover > a, > .active:focus > a {
245 padding-left: @nav-current;
247 color: @brand-primary;
248 background-color: transparent;
249 border-left: @nav-current-offset solid @brand-primary;
253 > li > a:hover, > li > a:focus {
254 padding-left: @nav-hover + @nav-spacing-increment;
256 > .current > a, > .current:hover > a, > .current:focus > a,
257 > .active > a, > .active:hover > a, > .active:focus > a {
258 padding-left: @nav-current + @nav-spacing-increment;
262 padding-bottom: 10px;
269 > li > a:hover, > li > a:focus {
270 padding-left: @nav-hover + 2 * @nav-spacing-increment;
272 > .active > a, > .active:hover > a, > .active:focus > a {
273 padding-left: @nav-current + 2 * @nav-spacing-increment;
277 .nav .nav .nav .nav {
278 > li > a:hover, > li > a:focus {
279 padding-left: @nav-hover + 3 * @nav-spacing-increment;
281 > .active > a, > .active:hover > a, > .active:focus > a {
282 padding-left: @nav-current + 3 * @nav-spacing-increment;
286 /* github link for current document */
287 .sphinxsidebarwrapper > p {
288 margin: 5px 10px 10px;
292 text-decoration: none;
305 background: url(github-link.png) left bottom / 13px no-repeat;
308 background-position: left top;
314 /* Show and affix the side nav when space allows it */
315 @media (min-width: @screen-md-min) {
316 .sphinxsidebarwrapper {
317 .nav .nav > .active > ul {
320 /* Widen the fixed sidebar */
321 &.affix, &.affix-bottom {
325 position: fixed; /* Undo the static from mobile first approach */
329 position: absolute; /* Undo the static from mobile first approach */
331 &.affix-bottom > .nav, &.affix > .nav {
337 @media (min-width: @screen-lg-min) {
338 /* Widen the fixed sidebar again */
339 .sphinxsidebarwrapper.affix-bottom,
340 .sphinxsidebarwrapper.affix {
348 * Separated section of content at the bottom of all pages, save the homepage.
353 padding-bottom: 40px;
357 border-top: 1px solid #e5e5e5;
364 .docs-footer-links li {
368 .docs-footer-links li:first-child {
372 @media (min-width: 768px) {
378 // move [source] link to the right
384 dt:hover > a > .viewcode-link {
388 // either that or overwrite visit_attribution/depart_attribution
389 blockquote p.attribution:extend(blockquote footer) {}
393 font-size: floor((@font-size-base * 3.05));
398 font-size: @font-size-h1;
403 .body > .section > .section {
407 .literal:extend(code) {}
412 border: 1px solid @gray-lighter;
413 border-left-width: 5px;
416 .admonition-title:after {
420 // only "aphorisms" should have the same size as the admonition category
421 &.aphorism > .admonition-title + p,
422 &.exercise > .admonition-title + p {
423 display: inline-block;
427 font-family: @headings-font-family;
428 font-weight: @headings-font-weight;
429 line-height: @headings-line-height;
430 color: @headings-color;
432 font-size: @font-size-h4;
440 border-left-color: @brand-info;
441 > .admonition-title {
446 border-left-color: @brand-warning;
447 > .admonition-title {
448 color: @brand-warning;
452 border-left-color: @brand-danger;
453 > .admonition-title {
454 color: @brand-danger;
458 border-left-color: @gray-light;
459 > .admonition-title {
468 * Generated via Pygments
474 // don't break lines within words
478 .switchable .highlight.with-btn-clipboard pre {
479 // avoid copy button overlapping with even long lines
484 * ZeroClipboard styles
499 background-color: #fff;
500 border: 1px solid #e1e1e8;
501 border-radius: 0 4px 0 4px;
508 background-color: #ffffad;
509 .transition(background-color .5s linear);
520 // Reinstate dd indent, looks horrible and illegible otherwise
521 margin-left: @item-indent;
524 // By default there's (browser) padding on ``ul`` so lists of >1 field are
525 // nicely separated from the section name (e.g. ``Parameters``) but single
526 // fields/items are stuck to it and look horrible. Make everything neatly-ish
527 // aligned. Other option: half and half so list bullets are aligned to text
528 // instead of text to text
530 padding-left: @item-indent;
532 padding-left: @item-indent;
539 // naming collision, rST generates .container nodes with completely different
540 // semantics so go away
541 .section .container {
547 // lighten js namespace/class name
560 margin-bottom: 0.5em;
566 display: -webkit-flex;
568 -webkit-flex-wrap: wrap;
581 color: @link-color !important;
583 margin: 3px !important;
585 background-color: @gray-lighter;
590 // STRIPE-STYLE PAGES
596 // === columning only on medium+ ===
597 @media (min-width: @screen-md-min) {
600 .section > .force-left {
606 .section > .force-right,
607 .section > [class*=highlight] {
612 // fullwidth elements
613 .section > h1, .section > h2, .section > h3, .section > h4, .section > h5,
615 background-color: fadeout(@body-bg, 30%);
617 .section > h1, .section > h2, .section > h3, .section > h4, .section > h5,
618 .section > h6, .section > .section {
635 border-left: 1px solid @gray-light;
640 // but allow additional line-breaks between "words" to avoid overflow
641 white-space: pre-wrap;
647 width: auto !important;
648 float: none !important;
651 display: -webkit-flex;
653 -webkit-justify-content: flex-end;
654 justify-content: flex-end;
663 background-color: #0f131a;
665 border: 1px solid #333;
666 border-left-width: 0;
669 border-left-width: 1px;
670 border-radius: 5px 0 0 5px;
673 border-radius: 0 5px 5px 0;
676 background-color: #222;
679 background-color: #333;
684 // === show/hide code snippets ===
686 .switchable > .highlight {
689 // must be final rule of page
690 .only-python, .highlight-python > .highlight {