1 /* 2 * rtd.css 3 * ~~~~~~~~~~~~~~~ 4 * 5 * Sphinx stylesheet -- sphinxdoc theme. Originally created by 6 * Armin Ronacher for Werkzeug. 7 * 8 * Customized for ReadTheDocs by Eric Pierce & Eric Holscher 9 * 10 * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS. 11 * :license: BSD, see LICENSE for details. 12 * 13 */ 14 15 /* RTD colors 16 * light blue: {{ theme_light_color }} 17 * medium blue: {{ theme_medium_color }} 18 * dark blue: {{ theme_dark_color }} 19 * dark grey: {{ theme_grey_color }} 20 * 21 * medium blue hover: {{ theme_medium_color_hover }}; 22 * green highlight: {{ theme_green_highlight }} 23 * light blue (project bar): {{ theme_light_color }} 24 */ 25 26 @import url("basic.css"); 27 28 /* PAGE LAYOUT -------------------------------------------------------------- */ 29 30 body { 31 font: 100%/1.5 "ff-meta-web-pro-1","ff-meta-web-pro-2",Arial,"Helvetica Neue",sans-serif; 32 text-align: center; 33 color: black; 34 background-color: {{ theme_background }}; 35 padding: 0; 36 margin: 0; 37 } 38 39 div.document { 40 text-align: left; 41 background-color: {{ theme_light_color }}; 42 } 43 44 div.bodywrapper { 45 background-color: {{ theme_white }}; 46 border-left: 1px solid {{ theme_lighter_gray }}; 47 border-bottom: 1px solid {{ theme_lighter_gray }}; 48 margin: 0 0 0 16em; 49 } 50 51 div.body { 52 margin: 0; 53 padding: 0.5em 1.3em; 54 max-width: 55em; 55 min-width: 20em; 56 } 57 58 div.related { 59 font-size: 1em; 60 background-color: {{ theme_background }}; 61 } 62 63 div.documentwrapper { 64 float: left; 65 width: 100%; 66 background-color: {{ theme_light_color }}; 67 } 68 69 70 /* HEADINGS --------------------------------------------------------------- */ 71 72 h1 { 73 margin: 0; 74 padding: 0.7em 0 0.3em 0; 75 font-size: 1.5em; 76 line-height: 1.15; 77 color: {{ theme_h1 }}; 78 clear: both; 79 } 80 81 h2 { 82 margin: 2em 0 0.2em 0; 83 font-size: 1.35em; 84 padding: 0; 85 color: {{ theme_h2 }}; 86 } 87 88 h3 { 89 margin: 1em 0 -0.3em 0; 90 font-size: 1.2em; 91 color: {{ theme_h3 }}; 92 } 93 94 div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a { 95 color: black; 96 } 97 98 h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor { 99 display: none; 100 margin: 0 0 0 0.3em; 101 padding: 0 0.2em 0 0.2em; 102 color: {{ theme_gray_a }} !important; 103 } 104 105 h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, 106 h5:hover a.anchor, h6:hover a.anchor { 107 display: inline; 108 } 109 110 h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover, 111 h5 a.anchor:hover, h6 a.anchor:hover { 112 color: {{ theme_gray_7 }}; 113 background-color: {{ theme_dirty_white }}; 114 } 115 116 117 /* LINKS ------------------------------------------------------------------ */ 118 119 /* Normal links get a pseudo-underline */ 120 a { 121 color: {{ theme_link_color }}; 122 text-decoration: none; 123 border-bottom: 1px solid {{ theme_link_color_decoration }}; 124 } 125 126 /* Links in sidebar, TOC, index trees and tables have no underline */ 127 .sphinxsidebar a, 128 .toctree-wrapper a, 129 .indextable a, 130 #indices-and-tables a { 131 color: {{ theme_dark_gray }}; 132 text-decoration: none; 133 border-bottom: none; 134 } 135 136 /* Most links get an underline-effect when hovered */ 137 a:hover, 138 div.toctree-wrapper a:hover, 139 .indextable a:hover, 140 #indices-and-tables a:hover { 141 color: {{ theme_black }}; 142 text-decoration: none; 143 border-bottom: 1px solid {{ theme_black }}; 144 } 145 146 /* Footer links */ 147 div.footer a { 148 color: {{ theme_background_text_link }}; 149 text-decoration: none; 150 border: none; 151 } 152 div.footer a:hover { 153 color: {{ theme_medium_color_link_hover }}; 154 text-decoration: underline; 155 border: none; 156 } 157 158 /* Permalink anchor (subtle grey with a red hover) */ 159 div.body a.headerlink { 160 color: {{ theme_lighter_gray }}; 161 font-size: 1em; 162 margin-left: 6px; 163 padding: 0 4px 0 4px; 164 text-decoration: none; 165 border: none; 166 } 167 div.body a.headerlink:hover { 168 color: {{ theme_negative_text }}; 169 border: none; 170 } 171 172 173 /* NAVIGATION BAR --------------------------------------------------------- */ 174 175 div.related ul { 176 height: 2.5em; 177 } 178 179 div.related ul li { 180 margin: 0; 181 padding: 0.65em 0; 182 float: left; 183 display: block; 184 color: {{ theme_background_link_half }}; /* For the >> separators */ 185 font-size: 0.8em; 186 } 187 188 div.related ul li.right { 189 float: right; 190 margin-right: 5px; 191 color: transparent; /* Hide the | separators */ 192 } 193 194 /* "Breadcrumb" links in nav bar */ 195 div.related ul li a { 196 order: none; 197 background-color: inherit; 198 font-weight: bold; 199 margin: 6px 0 6px 4px; 200 line-height: 1.75em; 201 color: {{ theme_background_link }}; 202 text-shadow: 0 1px rgba(0, 0, 0, 0.5); 203 padding: 0.4em 0.8em; 204 border: none; 205 border-radius: 3px; 206 } 207 /* previous / next / modules / index links look more like buttons */ 208 div.related ul li.right a { 209 margin: 0.375em 0; 210 background-color: {{ theme_medium_color_hover }}; 211 text-shadow: 0 1px rgba(0, 0, 0, 0.5); 212 border-radius: 3px; 213 -webkit-border-radius: 3px; 214 -moz-border-radius: 3px; 215 } 216 /* All navbar links light up as buttons when hovered */ 217 div.related ul li a:hover { 218 background-color: {{ theme_medium_color }}; 219 color: {{ theme_white }}; 220 text-decoration: none; 221 border-radius: 3px; 222 -webkit-border-radius: 3px; 223 -moz-border-radius: 3px; 224 } 225 /* Take extra precautions for tt within links */ 226 a tt, 227 div.related ul li a tt { 228 background: inherit !important; 229 color: inherit !important; 230 } 231 232 233 /* SIDEBAR ---------------------------------------------------------------- */ 234 235 div.sphinxsidebarwrapper { 236 padding: 0; 237 } 238 239 div.sphinxsidebar { 240 margin: 0; 241 margin-left: -100%; 242 float: left; 243 top: 3em; 244 left: 0; 245 padding: 0 1em; 246 width: 14em; 247 font-size: 1em; 248 text-align: left; 249 background-color: {{ theme_light_color }}; 250 } 251 252 div.sphinxsidebar img { 253 max-width: 12em; 254 } 255 256 div.sphinxsidebar h3, div.sphinxsidebar h4 { 257 margin: 1.2em 0 0.3em 0; 258 font-size: 1em; 259 padding: 0; 260 color: {{ theme_gray_2 }}; 261 font-family: "ff-meta-web-pro-1", "ff-meta-web-pro-2", "Arial", "Helvetica Neue", sans-serif; 262 } 263 264 div.sphinxsidebar h3 a { 265 color: {{ theme_grey_color }}; 266 } 267 268 div.sphinxsidebar ul, 269 div.sphinxsidebar p { 270 margin-top: 0; 271 padding-left: 0; 272 line-height: 130%; 273 background-color: {{ theme_light_color }}; 274 } 275 276 /* No bullets for nested lists, but a little extra indentation */ 277 div.sphinxsidebar ul ul { 278 list-style-type: none; 279 margin-left: 1.5em; 280 padding: 0; 281 } 282 283 /* A little top/bottom padding to prevent adjacent links' borders 284 * from overlapping each other */ 285 div.sphinxsidebar ul li { 286 padding: 1px 0; 287 } 288 289 /* A little left-padding to make these align with the ULs */ 290 div.sphinxsidebar p.topless { 291 padding-left: 0 0 0 1em; 292 } 293 294 /* Make these into hidden one-liners */ 295 div.sphinxsidebar ul li, 296 div.sphinxsidebar p.topless { 297 white-space: nowrap; 298 overflow: hidden; 299 } 300 /* ...which become visible when hovered */ 301 div.sphinxsidebar ul li:hover, 302 div.sphinxsidebar p.topless:hover { 303 overflow: visible; 304 } 305 306 /* Search text box and "Go" button */ 307 #searchbox { 308 margin-top: 2em; 309 margin-bottom: 1em; 310 background: {{ theme_dirtier_white }}; 311 padding: 0.5em; 312 border-radius: 6px; 313 -moz-border-radius: 6px; 314 -webkit-border-radius: 6px; 315 } 316 #searchbox h3 { 317 margin-top: 0; 318 } 319 320 /* Make search box and button abut and have a border */ 321 input, 322 div.sphinxsidebar input { 323 border: 1px solid {{ theme_gray_9 }}; 324 float: left; 325 } 326 327 /* Search textbox */ 328 input[type="text"] { 329 margin: 0; 330 padding: 0 3px; 331 height: 20px; 332 width: 144px; 333 border-top-left-radius: 3px; 334 border-bottom-left-radius: 3px; 335 -moz-border-radius-topleft: 3px; 336 -moz-border-radius-bottomleft: 3px; 337 -webkit-border-top-left-radius: 3px; 338 -webkit-border-bottom-left-radius: 3px; 339 } 340 /* Search button */ 341 input[type="submit"] { 342 margin: 0 0 0 -1px; /* -1px prevents a double-border with textbox */ 343 height: 22px; 344 color: {{ theme_dark_gray }}; 345 background-color: {{ theme_light_color }}; 346 padding: 1px 4px; 347 font-weight: bold; 348 border-top-right-radius: 3px; 349 border-bottom-right-radius: 3px; 350 -moz-border-radius-topright: 3px; 351 -moz-border-radius-bottomright: 3px; 352 -webkit-border-top-right-radius: 3px; 353 -webkit-border-bottom-right-radius: 3px; 354 } 355 input[type="submit"]:hover { 356 color: {{ theme_white }}; 357 background-color: {{ theme_green_highlight }}; 358 } 359 360 div.sphinxsidebar p.searchtip { 361 clear: both; 362 padding: 0.5em 0 0 0; 363 background: {{ theme_dirtier_white }}; 364 color: {{ theme_gray }}; 365 font-size: 0.9em; 366 } 367 368 /* Sidebar links are unusual */ 369 div.sphinxsidebar li a, 370 div.sphinxsidebar p a { 371 background: {{ theme_light_color }}; /* In case links overlap main content */ 372 border-radius: 3px; 373 -moz-border-radius: 3px; 374 -webkit-border-radius: 3px; 375 border: 1px solid transparent; /* To prevent things jumping around on hover */ 376 padding: 0 5px 0 5px; 377 } 378 div.sphinxsidebar li a:hover, 379 div.sphinxsidebar p a:hover { 380 color: {{ theme_black }}; 381 text-decoration: none; 382 border: 1px solid {{ theme_light_gray }}; 383 } 384 385 /* Tweak any link appearing in a heading */ 386 div.sphinxsidebar h3 a { 387 } 388 389 390 391 392 /* OTHER STUFF ------------------------------------------------------------ */ 393 394 cite, code, tt { 395 font-family: 'Consolas', 'Deja Vu Sans Mono', 396 'Bitstream Vera Sans Mono', monospace; 397 font-size: 0.95em; 398 letter-spacing: 0.01em; 399 } 400 401 tt { 402 background-color: {{ theme_code_background }}; 403 color: {{ theme_dark_gray }}; 404 } 405 406 tt.descname, tt.descclassname, tt.xref { 407 border: 0; 408 } 409 410 hr { 411 border: 1px solid {{ theme_ruler }}; 412 margin: 2em; 413 } 414 415 pre, #_fontwidthtest { 416 font-family: 'Consolas', 'Deja Vu Sans Mono', 417 'Bitstream Vera Sans Mono', monospace; 418 margin: 1em 2em; 419 font-size: 0.95em; 420 letter-spacing: 0.015em; 421 line-height: 120%; 422 padding: 0.5em; 423 border: 1px solid {{ theme_lighter_gray }}; 424 background-color: {{ theme_code_background }}; 425 border-radius: 6px; 426 -moz-border-radius: 6px; 427 -webkit-border-radius: 6px; 428 } 429 430 pre a { 431 color: inherit; 432 text-decoration: underline; 433 } 434 435 td.linenos pre { 436 padding: 0.5em 0; 437 } 438 439 div.quotebar { 440 background-color: {{ theme_almost_white }}; 441 max-width: 250px; 442 float: right; 443 padding: 2px 7px; 444 border: 1px solid {{ theme_lighter_gray }}; 445 } 446 447 div.topic { 448 background-color: {{ theme_almost_white }}; 449 } 450 451 table { 452 border-collapse: collapse; 453 margin: 0 -0.5em 0 -0.5em; 454 } 455 456 table td, table th { 457 padding: 0.2em 0.5em 0.2em 0.5em; 458 } 459 460 461 /* ADMONITIONS AND WARNINGS ------------------------------------------------- */ 462 463 /* Shared by admonitions, warnings and sidebars */ 464 div.admonition, 465 div.warning, 466 div.sidebar { 467 font-size: 0.9em; 468 margin: 2em; 469 padding: 0; 470 /* 471 border-radius: 6px; 472 -moz-border-radius: 6px; 473 -webkit-border-radius: 6px; 474 */ 475 } 476 div.admonition p, 477 div.warning p, 478 div.sidebar p { 479 margin: 0.5em 1em 0.5em 1em; 480 padding: 0; 481 } 482 div.admonition pre, 483 div.warning pre, 484 div.sidebar pre { 485 margin: 0.4em 1em 0.4em 1em; 486 } 487 div.admonition p.admonition-title, 488 div.warning p.admonition-title, 489 div.sidebar p.sidebar-title { 490 margin: 0; 491 padding: 0.1em 0 0.1em 0.5em; 492 color: white; 493 font-weight: bold; 494 font-size: 1.1em; 495 text-shadow: 0 1px rgba(0, 0, 0, 0.5); 496 } 497 div.admonition ul, div.admonition ol, 498 div.warning ul, div.warning ol, 499 div.sidebar ul, div.sidebar ol { 500 margin: 0.1em 0.5em 0.5em 3em; 501 padding: 0; 502 } 503 504 505 /* Admonitions and sidebars only */ 506 div.admonition, div.sidebar { 507 border: 1px solid {{ theme_positive_dark }}; 508 background-color: {{ theme_positive_light }}; 509 } 510 div.admonition p.admonition-title, 511 div.sidebar p.sidebar-title { 512 background-color: {{ theme_positive_medium }}; 513 border-bottom: 1px solid {{ theme_positive_dark }}; 514 } 515 516 517 /* Warnings only */ 518 div.warning { 519 border: 1px solid {{ theme_negative_dark }}; 520 background-color: {{ theme_negative_light }}; 521 } 522 div.warning p.admonition-title { 523 background-color: {{ theme_negative_medium }}; 524 border-bottom: 1px solid {{ theme_negative_dark }}; 525 } 526 527 528 /* Sidebars only */ 529 div.sidebar { 530 max-width: 200px; 531 } 532 533 534 535 div.versioninfo { 536 margin: 1em 0 0 0; 537 border: 1px solid {{ theme_lighter_gray }}; 538 background-color: {{ theme_light_medium_color }}; 539 padding: 8px; 540 line-height: 1.3em; 541 font-size: 0.9em; 542 } 543 544 .viewcode-back { 545 font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', 546 'Verdana', sans-serif; 547 } 548 549 div.viewcode-block:target { 550 background-color: {{ theme_viewcode_bg }}; 551 border-top: 1px solid {{ theme_viewcode_border }}; 552 border-bottom: 1px solid {{ theme_viewcode_border }}; 553 } 554 555 dl { 556 margin: 1em 0 2.5em 0; 557 } 558 559 /* Highlight target when you click an internal link */ 560 dt:target { 561 background: {{ theme_highlight }}; 562 } 563 /* Don't highlight whole divs */ 564 div.highlight { 565 background: transparent; 566 } 567 /* But do highlight spans (so search results can be highlighted) */ 568 span.highlight { 569 background: {{ theme_highlight }}; 570 } 571 572 div.footer { 573 background-color: {{ theme_background }}; 574 color: {{ theme_background_text }}; 575 padding: 0 2em 2em 2em; 576 clear: both; 577 font-size: 0.8em; 578 text-align: center; 579 } 580 581 p { 582 margin: 0.8em 0 0.5em 0; 583 } 584 585 .section p img { 586 margin: 1em 2em; 587 } 588 589 590 /* MOBILE LAYOUT -------------------------------------------------------------- */ 591 592 @media screen and (max-width: 600px) { 593 594 h1, h2, h3, h4, h5 { 595 position: relative; 596 } 597 598 ul { 599 padding-left: 1.75em; 600 } 601 602 div.bodywrapper a.headerlink, #indices-and-tables h1 a { 603 color: {{ theme_almost_dirty_white }}; 604 font-size: 80%; 605 float: right; 606 line-height: 1.8; 607 position: absolute; 608 right: -0.7em; 609 visibility: inherit; 610 } 611 612 div.bodywrapper h1 a.headerlink, #indices-and-tables h1 a { 613 line-height: 1.5; 614 } 615 616 pre { 617 font-size: 0.7em; 618 overflow: auto; 619 word-wrap: break-word; 620 white-space: pre-wrap; 621 } 622 623 div.related ul { 624 height: 2.5em; 625 padding: 0; 626 text-align: left; 627 } 628 629 div.related ul li { 630 clear: both; 631 color: {{ theme_dark_color }}; 632 padding: 0.2em 0; 633 } 634 635 div.related ul li:last-child { 636 border-bottom: 1px dotted {{ theme_medium_color }}; 637 padding-bottom: 0.4em; 638 margin-bottom: 1em; 639 width: 100%; 640 } 641 642 div.related ul li a { 643 color: {{ theme_dark_color }}; 644 padding-right: 0; 645 } 646 647 div.related ul li a:hover { 648 background: inherit; 649 color: inherit; 650 } 651 652 div.related ul li.right { 653 clear: none; 654 padding: 0.65em 0; 655 margin-bottom: 0.5em; 656 } 657 658 div.related ul li.right a { 659 color: {{ theme_white }}; 660 padding-right: 0.8em; 661 } 662 663 div.related ul li.right a:hover { 664 background-color: {{ theme_medium_color }}; 665 } 666 667 div.body { 668 clear: both; 669 min-width: 0; 670 word-wrap: break-word; 671 } 672 673 div.bodywrapper { 674 margin: 0 0 0 0; 675 } 676 677 div.sphinxsidebar { 678 float: none; 679 margin: 0; 680 width: auto; 681 } 682 683 div.sphinxsidebar input[type="text"] { 684 height: 2em; 685 line-height: 2em; 686 width: 70%; 687 } 688 689 div.sphinxsidebar input[type="submit"] { 690 height: 2em; 691 margin-left: 0.5em; 692 width: 20%; 693 } 694 695 div.sphinxsidebar p.searchtip { 696 background: inherit; 697 margin-bottom: 1em; 698 } 699 700 div.sphinxsidebar ul li, div.sphinxsidebar p.topless { 701 white-space: normal; 702 } 703 704 .bodywrapper img { 705 display: block; 706 margin-left: auto; 707 margin-right: auto; 708 max-width: 100%; 709 } 710 711 div.documentwrapper { 712 float: none; 713 } 714 715 div.admonition, div.warning, pre, blockquote { 716 margin-left: 0em; 717 margin-right: 0em; 718 } 719 720 .body p img { 721 margin: 0; 722 } 723 724 #searchbox { 725 background: transparent; 726 } 727 728 .related:not(:first-child) li { 729 display: none; 730 } 731 732 .related:not(:first-child) li.right { 733 display: block; 734 } 735 736 div.footer { 737 padding: 1em; 738 } 739 740 .rtd_doc_footer .badge { 741 float: none; 742 margin: 1em auto; 743 position: static; 744 } 745 746 .rtd_doc_footer .badge.revsys-inline { 747 margin-right: auto; 748 margin-bottom: 2em; 749 } 750 751 table.indextable { 752 display: block; 753 width: auto; 754 } 755 756 .indextable tr { 757 display: block; 758 } 759 760 .indextable td { 761 display: block; 762 padding: 0; 763 width: auto !important; 764 } 765 766 .indextable td dt { 767 margin: 1em 0; 768 } 769 770 ul.search { 771 margin-left: 0.25em; 772 } 773 774 ul.search li div.context { 775 font-size: 90%; 776 line-height: 1.1; 777 margin-bottom: 1; 778 margin-left: 0; 779 } 780 781 } 782