├── .DS_Store ├── .gitignore ├── CNAME ├── README.md ├── _config.yml ├── _data ├── .DS_Store ├── alumni_bsc.yml ├── alumni_members.yml ├── alumni_msc.yml ├── alumni_visitors.yml ├── news.yml ├── pictures_Leiden.yml ├── publist.yml ├── students.yml └── team_members.yml ├── _includes ├── .DS_Store ├── analytics.html ├── footer.html ├── head.html ├── header.html └── news.html ├── _layouts ├── default.html ├── gridlay.html ├── homelay.html ├── page.html ├── piclay.html ├── post.html ├── publications.html ├── research.html ├── team.html └── textlay.html ├── _pages ├── .DS_Store ├── 404.md ├── Instrumente.md ├── aboutwebsite.md ├── allnews.md ├── home.md ├── openings.md ├── pictures.md ├── publications.md ├── research.md └── team.md ├── _plugins └── markdown.rb ├── _sass ├── .DS_Store ├── _bootstrap.scss └── bootstrap │ ├── _alerts.scss │ ├── _badges.scss │ ├── _bootswatch.scss │ ├── _breadcrumbs.scss │ ├── _button-groups.scss │ ├── _buttons.scss │ ├── _carousel.scss │ ├── _close.scss │ ├── _code.scss │ ├── _component-animations.scss │ ├── _dropdowns.scss │ ├── _forms.scss │ ├── _glyphicons.scss │ ├── _grid.scss │ ├── _input-groups.scss │ ├── _jumbotron.scss │ ├── _labels.scss │ ├── _list-group.scss │ ├── _media.scss │ ├── _mixins.scss │ ├── _modals.scss │ ├── _navbar.scss │ ├── _navs.scss │ ├── _normalize.scss │ ├── _pager.scss │ ├── _pagination.scss │ ├── _panels.scss │ ├── _popovers.scss │ ├── _print.scss │ ├── _progress-bars.scss │ ├── _responsive-embed.scss │ ├── _responsive-utilities.scss │ ├── _scaffolding.scss │ ├── _tables.scss │ ├── _theme.scss │ ├── _thumbnails.scss │ ├── _tooltip.scss │ ├── _type.scss │ ├── _utilities.scss │ ├── _variables copy.scss │ ├── _variables.scss │ ├── _wells.scss │ └── mixins │ ├── _alerts.scss │ ├── _background-variant.scss │ ├── _border-radius.scss │ ├── _buttons.scss │ ├── _center-block.scss │ ├── _clearfix.scss │ ├── _forms.scss │ ├── _gradients.scss │ ├── _grid-framework.scss │ ├── _grid.scss │ ├── _hide-text.scss │ ├── _image.scss │ ├── _labels.scss │ ├── _list-group.scss │ ├── _nav-divider.scss │ ├── _nav-vertical-align.scss │ ├── _opacity.scss │ ├── _pagination.scss │ ├── _panels.scss │ ├── _progress-bar.scss │ ├── _reset-filter.scss │ ├── _reset-text.scss │ ├── _resize.scss │ ├── _responsive-visibility.scss │ ├── _size.scss │ ├── _tab-focus.scss │ ├── _table-row.scss │ ├── _text-emphasis.scss │ ├── _text-overflow.scss │ └── _vendor-prefixes.scss ├── css └── main.scss ├── downloads ├── Call+for+proposals+Veni+2021+-+ENG.pdf ├── GeneralPostdoc_2019_v01.pdf ├── PD.pdf ├── PHD1.pdf ├── PHD2.pdf ├── PPMS_PhD_2019_v01.pdf └── h2020-wp1820-msca_en.pdf ├── favicon.ico ├── fonts ├── glyphicons-halflings-regular.eot ├── glyphicons-halflings-regular.svg ├── glyphicons-halflings-regular.ttf ├── glyphicons-halflings-regular.woff └── glyphicons-halflings-regular.woff2 ├── images ├── .DS_Store ├── Group05022015.jpg ├── Group05022015_red.jpg ├── Group2015.png ├── Group2015_red.jpg ├── Logos_h.jpg ├── News_M2PG.png ├── News_Maarten.png ├── bio-photo.jpg ├── dummy.png ├── favicon.ico ├── inst │ ├── .DS_Store │ ├── DomePlan.jpg │ ├── STM4.jpg │ ├── build.jpg │ ├── domebig.jpg │ ├── domebuild.jpg │ ├── domescrew.jpg │ ├── dometest.jpg │ └── tama.jpeg ├── logo1.png ├── logo2.png ├── logopic │ ├── .DS_Store │ ├── LMU_logo.png │ ├── Logo_ERC.jpg │ ├── Logo_Leiden.jpg │ ├── Logo_NWO.jpg │ ├── Logo_Nanofront.jpg │ ├── SuperC.jpg │ ├── SuperC.png │ ├── SuperC_logo.png │ ├── Tschira.png │ ├── logo-2.svg │ └── superc-logo.svg ├── mm-browser-mockups.png ├── mm-layout-examples.png ├── newspic │ ├── .DS_Store │ ├── Contest.jpg │ ├── DomeNews.png │ ├── LCposter.jpg │ ├── NewsNP.png │ ├── SFnews.png │ ├── Saphireheadline.jpeg │ ├── ShotnoiseEditor.png │ ├── SmartTip.png │ ├── amp.PNG │ ├── doohee_prize.png │ ├── erclogo.png │ ├── order.png │ └── scesprizes.jpg ├── picpic │ ├── .DS_Store │ ├── Gallery │ │ ├── .DS_Store │ │ ├── 20150918_145800.jpg │ │ ├── DSC_0030.jpg │ │ ├── DSC_0051.jpg │ │ ├── DSC_0116.jpg │ │ ├── DSC_0119.jpg │ │ ├── DSC_0128.jpg │ │ ├── DSC_0139.jpg │ │ ├── DSC_0366.JPG │ │ ├── DSC_0368.JPG │ │ ├── DSC_0636.jpg │ │ ├── DSC_0683.jpg │ │ ├── DSC_0696.jpg │ │ ├── DSC_0757.jpg │ │ ├── Group05022015.jpg │ │ ├── IMG_4334.jpg │ │ ├── IMG_4376.jpg │ │ ├── tamagochi.jpg │ │ └── tmp2-2.jpg │ ├── WebpageCornell.jpg │ ├── WebpageCornell_red.jpg │ ├── WebpageETH.jpg │ ├── WebpageETH_red.jpg │ ├── WebpageLeiden.jpg │ ├── WebpageLeiden2.jpg │ ├── WebpageLeiden_red.jpg │ ├── WebpageSTA.jpg │ └── WebpageSTA_red.jpg ├── pubpic │ ├── BSCCO_noise.png │ ├── BSCCOgap.png │ ├── Direct.png │ ├── DomePub.png │ ├── Fano.png │ ├── Mott_phase_sep.jpg │ ├── Pairs3.png │ ├── PbSpub.png │ ├── Pub_327.png │ ├── Pub_BCl.png │ ├── Pub_CeCoIn5.png │ ├── Pub_FP.png │ ├── Pub_HFSC.png │ ├── Pub_LiFeAs.png │ ├── Pub_M2PG.png │ ├── Pub_hBN.png │ ├── Pub_nemat1.png │ ├── Pub_nemat2b.png │ ├── SCAUweb copy.jpg │ ├── SCAUweb.jpg │ ├── SFpub.png │ ├── STS_news.png │ ├── ShotNoise.png │ ├── SmartPub.png │ ├── TBG_ARPES.png │ ├── TBG_SL.png │ ├── TIBB.png │ ├── TiNHigh.png │ ├── YSR.png │ ├── dummy.png │ └── imageaward_edited.png ├── respic │ ├── STM.png │ ├── STMHead.png │ ├── SciPost.png │ ├── SmartTip.png │ ├── SpinFluc.png │ ├── layers_fft.gif │ ├── layers_fft.jpg │ ├── layers_fft_red.gif │ ├── layers_real.gif │ ├── layers_real.jpg │ └── layers_real_red.gif ├── slider7001400 │ ├── .DS_Store │ ├── BSCCO2gap2.jpg │ ├── BSCCO2gap2.png │ ├── FabSCAU.jpg │ ├── Fig_Science_Web.jpg │ ├── Group2015_red.jpg │ ├── Logos_h.jpg │ ├── MottMap.jpg │ ├── NoiseCover2.jpg │ ├── QPI_Rh.jpg │ ├── STS.jpg │ ├── SaphireSTM2.jpg │ ├── SmartTipSide.jpg │ ├── cake_web.jpg │ ├── dinner2.jpg │ ├── dinner3.jpg │ ├── groupDinner.jpg │ ├── lab.jpg │ ├── logos.jpg │ ├── tamagochi.jpg │ └── topo214.png └── teampic │ ├── .DS_Store │ ├── Amber.png │ ├── DSC_1032.JPG │ ├── Damianos.jpg │ ├── Doohee2.jpg │ ├── Freek.jpg │ ├── Jacky.jpg │ ├── Jiasen.png │ ├── Jinwon.jpg │ ├── Kaveh.png │ ├── Kees.jpg │ ├── Koen.jpg │ ├── Maarten.png │ ├── Maialen.png │ ├── MengLi.jpg │ ├── Milan.jpg │ ├── Milan1.jpg │ ├── Photo Vincent.jpg │ ├── Photo_Irene.jpg │ ├── Ram.png │ ├── Sanghun.jpg │ ├── Sato.jpeg │ ├── Thomas.jpg │ ├── Vitaly.JPG │ ├── Webfoto_HS2.jpg │ ├── Yanda.png │ ├── hugo.jpg │ ├── ilse.jpeg │ ├── irene.jpg │ ├── jaroslav.png │ ├── rock.jpg │ ├── tjeruk.jpg │ ├── verdoes.jpg │ └── website_pic_willem.jpg ├── js ├── bootstrap.js ├── bootstrap.min.js └── npm.js ├── research 2.md └── research.md /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mpa139/allanlab/8c13f8265ea5742cea711f32a2192df6b725e32f/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .sass-cache 3 | .jekyll-metadata 4 | -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | www.allanlab.org -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Allan Lab Website 2 | 3 | This is the website of our academic research group at Leiden University. 4 | 5 | This website is powered by Jekyll and some Bootstrap, Bootwatch. We tried to make it simple yet adaptable, so that it is easy for you to use it as a template. Plese feel free to copy and modify for your own purposes. You don't have to link to us or mention us (but of course we appreciate it). 6 | 7 | Go to *aboutwebsite.md* to learn how to copy and modidy this page for your purpose. 8 | 9 | 10 | Copyright Allan Lab. Code released under the MIT License. 11 | 12 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | # Welcome to Jekyll! 2 | # 3 | # This config file is meant for settings that affect your whole blog, values 4 | # which you are expected to set up once and rarely need to edit after that. 5 | # For technical reasons, this file is *NOT* reloaded automatically when you use 6 | # 'jekyll serve'. If you change this file, please restart the server process. 7 | 8 | # Site settings 9 | title: The Allan Lab 10 | email: your-email@domain.com 11 | description: > # this means to ignore newlines until "baseurl:" 12 | Website of the AllanLab. 13 | baseurl: "" 14 | url: "" 15 | 16 | include: 17 | - .htaccess 18 | - _pages 19 | 20 | sass: 21 | sass_dir: _sass 22 | 23 | # Conversion 24 | markdown: kramdown 25 | highlighter: rouge 26 | lsi: false 27 | excerpt_separator: "\n\n" 28 | incremental: false 29 | 30 | 31 | 32 | # Markdown Processing 33 | kramdown: 34 | input: GFM 35 | hard_wrap: false 36 | auto_ids: true 37 | footnote_nr: 1 38 | entity_output: as_char 39 | toc_levels: 1..6 40 | smart_quotes: lsquo,rsquo,ldquo,rdquo 41 | enable_coderay: false 42 | parse_block_html: true # default for kramdown is false. This will enable using Markdown links 43 | -------------------------------------------------------------------------------- /_data/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mpa139/allanlab/8c13f8265ea5742cea711f32a2192df6b725e32f/_data/.DS_Store -------------------------------------------------------------------------------- /_data/alumni_bsc.yml: -------------------------------------------------------------------------------- 1 | - name: Vishnu Saj (IIT), Spring 2017 2 | 3 | - name: Arjo Andringa, Spring 2016 4 | 5 | - name: Joey Braspenning, Spring 2017 6 | 7 | - name: Tjerk Benschop, Summer 2017 8 | 9 | - name: Daniëlle van Klink, Spring 2016 10 | 11 | - name: Margot Leemker, Spring 2017 12 | 13 | - name: Sietske Lensen, Spring 2017 14 | 15 | - name: Jasper van Egeraat, Spring 2018 16 | 17 | - name: Ringo Groenewegen, Spring 2018 18 | 19 | - name: Amber Vervloet, Spring 2019 20 | 21 | - name: Pascal de Jong, Spring 2021 22 | 23 | - name: João van der Ven, Spring 2022 24 | 25 | - name: Sebastian Bos, Spring 2022 26 | 27 | - name: J.C. Steenbergen, Spring 2022 28 | 29 | - name: Marijn van der Horst, Spring 2022 -------------------------------------------------------------------------------- /_data/alumni_msc.yml: -------------------------------------------------------------------------------- 1 | - name: Maarten Leeuwenhoek, Spring 2015 2 | 3 | - name: Koen M Bastiaans, Spring 2015 4 | 5 | - name: Farshaad Hoeseni, Fall 2015 6 | 7 | - name: Oliver Ostojic, Spring 2016 8 | 9 | - name: Tjerk Benschop, Spring 2016 10 | 11 | - name: Bert Visscher, Fall 2017 12 | 13 | - name: Ahmad Jamalzada, Fall 2017 14 | 15 | - name: Corne Koks, Fall 2018 16 | 17 | - name: Damian Bouwmeester (TU Delft), Summer 2019 18 | 19 | - name: Rosanne Wijgman (RU), Fall 2019 20 | 21 | - name: Rebecca Gharibaan (TU Delft), Fall 2020 22 | 23 | - name: Rémi Claessen, Fall 2020 24 | 25 | - name: Amber Mozes (TU Delft), Fall 2020 26 | 27 | - name: Evert Stolte, Spring 2021 28 | 29 | - name: Sergio Barquero Pierantoni, Spring 2021 30 | 31 | - name: Maialen Larrazabal Ortego, Spring 2021 32 | 33 | - name: Allard Nieuwesteeg, Spring 2021 34 | 35 | - name: Thijs van den Munckhof, Spring 2022 36 | 37 | - name: Ilse Kuijf, Spring 2023 38 | 39 | - name: Mats Brinkman, Fall 2023 40 | 41 | - name: Suzanne van Noordt, Fall 2023 42 | 43 | - name: Mats Brinkman, Fall 2023 44 | -------------------------------------------------------------------------------- /_data/alumni_visitors.yml: -------------------------------------------------------------------------------- 1 | - name: Nikolaos Iliopoulos, Spring 2016 2 | 3 | - name: Vitaly Fedoseev, all of 2016 4 | 5 | - name: Alexander Vanstone (Imperial), Spring 2016 6 | 7 | - name: Ramakrishna Aluru, Summer 2018 8 | 9 | - name: Changwei Zou (Tsinghua), Spring 2018 10 | 11 | - name: Kemal Demir (Bilkent), Summer 2019 12 | 13 | - name: Vincent Stalman, 2019 14 | 15 | - name: Jaroslav Sawitsch, 2024 -------------------------------------------------------------------------------- /_data/pictures_Leiden.yml: -------------------------------------------------------------------------------- 1 | - title: pic1_description 2 | image: DSC_0366.JPG 3 | - title: pic1_description 4 | image: DSC_0368.JPG 5 | - title: pic_description 6 | image: 20150918_145800.jpg 7 | - title: pic1_description 8 | image: DSC_0030.jpg 9 | - title: pic1_description 10 | image: DSC_0051.jpg 11 | - title: pic1_description 12 | image: DSC_0116.jpg 13 | - title: pic1_description 14 | image: DSC_0119.jpg 15 | - title: pic1_description 16 | image: DSC_0128.jpg 17 | - title: pic1_description 18 | image: DSC_0139.jpg 19 | - title: pic1_description 20 | image: DSC_0636.jpg 21 | - title: pic1_description 22 | image: DSC_0683.jpg 23 | - title: pic1_description 24 | image: DSC_0696.jpg 25 | - title: pic1_description 26 | image: DSC_0757.jpg 27 | - title: pic1_description 28 | image: IMG_4334.jpg 29 | - title: pic1_description 30 | image: IMG_4376.jpg 31 | - title: pic1_description 32 | image: tamagochi.jpg 33 | - title: pic1_description 34 | image: tmp2-2.jpg 35 | -------------------------------------------------------------------------------- /_data/students.yml: -------------------------------------------------------------------------------- 1 | #- name: 2 | # photo: rock.jpg 3 | # info: 4 | # email: 5 | # number_educ: 6 | # education1: 7 | # education2: 8 | # education3: 9 | # education4: 10 | 11 | 12 | -------------------------------------------------------------------------------- /_data/team_members.yml: -------------------------------------------------------------------------------- 1 | - name: Milan P Allan 2 | photo: Milan1.jpg 3 | info: Associate professor, started Jan 2015 4 | email: milan.allan@gmail.com 5 | number_educ: 5 6 | education1: Master ETHZ, Diplomarbeit with J Osterwalder, University of Zurich 7 | education2: PhD St Andrews (while at Cornell University) with Felix Baumberger and JC Davis 8 | education3: Postdoc Cornell 9 | education4: ETH fellow at ETHZ with Andreas Wallraff 10 | education5: Bryan R. Coles Prize 2017 11 | 12 | - name: Jiasen Niu 13 | photo: Jiasen.png 14 | info: Leader Leiden Branch, started Oct 2020 15 | email: niu@physics.leidenuniv.nl 16 | number_educ: 2 17 | education1: PhD with Xi Lin and Jian Wei, Peking University 18 | education2: BSc Jilin University 19 | 20 | - name: Yudai Sato 21 | photo: Sato.jpeg 22 | info: Postdoc, started September 2023 23 | email: jwlee0421@postech.ac.kr 24 | number_educ: 2 25 | education1: PhD with [Yukio Hasegawa](https://www.issp.u-tokyo.ac.jp/maincontents/organization/labs/hasegawa_group_en.html) at the University of Tokyo 26 | education2: Master, University of Tokyo 27 | 28 | - name: Thomas Gozlinski 29 | photo: Thomas.jpg 30 | info: Akademischer Rat, since November 2023 31 | email: benschop@physics.leidenuniv.nl 32 | number_educ: 2 33 | education1: PhD, KIT, with [Wulf Wulfhekel](https://www.int.kit.edu/1941_701.php) 34 | education2: MSc KIT 35 | 36 | - name: Premakumar Yanda 37 | photo: Yanda.png 38 | info: Postdoc, since March 2025 39 | email: benschop@physics.leidenuniv.nl 40 | number_educ: 2 41 | education1: PhD, JNCASR, with A. Sundaresan 42 | education2: MSc, Andhra University 43 | 44 | - name: Amber Mozes 45 | photo: Amber.png 46 | info: PhD Student, started September 2021 47 | email: b 48 | number_educ: 2 49 | education1: Master Applied Physics, TU Delft 50 | education2: Casimir/Nanofront PhD fellowship 51 | education3: 52 | education4: 53 | 54 | - name: Maialen Ortego Larrazabal 55 | photo: Maialen.png 56 | info: PhD Student within a collaboration with the Swart Lab 57 | email: b 58 | number_educ: 2 59 | education1: Master Leiden University 60 | education2: BSc, University of the Basque Country 61 | education3: 62 | education4: 63 | 64 | - name: Sanghun Lee 이상헌 65 | photo: Sanghun.jpg 66 | info: PhD Student 67 | email: b 68 | number_educ: 2 69 | education1: Master Yonsei with [Doohee Cho](http://physicsyonsei.kr/en/people/professor?idx=48) 70 | education2: BSc, Yonsei University 71 | education3: 72 | education4: 73 | 74 | - name: Louw Feenstra 75 | photo: rock.jpg 76 | info: PhD Student, started November 2024 77 | email: b 78 | number_educ: 2 79 | education1: BSc, Leiden University 80 | education2: MSc, LMU Munich, with [Christian Pfleiderer](https://www.professoren.tum.de/en/pfleiderer-christian) 81 | education3: 82 | education4: 83 | 84 | - name: Kees van Oosten 85 | photo: DSC_1032.JPG 86 | info: FFine mechanical engineer (also associated with the FMD) 87 | email: Oosten@fmd.physics.leidenuniv.nl 88 | number_educ: 2 89 | education1: Leidse instrumentmakers School 90 | education2: Associate degree Mechanical Engineering, Hogeschool Arnhem Nijmegen 91 | 92 | - name: Hugo van Bohemen 93 | photo: hugo.jpg 94 | info: Fine mechanical engineer (also associated with the FMD) 95 | email: h.s.m.van.bohemen@physics.leidenuniv.nl 96 | number_educ: 1 97 | education1: Leidse Instrumentmakers School 98 | education2: 99 | 100 | - name: Ilse Kuijf 101 | photo: ilse.jpeg 102 | info: Shared PhD student in the [van Nieuwenburg group](https://evert.info) 103 | email: Bastiaans@Physics.LeidenUniv.nl 104 | number_educ: 1 105 | education1: Master Leiden University 106 | 107 | - name: "This could be you !" 108 | photo: rock.jpg 109 | info: See openings for more info 110 | email: milan.allan@gmail.com 111 | number_educ: 0 112 | education1: 113 | education2: 114 | education3: 115 | -------------------------------------------------------------------------------- /_includes/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mpa139/allanlab/8c13f8265ea5742cea711f32a2192df6b725e32f/_includes/.DS_Store -------------------------------------------------------------------------------- /_includes/analytics.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_includes/footer.html: -------------------------------------------------------------------------------- 1 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /_includes/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %} 6 | 7 | 8 | 9 | 10 | {% if jekyll.environment == 'production' %} 11 | {% include analytics.html %} 12 | {% endif %} 13 | 14 | 15 | -------------------------------------------------------------------------------- /_includes/header.html: -------------------------------------------------------------------------------- 1 | 25 | -------------------------------------------------------------------------------- /_includes/news.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |

News

4 | 5 | {% for article in site.data.news limit:9 %} 6 |

{{ article.date }}
{{ article.headline | markdownify}}

7 | {% endfor %} 8 | 9 |

... see all News

10 | 11 |
12 | -------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {% include head.html %} 5 | 6 | 7 | 8 | {% include header.html %} 9 | 10 |
11 |
12 | {{ content }} 13 |
14 |
15 | 16 | {% include footer.html %} 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /_layouts/gridlay.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | {{ content }} 6 |
7 | -------------------------------------------------------------------------------- /_layouts/homelay.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |

Welcome to the Allan Lab

7 | 8 | {{ content }} 9 |
10 |
11 | {% include news.html %} 12 |
13 | -------------------------------------------------------------------------------- /_layouts/page.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | 6 |
7 |

{{ page.title }}

8 |
9 | 10 |
11 | {{ content }} 12 |
13 | 14 |
15 | -------------------------------------------------------------------------------- /_layouts/piclay.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 | {{ content }} 7 |
8 | -------------------------------------------------------------------------------- /_layouts/post.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | 6 |
7 |

{{ page.title }}

8 | 9 |
10 | 11 |
12 | {{ content }} 13 |
14 | 15 |
16 | -------------------------------------------------------------------------------- /_layouts/publications.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | {{ content }} 6 |
7 | -------------------------------------------------------------------------------- /_layouts/research.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | {{ content }} 6 |
7 | -------------------------------------------------------------------------------- /_layouts/team.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | {{ content }} 6 |
7 | 8 | -------------------------------------------------------------------------------- /_layouts/textlay.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 |
5 | {{ content }} 6 |
7 | -------------------------------------------------------------------------------- /_pages/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mpa139/allanlab/8c13f8265ea5742cea711f32a2192df6b725e32f/_pages/.DS_Store -------------------------------------------------------------------------------- /_pages/404.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Page Not Found" 3 | layout: default 4 | excerpt: "Page not found. Your pixels are in another canvas." 5 | sitemap: false 6 | permalink: /404.html 7 | --- 8 | 9 | Sorry, but the page you were trying to view does not exist. 10 | 11 | -------------------------------------------------------------------------------- /_pages/Instrumente.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Instrumente" 3 | layout: textlay 4 | excerpt: "AOA" 5 | sitemap: false 6 | permalink: /instrumente.html 7 | --- 8 | 9 | 10 | ## Hier paar Bilder von laufenden und abgeschlossenen Projekten 11 | 12 | ### Rastertunnelmikroskop "Dome" 13 | ![image](/images/inst/DomePlan.jpg){:class="img-responsive"} 14 | ![image](/images/inst/domescrew.jpg){:class="img-responsive" width="75%"} 15 | ![image](/images/inst/build.jpg){:class="img-responsive" width="35%"} 16 | ![image](/images/inst/dometest.jpg){:class="img-responsive"} 17 | ![image](/images/inst/domebig.jpg){:class="img-responsive"} 18 | 19 | ### Rastertunnelmikroskop "STM4" 20 | ![image](/images/inst/STM4.jpg){:class="img-responsive"} 21 | 22 | 23 | ### Rastertunnelmikroskop "Tama" 24 | ![image](/images/inst/tama.jpeg){:class="img-responsive" width="75%"} 25 | -------------------------------------------------------------------------------- /_pages/aboutwebsite.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "About the website" 3 | layout: textlay 4 | excerpt: "About the website." 5 | sitemap: false 6 | permalink: /aboutwebsite.html 7 | --- 8 | 9 | # Use this website as a template for your academic research group 10 | 11 | This website is powered by [Jekyll](https://jekyllrb.com) and uses some [Bootstrap](http://www.getbootstrap.com) and [Bootswatch](http://www.bootswatch.com). We tried to make it simple yet adaptable, so that it is easy for you to re-use it for your purpose. 12 | 13 | ### Getting started 14 | All pages are written in [markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) for easy editing, and [Jekyll](https://jekyllrb.com) uses Liquid for the data-driven pages. The publicaion list, news items, and group members are stored as `.yml` data sheets (plain text) in the `_data folder`, so that one can update the website easily. The pages are in the `_pages` folder. Updating and maintaining is easy using [Github](http://www.github.com) (not worldpress-easy, but there are other advantages (see e.g. [this](https://www.taniarascia.com/make-a-static-website-with-jekyll/), or [this](http://www.webdesignerdepot.com/2015/11/jekyll-against-the-rest-of-the-world/)). [Jekyll](https://jekyllrb.com) takes all the markdown and data files, and creates beautiful `html` files in the `_site` folder. 15 | 16 | If you never used [Jekyll](https://jekyllrb.com), read the [wikipedia article](https://en.wikipedia.org/wiki/Jekyll_(software)) article and check out [their website](https://jekyllrb.com). Same for [Github](http://www.github.com), which will host your first website draft. 17 | 18 | Create and open a github account, go to [our repository](https://github.com/allanlab/allanlab), and click 'fork'. This is now your copy of the website, and you can change and adapt it as you want. You don't have to link to us or mention us (but of course we appreciate it). Then change the name of the repository to "your_username" and the name of the branch to "gh-pages". Your website is now automatically published under *your_username.github.io/your_username/*. Except that it probably still looks like our website. 19 | 20 | To modify the webpage, you can either do everything on on github.com (go to a file, click "edit", then "commit", "push"), or install [Jekyll](https://jekyllrb.com) on your computer and play with your local copy that you sync with the branch on github.com. The former is much easier in the beginning, but a bit less convenient once you start rewriting everythint. To get it to work on your computer (and to learn a bit more about [Jekyll](https://jekyllrb.com)), [here](https://www.taniarascia.com/make-a-static-website-with-jekyll/) and [here](https://scotch.io/tutorials/getting-started-with-jekyll-plus-a-free-bootstrap-3-starter-theme) are tutorials on how to use it and how set it up locally. Also, consider using the [Github desktop app](http://www.desktop.github.com), I found it helpful. 21 | 22 | ### Customization 23 | Now let's make this *your* website. 24 | 25 | First, go to the `news.ylm`, `publist.ylm`, and `team.ylm` files in the `_data` folder and insert your own data into the data fields. Watch out: [Jekyll](https://jekyllrb.com) is quite strict about extra or missing spaces etc. Adhere to the format. In the beginning, test each change: commit, push, and check the published website. 26 | 27 | For publications, you can add a "1" in the highlight field, then it will be featured prominently. You can add important news items (red, "news1"), and less important news items (blue, "news2"). 28 | 29 | For the news items, just keep adding them. The first 10 will be displayed on the 'home' page. 30 | 31 | For the `team.ylm` file 32 | 33 | Next, change the content of all files in the `_pages` folder. To change the title in the homepage, go to `homelay.html` in the `_layout` folder. 34 | 35 | Lastly, change the footer and perhaps header appropriately (in `_include`). 36 | 37 | You might also want to change the style or theme. I imported style files (in sass) from Bootstrap/Bootwatch, you can replace them with your own (in the `_sass directory`). For small changes, just work on the override stuff in the `main.sass` file in the `CSS` folder. Or change some variables in the `_variables.sass` file, like the background color etc. 38 | 39 | As said, [Jekyll](https://jekyllrb.com) takes all the markdown and data files, and creates beautiful `html` files in the `_site` folder.In the end, either upload these files to your server, or buy yourself a domain and check the instructions on github on how to host it there. 40 | 41 | ### Copyright / credit 42 | 43 | You can use this template as you please. You don't have to link to us or mention us (but of course we appreciate it). We also welcome it if you send us an email with a link to your website, perhaps we'll publish a list here at some point. 44 | 45 | Comments welcome. 46 | 47 | Code released under the MIT License. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /_pages/allnews.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "News" 3 | layout: textlay 4 | excerpt: "Allan Lab at Leiden University." 5 | sitemap: false 6 | permalink: /allnews.html 7 | --- 8 | 9 | # News 10 | 11 | {% for article in site.data.news %} 12 |

{{ article.date }}
{{ article.headline | markdownify}}

13 | {% endfor %} 14 | -------------------------------------------------------------------------------- /_pages/home.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Home" 3 | layout: homelay 4 | excerpt: "Allan Lab at Leiden University → LMU." 5 | sitemap: false 6 | permalink: / 7 | --- 8 | 9 | **News: Our group moved to the University of Munich (LMU)!** Join us! 10 | 11 | We are a dynamic research group at [LMU physics](https://www.physik.lmu.de/en/index.html) and at the [Leiden Institute of Physics](http://www.physics.leidenuniv.nl/). 12 | 13 | We have two overarching goals: first, 14 | **to understand quantum materials**, including strange metals, high-temperature superconductors, and quantum critical electron matter. Second, **to make novel and useful materials** that never existed before, like possible room-temperature superconductors. 15 | To achieve these goals, we develop new quantum sensing and quantum imaging instrumentation to obtain the key quantum mechanical degrees of freedom. We want to build the perfect instruments to answer the scientific questions we deem most important. 16 | 17 | 59 | 60 | 61 | We are currently building up our instruments right in the center of Munich, in the *Sommerfeldkeller*, where Sommerfeld and Röntgen worked. We will exchange ideas with world class groups working in quantum physics, cold-atom many-body physics, and 2d quantum materials. We are also a proud member of the [SuperC consortium](https://superc2033.com/our-team/). 62 | 63 | **We are looking for passionate new PhD students, Postdocs, and Master students to join the team** [(more info)](https://www.allanlab.org/vacancies) **!** 64 | 65 | 66 | 67 | 68 | 69 |
70 | 71 | 72 | 73 | 74 | 75 |
76 | -------------------------------------------------------------------------------- /_pages/openings.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Vacancies" 3 | layout: textlay 4 | excerpt: "Openings" 5 | sitemap: false 6 | permalink: /vacancies 7 | --- 8 | 9 | # Open positions 10 | 11 | **We are currently open for PhD and postdoc applications related to our ERC CoG grant. The positions are mostly related to the Electron Pair Microscopy projects.** 12 | 13 | We are looking for new group members with passion, talent, and grit! 14 | 15 | You will have the chance to work on the grand challenges of condensed matter physics, often at the interface of instrumental design and new physics. You will be involved in determining the important and interesting questions, creating and improving instrumental setups, performing measurements, and making discoveries. 16 | 17 | ### Past open positions 18 | 19 | You find the past job openings here: 20 | [Opening 1]({{ site.baseurl }}/downloads/GeneralPostdoc_2019_v01.pdf), 21 | [Opening 2]({{ site.baseurl }}/downloads/PPMS_PhD_2019_v01.pdf), 22 | [Opening 3]({{ site.baseurl }}/downloads/PD.pdf), 23 | [Opening 4]({{ site.baseurl }}/downloads/PHD1.pdf), 24 | [Opening 5]({{ site.baseurl }}/downloads/PHD2.pdf). 25 | 26 | ### Applications for PhD and Postdoc positions 27 | If you are interested in working with us as a PhD student or postdoc, please send me an [email](mailto:milan.allan@gmail.com). State briefly why you are interested and attach a CV, including information about the grades you had as an undergraduate. No need for a separate cover letter or certificates. **Important**: please insert _"Application PhD"_ or _"Application Postdoc"_ in the subject line. If you are applying to a specific advertisement, note this in your email. 28 | 29 | We especially welcome postdocs with fellowships. I'd be happy to support you, also after you apply to our group. Take a look at the [veni fellowship](https://www.nwo.nl/en/calls/nwo-talent-programme-veni-science-domain) or the Marie Curie fellowship (currently closed, next deadline probably Fall 2021, [here is last years call]({{ site.baseurl }}/downloads/h2020-wp1820-msca_en.pdf)). In many country, there are also fellowships available for outdoing postdocs.** 30 | 31 | 32 | ### Master projects for Leiden University students 33 | If you are a Master student at Leiden University looking for a Master project, contact me (or any group member) per email or stop by my office. 34 | 35 | ### Bsc / Master students from elsewhere 36 | If you are interested in pursuing a Master degree at Leiden University, see [mastersinleiden.nl](http://www.mastersinleiden.nl/programmes/physics/en/introduction). Sometimes, we take master students or summer interns if we get exceptional applicants (this usually means very good grades and a personal recommendation). 37 | 38 | 39 |
40 | 41 |
42 | -------------------------------------------------------------------------------- /_pages/pictures.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Pictures" 3 | layout: piclay 4 | excerpt: "Allan Lab -- Pictures" 5 | permalink: /pictures/ 6 | --- 7 | 8 | # Pictures 9 | Jump to: [Leiden](#leiden), [ETHZ](#ethz), [Cornell](#cornell), [St Andrews](#st-andrews) 10 | 11 | 12 | ## Leiden 13 | 14 | #### Timelapse of our STM assembling [(see LION news item)](https://www.physics.leidenuniv.nl/index.php?id=11573&news=867&type=lion&ln=EN): 15 | 16 | 17 | #### Gallery 18 | (Right-click *'view image'* to see a larger image.) 19 | {% assign number_printed = 0 %} 20 | {% for pic in site.data.pictures_Leiden %} 21 | 22 | {% assign even_odd = number_printed | modulo: 4 %} 23 | 24 | {% if even_odd == 0 %} 25 |
26 | {% endif %} 27 | 28 |
29 | 30 |
31 | 32 | {% assign number_printed = number_printed | plus: 1 %} 33 | 34 | {% if even_odd > 2 %} 35 |
36 | {% endif %} 37 | 38 | 39 | {% endfor %} 40 | 41 | {% assign even_odd = number_printed | modulo: 4 %} 42 | {% if even_odd == 1 %} 43 | 44 | {% endif %} 45 | 46 | {% if even_odd == 2 %} 47 | 48 | {% endif %} 49 | 50 | {% if even_odd == 3 %} 51 | 52 | {% endif %} 53 | 54 |

 

55 | 56 | First advertisement. 57 |
58 | 59 |
60 | 61 | 62 | ## ETHZ 63 | From the [group of Andreas Wallraff](http://www.qudev.ethz.ch/). 64 |
65 | 66 |
67 | 68 | ## Cornell 69 | From the [group of Seamus JC Davis](http://davisgroup.lassp.cornell.edu). 70 |
71 | 72 |
73 | 74 | ## St Andrews 75 | From the [group of Felix Baumberger](http://dqmp.unige.ch/baumberger/) (now at University of Geneva). 76 |
77 | 78 |
79 | -------------------------------------------------------------------------------- /_pages/publications.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Publications" 3 | layout: gridlay 4 | excerpt: "Allan Lab -- Publications." 5 | sitemap: false 6 | permalink: /publications/ 7 | --- 8 | 9 | 10 | # Publications 11 | 12 | ## Group highlights 13 | 14 | **At the end of this page, you can find the [full list of publications and patents](#full-list-of-publications). All papers are also available on [arXiv](https://arxiv.org/search/?searchtype=author&query=Allan%2C+M+P).** 15 | 16 | {% assign number_printed = 0 %} 17 | {% for publi in site.data.publist %} 18 | 19 | {% assign even_odd = number_printed | modulo: 2 %} 20 | {% if publi.highlight == 1 %} 21 | 22 | {% if even_odd == 0 %} 23 |
24 | {% endif %} 25 | 26 |
27 |
28 | {{ publi.title }} 29 | 30 |

{{ publi.description }}

31 |

{{ publi.authors }}

32 |

{{ publi.link.display }}

33 |

{{ publi.news1 }}

34 |

{{ publi.news2 }}

35 |
36 |
37 | 38 | {% assign number_printed = number_printed | plus: 1 %} 39 | 40 | {% if even_odd == 1 %} 41 |
42 | {% endif %} 43 | 44 | {% endif %} 45 | {% endfor %} 46 | 47 | {% assign even_odd = number_printed | modulo: 2 %} 48 | {% if even_odd == 1 %} 49 | 50 | {% endif %} 51 | 52 |

 

53 | 54 | 55 | ## Patents 56 | Milan P Allan, S Gröblacher, RA Norte, M Leeuwenhoek
Novel atomic force microscopy probes with phononic crystals
PCT/NL20-20/050797 (2020) 57 | 58 | Milan P Allan
Methods of manufacturing superconductor and phononic elements
US10439125B2 (2016) 59 | 60 | ## Full List of publications 61 | 62 | {% for publi in site.data.publist %} 63 | 64 | {{ publi.title }}
65 | {{ publi.authors }}
{{ publi.link.display }} 66 | 67 | {% endfor %} 68 | -------------------------------------------------------------------------------- /_pages/research.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Research" 3 | layout: textlay 4 | excerpt: "Allan Lab -- Research" 5 | sitemap: false 6 | permalink: /research/ 7 | --- 8 | 9 | # Research 10 | 11 | Updating soon -- stay put. (Aug 11 2023) 12 | 13 | ![]({{ site.url }}{{ site.baseurl }}/images/respic/SciPost.png){: style="width: 70%; float: center; margin: 0px"} 14 | 15 | 16 | -------------------------------------------------------------------------------- /_pages/team.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Allan Lab - Team" 3 | layout: gridlay 4 | excerpt: "Allan Lab: Team members" 5 | sitemap: false 6 | permalink: /team/ 7 | --- 8 | 9 | # Group Members 10 | 11 | **We are looking for new PhD students, Postdocs, and Master students to join the team** [(see openings)]({{ site.url }}{{ site.baseurl }}/vacancies) **!** 12 | 13 | 14 | Jump to [staff](#staff), [master and bachelor students](#master-and-bachelor-students), [alumni](#alumni), [administrative support](#administrative-support), [lab visitors](#lab-visitors). 15 | 16 | ## Staff 17 | {% assign number_printed = 0 %} 18 | {% for member in site.data.team_members %} 19 | 20 | {% assign even_odd = number_printed | modulo: 2 %} 21 | 22 | {% if even_odd == 0 %} 23 |
24 | {% endif %} 25 | 26 |
27 | 28 |

{{ member.name }}

29 | {{ member.info }} 30 |
    31 | 32 | {% if member.number_educ == 1 %} 33 |
  • {{ member.education1 }}
  • 34 | {% endif %} 35 | 36 | {% if member.number_educ == 2 %} 37 |
  • {{ member.education1 | markdownify}}
  • 38 |
  • {{ member.education2 | markdownify}}
  • 39 | {% endif %} 40 | 41 | {% if member.number_educ == 3 %} 42 |
  • {{ member.education1 }}
  • 43 |
  • {{ member.education2 }}
  • 44 |
  • {{ member.education3 }}
  • 45 | {% endif %} 46 | 47 | {% if member.number_educ == 4 %} 48 |
  • {{ member.education1 }}
  • 49 |
  • {{ member.education2 }}
  • 50 |
  • {{ member.education3 }}
  • 51 |
  • {{ member.education4 }}
  • 52 | {% endif %} 53 | 54 | {% if member.number_educ == 5 %} 55 |
  • {{ member.education1 }}
  • 56 |
  • {{ member.education2 }}
  • 57 |
  • {{ member.education3 }}
  • 58 |
  • {{ member.education4 }}
  • 59 |
  • {{ member.education5 }}
  • 60 | {% endif %} 61 | 62 |
63 |
64 | 65 | {% assign number_printed = number_printed | plus: 1 %} 66 | 67 | {% if even_odd == 1 %} 68 |
69 | {% endif %} 70 | 71 | {% endfor %} 72 | 73 | {% assign even_odd = number_printed | modulo: 2 %} 74 | {% if even_odd == 1 %} 75 | 76 | {% endif %} 77 | 78 | 79 | 80 | 81 | ## Master and Bachelor Students 82 | {% assign number_printed = 0 %} 83 | {% for member in site.data.students %} 84 | 85 | {% assign even_odd = number_printed | modulo: 2 %} 86 | 87 | {% if even_odd == 0 %} 88 |
89 | {% endif %} 90 | 91 |
92 |

{{ member.name }}

93 | {{ member.info }} 94 |
    95 | 96 | {% if member.number_educ == 1 %} 97 |
  • {{ member.education1 }}
  • 98 | {% endif %} 99 | 100 | {% if member.number_educ == 2 %} 101 |
  • {{ member.education1 }}
  • 102 |
  • {{ member.education2 }}
  • 103 | {% endif %} 104 | 105 | {% if member.number_educ == 3 %} 106 |
  • {{ member.education1 }}
  • 107 |
  • {{ member.education2 }}
  • 108 |
  • {{ member.education3 }}
  • 109 | {% endif %} 110 | 111 | {% if member.number_educ == 4 %} 112 |
  • {{ member.education1 }}
  • 113 |
  • {{ member.education2 }}
  • 114 |
  • {{ member.education3 }}
  • 115 |
  • {{ member.education4 }}
  • 116 | {% endif %} 117 | 118 |
119 |
120 | 121 | {% assign number_printed = number_printed | plus: 1 %} 122 | 123 | {% if even_odd == 1 %} 124 |
125 | {% endif %} 126 | 127 | {% endfor %} 128 | 129 | {% assign even_odd = number_printed | modulo: 2 %} 130 | {% if even_odd == 1 %} 131 | 132 | {% endif %} 133 | 134 | 135 | ## Alumni 136 | 137 | {% assign number_printed = 0 %} 138 | {% for member in site.data.alumni_members %} 139 | 140 | {% assign even_odd = number_printed | modulo: 2 %} 141 | 142 | {% if even_odd == 0 %} 143 |
144 | {% endif %} 145 | 146 |
147 | 148 |

{{ member.name }}

149 | {{ member.duration }}
Role: {{ member.info }}
150 |
    151 | 152 |
153 |
154 | 155 | {% assign number_printed = number_printed | plus: 1 %} 156 | 157 | {% if even_odd == 1 %} 158 |
159 | {% endif %} 160 | 161 | {% endfor %} 162 | 163 | {% assign even_odd = number_printed | modulo: 2 %} 164 | {% if even_odd == 1 %} 165 | 166 | {% endif %} 167 | 168 | ## Former visitors, BSc/ MSc students 169 |
170 | 171 |
172 |

Visitors

173 | {% for member in site.data.alumni_visitors %} 174 | {{ member.name }} 175 | {% endfor %} 176 |
177 | 178 |
179 |

Master students

180 | {% for member in site.data.alumni_msc %} 181 | {{ member.name }} 182 | {% endfor %} 183 |
184 | 185 |
186 |

Bachelor Students

187 | {% for member in site.data.alumni_bsc %} 188 | {{ member.name }} 189 | {% endfor %} 190 |
191 | 192 |
193 | 194 | 195 | ## Administrative Support 196 | Ellie van Rijsewijk is helping us (and other groups) with administration. 197 | -------------------------------------------------------------------------------- /_plugins/markdown.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Jekyll tag to include Markdown text from _includes directory preprocessing with Liquid. 3 | Usage: 4 | {% markdown %} 5 | Dependency: 6 | - kramdown 7 | =end 8 | module Jekyll 9 | class MarkdownTag < Liquid::Tag 10 | def initialize(tag_name, text, tokens) 11 | super 12 | @text = text.strip 13 | end 14 | require "kramdown" 15 | def render(context) 16 | tmpl = File.read File.join Dir.pwd, "_includes", @text 17 | site = context.registers[:site] 18 | tmpl = (Liquid::Template.parse tmpl).render site.site_payload 19 | html = Kramdown::Document.new(tmpl).to_html 20 | end 21 | end 22 | end 23 | Liquid::Template.register_tag('markdown', Jekyll::MarkdownTag) 24 | -------------------------------------------------------------------------------- /_sass/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mpa139/allanlab/8c13f8265ea5742cea711f32a2192df6b725e32f/_sass/.DS_Store -------------------------------------------------------------------------------- /_sass/_bootstrap.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v3.3.7 (http://getbootstrap.com) 3 | * Copyright 2011-2016 Twitter, Inc. 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 5 | */ 6 | 7 | // Core variables and mixins 8 | @import "bootstrap/variables"; 9 | @import "bootstrap/mixins"; 10 | 11 | // Reset and dependencies 12 | @import "bootstrap/normalize"; 13 | @import "bootstrap/print"; 14 | @import "bootstrap/glyphicons"; 15 | 16 | // Core CSS 17 | @import "bootstrap/scaffolding"; 18 | @import "bootstrap/type"; 19 | @import "bootstrap/code"; 20 | @import "bootstrap/grid"; 21 | @import "bootstrap/tables"; 22 | @import "bootstrap/forms"; 23 | @import "bootstrap/buttons"; 24 | 25 | // Components 26 | @import "bootstrap/component-animations"; 27 | @import "bootstrap/dropdowns"; 28 | @import "bootstrap/button-groups"; 29 | @import "bootstrap/input-groups"; 30 | @import "bootstrap/navs"; 31 | @import "bootstrap/navbar"; 32 | @import "bootstrap/breadcrumbs"; 33 | @import "bootstrap/pagination"; 34 | @import "bootstrap/pager"; 35 | @import "bootstrap/labels"; 36 | @import "bootstrap/badges"; 37 | @import "bootstrap/jumbotron"; 38 | @import "bootstrap/thumbnails"; 39 | @import "bootstrap/alerts"; 40 | @import "bootstrap/progress-bars"; 41 | @import "bootstrap/media"; 42 | @import "bootstrap/list-group"; 43 | @import "bootstrap/panels"; 44 | @import "bootstrap/responsive-embed"; 45 | @import "bootstrap/wells"; 46 | @import "bootstrap/close"; 47 | 48 | // Components w/ JavaScript 49 | @import "bootstrap/modals"; 50 | @import "bootstrap/tooltip"; 51 | @import "bootstrap/popovers"; 52 | @import "bootstrap/carousel"; 53 | 54 | // Utility classes 55 | @import "bootstrap/utilities"; 56 | @import "bootstrap/responsive-utilities"; 57 | @import "bootstrap/bootswatch"; 58 | 59 | -------------------------------------------------------------------------------- /_sass/bootstrap/_alerts.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Alerts 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base styles 7 | // ------------------------- 8 | 9 | .alert { 10 | padding: $alert-padding; 11 | margin-bottom: $line-height-computed; 12 | border: 1px solid transparent; 13 | border-radius: $alert-border-radius; 14 | 15 | // Headings for larger alerts 16 | h4 { 17 | margin-top: 0; 18 | // Specified for the h4 to prevent conflicts of changing $headings-color 19 | color: inherit; 20 | } 21 | 22 | // Provide class for links that match alerts 23 | .alert-link { 24 | font-weight: $alert-link-font-weight; 25 | } 26 | 27 | // Improve alignment and spacing of inner content 28 | > p, 29 | > ul { 30 | margin-bottom: 0; 31 | } 32 | 33 | > p + p { 34 | margin-top: 5px; 35 | } 36 | } 37 | 38 | // Dismissible alerts 39 | // 40 | // Expand the right padding and account for the close button's positioning. 41 | 42 | .alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. 43 | .alert-dismissible { 44 | padding-right: ($alert-padding + 20); 45 | 46 | // Adjust close link position 47 | .close { 48 | position: relative; 49 | top: -2px; 50 | right: -21px; 51 | color: inherit; 52 | } 53 | } 54 | 55 | // Alternate styles 56 | // 57 | // Generate contextual modifier classes for colorizing the alert. 58 | 59 | .alert-success { 60 | @include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text); 61 | } 62 | 63 | .alert-info { 64 | @include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text); 65 | } 66 | 67 | .alert-warning { 68 | @include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text); 69 | } 70 | 71 | .alert-danger { 72 | @include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text); 73 | } 74 | -------------------------------------------------------------------------------- /_sass/bootstrap/_badges.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Badges 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .badge { 8 | display: inline-block; 9 | min-width: 10px; 10 | padding: 3px 7px; 11 | font-size: $font-size-small; 12 | font-weight: $badge-font-weight; 13 | color: $badge-color; 14 | line-height: $badge-line-height; 15 | vertical-align: middle; 16 | white-space: nowrap; 17 | text-align: center; 18 | background-color: $badge-bg; 19 | border-radius: $badge-border-radius; 20 | 21 | // Empty badges collapse automatically (not available in IE8) 22 | &:empty { 23 | display: none; 24 | } 25 | 26 | // Quick fix for badges in buttons 27 | .btn & { 28 | position: relative; 29 | top: -1px; 30 | } 31 | 32 | .btn-xs &, 33 | .btn-group-xs > .btn & { 34 | top: 0; 35 | padding: 1px 5px; 36 | } 37 | 38 | // [converter] extracted a& to a.badge 39 | 40 | // Account for badges in navs 41 | .list-group-item.active > &, 42 | .nav-pills > .active > a > & { 43 | color: $badge-active-color; 44 | background-color: $badge-active-bg; 45 | } 46 | 47 | .list-group-item > & { 48 | float: right; 49 | } 50 | 51 | .list-group-item > & + & { 52 | margin-right: 5px; 53 | } 54 | 55 | .nav-pills > li > a > & { 56 | margin-left: 3px; 57 | } 58 | } 59 | 60 | // Hover state, but only for links 61 | a.badge { 62 | &:hover, 63 | &:focus { 64 | color: $badge-link-hover-color; 65 | text-decoration: none; 66 | cursor: pointer; 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /_sass/bootstrap/_breadcrumbs.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal; 8 | margin-bottom: $line-height-computed; 9 | list-style: none; 10 | background-color: $breadcrumb-bg; 11 | border-radius: $border-radius-base; 12 | 13 | > li { 14 | display: inline-block; 15 | 16 | + li:before { 17 | // [converter] Workaround for https://github.com/sass/libsass/issues/1115 18 | $nbsp: "\00a0"; 19 | content: "#{$breadcrumb-separator}#{$nbsp}"; // Unicode space added since inline-block means non-collapsing white-space 20 | padding: 0 5px; 21 | color: $breadcrumb-color; 22 | } 23 | } 24 | 25 | > .active { 26 | color: $breadcrumb-active-color; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /_sass/bootstrap/_buttons.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Buttons 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base styles 7 | // -------------------------------------------------- 8 | 9 | .btn { 10 | display: inline-block; 11 | margin-bottom: 0; // For input.btn 12 | font-weight: $btn-font-weight; 13 | text-align: center; 14 | vertical-align: middle; 15 | touch-action: manipulation; 16 | cursor: pointer; 17 | background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 18 | border: 1px solid transparent; 19 | white-space: nowrap; 20 | @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base); 21 | @include user-select(none); 22 | 23 | &, 24 | &:active, 25 | &.active { 26 | &:focus, 27 | &.focus { 28 | @include tab-focus; 29 | } 30 | } 31 | 32 | &:hover, 33 | &:focus, 34 | &.focus { 35 | color: $btn-default-color; 36 | text-decoration: none; 37 | } 38 | 39 | &:active, 40 | &.active { 41 | outline: 0; 42 | background-image: none; 43 | @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); 44 | } 45 | 46 | &.disabled, 47 | &[disabled], 48 | fieldset[disabled] & { 49 | cursor: $cursor-disabled; 50 | @include opacity(.65); 51 | @include box-shadow(none); 52 | } 53 | 54 | // [converter] extracted a& to a.btn 55 | } 56 | 57 | a.btn { 58 | &.disabled, 59 | fieldset[disabled] & { 60 | pointer-events: none; // Future-proof disabling of clicks on `` elements 61 | } 62 | } 63 | 64 | 65 | // Alternate buttons 66 | // -------------------------------------------------- 67 | 68 | .btn-default { 69 | @include button-variant($btn-default-color, $btn-default-bg, $btn-default-border); 70 | } 71 | .btn-primary { 72 | @include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border); 73 | } 74 | // Success appears as green 75 | .btn-success { 76 | @include button-variant($btn-success-color, $btn-success-bg, $btn-success-border); 77 | } 78 | // Info appears as blue-green 79 | .btn-info { 80 | @include button-variant($btn-info-color, $btn-info-bg, $btn-info-border); 81 | } 82 | // Warning appears as orange 83 | .btn-warning { 84 | @include button-variant($btn-warning-color, $btn-warning-bg, $btn-warning-border); 85 | } 86 | // Danger and error appear as red 87 | .btn-danger { 88 | @include button-variant($btn-danger-color, $btn-danger-bg, $btn-danger-border); 89 | } 90 | 91 | 92 | // Link buttons 93 | // ------------------------- 94 | 95 | // Make a button look and behave like a link 96 | .btn-link { 97 | color: $link-color; 98 | font-weight: normal; 99 | border-radius: 0; 100 | 101 | &, 102 | &:active, 103 | &.active, 104 | &[disabled], 105 | fieldset[disabled] & { 106 | background-color: transparent; 107 | @include box-shadow(none); 108 | } 109 | &, 110 | &:hover, 111 | &:focus, 112 | &:active { 113 | border-color: transparent; 114 | } 115 | &:hover, 116 | &:focus { 117 | color: $link-hover-color; 118 | text-decoration: $link-hover-decoration; 119 | background-color: transparent; 120 | } 121 | &[disabled], 122 | fieldset[disabled] & { 123 | &:hover, 124 | &:focus { 125 | color: $btn-link-disabled-color; 126 | text-decoration: none; 127 | } 128 | } 129 | } 130 | 131 | 132 | // Button Sizes 133 | // -------------------------------------------------- 134 | 135 | .btn-lg { 136 | // line-height: ensure even-numbered height of button next to large input 137 | @include button-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $btn-border-radius-large); 138 | } 139 | .btn-sm { 140 | // line-height: ensure proper height of button next to small input 141 | @include button-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $btn-border-radius-small); 142 | } 143 | .btn-xs { 144 | @include button-size($padding-xs-vertical, $padding-xs-horizontal, $font-size-small, $line-height-small, $btn-border-radius-small); 145 | } 146 | 147 | 148 | // Block button 149 | // -------------------------------------------------- 150 | 151 | .btn-block { 152 | display: block; 153 | width: 100%; 154 | } 155 | 156 | // Vertically space out multiple block buttons 157 | .btn-block + .btn-block { 158 | margin-top: 5px; 159 | } 160 | 161 | // Specificity overrides 162 | input[type="submit"], 163 | input[type="reset"], 164 | input[type="button"] { 165 | &.btn-block { 166 | width: 100%; 167 | } 168 | } 169 | -------------------------------------------------------------------------------- /_sass/bootstrap/_close.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | 6 | .close { 7 | float: right; 8 | font-size: ($font-size-base * 1.5); 9 | font-weight: $close-font-weight; 10 | line-height: 1; 11 | color: $close-color; 12 | text-shadow: $close-text-shadow; 13 | @include opacity(.2); 14 | 15 | &:hover, 16 | &:focus { 17 | color: $close-color; 18 | text-decoration: none; 19 | cursor: pointer; 20 | @include opacity(.5); 21 | } 22 | 23 | // [converter] extracted button& to button.close 24 | } 25 | 26 | // Additional properties for button version 27 | // iOS requires the button element instead of an anchor tag. 28 | // If you want the anchor version, it requires `href="#"`. 29 | // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile 30 | button.close { 31 | padding: 0; 32 | cursor: pointer; 33 | background: transparent; 34 | border: 0; 35 | -webkit-appearance: none; 36 | } 37 | -------------------------------------------------------------------------------- /_sass/bootstrap/_code.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Code (inline and block) 3 | // -------------------------------------------------- 4 | 5 | 6 | // Inline and block code styles 7 | code, 8 | kbd, 9 | pre, 10 | samp { 11 | font-family: $font-family-monospace; 12 | } 13 | 14 | // Inline code 15 | code { 16 | padding: 2px 4px; 17 | font-size: 90%; 18 | color: $code-color; 19 | background-color: $code-bg; 20 | border-radius: $border-radius-base; 21 | } 22 | 23 | // User input typically entered via keyboard 24 | kbd { 25 | padding: 2px 4px; 26 | font-size: 90%; 27 | color: $kbd-color; 28 | background-color: $kbd-bg; 29 | border-radius: $border-radius-small; 30 | box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); 31 | 32 | kbd { 33 | padding: 0; 34 | font-size: 100%; 35 | font-weight: bold; 36 | box-shadow: none; 37 | } 38 | } 39 | 40 | // Blocks of code 41 | pre { 42 | display: block; 43 | padding: (($line-height-computed - 1) / 2); 44 | margin: 0 0 ($line-height-computed / 2); 45 | font-size: ($font-size-base - 1); // 14px to 13px 46 | line-height: $line-height-base; 47 | word-break: break-all; 48 | word-wrap: break-word; 49 | color: $pre-color; 50 | background-color: $pre-bg; 51 | border: 1px solid $pre-border-color; 52 | border-radius: $border-radius-base; 53 | 54 | // Account for some code outputs that place code tags in pre tags 55 | code { 56 | padding: 0; 57 | font-size: inherit; 58 | color: inherit; 59 | white-space: pre-wrap; 60 | background-color: transparent; 61 | border-radius: 0; 62 | } 63 | } 64 | 65 | // Enable scrollable blocks of code 66 | .pre-scrollable { 67 | max-height: $pre-scrollable-max-height; 68 | overflow-y: scroll; 69 | } 70 | -------------------------------------------------------------------------------- /_sass/bootstrap/_component-animations.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | @include transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | 21 | &.in { display: block; } 22 | // [converter] extracted tr&.in to tr.collapse.in 23 | // [converter] extracted tbody&.in to tbody.collapse.in 24 | } 25 | 26 | tr.collapse.in { display: table-row; } 27 | 28 | tbody.collapse.in { display: table-row-group; } 29 | 30 | .collapsing { 31 | position: relative; 32 | height: 0; 33 | overflow: hidden; 34 | @include transition-property(height, visibility); 35 | @include transition-duration(.35s); 36 | @include transition-timing-function(ease); 37 | } 38 | -------------------------------------------------------------------------------- /_sass/bootstrap/_dropdowns.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Dropdown menus 3 | // -------------------------------------------------- 4 | 5 | 6 | // Dropdown arrow/caret 7 | .caret { 8 | display: inline-block; 9 | width: 0; 10 | height: 0; 11 | margin-left: 2px; 12 | vertical-align: middle; 13 | border-top: $caret-width-base dashed; 14 | border-top: $caret-width-base solid \9; // IE8 15 | border-right: $caret-width-base solid transparent; 16 | border-left: $caret-width-base solid transparent; 17 | } 18 | 19 | // The dropdown wrapper (div) 20 | .dropup, 21 | .dropdown { 22 | position: relative; 23 | } 24 | 25 | // Prevent the focus on the dropdown toggle when closing dropdowns 26 | .dropdown-toggle:focus { 27 | outline: 0; 28 | } 29 | 30 | // The dropdown menu (ul) 31 | .dropdown-menu { 32 | position: absolute; 33 | top: 100%; 34 | left: 0; 35 | z-index: $zindex-dropdown; 36 | display: none; // none by default, but block on "open" of the menu 37 | float: left; 38 | min-width: 160px; 39 | padding: 5px 0; 40 | margin: 2px 0 0; // override default ul 41 | list-style: none; 42 | font-size: $font-size-base; 43 | text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) 44 | background-color: $dropdown-bg; 45 | border: 1px solid $dropdown-fallback-border; // IE8 fallback 46 | border: 1px solid $dropdown-border; 47 | border-radius: $border-radius-base; 48 | @include box-shadow(0 6px 12px rgba(0,0,0,.175)); 49 | background-clip: padding-box; 50 | 51 | // Aligns the dropdown menu to right 52 | // 53 | // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` 54 | &.pull-right { 55 | right: 0; 56 | left: auto; 57 | } 58 | 59 | // Dividers (basically an hr) within the dropdown 60 | .divider { 61 | @include nav-divider($dropdown-divider-bg); 62 | } 63 | 64 | // Links within the dropdown menu 65 | > li > a { 66 | display: block; 67 | padding: 3px 20px; 68 | clear: both; 69 | font-weight: normal; 70 | line-height: $line-height-base; 71 | color: $dropdown-link-color; 72 | white-space: nowrap; // prevent links from randomly breaking onto new lines 73 | } 74 | } 75 | 76 | // Hover/Focus state 77 | .dropdown-menu > li > a { 78 | &:hover, 79 | &:focus { 80 | text-decoration: none; 81 | color: $dropdown-link-hover-color; 82 | background-color: $dropdown-link-hover-bg; 83 | } 84 | } 85 | 86 | // Active state 87 | .dropdown-menu > .active > a { 88 | &, 89 | &:hover, 90 | &:focus { 91 | color: $dropdown-link-active-color; 92 | text-decoration: none; 93 | outline: 0; 94 | background-color: $dropdown-link-active-bg; 95 | } 96 | } 97 | 98 | // Disabled state 99 | // 100 | // Gray out text and ensure the hover/focus state remains gray 101 | 102 | .dropdown-menu > .disabled > a { 103 | &, 104 | &:hover, 105 | &:focus { 106 | color: $dropdown-link-disabled-color; 107 | } 108 | 109 | // Nuke hover/focus effects 110 | &:hover, 111 | &:focus { 112 | text-decoration: none; 113 | background-color: transparent; 114 | background-image: none; // Remove CSS gradient 115 | @include reset-filter; 116 | cursor: $cursor-disabled; 117 | } 118 | } 119 | 120 | // Open state for the dropdown 121 | .open { 122 | // Show the menu 123 | > .dropdown-menu { 124 | display: block; 125 | } 126 | 127 | // Remove the outline when :focus is triggered 128 | > a { 129 | outline: 0; 130 | } 131 | } 132 | 133 | // Menu positioning 134 | // 135 | // Add extra class to `.dropdown-menu` to flip the alignment of the dropdown 136 | // menu with the parent. 137 | .dropdown-menu-right { 138 | left: auto; // Reset the default from `.dropdown-menu` 139 | right: 0; 140 | } 141 | // With v3, we enabled auto-flipping if you have a dropdown within a right 142 | // aligned nav component. To enable the undoing of that, we provide an override 143 | // to restore the default dropdown menu alignment. 144 | // 145 | // This is only for left-aligning a dropdown menu within a `.navbar-right` or 146 | // `.pull-right` nav component. 147 | .dropdown-menu-left { 148 | left: 0; 149 | right: auto; 150 | } 151 | 152 | // Dropdown section headers 153 | .dropdown-header { 154 | display: block; 155 | padding: 3px 20px; 156 | font-size: $font-size-small; 157 | line-height: $line-height-base; 158 | color: $dropdown-header-color; 159 | white-space: nowrap; // as with > li > a 160 | } 161 | 162 | // Backdrop to catch body clicks on mobile, etc. 163 | .dropdown-backdrop { 164 | position: fixed; 165 | left: 0; 166 | right: 0; 167 | bottom: 0; 168 | top: 0; 169 | z-index: ($zindex-dropdown - 10); 170 | } 171 | 172 | // Right aligned dropdowns 173 | .pull-right > .dropdown-menu { 174 | right: 0; 175 | left: auto; 176 | } 177 | 178 | // Allow for dropdowns to go bottom up (aka, dropup-menu) 179 | // 180 | // Just add .dropup after the standard .dropdown class and you're set, bro. 181 | // TODO: abstract this so that the navbar fixed styles are not placed here? 182 | 183 | .dropup, 184 | .navbar-fixed-bottom .dropdown { 185 | // Reverse the caret 186 | .caret { 187 | border-top: 0; 188 | border-bottom: $caret-width-base dashed; 189 | border-bottom: $caret-width-base solid \9; // IE8 190 | content: ""; 191 | } 192 | // Different positioning for bottom up menu 193 | .dropdown-menu { 194 | top: auto; 195 | bottom: 100%; 196 | margin-bottom: 2px; 197 | } 198 | } 199 | 200 | 201 | // Component alignment 202 | // 203 | // Reiterate per navbar.less and the modified component alignment there. 204 | 205 | @media (min-width: $grid-float-breakpoint) { 206 | .navbar-right { 207 | .dropdown-menu { 208 | right: 0; left: auto; 209 | } 210 | // Necessary for overrides of the default right aligned menu. 211 | // Will remove come v4 in all likelihood. 212 | .dropdown-menu-left { 213 | left: 0; right: auto; 214 | } 215 | } 216 | } 217 | -------------------------------------------------------------------------------- /_sass/bootstrap/_grid.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Grid system 3 | // -------------------------------------------------- 4 | 5 | 6 | // Container widths 7 | // 8 | // Set the container width, and override it for fixed navbars in media queries. 9 | 10 | .container { 11 | @include container-fixed; 12 | 13 | @media (min-width: $screen-sm-min) { 14 | width: $container-sm; 15 | } 16 | @media (min-width: $screen-md-min) { 17 | width: $container-md; 18 | } 19 | @media (min-width: $screen-lg-min) { 20 | width: $container-lg; 21 | } 22 | } 23 | 24 | 25 | // Fluid container 26 | // 27 | // Utilizes the mixin meant for fixed width containers, but without any defined 28 | // width for fluid, full width layouts. 29 | 30 | .container-fluid { 31 | @include container-fixed; 32 | } 33 | 34 | 35 | // Row 36 | // 37 | // Rows contain and clear the floats of your columns. 38 | 39 | .row { 40 | @include make-row; 41 | } 42 | 43 | 44 | // Columns 45 | // 46 | // Common styles for small and large grid columns 47 | 48 | @include make-grid-columns; 49 | 50 | 51 | // Extra small grid 52 | // 53 | // Columns, offsets, pushes, and pulls for extra small devices like 54 | // smartphones. 55 | 56 | @include make-grid(xs); 57 | 58 | 59 | // Small grid 60 | // 61 | // Columns, offsets, pushes, and pulls for the small device range, from phones 62 | // to tablets. 63 | 64 | @media (min-width: $screen-sm-min) { 65 | @include make-grid(sm); 66 | } 67 | 68 | 69 | // Medium grid 70 | // 71 | // Columns, offsets, pushes, and pulls for the desktop device range. 72 | 73 | @media (min-width: $screen-md-min) { 74 | @include make-grid(md); 75 | } 76 | 77 | 78 | // Large grid 79 | // 80 | // Columns, offsets, pushes, and pulls for the large desktop device range. 81 | 82 | @media (min-width: $screen-lg-min) { 83 | @include make-grid(lg); 84 | } 85 | -------------------------------------------------------------------------------- /_sass/bootstrap/_input-groups.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Input groups 3 | // -------------------------------------------------- 4 | 5 | // Base styles 6 | // ------------------------- 7 | .input-group { 8 | position: relative; // For dropdowns 9 | display: table; 10 | border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table 11 | 12 | // Undo padding and float of grid classes 13 | &[class*="col-"] { 14 | float: none; 15 | padding-left: 0; 16 | padding-right: 0; 17 | } 18 | 19 | .form-control { 20 | // Ensure that the input is always above the *appended* addon button for 21 | // proper border colors. 22 | position: relative; 23 | z-index: 2; 24 | 25 | // IE9 fubars the placeholder attribute in text inputs and the arrows on 26 | // select elements in input groups. To fix it, we float the input. Details: 27 | // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855 28 | float: left; 29 | 30 | width: 100%; 31 | margin-bottom: 0; 32 | 33 | &:focus { 34 | z-index: 3; 35 | } 36 | } 37 | } 38 | 39 | // Sizing options 40 | // 41 | // Remix the default form control sizing classes into new ones for easier 42 | // manipulation. 43 | 44 | .input-group-lg > .form-control, 45 | .input-group-lg > .input-group-addon, 46 | .input-group-lg > .input-group-btn > .btn { 47 | @extend .input-lg; 48 | } 49 | .input-group-sm > .form-control, 50 | .input-group-sm > .input-group-addon, 51 | .input-group-sm > .input-group-btn > .btn { 52 | @extend .input-sm; 53 | } 54 | 55 | 56 | // Display as table-cell 57 | // ------------------------- 58 | .input-group-addon, 59 | .input-group-btn, 60 | .input-group .form-control { 61 | display: table-cell; 62 | 63 | &:not(:first-child):not(:last-child) { 64 | border-radius: 0; 65 | } 66 | } 67 | // Addon and addon wrapper for buttons 68 | .input-group-addon, 69 | .input-group-btn { 70 | width: 1%; 71 | white-space: nowrap; 72 | vertical-align: middle; // Match the inputs 73 | } 74 | 75 | // Text input groups 76 | // ------------------------- 77 | .input-group-addon { 78 | padding: $padding-base-vertical $padding-base-horizontal; 79 | font-size: $font-size-base; 80 | font-weight: normal; 81 | line-height: 1; 82 | color: $input-color; 83 | text-align: center; 84 | background-color: $input-group-addon-bg; 85 | border: 1px solid $input-group-addon-border-color; 86 | border-radius: $input-border-radius; 87 | 88 | // Sizing 89 | &.input-sm { 90 | padding: $padding-small-vertical $padding-small-horizontal; 91 | font-size: $font-size-small; 92 | border-radius: $input-border-radius-small; 93 | } 94 | &.input-lg { 95 | padding: $padding-large-vertical $padding-large-horizontal; 96 | font-size: $font-size-large; 97 | border-radius: $input-border-radius-large; 98 | } 99 | 100 | // Nuke default margins from checkboxes and radios to vertically center within. 101 | input[type="radio"], 102 | input[type="checkbox"] { 103 | margin-top: 0; 104 | } 105 | } 106 | 107 | // Reset rounded corners 108 | .input-group .form-control:first-child, 109 | .input-group-addon:first-child, 110 | .input-group-btn:first-child > .btn, 111 | .input-group-btn:first-child > .btn-group > .btn, 112 | .input-group-btn:first-child > .dropdown-toggle, 113 | .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), 114 | .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { 115 | @include border-right-radius(0); 116 | } 117 | .input-group-addon:first-child { 118 | border-right: 0; 119 | } 120 | .input-group .form-control:last-child, 121 | .input-group-addon:last-child, 122 | .input-group-btn:last-child > .btn, 123 | .input-group-btn:last-child > .btn-group > .btn, 124 | .input-group-btn:last-child > .dropdown-toggle, 125 | .input-group-btn:first-child > .btn:not(:first-child), 126 | .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { 127 | @include border-left-radius(0); 128 | } 129 | .input-group-addon:last-child { 130 | border-left: 0; 131 | } 132 | 133 | // Button input groups 134 | // ------------------------- 135 | .input-group-btn { 136 | position: relative; 137 | // Jankily prevent input button groups from wrapping with `white-space` and 138 | // `font-size` in combination with `inline-block` on buttons. 139 | font-size: 0; 140 | white-space: nowrap; 141 | 142 | // Negative margin for spacing, position for bringing hovered/focused/actived 143 | // element above the siblings. 144 | > .btn { 145 | position: relative; 146 | + .btn { 147 | margin-left: -1px; 148 | } 149 | // Bring the "active" button to the front 150 | &:hover, 151 | &:focus, 152 | &:active { 153 | z-index: 2; 154 | } 155 | } 156 | 157 | // Negative margin to only have a 1px border between the two 158 | &:first-child { 159 | > .btn, 160 | > .btn-group { 161 | margin-right: -1px; 162 | } 163 | } 164 | &:last-child { 165 | > .btn, 166 | > .btn-group { 167 | z-index: 2; 168 | margin-left: -1px; 169 | } 170 | } 171 | } 172 | -------------------------------------------------------------------------------- /_sass/bootstrap/_jumbotron.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Jumbotron 3 | // -------------------------------------------------- 4 | 5 | 6 | .jumbotron { 7 | padding-top: $jumbotron-padding; 8 | padding-bottom: $jumbotron-padding; 9 | margin-bottom: $jumbotron-padding; 10 | color: $jumbotron-color; 11 | background-color: $jumbotron-bg; 12 | 13 | h1, 14 | .h1 { 15 | color: $jumbotron-heading-color; 16 | } 17 | 18 | p { 19 | margin-bottom: ($jumbotron-padding / 2); 20 | font-size: $jumbotron-font-size; 21 | font-weight: 200; 22 | } 23 | 24 | > hr { 25 | border-top-color: darken($jumbotron-bg, 10%); 26 | } 27 | 28 | .container &, 29 | .container-fluid & { 30 | border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container 31 | padding-left: ($grid-gutter-width / 2); 32 | padding-right: ($grid-gutter-width / 2); 33 | } 34 | 35 | .container { 36 | max-width: 100%; 37 | } 38 | 39 | @media screen and (min-width: $screen-sm-min) { 40 | padding-top: ($jumbotron-padding * 1.6); 41 | padding-bottom: ($jumbotron-padding * 1.6); 42 | 43 | .container &, 44 | .container-fluid & { 45 | padding-left: ($jumbotron-padding * 2); 46 | padding-right: ($jumbotron-padding * 2); 47 | } 48 | 49 | h1, 50 | .h1 { 51 | font-size: $jumbotron-heading-font-size; 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /_sass/bootstrap/_labels.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Labels 3 | // -------------------------------------------------- 4 | 5 | .label { 6 | display: inline; 7 | padding: .2em .6em .3em; 8 | font-size: 75%; 9 | font-weight: bold; 10 | line-height: 1; 11 | color: $label-color; 12 | text-align: center; 13 | white-space: nowrap; 14 | vertical-align: baseline; 15 | border-radius: .25em; 16 | 17 | // [converter] extracted a& to a.label 18 | 19 | // Empty labels collapse automatically (not available in IE8) 20 | &:empty { 21 | display: none; 22 | } 23 | 24 | // Quick fix for labels in buttons 25 | .btn & { 26 | position: relative; 27 | top: -1px; 28 | } 29 | } 30 | 31 | // Add hover effects, but only for links 32 | a.label { 33 | &:hover, 34 | &:focus { 35 | color: $label-link-hover-color; 36 | text-decoration: none; 37 | cursor: pointer; 38 | } 39 | } 40 | 41 | // Colors 42 | // Contextual variations (linked labels get darker on :hover) 43 | 44 | .label-default { 45 | @include label-variant($label-default-bg); 46 | } 47 | 48 | .label-primary { 49 | @include label-variant($label-primary-bg); 50 | } 51 | 52 | .label-success { 53 | @include label-variant($label-success-bg); 54 | } 55 | 56 | .label-info { 57 | @include label-variant($label-info-bg); 58 | } 59 | 60 | .label-warning { 61 | @include label-variant($label-warning-bg); 62 | } 63 | 64 | .label-danger { 65 | @include label-variant($label-danger-bg); 66 | } 67 | -------------------------------------------------------------------------------- /_sass/bootstrap/_list-group.scss: -------------------------------------------------------------------------------- 1 | // 2 | // List groups 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | // 8 | // Easily usable on
    ,
      , or
      . 9 | 10 | .list-group { 11 | // No need to set list-style: none; since .list-group-item is block level 12 | margin-bottom: 20px; 13 | padding-left: 0; // reset padding because ul and ol 14 | } 15 | 16 | 17 | // Individual list items 18 | // 19 | // Use on `li`s or `div`s within the `.list-group` parent. 20 | 21 | .list-group-item { 22 | position: relative; 23 | display: block; 24 | padding: 10px 15px; 25 | // Place the border on the list items and negative margin up for better styling 26 | margin-bottom: -1px; 27 | background-color: $list-group-bg; 28 | border: 1px solid $list-group-border; 29 | 30 | // Round the first and last items 31 | &:first-child { 32 | @include border-top-radius($list-group-border-radius); 33 | } 34 | &:last-child { 35 | margin-bottom: 0; 36 | @include border-bottom-radius($list-group-border-radius); 37 | } 38 | } 39 | 40 | 41 | // Interactive list items 42 | // 43 | // Use anchor or button elements instead of `li`s or `div`s to create interactive items. 44 | // Includes an extra `.active` modifier class for showing selected items. 45 | 46 | a.list-group-item, 47 | button.list-group-item { 48 | color: $list-group-link-color; 49 | 50 | .list-group-item-heading { 51 | color: $list-group-link-heading-color; 52 | } 53 | 54 | // Hover state 55 | &:hover, 56 | &:focus { 57 | text-decoration: none; 58 | color: $list-group-link-hover-color; 59 | background-color: $list-group-hover-bg; 60 | } 61 | } 62 | 63 | button.list-group-item { 64 | width: 100%; 65 | text-align: left; 66 | } 67 | 68 | .list-group-item { 69 | // Disabled state 70 | &.disabled, 71 | &.disabled:hover, 72 | &.disabled:focus { 73 | background-color: $list-group-disabled-bg; 74 | color: $list-group-disabled-color; 75 | cursor: $cursor-disabled; 76 | 77 | // Force color to inherit for custom content 78 | .list-group-item-heading { 79 | color: inherit; 80 | } 81 | .list-group-item-text { 82 | color: $list-group-disabled-text-color; 83 | } 84 | } 85 | 86 | // Active class on item itself, not parent 87 | &.active, 88 | &.active:hover, 89 | &.active:focus { 90 | z-index: 2; // Place active items above their siblings for proper border styling 91 | color: $list-group-active-color; 92 | background-color: $list-group-active-bg; 93 | border-color: $list-group-active-border; 94 | 95 | // Force color to inherit for custom content 96 | .list-group-item-heading, 97 | .list-group-item-heading > small, 98 | .list-group-item-heading > .small { 99 | color: inherit; 100 | } 101 | .list-group-item-text { 102 | color: $list-group-active-text-color; 103 | } 104 | } 105 | } 106 | 107 | 108 | // Contextual variants 109 | // 110 | // Add modifier classes to change text and background color on individual items. 111 | // Organizationally, this must come after the `:hover` states. 112 | 113 | @include list-group-item-variant(success, $state-success-bg, $state-success-text); 114 | @include list-group-item-variant(info, $state-info-bg, $state-info-text); 115 | @include list-group-item-variant(warning, $state-warning-bg, $state-warning-text); 116 | @include list-group-item-variant(danger, $state-danger-bg, $state-danger-text); 117 | 118 | 119 | // Custom content options 120 | // 121 | // Extra classes for creating well-formatted content within `.list-group-item`s. 122 | 123 | .list-group-item-heading { 124 | margin-top: 0; 125 | margin-bottom: 5px; 126 | } 127 | .list-group-item-text { 128 | margin-bottom: 0; 129 | line-height: 1.3; 130 | } 131 | -------------------------------------------------------------------------------- /_sass/bootstrap/_media.scss: -------------------------------------------------------------------------------- 1 | .media { 2 | // Proper spacing between instances of .media 3 | margin-top: 15px; 4 | 5 | &:first-child { 6 | margin-top: 0; 7 | } 8 | } 9 | 10 | .media, 11 | .media-body { 12 | zoom: 1; 13 | overflow: hidden; 14 | } 15 | 16 | .media-body { 17 | width: 10000px; 18 | } 19 | 20 | .media-object { 21 | display: block; 22 | 23 | // Fix collapse in webkit from max-width: 100% and display: table-cell. 24 | &.img-thumbnail { 25 | max-width: none; 26 | } 27 | } 28 | 29 | .media-right, 30 | .media > .pull-right { 31 | padding-left: 10px; 32 | } 33 | 34 | .media-left, 35 | .media > .pull-left { 36 | padding-right: 10px; 37 | } 38 | 39 | .media-left, 40 | .media-right, 41 | .media-body { 42 | display: table-cell; 43 | vertical-align: top; 44 | } 45 | 46 | .media-middle { 47 | vertical-align: middle; 48 | } 49 | 50 | .media-bottom { 51 | vertical-align: bottom; 52 | } 53 | 54 | // Reset margins on headings for tighter default spacing 55 | .media-heading { 56 | margin-top: 0; 57 | margin-bottom: 5px; 58 | } 59 | 60 | // Media list variation 61 | // 62 | // Undo default ul/ol styles 63 | .media-list { 64 | padding-left: 0; 65 | list-style: none; 66 | } 67 | -------------------------------------------------------------------------------- /_sass/bootstrap/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------------------------------- 3 | 4 | // Utilities 5 | @import "mixins/hide-text"; 6 | @import "mixins/opacity"; 7 | @import "mixins/image"; 8 | @import "mixins/labels"; 9 | @import "mixins/reset-filter"; 10 | @import "mixins/resize"; 11 | @import "mixins/responsive-visibility"; 12 | @import "mixins/size"; 13 | @import "mixins/tab-focus"; 14 | @import "mixins/reset-text"; 15 | @import "mixins/text-emphasis"; 16 | @import "mixins/text-overflow"; 17 | @import "mixins/vendor-prefixes"; 18 | 19 | // Components 20 | @import "mixins/alerts"; 21 | @import "mixins/buttons"; 22 | @import "mixins/panels"; 23 | @import "mixins/pagination"; 24 | @import "mixins/list-group"; 25 | @import "mixins/nav-divider"; 26 | @import "mixins/forms"; 27 | @import "mixins/progress-bar"; 28 | @import "mixins/table-row"; 29 | 30 | // Skins 31 | @import "mixins/background-variant"; 32 | @import "mixins/border-radius"; 33 | @import "mixins/gradients"; 34 | 35 | // Layout 36 | @import "mixins/clearfix"; 37 | @import "mixins/center-block"; 38 | @import "mixins/nav-vertical-align"; 39 | @import "mixins/grid-framework"; 40 | @import "mixins/grid"; 41 | -------------------------------------------------------------------------------- /_sass/bootstrap/_modals.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Modals 3 | // -------------------------------------------------- 4 | 5 | // .modal-open - body class for killing the scroll 6 | // .modal - container to scroll within 7 | // .modal-dialog - positioning shell for the actual modal 8 | // .modal-content - actual modal w/ bg and corners and shit 9 | 10 | // Kill the scroll on the body 11 | .modal-open { 12 | overflow: hidden; 13 | } 14 | 15 | // Container that the modal scrolls within 16 | .modal { 17 | display: none; 18 | overflow: hidden; 19 | position: fixed; 20 | top: 0; 21 | right: 0; 22 | bottom: 0; 23 | left: 0; 24 | z-index: $zindex-modal; 25 | -webkit-overflow-scrolling: touch; 26 | 27 | // Prevent Chrome on Windows from adding a focus outline. For details, see 28 | // https://github.com/twbs/bootstrap/pull/10951. 29 | outline: 0; 30 | 31 | // When fading in the modal, animate it to slide down 32 | &.fade .modal-dialog { 33 | @include translate(0, -25%); 34 | @include transition-transform(0.3s ease-out); 35 | } 36 | &.in .modal-dialog { @include translate(0, 0) } 37 | } 38 | .modal-open .modal { 39 | overflow-x: hidden; 40 | overflow-y: auto; 41 | } 42 | 43 | // Shell div to position the modal with bottom padding 44 | .modal-dialog { 45 | position: relative; 46 | width: auto; 47 | margin: 10px; 48 | } 49 | 50 | // Actual modal 51 | .modal-content { 52 | position: relative; 53 | background-color: $modal-content-bg; 54 | border: 1px solid $modal-content-fallback-border-color; //old browsers fallback (ie8 etc) 55 | border: 1px solid $modal-content-border-color; 56 | border-radius: $border-radius-large; 57 | @include box-shadow(0 3px 9px rgba(0,0,0,.5)); 58 | background-clip: padding-box; 59 | // Remove focus outline from opened modal 60 | outline: 0; 61 | } 62 | 63 | // Modal background 64 | .modal-backdrop { 65 | position: fixed; 66 | top: 0; 67 | right: 0; 68 | bottom: 0; 69 | left: 0; 70 | z-index: $zindex-modal-background; 71 | background-color: $modal-backdrop-bg; 72 | // Fade for backdrop 73 | &.fade { @include opacity(0); } 74 | &.in { @include opacity($modal-backdrop-opacity); } 75 | } 76 | 77 | // Modal header 78 | // Top section of the modal w/ title and dismiss 79 | .modal-header { 80 | padding: $modal-title-padding; 81 | border-bottom: 1px solid $modal-header-border-color; 82 | @include clearfix; 83 | } 84 | // Close icon 85 | .modal-header .close { 86 | margin-top: -2px; 87 | } 88 | 89 | // Title text within header 90 | .modal-title { 91 | margin: 0; 92 | line-height: $modal-title-line-height; 93 | } 94 | 95 | // Modal body 96 | // Where all modal content resides (sibling of .modal-header and .modal-footer) 97 | .modal-body { 98 | position: relative; 99 | padding: $modal-inner-padding; 100 | } 101 | 102 | // Footer (for actions) 103 | .modal-footer { 104 | padding: $modal-inner-padding; 105 | text-align: right; // right align buttons 106 | border-top: 1px solid $modal-footer-border-color; 107 | @include clearfix; // clear it in case folks use .pull-* classes on buttons 108 | 109 | // Properly space out buttons 110 | .btn + .btn { 111 | margin-left: 5px; 112 | margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs 113 | } 114 | // but override that for button groups 115 | .btn-group .btn + .btn { 116 | margin-left: -1px; 117 | } 118 | // and override it for block buttons as well 119 | .btn-block + .btn-block { 120 | margin-left: 0; 121 | } 122 | } 123 | 124 | // Measure scrollbar width for padding body during modal show/hide 125 | .modal-scrollbar-measure { 126 | position: absolute; 127 | top: -9999px; 128 | width: 50px; 129 | height: 50px; 130 | overflow: scroll; 131 | } 132 | 133 | // Scale up the modal 134 | @media (min-width: $screen-sm-min) { 135 | // Automatically set modal's width for larger viewports 136 | .modal-dialog { 137 | width: $modal-md; 138 | margin: 30px auto; 139 | } 140 | .modal-content { 141 | @include box-shadow(0 5px 15px rgba(0,0,0,.5)); 142 | } 143 | 144 | // Modal sizes 145 | .modal-sm { width: $modal-sm; } 146 | } 147 | 148 | @media (min-width: $screen-md-min) { 149 | .modal-lg { width: $modal-lg; } 150 | } 151 | -------------------------------------------------------------------------------- /_sass/bootstrap/_navs.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Navs 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | // -------------------------------------------------- 8 | 9 | .nav { 10 | margin-bottom: 0; 11 | padding-left: 0; // Override default ul/ol 12 | list-style: none; 13 | @include clearfix; 14 | 15 | > li { 16 | position: relative; 17 | display: block; 18 | 19 | > a { 20 | position: relative; 21 | display: block; 22 | padding: $nav-link-padding; 23 | &:hover, 24 | &:focus { 25 | text-decoration: none; 26 | background-color: $nav-link-hover-bg; 27 | } 28 | } 29 | 30 | // Disabled state sets text to gray and nukes hover/tab effects 31 | &.disabled > a { 32 | color: $nav-disabled-link-color; 33 | 34 | &:hover, 35 | &:focus { 36 | color: $nav-disabled-link-hover-color; 37 | text-decoration: none; 38 | background-color: transparent; 39 | cursor: $cursor-disabled; 40 | } 41 | } 42 | } 43 | 44 | // Open dropdowns 45 | .open > a { 46 | &, 47 | &:hover, 48 | &:focus { 49 | background-color: $nav-link-hover-bg; 50 | border-color: $link-color; 51 | } 52 | } 53 | 54 | // Nav dividers (deprecated with v3.0.1) 55 | // 56 | // This should have been removed in v3 with the dropping of `.nav-list`, but 57 | // we missed it. We don't currently support this anywhere, but in the interest 58 | // of maintaining backward compatibility in case you use it, it's deprecated. 59 | .nav-divider { 60 | @include nav-divider; 61 | } 62 | 63 | // Prevent IE8 from misplacing imgs 64 | // 65 | // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 66 | > li > a > img { 67 | max-width: none; 68 | } 69 | } 70 | 71 | 72 | // Tabs 73 | // ------------------------- 74 | 75 | // Give the tabs something to sit on 76 | .nav-tabs { 77 | border-bottom: 1px solid $nav-tabs-border-color; 78 | > li { 79 | float: left; 80 | // Make the list-items overlay the bottom border 81 | margin-bottom: -1px; 82 | 83 | // Actual tabs (as links) 84 | > a { 85 | margin-right: 2px; 86 | line-height: $line-height-base; 87 | border: 1px solid transparent; 88 | border-radius: $border-radius-base $border-radius-base 0 0; 89 | &:hover { 90 | border-color: $nav-tabs-link-hover-border-color $nav-tabs-link-hover-border-color $nav-tabs-border-color; 91 | } 92 | } 93 | 94 | // Active state, and its :hover to override normal :hover 95 | &.active > a { 96 | &, 97 | &:hover, 98 | &:focus { 99 | color: $nav-tabs-active-link-hover-color; 100 | background-color: $nav-tabs-active-link-hover-bg; 101 | border: 1px solid $nav-tabs-active-link-hover-border-color; 102 | border-bottom-color: transparent; 103 | cursor: default; 104 | } 105 | } 106 | } 107 | // pulling this in mainly for less shorthand 108 | &.nav-justified { 109 | @extend .nav-justified; 110 | @extend .nav-tabs-justified; 111 | } 112 | } 113 | 114 | 115 | // Pills 116 | // ------------------------- 117 | .nav-pills { 118 | > li { 119 | float: left; 120 | 121 | // Links rendered as pills 122 | > a { 123 | border-radius: $nav-pills-border-radius; 124 | } 125 | + li { 126 | margin-left: 2px; 127 | } 128 | 129 | // Active state 130 | &.active > a { 131 | &, 132 | &:hover, 133 | &:focus { 134 | color: $nav-pills-active-link-hover-color; 135 | background-color: $nav-pills-active-link-hover-bg; 136 | } 137 | } 138 | } 139 | } 140 | 141 | 142 | // Stacked pills 143 | .nav-stacked { 144 | > li { 145 | float: none; 146 | + li { 147 | margin-top: 2px; 148 | margin-left: 0; // no need for this gap between nav items 149 | } 150 | } 151 | } 152 | 153 | 154 | // Nav variations 155 | // -------------------------------------------------- 156 | 157 | // Justified nav links 158 | // ------------------------- 159 | 160 | .nav-justified { 161 | width: 100%; 162 | 163 | > li { 164 | float: none; 165 | > a { 166 | text-align: center; 167 | margin-bottom: 5px; 168 | } 169 | } 170 | 171 | > .dropdown .dropdown-menu { 172 | top: auto; 173 | left: auto; 174 | } 175 | 176 | @media (min-width: $screen-sm-min) { 177 | > li { 178 | display: table-cell; 179 | width: 1%; 180 | > a { 181 | margin-bottom: 0; 182 | } 183 | } 184 | } 185 | } 186 | 187 | // Move borders to anchors instead of bottom of list 188 | // 189 | // Mixin for adding on top the shared `.nav-justified` styles for our tabs 190 | .nav-tabs-justified { 191 | border-bottom: 0; 192 | 193 | > li > a { 194 | // Override margin from .nav-tabs 195 | margin-right: 0; 196 | border-radius: $border-radius-base; 197 | } 198 | 199 | > .active > a, 200 | > .active > a:hover, 201 | > .active > a:focus { 202 | border: 1px solid $nav-tabs-justified-link-border-color; 203 | } 204 | 205 | @media (min-width: $screen-sm-min) { 206 | > li > a { 207 | border-bottom: 1px solid $nav-tabs-justified-link-border-color; 208 | border-radius: $border-radius-base $border-radius-base 0 0; 209 | } 210 | > .active > a, 211 | > .active > a:hover, 212 | > .active > a:focus { 213 | border-bottom-color: $nav-tabs-justified-active-link-border-color; 214 | } 215 | } 216 | } 217 | 218 | 219 | // Tabbable tabs 220 | // ------------------------- 221 | 222 | // Hide tabbable panes to start, show them when `.active` 223 | .tab-content { 224 | > .tab-pane { 225 | display: none; 226 | } 227 | > .active { 228 | display: block; 229 | } 230 | } 231 | 232 | 233 | // Dropdowns 234 | // ------------------------- 235 | 236 | // Specific dropdowns 237 | .nav-tabs .dropdown-menu { 238 | // make dropdown border overlap tab border 239 | margin-top: -1px; 240 | // Remove the top rounded corners here since there is a hard edge above the menu 241 | @include border-top-radius(0); 242 | } 243 | -------------------------------------------------------------------------------- /_sass/bootstrap/_pager.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | 6 | .pager { 7 | padding-left: 0; 8 | margin: $line-height-computed 0; 9 | list-style: none; 10 | text-align: center; 11 | @include clearfix; 12 | li { 13 | display: inline; 14 | > a, 15 | > span { 16 | display: inline-block; 17 | padding: 5px 14px; 18 | background-color: $pager-bg; 19 | border: 1px solid $pager-border; 20 | border-radius: $pager-border-radius; 21 | } 22 | 23 | > a:hover, 24 | > a:focus { 25 | text-decoration: none; 26 | background-color: $pager-hover-bg; 27 | } 28 | } 29 | 30 | .next { 31 | > a, 32 | > span { 33 | float: right; 34 | } 35 | } 36 | 37 | .previous { 38 | > a, 39 | > span { 40 | float: left; 41 | } 42 | } 43 | 44 | .disabled { 45 | > a, 46 | > a:hover, 47 | > a:focus, 48 | > span { 49 | color: $pager-disabled-color; 50 | background-color: $pager-bg; 51 | cursor: $cursor-disabled; 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /_sass/bootstrap/_pagination.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pagination (multiple pages) 3 | // -------------------------------------------------- 4 | .pagination { 5 | display: inline-block; 6 | padding-left: 0; 7 | margin: $line-height-computed 0; 8 | border-radius: $border-radius-base; 9 | 10 | > li { 11 | display: inline; // Remove list-style and block-level defaults 12 | > a, 13 | > span { 14 | position: relative; 15 | float: left; // Collapse white-space 16 | padding: $padding-base-vertical $padding-base-horizontal; 17 | line-height: $line-height-base; 18 | text-decoration: none; 19 | color: $pagination-color; 20 | background-color: $pagination-bg; 21 | border: 1px solid $pagination-border; 22 | margin-left: -1px; 23 | } 24 | &:first-child { 25 | > a, 26 | > span { 27 | margin-left: 0; 28 | @include border-left-radius($border-radius-base); 29 | } 30 | } 31 | &:last-child { 32 | > a, 33 | > span { 34 | @include border-right-radius($border-radius-base); 35 | } 36 | } 37 | } 38 | 39 | > li > a, 40 | > li > span { 41 | &:hover, 42 | &:focus { 43 | z-index: 2; 44 | color: $pagination-hover-color; 45 | background-color: $pagination-hover-bg; 46 | border-color: $pagination-hover-border; 47 | } 48 | } 49 | 50 | > .active > a, 51 | > .active > span { 52 | &, 53 | &:hover, 54 | &:focus { 55 | z-index: 3; 56 | color: $pagination-active-color; 57 | background-color: $pagination-active-bg; 58 | border-color: $pagination-active-border; 59 | cursor: default; 60 | } 61 | } 62 | 63 | > .disabled { 64 | > span, 65 | > span:hover, 66 | > span:focus, 67 | > a, 68 | > a:hover, 69 | > a:focus { 70 | color: $pagination-disabled-color; 71 | background-color: $pagination-disabled-bg; 72 | border-color: $pagination-disabled-border; 73 | cursor: $cursor-disabled; 74 | } 75 | } 76 | } 77 | 78 | // Sizing 79 | // -------------------------------------------------- 80 | 81 | // Large 82 | .pagination-lg { 83 | @include pagination-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $border-radius-large); 84 | } 85 | 86 | // Small 87 | .pagination-sm { 88 | @include pagination-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $border-radius-small); 89 | } 90 | -------------------------------------------------------------------------------- /_sass/bootstrap/_popovers.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Popovers 3 | // -------------------------------------------------- 4 | 5 | 6 | .popover { 7 | position: absolute; 8 | top: 0; 9 | left: 0; 10 | z-index: $zindex-popover; 11 | display: none; 12 | max-width: $popover-max-width; 13 | padding: 1px; 14 | // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element. 15 | // So reset our font and text properties to avoid inheriting weird values. 16 | @include reset-text; 17 | font-size: $font-size-base; 18 | 19 | background-color: $popover-bg; 20 | background-clip: padding-box; 21 | border: 1px solid $popover-fallback-border-color; 22 | border: 1px solid $popover-border-color; 23 | border-radius: $border-radius-large; 24 | @include box-shadow(0 5px 10px rgba(0,0,0,.2)); 25 | 26 | // Offset the popover to account for the popover arrow 27 | &.top { margin-top: -$popover-arrow-width; } 28 | &.right { margin-left: $popover-arrow-width; } 29 | &.bottom { margin-top: $popover-arrow-width; } 30 | &.left { margin-left: -$popover-arrow-width; } 31 | } 32 | 33 | .popover-title { 34 | margin: 0; // reset heading margin 35 | padding: 8px 14px; 36 | font-size: $font-size-base; 37 | background-color: $popover-title-bg; 38 | border-bottom: 1px solid darken($popover-title-bg, 5%); 39 | border-radius: ($border-radius-large - 1) ($border-radius-large - 1) 0 0; 40 | } 41 | 42 | .popover-content { 43 | padding: 9px 14px; 44 | } 45 | 46 | // Arrows 47 | // 48 | // .arrow is outer, .arrow:after is inner 49 | 50 | .popover > .arrow { 51 | &, 52 | &:after { 53 | position: absolute; 54 | display: block; 55 | width: 0; 56 | height: 0; 57 | border-color: transparent; 58 | border-style: solid; 59 | } 60 | } 61 | .popover > .arrow { 62 | border-width: $popover-arrow-outer-width; 63 | } 64 | .popover > .arrow:after { 65 | border-width: $popover-arrow-width; 66 | content: ""; 67 | } 68 | 69 | .popover { 70 | &.top > .arrow { 71 | left: 50%; 72 | margin-left: -$popover-arrow-outer-width; 73 | border-bottom-width: 0; 74 | border-top-color: $popover-arrow-outer-fallback-color; // IE8 fallback 75 | border-top-color: $popover-arrow-outer-color; 76 | bottom: -$popover-arrow-outer-width; 77 | &:after { 78 | content: " "; 79 | bottom: 1px; 80 | margin-left: -$popover-arrow-width; 81 | border-bottom-width: 0; 82 | border-top-color: $popover-arrow-color; 83 | } 84 | } 85 | &.right > .arrow { 86 | top: 50%; 87 | left: -$popover-arrow-outer-width; 88 | margin-top: -$popover-arrow-outer-width; 89 | border-left-width: 0; 90 | border-right-color: $popover-arrow-outer-fallback-color; // IE8 fallback 91 | border-right-color: $popover-arrow-outer-color; 92 | &:after { 93 | content: " "; 94 | left: 1px; 95 | bottom: -$popover-arrow-width; 96 | border-left-width: 0; 97 | border-right-color: $popover-arrow-color; 98 | } 99 | } 100 | &.bottom > .arrow { 101 | left: 50%; 102 | margin-left: -$popover-arrow-outer-width; 103 | border-top-width: 0; 104 | border-bottom-color: $popover-arrow-outer-fallback-color; // IE8 fallback 105 | border-bottom-color: $popover-arrow-outer-color; 106 | top: -$popover-arrow-outer-width; 107 | &:after { 108 | content: " "; 109 | top: 1px; 110 | margin-left: -$popover-arrow-width; 111 | border-top-width: 0; 112 | border-bottom-color: $popover-arrow-color; 113 | } 114 | } 115 | 116 | &.left > .arrow { 117 | top: 50%; 118 | right: -$popover-arrow-outer-width; 119 | margin-top: -$popover-arrow-outer-width; 120 | border-right-width: 0; 121 | border-left-color: $popover-arrow-outer-fallback-color; // IE8 fallback 122 | border-left-color: $popover-arrow-outer-color; 123 | &:after { 124 | content: " "; 125 | right: 1px; 126 | border-right-width: 0; 127 | border-left-color: $popover-arrow-color; 128 | bottom: -$popover-arrow-width; 129 | } 130 | } 131 | } 132 | -------------------------------------------------------------------------------- /_sass/bootstrap/_print.scss: -------------------------------------------------------------------------------- 1 | /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ 2 | 3 | // ========================================================================== 4 | // Print styles. 5 | // Inlined to avoid the additional HTTP request: h5bp.com/r 6 | // ========================================================================== 7 | 8 | @media print { 9 | *, 10 | *:before, 11 | *:after { 12 | background: transparent !important; 13 | color: #000 !important; // Black prints faster: h5bp.com/s 14 | box-shadow: none !important; 15 | text-shadow: none !important; 16 | } 17 | 18 | a, 19 | a:visited { 20 | text-decoration: underline; 21 | } 22 | 23 | a[href]:after { 24 | content: " (" attr(href) ")"; 25 | } 26 | 27 | abbr[title]:after { 28 | content: " (" attr(title) ")"; 29 | } 30 | 31 | // Don't show links that are fragment identifiers, 32 | // or use the `javascript:` pseudo protocol 33 | a[href^="#"]:after, 34 | a[href^="javascript:"]:after { 35 | content: ""; 36 | } 37 | 38 | pre, 39 | blockquote { 40 | border: 1px solid #999; 41 | page-break-inside: avoid; 42 | } 43 | 44 | thead { 45 | display: table-header-group; // h5bp.com/t 46 | } 47 | 48 | tr, 49 | img { 50 | page-break-inside: avoid; 51 | } 52 | 53 | img { 54 | max-width: 100% !important; 55 | } 56 | 57 | p, 58 | h2, 59 | h3 { 60 | orphans: 3; 61 | widows: 3; 62 | } 63 | 64 | h2, 65 | h3 { 66 | page-break-after: avoid; 67 | } 68 | 69 | // Bootstrap specific changes start 70 | 71 | // Bootstrap components 72 | .navbar { 73 | display: none; 74 | } 75 | .btn, 76 | .dropup > .btn { 77 | > .caret { 78 | border-top-color: #000 !important; 79 | } 80 | } 81 | .label { 82 | border: 1px solid #000; 83 | } 84 | 85 | .table { 86 | border-collapse: collapse !important; 87 | 88 | td, 89 | th { 90 | background-color: #fff !important; 91 | } 92 | } 93 | .table-bordered { 94 | th, 95 | td { 96 | border: 1px solid #ddd !important; 97 | } 98 | } 99 | 100 | // Bootstrap specific changes end 101 | } 102 | -------------------------------------------------------------------------------- /_sass/bootstrap/_progress-bars.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Progress bars 3 | // -------------------------------------------------- 4 | 5 | 6 | // Bar animations 7 | // ------------------------- 8 | 9 | // WebKit 10 | @-webkit-keyframes progress-bar-stripes { 11 | from { background-position: 40px 0; } 12 | to { background-position: 0 0; } 13 | } 14 | 15 | // Spec and IE10+ 16 | @keyframes progress-bar-stripes { 17 | from { background-position: 40px 0; } 18 | to { background-position: 0 0; } 19 | } 20 | 21 | 22 | // Bar itself 23 | // ------------------------- 24 | 25 | // Outer container 26 | .progress { 27 | overflow: hidden; 28 | height: $line-height-computed; 29 | margin-bottom: $line-height-computed; 30 | background-color: $progress-bg; 31 | border-radius: $progress-border-radius; 32 | @include box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); 33 | } 34 | 35 | // Bar of progress 36 | .progress-bar { 37 | float: left; 38 | width: 0%; 39 | height: 100%; 40 | font-size: $font-size-small; 41 | line-height: $line-height-computed; 42 | color: $progress-bar-color; 43 | text-align: center; 44 | background-color: $progress-bar-bg; 45 | @include box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); 46 | @include transition(width .6s ease); 47 | } 48 | 49 | // Striped bars 50 | // 51 | // `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the 52 | // `.progress-bar-striped` class, which you just add to an existing 53 | // `.progress-bar`. 54 | .progress-striped .progress-bar, 55 | .progress-bar-striped { 56 | @include gradient-striped; 57 | background-size: 40px 40px; 58 | } 59 | 60 | // Call animation for the active one 61 | // 62 | // `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the 63 | // `.progress-bar.active` approach. 64 | .progress.active .progress-bar, 65 | .progress-bar.active { 66 | @include animation(progress-bar-stripes 2s linear infinite); 67 | } 68 | 69 | 70 | // Variations 71 | // ------------------------- 72 | 73 | .progress-bar-success { 74 | @include progress-bar-variant($progress-bar-success-bg); 75 | } 76 | 77 | .progress-bar-info { 78 | @include progress-bar-variant($progress-bar-info-bg); 79 | } 80 | 81 | .progress-bar-warning { 82 | @include progress-bar-variant($progress-bar-warning-bg); 83 | } 84 | 85 | .progress-bar-danger { 86 | @include progress-bar-variant($progress-bar-danger-bg); 87 | } 88 | -------------------------------------------------------------------------------- /_sass/bootstrap/_responsive-embed.scss: -------------------------------------------------------------------------------- 1 | // Embeds responsive 2 | // 3 | // Credit: Nicolas Gallagher and SUIT CSS. 4 | 5 | .embed-responsive { 6 | position: relative; 7 | display: block; 8 | height: 0; 9 | padding: 0; 10 | overflow: hidden; 11 | 12 | .embed-responsive-item, 13 | iframe, 14 | embed, 15 | object, 16 | video { 17 | position: absolute; 18 | top: 0; 19 | left: 0; 20 | bottom: 0; 21 | height: 100%; 22 | width: 100%; 23 | border: 0; 24 | } 25 | } 26 | 27 | // Modifier class for 16:9 aspect ratio 28 | .embed-responsive-16by9 { 29 | padding-bottom: 56.25%; 30 | } 31 | 32 | // Modifier class for 4:3 aspect ratio 33 | .embed-responsive-4by3 { 34 | padding-bottom: 75%; 35 | } 36 | -------------------------------------------------------------------------------- /_sass/bootstrap/_responsive-utilities.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // IE10 in Windows (Phone) 8 7 | // 8 | // Support for responsive views via media queries is kind of borked in IE10, for 9 | // Surface/desktop in split view and for Windows Phone 8. This particular fix 10 | // must be accompanied by a snippet of JavaScript to sniff the user agent and 11 | // apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at 12 | // our Getting Started page for more information on this bug. 13 | // 14 | // For more information, see the following: 15 | // 16 | // Issue: https://github.com/twbs/bootstrap/issues/10497 17 | // Docs: http://getbootstrap.com/getting-started/#support-ie10-width 18 | // Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ 19 | // Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ 20 | 21 | @at-root { 22 | @-ms-viewport { 23 | width: device-width; 24 | } 25 | } 26 | 27 | 28 | // Visibility utilities 29 | // Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0 30 | 31 | @include responsive-invisibility('.visible-xs'); 32 | @include responsive-invisibility('.visible-sm'); 33 | @include responsive-invisibility('.visible-md'); 34 | @include responsive-invisibility('.visible-lg'); 35 | 36 | .visible-xs-block, 37 | .visible-xs-inline, 38 | .visible-xs-inline-block, 39 | .visible-sm-block, 40 | .visible-sm-inline, 41 | .visible-sm-inline-block, 42 | .visible-md-block, 43 | .visible-md-inline, 44 | .visible-md-inline-block, 45 | .visible-lg-block, 46 | .visible-lg-inline, 47 | .visible-lg-inline-block { 48 | display: none !important; 49 | } 50 | 51 | @media (max-width: $screen-xs-max) { 52 | @include responsive-visibility('.visible-xs'); 53 | } 54 | .visible-xs-block { 55 | @media (max-width: $screen-xs-max) { 56 | display: block !important; 57 | } 58 | } 59 | .visible-xs-inline { 60 | @media (max-width: $screen-xs-max) { 61 | display: inline !important; 62 | } 63 | } 64 | .visible-xs-inline-block { 65 | @media (max-width: $screen-xs-max) { 66 | display: inline-block !important; 67 | } 68 | } 69 | 70 | @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { 71 | @include responsive-visibility('.visible-sm'); 72 | } 73 | .visible-sm-block { 74 | @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { 75 | display: block !important; 76 | } 77 | } 78 | .visible-sm-inline { 79 | @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { 80 | display: inline !important; 81 | } 82 | } 83 | .visible-sm-inline-block { 84 | @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { 85 | display: inline-block !important; 86 | } 87 | } 88 | 89 | @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { 90 | @include responsive-visibility('.visible-md'); 91 | } 92 | .visible-md-block { 93 | @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { 94 | display: block !important; 95 | } 96 | } 97 | .visible-md-inline { 98 | @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { 99 | display: inline !important; 100 | } 101 | } 102 | .visible-md-inline-block { 103 | @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { 104 | display: inline-block !important; 105 | } 106 | } 107 | 108 | @media (min-width: $screen-lg-min) { 109 | @include responsive-visibility('.visible-lg'); 110 | } 111 | .visible-lg-block { 112 | @media (min-width: $screen-lg-min) { 113 | display: block !important; 114 | } 115 | } 116 | .visible-lg-inline { 117 | @media (min-width: $screen-lg-min) { 118 | display: inline !important; 119 | } 120 | } 121 | .visible-lg-inline-block { 122 | @media (min-width: $screen-lg-min) { 123 | display: inline-block !important; 124 | } 125 | } 126 | 127 | @media (max-width: $screen-xs-max) { 128 | @include responsive-invisibility('.hidden-xs'); 129 | } 130 | 131 | @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { 132 | @include responsive-invisibility('.hidden-sm'); 133 | } 134 | 135 | @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { 136 | @include responsive-invisibility('.hidden-md'); 137 | } 138 | 139 | @media (min-width: $screen-lg-min) { 140 | @include responsive-invisibility('.hidden-lg'); 141 | } 142 | 143 | 144 | // Print utilities 145 | // 146 | // Media queries are placed on the inside to be mixin-friendly. 147 | 148 | // Note: Deprecated .visible-print as of v3.2.0 149 | 150 | @include responsive-invisibility('.visible-print'); 151 | 152 | @media print { 153 | @include responsive-visibility('.visible-print'); 154 | } 155 | .visible-print-block { 156 | display: none !important; 157 | 158 | @media print { 159 | display: block !important; 160 | } 161 | } 162 | .visible-print-inline { 163 | display: none !important; 164 | 165 | @media print { 166 | display: inline !important; 167 | } 168 | } 169 | .visible-print-inline-block { 170 | display: none !important; 171 | 172 | @media print { 173 | display: inline-block !important; 174 | } 175 | } 176 | 177 | @media print { 178 | @include responsive-invisibility('.hidden-print'); 179 | } 180 | -------------------------------------------------------------------------------- /_sass/bootstrap/_scaffolding.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Scaffolding 3 | // -------------------------------------------------- 4 | 5 | 6 | // Reset the box-sizing 7 | // 8 | // Heads up! This reset may cause conflicts with some third-party widgets. 9 | // For recommendations on resolving such conflicts, see 10 | // http://getbootstrap.com/getting-started/#third-box-sizing 11 | * { 12 | @include box-sizing(border-box); 13 | } 14 | *:before, 15 | *:after { 16 | @include box-sizing(border-box); 17 | } 18 | 19 | 20 | // Body reset 21 | 22 | html { 23 | font-size: 10px; 24 | -webkit-tap-highlight-color: rgba(0,0,0,0); 25 | } 26 | 27 | body { 28 | font-family: $font-family-base; 29 | font-size: $font-size-base; 30 | line-height: $line-height-base; 31 | color: $text-color; 32 | background-color: $body-bg; 33 | } 34 | 35 | // Reset fonts for relevant elements 36 | input, 37 | button, 38 | select, 39 | textarea { 40 | font-family: inherit; 41 | font-size: inherit; 42 | line-height: inherit; 43 | } 44 | 45 | 46 | // Links 47 | 48 | a { 49 | color: $link-color; 50 | text-decoration: none; 51 | 52 | &:hover, 53 | &:focus { 54 | color: $link-hover-color; 55 | text-decoration: $link-hover-decoration; 56 | } 57 | 58 | &:focus { 59 | @include tab-focus; 60 | } 61 | } 62 | 63 | 64 | // Figures 65 | // 66 | // We reset this here because previously Normalize had no `figure` margins. This 67 | // ensures we don't break anyone's use of the element. 68 | 69 | figure { 70 | margin: 0; 71 | } 72 | 73 | 74 | // Images 75 | 76 | img { 77 | vertical-align: middle; 78 | } 79 | 80 | // Responsive images (ensure images don't scale beyond their parents) 81 | .img-responsive { 82 | @include img-responsive; 83 | } 84 | 85 | // Rounded corners 86 | .img-rounded { 87 | border-radius: $border-radius-large; 88 | } 89 | 90 | // Image thumbnails 91 | // 92 | // Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`. 93 | .img-thumbnail { 94 | padding: $thumbnail-padding; 95 | line-height: $line-height-base; 96 | background-color: $thumbnail-bg; 97 | border: 1px solid $thumbnail-border; 98 | border-radius: $thumbnail-border-radius; 99 | @include transition(all .2s ease-in-out); 100 | 101 | // Keep them at most 100% wide 102 | @include img-responsive(inline-block); 103 | } 104 | 105 | // Perfect circle 106 | .img-circle { 107 | border-radius: 50%; // set radius in percents 108 | } 109 | 110 | 111 | // Horizontal rules 112 | 113 | hr { 114 | margin-top: $line-height-computed; 115 | margin-bottom: $line-height-computed; 116 | border: 0; 117 | border-top: 1px solid $hr-border; 118 | } 119 | 120 | 121 | // Only display content to screen readers 122 | // 123 | // See: http://a11yproject.com/posts/how-to-hide-content 124 | 125 | .sr-only { 126 | position: absolute; 127 | width: 1px; 128 | height: 1px; 129 | margin: -1px; 130 | padding: 0; 131 | overflow: hidden; 132 | clip: rect(0,0,0,0); 133 | border: 0; 134 | } 135 | 136 | // Use in conjunction with .sr-only to only display content when it's focused. 137 | // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 138 | // Credit: HTML5 Boilerplate 139 | 140 | .sr-only-focusable { 141 | &:active, 142 | &:focus { 143 | position: static; 144 | width: auto; 145 | height: auto; 146 | margin: 0; 147 | overflow: visible; 148 | clip: auto; 149 | } 150 | } 151 | 152 | 153 | // iOS "clickable elements" fix for role="button" 154 | // 155 | // Fixes "clickability" issue (and more generally, the firing of events such as focus as well) 156 | // for traditionally non-focusable elements with role="button" 157 | // see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile 158 | 159 | [role="button"] { 160 | cursor: pointer; 161 | } 162 | -------------------------------------------------------------------------------- /_sass/bootstrap/_tables.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Tables 3 | // -------------------------------------------------- 4 | 5 | 6 | table { 7 | background-color: $table-bg; 8 | } 9 | caption { 10 | padding-top: $table-cell-padding; 11 | padding-bottom: $table-cell-padding; 12 | color: $text-muted; 13 | text-align: left; 14 | } 15 | th { 16 | text-align: left; 17 | } 18 | 19 | 20 | // Baseline styles 21 | 22 | .table { 23 | width: 100%; 24 | max-width: 100%; 25 | margin-bottom: $line-height-computed; 26 | // Cells 27 | > thead, 28 | > tbody, 29 | > tfoot { 30 | > tr { 31 | > th, 32 | > td { 33 | padding: $table-cell-padding; 34 | line-height: $line-height-base; 35 | vertical-align: top; 36 | border-top: 1px solid $table-border-color; 37 | } 38 | } 39 | } 40 | // Bottom align for column headings 41 | > thead > tr > th { 42 | vertical-align: bottom; 43 | border-bottom: 2px solid $table-border-color; 44 | } 45 | // Remove top border from thead by default 46 | > caption + thead, 47 | > colgroup + thead, 48 | > thead:first-child { 49 | > tr:first-child { 50 | > th, 51 | > td { 52 | border-top: 0; 53 | } 54 | } 55 | } 56 | // Account for multiple tbody instances 57 | > tbody + tbody { 58 | border-top: 2px solid $table-border-color; 59 | } 60 | 61 | // Nesting 62 | .table { 63 | background-color: $body-bg; 64 | } 65 | } 66 | 67 | 68 | // Condensed table w/ half padding 69 | 70 | .table-condensed { 71 | > thead, 72 | > tbody, 73 | > tfoot { 74 | > tr { 75 | > th, 76 | > td { 77 | padding: $table-condensed-cell-padding; 78 | } 79 | } 80 | } 81 | } 82 | 83 | 84 | // Bordered version 85 | // 86 | // Add borders all around the table and between all the columns. 87 | 88 | .table-bordered { 89 | border: 1px solid $table-border-color; 90 | > thead, 91 | > tbody, 92 | > tfoot { 93 | > tr { 94 | > th, 95 | > td { 96 | border: 1px solid $table-border-color; 97 | } 98 | } 99 | } 100 | > thead > tr { 101 | > th, 102 | > td { 103 | border-bottom-width: 2px; 104 | } 105 | } 106 | } 107 | 108 | 109 | // Zebra-striping 110 | // 111 | // Default zebra-stripe styles (alternating gray and transparent backgrounds) 112 | 113 | .table-striped { 114 | > tbody > tr:nth-of-type(odd) { 115 | background-color: $table-bg-accent; 116 | } 117 | } 118 | 119 | 120 | // Hover effect 121 | // 122 | // Placed here since it has to come after the potential zebra striping 123 | 124 | .table-hover { 125 | > tbody > tr:hover { 126 | background-color: $table-bg-hover; 127 | } 128 | } 129 | 130 | 131 | // Table cell sizing 132 | // 133 | // Reset default table behavior 134 | 135 | table col[class*="col-"] { 136 | position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) 137 | float: none; 138 | display: table-column; 139 | } 140 | table { 141 | td, 142 | th { 143 | &[class*="col-"] { 144 | position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) 145 | float: none; 146 | display: table-cell; 147 | } 148 | } 149 | } 150 | 151 | 152 | // Table backgrounds 153 | // 154 | // Exact selectors below required to override `.table-striped` and prevent 155 | // inheritance to nested tables. 156 | 157 | // Generate the contextual variants 158 | @include table-row-variant('active', $table-bg-active); 159 | @include table-row-variant('success', $state-success-bg); 160 | @include table-row-variant('info', $state-info-bg); 161 | @include table-row-variant('warning', $state-warning-bg); 162 | @include table-row-variant('danger', $state-danger-bg); 163 | 164 | 165 | // Responsive tables 166 | // 167 | // Wrap your tables in `.table-responsive` and we'll make them mobile friendly 168 | // by enabling horizontal scrolling. Only applies <768px. Everything above that 169 | // will display normally. 170 | 171 | .table-responsive { 172 | overflow-x: auto; 173 | min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837) 174 | 175 | @media screen and (max-width: $screen-xs-max) { 176 | width: 100%; 177 | margin-bottom: ($line-height-computed * 0.75); 178 | overflow-y: hidden; 179 | -ms-overflow-style: -ms-autohiding-scrollbar; 180 | border: 1px solid $table-border-color; 181 | 182 | // Tighten up spacing 183 | > .table { 184 | margin-bottom: 0; 185 | 186 | // Ensure the content doesn't wrap 187 | > thead, 188 | > tbody, 189 | > tfoot { 190 | > tr { 191 | > th, 192 | > td { 193 | white-space: nowrap; 194 | } 195 | } 196 | } 197 | } 198 | 199 | // Special overrides for the bordered tables 200 | > .table-bordered { 201 | border: 0; 202 | 203 | // Nuke the appropriate borders so that the parent can handle them 204 | > thead, 205 | > tbody, 206 | > tfoot { 207 | > tr { 208 | > th:first-child, 209 | > td:first-child { 210 | border-left: 0; 211 | } 212 | > th:last-child, 213 | > td:last-child { 214 | border-right: 0; 215 | } 216 | } 217 | } 218 | 219 | // Only nuke the last row's bottom-border in `tbody` and `tfoot` since 220 | // chances are there will be only one `tr` in a `thead` and that would 221 | // remove the border altogether. 222 | > tbody, 223 | > tfoot { 224 | > tr:last-child { 225 | > th, 226 | > td { 227 | border-bottom: 0; 228 | } 229 | } 230 | } 231 | 232 | } 233 | } 234 | } 235 | -------------------------------------------------------------------------------- /_sass/bootstrap/_thumbnails.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Mixin and adjust the regular image class 7 | .thumbnail { 8 | display: block; 9 | padding: $thumbnail-padding; 10 | margin-bottom: $line-height-computed; 11 | line-height: $line-height-base; 12 | background-color: $thumbnail-bg; 13 | border: 1px solid $thumbnail-border; 14 | border-radius: $thumbnail-border-radius; 15 | @include transition(border .2s ease-in-out); 16 | 17 | > img, 18 | a > img { 19 | @include img-responsive; 20 | margin-left: auto; 21 | margin-right: auto; 22 | } 23 | 24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active 25 | 26 | // Image captions 27 | .caption { 28 | padding: $thumbnail-caption-padding; 29 | color: $thumbnail-caption-color; 30 | } 31 | } 32 | 33 | // Add a hover state for linked versions only 34 | a.thumbnail:hover, 35 | a.thumbnail:focus, 36 | a.thumbnail.active { 37 | border-color: $link-color; 38 | } 39 | -------------------------------------------------------------------------------- /_sass/bootstrap/_tooltip.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Tooltips 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .tooltip { 8 | position: absolute; 9 | z-index: $zindex-tooltip; 10 | display: block; 11 | // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element. 12 | // So reset our font and text properties to avoid inheriting weird values. 13 | @include reset-text; 14 | font-size: $font-size-small; 15 | 16 | @include opacity(0); 17 | 18 | &.in { @include opacity($tooltip-opacity); } 19 | &.top { margin-top: -3px; padding: $tooltip-arrow-width 0; } 20 | &.right { margin-left: 3px; padding: 0 $tooltip-arrow-width; } 21 | &.bottom { margin-top: 3px; padding: $tooltip-arrow-width 0; } 22 | &.left { margin-left: -3px; padding: 0 $tooltip-arrow-width; } 23 | } 24 | 25 | // Wrapper for the tooltip content 26 | .tooltip-inner { 27 | max-width: $tooltip-max-width; 28 | padding: 3px 8px; 29 | color: $tooltip-color; 30 | text-align: center; 31 | background-color: $tooltip-bg; 32 | border-radius: $border-radius-base; 33 | } 34 | 35 | // Arrows 36 | .tooltip-arrow { 37 | position: absolute; 38 | width: 0; 39 | height: 0; 40 | border-color: transparent; 41 | border-style: solid; 42 | } 43 | // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1 44 | .tooltip { 45 | &.top .tooltip-arrow { 46 | bottom: 0; 47 | left: 50%; 48 | margin-left: -$tooltip-arrow-width; 49 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0; 50 | border-top-color: $tooltip-arrow-color; 51 | } 52 | &.top-left .tooltip-arrow { 53 | bottom: 0; 54 | right: $tooltip-arrow-width; 55 | margin-bottom: -$tooltip-arrow-width; 56 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0; 57 | border-top-color: $tooltip-arrow-color; 58 | } 59 | &.top-right .tooltip-arrow { 60 | bottom: 0; 61 | left: $tooltip-arrow-width; 62 | margin-bottom: -$tooltip-arrow-width; 63 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0; 64 | border-top-color: $tooltip-arrow-color; 65 | } 66 | &.right .tooltip-arrow { 67 | top: 50%; 68 | left: 0; 69 | margin-top: -$tooltip-arrow-width; 70 | border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0; 71 | border-right-color: $tooltip-arrow-color; 72 | } 73 | &.left .tooltip-arrow { 74 | top: 50%; 75 | right: 0; 76 | margin-top: -$tooltip-arrow-width; 77 | border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width; 78 | border-left-color: $tooltip-arrow-color; 79 | } 80 | &.bottom .tooltip-arrow { 81 | top: 0; 82 | left: 50%; 83 | margin-left: -$tooltip-arrow-width; 84 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; 85 | border-bottom-color: $tooltip-arrow-color; 86 | } 87 | &.bottom-left .tooltip-arrow { 88 | top: 0; 89 | right: $tooltip-arrow-width; 90 | margin-top: -$tooltip-arrow-width; 91 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; 92 | border-bottom-color: $tooltip-arrow-color; 93 | } 94 | &.bottom-right .tooltip-arrow { 95 | top: 0; 96 | left: $tooltip-arrow-width; 97 | margin-top: -$tooltip-arrow-width; 98 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; 99 | border-bottom-color: $tooltip-arrow-color; 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /_sass/bootstrap/_utilities.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // Floats 7 | // ------------------------- 8 | 9 | .clearfix { 10 | @include clearfix; 11 | } 12 | .center-block { 13 | @include center-block; 14 | } 15 | .pull-right { 16 | float: right !important; 17 | } 18 | .pull-left { 19 | float: left !important; 20 | } 21 | 22 | 23 | // Toggling content 24 | // ------------------------- 25 | 26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 27 | .hide { 28 | display: none !important; 29 | } 30 | .show { 31 | display: block !important; 32 | } 33 | .invisible { 34 | visibility: hidden; 35 | } 36 | .text-hide { 37 | @include text-hide; 38 | } 39 | 40 | 41 | // Hide from screenreaders and browsers 42 | // 43 | // Credit: HTML5 Boilerplate 44 | 45 | .hidden { 46 | display: none !important; 47 | } 48 | 49 | 50 | // For Affix plugin 51 | // ------------------------- 52 | 53 | .affix { 54 | position: fixed; 55 | } 56 | -------------------------------------------------------------------------------- /_sass/bootstrap/_wells.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: $well-bg; 12 | border: 1px solid $well-border; 13 | border-radius: $border-radius-base; 14 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-lg { 23 | padding: 24px; 24 | border-radius: $border-radius-large; 25 | } 26 | .well-sm { 27 | padding: 9px; 28 | border-radius: $border-radius-small; 29 | } 30 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_alerts.scss: -------------------------------------------------------------------------------- 1 | // Alerts 2 | 3 | @mixin alert-variant($background, $border, $text-color) { 4 | background-color: $background; 5 | border-color: $border; 6 | color: $text-color; 7 | 8 | hr { 9 | border-top-color: darken($border, 5%); 10 | } 11 | .alert-link { 12 | color: darken($text-color, 10%); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_background-variant.scss: -------------------------------------------------------------------------------- 1 | // Contextual backgrounds 2 | 3 | // [converter] $parent hack 4 | @mixin bg-variant($parent, $color) { 5 | #{$parent} { 6 | background-color: $color; 7 | } 8 | a#{$parent}:hover, 9 | a#{$parent}:focus { 10 | background-color: darken($color, 10%); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_border-radius.scss: -------------------------------------------------------------------------------- 1 | // Single side border-radius 2 | 3 | @mixin border-top-radius($radius) { 4 | border-top-right-radius: $radius; 5 | border-top-left-radius: $radius; 6 | } 7 | @mixin border-right-radius($radius) { 8 | border-bottom-right-radius: $radius; 9 | border-top-right-radius: $radius; 10 | } 11 | @mixin border-bottom-radius($radius) { 12 | border-bottom-right-radius: $radius; 13 | border-bottom-left-radius: $radius; 14 | } 15 | @mixin border-left-radius($radius) { 16 | border-bottom-left-radius: $radius; 17 | border-top-left-radius: $radius; 18 | } 19 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_buttons.scss: -------------------------------------------------------------------------------- 1 | // Button variants 2 | // 3 | // Easily pump out default styles, as well as :hover, :focus, :active, 4 | // and disabled options for all buttons 5 | 6 | @mixin button-variant($color, $background, $border) { 7 | color: $color; 8 | background-color: $background; 9 | border-color: $border; 10 | 11 | &:focus, 12 | &.focus { 13 | color: $color; 14 | background-color: darken($background, 10%); 15 | border-color: darken($border, 25%); 16 | } 17 | &:hover { 18 | color: $color; 19 | background-color: darken($background, 10%); 20 | border-color: darken($border, 12%); 21 | } 22 | &:active, 23 | &.active, 24 | .open > &.dropdown-toggle { 25 | color: $color; 26 | background-color: darken($background, 10%); 27 | border-color: darken($border, 12%); 28 | 29 | &:hover, 30 | &:focus, 31 | &.focus { 32 | color: $color; 33 | background-color: darken($background, 17%); 34 | border-color: darken($border, 25%); 35 | } 36 | } 37 | &:active, 38 | &.active, 39 | .open > &.dropdown-toggle { 40 | background-image: none; 41 | } 42 | &.disabled, 43 | &[disabled], 44 | fieldset[disabled] & { 45 | &:hover, 46 | &:focus, 47 | &.focus { 48 | background-color: $background; 49 | border-color: $border; 50 | } 51 | } 52 | 53 | .badge { 54 | color: $background; 55 | background-color: $color; 56 | } 57 | } 58 | 59 | // Button sizes 60 | @mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) { 61 | padding: $padding-vertical $padding-horizontal; 62 | font-size: $font-size; 63 | line-height: $line-height; 64 | border-radius: $border-radius; 65 | } 66 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_center-block.scss: -------------------------------------------------------------------------------- 1 | // Center-align a block level element 2 | 3 | @mixin center-block() { 4 | display: block; 5 | margin-left: auto; 6 | margin-right: auto; 7 | } 8 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_clearfix.scss: -------------------------------------------------------------------------------- 1 | // Clearfix 2 | // 3 | // For modern browsers 4 | // 1. The space content is one way to avoid an Opera bug when the 5 | // contenteditable attribute is included anywhere else in the document. 6 | // Otherwise it causes space to appear at the top and bottom of elements 7 | // that are clearfixed. 8 | // 2. The use of `table` rather than `block` is only necessary if using 9 | // `:before` to contain the top-margins of child elements. 10 | // 11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/ 12 | 13 | @mixin clearfix() { 14 | &:before, 15 | &:after { 16 | content: " "; // 1 17 | display: table; // 2 18 | } 19 | &:after { 20 | clear: both; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /_sass/bootstrap/mixins/_forms.scss: -------------------------------------------------------------------------------- 1 | // Form validation states 2 | // 3 | // Used in forms.less to generate the form validation CSS for warnings, errors, 4 | // and successes. 5 | 6 | @mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) { 7 | // Color the label and help text 8 | .help-block, 9 | .control-label, 10 | .radio, 11 | .checkbox, 12 | .radio-inline, 13 | .checkbox-inline, 14 | &.radio label, 15 | &.checkbox label, 16 | &.radio-inline label, 17 | &.checkbox-inline label { 18 | color: $text-color; 19 | } 20 | // Set the border and box shadow on specific inputs to match 21 | .form-control { 22 | border-color: $border-color; 23 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work 24 | &:focus { 25 | border-color: darken($border-color, 10%); 26 | $shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%); 27 | @include box-shadow($shadow); 28 | } 29 | } 30 | // Set validation states also for addons 31 | .input-group-addon { 32 | color: $text-color; 33 | border-color: $border-color; 34 | background-color: $background-color; 35 | } 36 | // Optional feedback icon 37 | .form-control-feedback { 38 | color: $text-color; 39 | } 40 | } 41 | 42 | 43 | // Form control focus state 44 | // 45 | // Generate a customized focus state and for any input with the specified color, 46 | // which defaults to the `$input-border-focus` variable. 47 | // 48 | // We highly encourage you to not customize the default value, but instead use 49 | // this to tweak colors on an as-needed basis. This aesthetic change is based on 50 | // WebKit's default styles, but applicable to a wider range of browsers. Its 51 | // usability and accessibility should be taken into account with any change. 52 | // 53 | // Example usage: change the default blue border and shadow to white for better 54 | // contrast against a dark gray background. 55 | @mixin form-control-focus($color: $input-border-focus) { 56 | $color-rgba: rgba(red($color), green($color), blue($color), .6); 57 | &:focus { 58 | border-color: $color; 59 | outline: 0; 60 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px $color-rgba); 61 | } 62 | } 63 | 64 | // Form control sizing 65 | // 66 | // Relative text size, padding, and border-radii changes for form controls. For 67 | // horizontal sizing, wrap controls in the predefined grid classes. `