Remove webkit appearance and add bootstrap.js
1951
lib/bootstrap/js/bootstrap.js
vendored
Normal file
1067
lib/bootstrap/less/bootstrap-docs.import.less
vendored
Executable file
5831
lib/bootstrap/less/bootstrap.import.less
vendored
Executable file
30
lib/bootstrap/less/prettify.import.less
vendored
Executable file
@ -0,0 +1,30 @@
|
||||
.com { color: #93a1a1; }
|
||||
.lit { color: #195f91; }
|
||||
.pun, .opn, .clo { color: #93a1a1; }
|
||||
.fun { color: #dc322f; }
|
||||
.str, .atv { color: #D14; }
|
||||
.kwd, .prettyprint .tag { color: #1e347b; }
|
||||
.typ, .atn, .dec, .var { color: teal; }
|
||||
.pln { color: #48484c; }
|
||||
|
||||
.prettyprint {
|
||||
padding: 8px;
|
||||
background-color: #f7f7f9;
|
||||
border: 1px solid #e1e1e8;
|
||||
}
|
||||
.prettyprint.linenums {
|
||||
-webkit-box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0;
|
||||
-moz-box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0;
|
||||
box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0;
|
||||
}
|
||||
|
||||
/* Specify class=linenums on a pre to get line numbering */
|
||||
ol.linenums {
|
||||
margin: 0 0 0 33px; /* IE indents via margin-left */
|
||||
}
|
||||
ol.linenums li {
|
||||
padding-left: 12px;
|
||||
color: #bebec5;
|
||||
line-height: 20px;
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
}
|
BIN
lib/fonts/lato/lato-black.eot
Executable file
4691
lib/fonts/lato/lato-black.svg
Executable file
After Width: | Height: | Size: 264 KiB |
BIN
lib/fonts/lato/lato-black.ttf
Executable file
BIN
lib/fonts/lato/lato-black.woff
Executable file
BIN
lib/fonts/lato/lato-bold.eot
Executable file
5085
lib/fonts/lato/lato-bold.svg
Executable file
After Width: | Height: | Size: 278 KiB |
BIN
lib/fonts/lato/lato-bold.ttf
Executable file
BIN
lib/fonts/lato/lato-bold.woff
Executable file
BIN
lib/fonts/lato/lato-bolditalic.eot
Executable file
4514
lib/fonts/lato/lato-bolditalic.svg
Executable file
After Width: | Height: | Size: 261 KiB |
BIN
lib/fonts/lato/lato-bolditalic.ttf
Executable file
BIN
lib/fonts/lato/lato-bolditalic.woff
Executable file
BIN
lib/fonts/lato/lato-italic.eot
Executable file
4514
lib/fonts/lato/lato-italic.svg
Executable file
After Width: | Height: | Size: 260 KiB |
BIN
lib/fonts/lato/lato-italic.ttf
Executable file
BIN
lib/fonts/lato/lato-italic.woff
Executable file
BIN
lib/fonts/lato/lato-light.eot
Executable file
4691
lib/fonts/lato/lato-light.svg
Executable file
After Width: | Height: | Size: 261 KiB |
BIN
lib/fonts/lato/lato-light.ttf
Executable file
BIN
lib/fonts/lato/lato-light.woff
Executable file
BIN
lib/fonts/lato/lato-regular.eot
Executable file
4691
lib/fonts/lato/lato-regular.svg
Executable file
After Width: | Height: | Size: 262 KiB |
BIN
lib/fonts/lato/lato-regular.ttf
Executable file
BIN
lib/fonts/lato/lato-regular.woff
Executable file
BIN
lib/icons/png/Book.png
Executable file
After Width: | Height: | Size: 3.0 KiB |
BIN
lib/icons/png/Calendar.png
Executable file
After Width: | Height: | Size: 4.4 KiB |
BIN
lib/icons/png/Chat.png
Executable file
After Width: | Height: | Size: 4.2 KiB |
BIN
lib/icons/png/Clipboard.png
Executable file
After Width: | Height: | Size: 3.8 KiB |
BIN
lib/icons/png/Compas.png
Executable file
After Width: | Height: | Size: 17 KiB |
BIN
lib/icons/png/Gift-Box.png
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
lib/icons/png/Infinity-Loop.png
Executable file
After Width: | Height: | Size: 8.4 KiB |
BIN
lib/icons/png/Mail.png
Executable file
After Width: | Height: | Size: 6.9 KiB |
BIN
lib/icons/png/Map.png
Executable file
After Width: | Height: | Size: 8.4 KiB |
BIN
lib/icons/png/Pensils.png
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
lib/icons/png/Pocket.png
Executable file
After Width: | Height: | Size: 4.1 KiB |
BIN
lib/icons/png/Retina-Ready.png
Executable file
After Width: | Height: | Size: 10 KiB |
BIN
lib/icons/png/Toilet-Paper.png
Executable file
After Width: | Height: | Size: 4.0 KiB |
BIN
lib/icons/png/Watches.png
Executable file
After Width: | Height: | Size: 11 KiB |
1
lib/icons/svg/book.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M6 100h88c3.313 0 6-2.687 6-6v-88c0-3.314-2.687-6-6-6h-88c-3.313 0-6 2.686-6 6v88c0 3.313 2.687 6 6 6z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M100 30h-.025c-.253-2.802-2.606-5-5.475-5h-88.25c-3.313 0-6.25-2.686-6.25-6v-13c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6.001v23.999z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M5 100h2v-100h-2v100z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M7 100h2v-100h-2v100z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M100 10.001c0-2.762-2.238-5-5-5h-88c-1.104 0-2 .896-2 2v11c0 1.104.896 2 2 2h87c3.313 0 6 2.687 6 6v-15h-.101c.066-.323.101-.658.101-1z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#95A5A6" d="M100 15.423v-3.921s.183-4-5-4h-90v2h89c3.184 0 5.781 2.482 5.98 5.616-.107-1-.789-3.615-4.98-3.615h-90v2h89c3.184 0 5.781 2.482 5.98 5.616-.107-1.001-.789-3.616-4.98-3.616h-90v2h89c3.313 0 6 2.687 6 6v-8.08z" opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#2980B9" d="M80 100h10v-75h-10v75z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#3498DB" d="M80 25.007h10v-25.007h-10v25.007z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M82 100h2v-100h-2v100zm4-100v100h2v-100h-2z" opacity=".1"/></svg>
|
After Width: | Height: | Size: 1.4 KiB |
1
lib/icons/svg/calendar.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#EBEDED" d="M100 95c0 2.761-2.239 5-5 5h-90c-2.761 0-5-2.239-5-5v-90c0-2.761 2.239-5 5-5h90c2.761 0 5 2.239 5 5v90z"/><path fill="#D4D7DA" d="M95 97h-90c-2.761 0-5-2.239-5-5v3c0 2.761 2.239 5 5 5h90c2.761 0 5-2.239 5-5v-3c0 2.761-2.239 5-5 5z"/><path fill="#E64C3C" d="M0 31v-26c0-2.761 2.239-5 5-5h90c2.761 0 5 2.239 5 5v26h-100z"/><rect y="28" fill="#C03A2B" width="100" height="2.75"/><g enable-background="new" fill="#fff"><path d="M30.344 8.576l2.672 7.855h.032l2.528-7.855h3.536v11.424h-2.352v-8.096h-.032l-2.8 8.096h-1.936l-2.8-8.016h-.032v8.016h-2.352v-11.424h3.536zM41.384 12.944c.234-.353.533-.635.896-.849.362-.213.771-.365 1.224-.456.453-.09.909-.136 1.368-.136.416 0 .837.029 1.264.088s.816.174 1.168.344c.352.171.64.408.864.713.224.304.336.706.336 1.208v4.304c0 .373.021.73.064 1.072.042.341.117.597.224.768h-2.304l-.104-.392-.056-.408c-.363.373-.79.635-1.28.784-.491.148-.992.224-1.504.224-.395 0-.763-.048-1.104-.144-.342-.097-.64-.246-.896-.448-.256-.203-.456-.459-.6-.769-.144-.309-.216-.677-.216-1.104 0-.47.083-.856.248-1.16.166-.304.379-.547.64-.728.261-.182.56-.317.896-.408s.675-.163 1.016-.216c.341-.054.677-.097 1.008-.129.331-.031.624-.079.88-.144.256-.063.458-.157.608-.28.149-.122.218-.301.208-.536 0-.245-.04-.439-.12-.584-.08-.144-.187-.256-.32-.336-.134-.08-.288-.133-.464-.159-.176-.027-.365-.04-.568-.04-.448 0-.8.096-1.056.287-.256.192-.405.513-.448.961h-2.272c.032-.533.165-.975.4-1.327zm4.488 3.208c-.144.048-.298.088-.464.12l-.52.079-.544.08c-.171.032-.339.075-.504.128-.166.054-.31.126-.432.217s-.221.205-.296.344-.112.315-.112.528c0 .202.037.373.112.512s.176.248.304.328c.128.08.277.136.448.168.17.032.347.048.528.048.448 0 .795-.074 1.04-.224.246-.149.427-.328.544-.536.118-.208.189-.419.216-.633.026-.213.04-.384.04-.512v-.848c-.096.086-.216.153-.36.201zM52.424 11.728v1.536h.032c.106-.256.25-.493.432-.712.182-.218.39-.405.624-.56s.485-.274.752-.36c.267-.085.544-.128.832-.128.149 0 .314.026.496.08v2.112l-.384-.057-.433-.023c-.416 0-.768.069-1.056.208s-.521.328-.696.567c-.176.24-.302.521-.376.841-.074.319-.111.666-.111 1.04v3.728h-2.272v-8.272h2.16zM60.151 13.216c-.362 0-.666.083-.912.248-.245.166-.445.379-.6.64-.154.262-.264.55-.328.864-.063.315-.096.627-.096.937 0 .299.032.603.096.912.064.31.168.589.312.84s.338.456.584.616c.245.159.544.239.896.239.544 0 .963-.151 1.256-.456.294-.304.478-.712.553-1.224h2.191c-.149 1.099-.576 1.936-1.28 2.512-.703.576-1.605.864-2.703.864-.619 0-1.188-.104-1.704-.312-.518-.208-.958-.499-1.32-.872-.362-.374-.646-.819-.848-1.336-.203-.518-.305-1.086-.305-1.704 0-.641.094-1.235.28-1.784.187-.55.461-1.024.824-1.424.362-.4.805-.712 1.328-.937.522-.224 1.12-.336 1.792-.336.49 0 .962.064 1.416.192.453.128.858.322 1.216.584.357.261.647.587.872.976.224.39.352.851.384 1.384h-2.224c-.148-.949-.709-1.423-1.68-1.423zM67.655 8.576v4.304h.048c.288-.479.656-.829 1.104-1.048.447-.219.885-.328 1.312-.328.608 0 1.106.083 1.496.248.39.166.696.395.92.688.225.293.382.65.472 1.071.091.422.137.889.137 1.4v5.089h-2.272v-4.672c0-.683-.106-1.192-.319-1.528-.214-.336-.593-.504-1.137-.504-.618 0-1.066.185-1.344.552-.277.368-.416.974-.416 1.816v4.336h-2.272v-11.424h2.271z"/></g><g enable-background="new" fill="#35495E"><path d="M26.77 55.045c.49-1.579 1.226-2.959 2.208-4.14.981-1.181 2.215-2.101 3.703-2.761 1.487-.658 3.197-.988 5.129-.988 1.472 0 2.875.229 4.209.689s2.507 1.12 3.519 1.979c1.012.858 1.817 1.917 2.415 3.174.598 1.258.897 2.668.897 4.232 0 1.625-.261 3.021-.782 4.186-.522 1.166-1.212 2.201-2.07 3.105-.859.904-1.833 1.725-2.921 2.461-1.089.735-2.185 1.465-3.289 2.185-1.104.721-2.178 1.495-3.22 2.323-1.043.828-1.963 1.794-2.76 2.897h15.226v5.613h-23.644c0-1.87.268-3.496.805-4.876.536-1.38 1.265-2.614 2.185-3.703.92-1.088 2.001-2.093 3.243-3.013 1.242-.92 2.553-1.855 3.933-2.807.705-.49 1.457-.988 2.254-1.494.797-.507 1.525-1.065 2.185-1.68.659-.613 1.211-1.303 1.656-2.069.444-.767.667-1.641.667-2.622 0-1.564-.453-2.783-1.357-3.657-.905-.874-2.063-1.312-3.473-1.312-.951 0-1.756.224-2.415.667-.66.445-1.189 1.028-1.587 1.748-.399.722-.683 1.519-.851 2.393-.169.874-.253 1.74-.253 2.599h-6.256c-.062-1.84.153-3.549.644-5.129zM50.736 72.548v-5.979l13.985-18.769h5.842v19.366h4.277v5.382h-4.277v7.452h-6.21v-7.452h-13.617zm13.478-16.56l-8.325 11.178h8.464v-11.178h-.139z"/></g></svg>
|
After Width: | Height: | Size: 4.3 KiB |
1
lib/icons/svg/chat.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M100 58c0 3.313-2.687 6-6 6h-73c-3.313 0-6-2.687-6-6v-52c0-3.313 2.687-6 6-6h73c3.313 0 6 2.687 6 6v52z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M85 73c0 3.223-2.74 6-6 6h-13c-1.113 0-2 .754-2 2v18c0 .738-.253 1-.917 1-.232 0-.471-.154-.865-.457l-23.967-18.543c-3-2-6.129-2.006-6.129-2.006l-26.22-.002c-3.26 0-5.902-2.613-5.902-5.836v-51.125c0-3.221 2.896-6.047 6-6.031h73c3.562 0 6 2.778 6 6v51z"/><path fill="#fff" d="M58.5 40.072c-1.178.523-2.443.875-3.771 1.035 1.355-.813 2.396-2.102 2.887-3.633-1.268.752-2.674 1.297-4.168 1.594-1.198-1.278-2.904-2.075-4.792-2.075-3.626 0-6.565 2.94-6.565 6.566 0 .512.058 1.016.17 1.497-5.456-.275-10.294-2.889-13.532-6.859-.564.968-.889 2.096-.889 3.298 0 2.28 1.159 4.288 2.921 5.465-1.076-.033-2.089-.33-2.974-.822l-.001.084c0 3.181 2.264 5.834 5.267 6.438-.551.149-1.131.228-1.729.228-.423 0-.835-.038-1.235-.116.835 2.609 3.26 4.507 6.133 4.558-2.248 1.763-5.079 2.813-8.154 2.813-.53 0-1.053-.031-1.566-.095 2.903 1.863 6.354 2.952 10.061 2.952 12.076 0 18.679-10.004 18.679-18.68 0-.284-.006-.568-.018-.85 1.284-.926 2.395-2.081 3.276-3.398z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
lib/icons/svg/clipboard.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#27AE60" d="M100 94c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-78c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6v78z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M82 87c0 1.104-.896 2-2 2h-60c-1.104 0-2-.896-2-2v-69c0-1.104.896-2 2-2h60c1.104 0 2 .896 2 2v69z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#BDC3C7" d="M72 20h-44c-1.657 0-3-1.343-3-3v-7c0-1.657 1.343-3 3-3h15c0-3.866 3.134-7 7-7s7 3.134 7 7h15c1.657 0 3 1.343 3 3v7c0 1.657-1.343 3-3 3zm-22-16c-1.657 0-3 1.344-3 3 0 1.657 1.343 3 3 3s3-1.343 3-3c0-1.656-1.343-3-3-3z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#A1A6A9" d="M72 20h-44c-1.656 0-3-1.343-3-3v-2c0 1.657 1.344 3 3 3h44c1.656 0 3-1.343 3-3v2c0 1.657-1.344 3-3 3z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M94 97h-88c-3.313 0-6-2.687-6-6v3c0 3.313 2.687 6 6 6h88c3.313 0 6-2.687 6-6v-3c0 3.313-2.687 6-6 6z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#BDC3C7" d="M41 40.999v3h31v-3h-31zm0 14.001h31v-3.001h-31v3.001zm0 10.998h31v-2.999h-31v2.999zm0 11.001h31v-3h-31v3zm-13-31h7v-7h-7v7zm0 11h7v-7h-7v7zm0 11h7v-7h-7v7zm0 11.001h7v-7.001h-7v7.001z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#27AE60" d="M41 29v3.001h31v-3.001h-31zm-5.073-1.214l-.708-.713c-.097-.098-.256-.098-.354 0l-3.728 3.703c-.098.099-.257.099-.354 0l-1.633-1.66c-.048-.049-.112-.072-.175-.073-.064 0-.13.023-.179.073l-.722.648c-.048.049-.074.11-.074.175l.011.054h-.011v.998h.011l.063.127 1.647 1.725.354.355.708.713c.097.098.256.098.354 0l4.79-4.771.067-.144h.006v-.998h-.006c.01-.076-.01-.155-.067-.212z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#A1A6A9" d="M50 4c1.305 0 2.403.837 2.816 2 .112-.313.184-.646.184-.999 0-1.657-1.344-3-3-3-1.657 0-3.001 1.343-3.001 3 0 .353.072.686.184 1 .413-1.163 1.512-2.001 2.817-2.001z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
9
lib/icons/svg/clocks.svg
Executable file
@ -0,0 +1,9 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
|
||||
<circle fill="#223447" cx="50.001" cy="50" r="50"/>
|
||||
<path fill="#fff" d="M50 10c22.093 0 40 17.909 40 40s-17.906 40-40 40c-22.091 0-40-17.909-40-40s17.91-40 40-40z"/>
|
||||
<path fill="#DAD9D9" d="M50 10.015c-11.806 0-22.413 5.119-29.733 13.254 7.085-6.373 16.456-10.254 26.733-10.254 22.085 0 39.986 17.902 39.986 39.985 0 10.277-3.881 19.646-10.254 26.729 8.139-7.319 13.256-17.924 13.256-29.729 0-22.083-17.902-39.985-39.988-39.985z"/>
|
||||
<path transform="rotate(90,50,50)" fill="#223447" d="M46 27c0-2.209 1.791-4 4-4s4 1.791 4 4v19c0 2.209-1.791 4-4 4s-4-1.791-4-4v-19z"/>
|
||||
<path transform="rotate(315,50,50)" fill="#223447" d="M49.996 19.988c1.656.002 3.002 1.221 3.004 3.012v24c0 1.789-1.333 3.002-2.988 3-1.658-.002-3.01-1.209-3.012-3v-24c-.001-1.79 1.34-3.014 2.996-3.012z"/>
|
||||
<path fill="#223447" d="M46 43.1c3.825-2.21 8.72-.898 10.927 2.927 2.209 3.824.897 8.718-2.928 10.926-3.827 2.209-8.717.898-10.927-2.93-2.207-3.823-.898-8.714 2.928-10.923z"/>
|
||||
<path transform="rotate(225,50,50)" fill="#E44D41" d="M52 24c0-1.104-.896-2-2-2s-2 .896-2 2v26c0 1.104.896 2 2 2s2-.896 2-2v-26z"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
1
lib/icons/svg/compas.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="112" height="111"><circle fill="#3498DA" cx="50" cy="61" r="50"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#27AE60" d="M15.511 97.184c-9.55-9.108-15.511-21.945-15.511-36.182 0-27.615 22.386-50.002 50.001-50.002 14.395 0 27.359 6.091 36.482 15.826l-70.972 70.358z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#95A5A6" d="M84.489 24.816c9.55 9.108 15.511 21.945 15.511 36.182 0 13.668-5.484 26.055-14.372 35.08-14.109-14.109-9.155-9.144-36.401-36.304l35.262-34.958z"/><path fill="#F1C40F" d="M88.062 93.404l-32.574-32.572 32.418-32.417c-1.562-1.814-3.25-3.515-5.053-5.088l-70.527 70.527c1.574 1.803 3.274 3.491 5.089 5.053l32.417-32.417 32.573 32.572c2.033-1.733 3.925-3.624 5.657-5.658z"/><path opacity=".05" fill-rule="evenodd" clip-rule="evenodd" d="M104.287 36.302c-6.477 6.476-16.362 7.425-23.864 2.892l-4.205 4.205c10.024 13.692 8.892 33.002-3.48 45.374-13.668 13.668-35.829 13.668-49.497 0s-13.668-35.829 0-49.497c12.559-12.56 32.283-13.569 46.006-3.048l4.223-4.223c-4.146-7.426-3.082-16.979 3.23-23.292 7.618-7.617 19.969-7.617 27.588 0 7.616 7.618 7.616 19.97-.001 27.589zm-3.557-24.021c-5.659-5.665-14.835-5.665-20.494 0-5.659 5.664-5.659 14.849 0 20.514 5.659 5.664 14.835 5.664 20.494 0 5.66-5.665 5.66-14.85 0-20.514z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M106.287 33.356c-6.477 6.476-16.362 7.425-23.864 2.892l-4.205 4.206c10.024 13.692 8.892 33.001-3.48 45.374-13.668 13.668-35.829 13.668-49.497 0s-13.668-35.829 0-49.497c12.559-12.56 32.283-13.569 46.006-3.048l4.223-4.222c-4.146-7.426-3.082-16.98 3.23-23.292 7.618-7.617 19.969-7.617 27.588 0 7.616 7.617 7.616 19.969-.001 27.587zm-3.557-24.02c-5.659-5.665-14.835-5.665-20.494 0-5.659 5.664-5.659 14.849 0 20.514 5.659 5.664 14.835 5.664 20.494 0 5.66-5.665 5.66-14.85 0-20.514z"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#fff" cx="50" cy="61" r="27"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="50.5" cy="43.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="50.5" cy="78.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="32.5" cy="60.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="68.5" cy="60.75" r="2.5"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M50 34c-7.965 0-15.122 3.45-20.064 8.936 4.784-4.311 11.117-6.936 18.064-6.936 14.912 0 27 12.088 27 27 0 6.947-2.625 13.279-6.936 18.064 5.486-4.942 8.936-12.099 8.936-20.064 0-14.912-12.088-27-27-27z"/><path fill="#34495E" d="M65.141 44.533l-11.831 20.163-19.998 11.666 31.829-31.829z"/><path fill="#306DAB" d="M33.312 76.362l11.831-20.163 19.998-11.667-31.829 31.83z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M78.807 24.561l8.021 8.021c1.952 1.954 1.403 4.252-.354 6.01s-4.058 2.307-6.01.354l-8.021-8.021c-1.953-1.952-1.404-4.253.354-6.01 1.758-1.758 4.057-2.307 6.01-.354z"/></svg>
|
After Width: | Height: | Size: 2.9 KiB |
1
lib/icons/svg/gift-box.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#E74C3C" d="M100 94c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-88c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6v88z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M68.494 10.847l-18.287-10.847h24.383l-6.096 10.847zm-34.662-10.847c-.212.913-.548 1.81-1.027 2.662l-11.746 20.908-20.616-12.228-.443-.294v-5.048c0-3.313 2.687-6 6-6h27.832zm-31.174 49.794l1.955-3.479c2.704-4.813 8.742-6.433 13.488-3.617 4.742 2.814 6.399 8.996 3.696 13.808l-11.746 20.908-10.051-5.961v-23.235l2.658 1.576zm19.509 42.704c2.703-4.812 8.741-6.432 13.487-3.617l3.432 2.033 1.956-3.479c2.703-4.812 8.741-6.434 13.487-3.617 4.742 2.816 6.4 8.996 3.697 13.809l-1.331 2.373h-35.706c-.618-2.459-.346-5.145.978-7.502zm35.321-27.807l-20.616-12.228c-4.746-2.815-6.398-8.997-3.697-13.809 2.704-4.812 8.742-6.432 13.487-3.617l3.432 2.034 1.956-3.479c2.705-4.812 8.742-6.433 13.488-3.618 4.742 2.817 6.4 8.998 3.697 13.811l-11.747 20.906zm26.821-24.95c-4.746-2.815-6.398-8.997-3.697-13.81 2.703-4.813 8.742-6.433 13.486-3.617l3.432 2.034 1.957-3.479c.158-.283.332-.554.514-.815v28.995l-15.692-9.308zm-11.008 53.843c-4.746-2.814-6.398-8.996-3.697-13.809 2.703-4.812 8.742-6.434 13.488-3.617l3.432 2.035 1.955-3.48c2.342-4.168 7.184-5.936 11.521-4.506v23.791c0 .412-.043.814-.121 1.201l-1.771 3.154c-1.077 1.014-2.514 1.647-4.108 1.647h-9.885l-10.814-6.416zm-66.208 2.957c1.474.875 2.648 2.076 3.487 3.459h-4.58c-2.843 0-5.211-1.982-5.83-4.637 2.281-.463 4.738-.117 6.923 1.178z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M70.116 47.232c1.354-.733 2.475-1.552 3.399-2.485 5.881-5.944 5.956-15.538.168-21.385-2.774-2.803-6.479-4.345-10.43-4.345-4.043 0-7.855 1.603-10.74 4.516-.946.957-1.772 2.124-2.511 3.539-.74-1.42-1.568-2.594-2.518-3.553-2.882-2.912-6.696-4.529-10.738-4.529-3.952 0-7.655 1.514-10.43 4.315-5.789 5.849-5.714 15.385.169 21.33.957.968 2.131 1.791 3.55 2.52-1.311.684-2.494 1.477-3.438 2.401-2.935 2.88-4.551 6.709-4.551 10.782.001 3.983 1.558 7.705 4.384 10.477 2.761 2.709 6.432 4.201 10.336 4.201 3.996 0 7.776-1.551 10.646-4.366 1.004-.985 1.857-2.229 2.586-3.606.728 1.377 1.581 2.621 2.585 3.605 2.871 2.816 6.652 4.367 10.647 4.367 3.903 0 7.575-1.492 10.337-4.201 2.825-2.771 4.382-6.492 4.383-10.477 0-4.072-1.615-7.9-4.551-10.783-.904-.891-2.033-1.658-3.283-2.323zm-38.152-18.281c2.689-2.644 7.127-2.566 9.912.171 2.926 2.875 4.149 13.854 4.128 13.877-.022.022-10.941-1.43-13.866-4.305-2.786-2.738-2.863-7.1-.174-9.743zm9.833 35.071c-2.76 2.59-7.155 2.661-9.819.161-2.663-2.5-2.587-6.627.172-9.217 2.897-2.719 13.839-3.975 13.861-3.954.021.021-1.316 10.291-4.214 13.01zm26.253.162c-2.669 2.5-7.073 2.429-9.838-.161-2.904-2.72-4.244-12.989-4.222-13.01.021-.021 10.984 1.235 13.889 3.954 2.764 2.59 2.84 6.717.171 9.217zm-.17-25.398c-2.903 2.898-13.861 4.236-13.883 4.213-.022-.022 1.317-10.963 4.22-13.861 2.764-2.759 7.167-2.835 9.835-.171 2.668 2.663 2.591 7.059-.172 9.819z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M100 39h-25.019c4.361-6 3.955-14.332-1.298-19.639-2.774-2.803-6.479-4.345-10.43-4.345-3.386 0-6.602 1.137-9.254 3.213v-18.229h-8v18.214c-2.651-2.079-5.869-3.226-9.253-3.226-3.952 0-7.655 1.514-10.43 4.314-5.285 5.343-5.665 13.698-1.214 19.698h-25.102v8h25.316c-2.111 2.662-3.268 5.908-3.268 9.336.001 3.983 1.558 7.705 4.384 10.477 2.761 2.709 6.432 4.201 10.336 4.201 3.373 0 6.584-1.116 9.232-3.153v32.139h8v-32.14c2.648 2.037 5.861 3.153 9.232 3.153 3.903 0 7.575-1.492 10.337-4.201 2.825-2.771 4.382-6.492 4.383-10.477 0-3.427-1.156-6.673-3.268-9.336h25.316v-7.999zm-41.783-13.862c2.764-2.759 7.167-2.835 9.835-.171 2.668 2.664 2.591 7.06-.172 9.819-2.896 2.89-13.799 4.228-13.88 4.213v-.043c.069-.728 1.415-11.02 4.217-13.818zm-26.253-.187c2.689-2.644 7.127-2.566 9.912.171 2.812 2.763 4.05 13.003 4.124 13.82v.057c-.102.011-10.948-1.44-13.862-4.305-2.786-2.738-2.863-7.1-.174-9.743zm9.833 35.071c-2.76 2.59-7.155 2.661-9.819.161-2.663-2.5-2.587-6.627.172-9.217 2.868-2.691 13.614-3.948 13.851-3.954v.108c-.132 1.096-1.476 10.342-4.204 12.902zm26.253.162c-2.669 2.5-7.073 2.429-9.838-.161-2.741-2.568-4.088-11.856-4.212-12.909v-.101c.217.003 11.001 1.26 13.879 3.954 2.764 2.59 2.84 6.717.171 9.217z"/><path opacity=".2" fill-rule="evenodd" clip-rule="evenodd" d="M94 100h-88c-3.313 0-6-2.687-6-6.001v-13.999c0 3.313 2.687 6 6 6h88c3.313 0 6-2.687 6-6v13.999c0 3.314-2.687 6.001-6 6.001z"/></svg>
|
After Width: | Height: | Size: 4.3 KiB |
5
lib/icons/svg/loop.svg
Executable file
@ -0,0 +1,5 @@
|
||||
<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle fill="#E74C3C" cx="50" cy="50" r="50"/>
|
||||
<path id="loop-sign" fill="none" stroke="#F0C419" stroke-width="8" stroke-miterlimit="10" stroke-dashoffset="43" stroke-linecap="square" stroke-dasharray="216,9.999999974752427e-7" d="M12.5,50.5c0,10,7,17,17,17c17,0,26-34,43-34c10,0,18,7,18,17s-8,17-18,17c-17,0-26-34-43-34C19.5,33.5,12.5,40.5,12.5,50.5z" style="display: inline;"></path>
|
||||
<path id="shade" opacity="0.15" enable-background="new " d="M45.938,50.5l5.047,6.516c0,0-2.141,2.797-3.5,4.25c0,0-3.621-3.552-5.746-5.583C43.047,54.281,45.938,50.5,45.938,50.5z" style=""></path>
|
||||
</svg>
|
After Width: | Height: | Size: 657 B |
1
lib/icons/svg/mail.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#D35400" d="M96.015 38.988h-92.009c-1.104 0-2 .897-2 2.005v57.001c0 1.108.896 2.006 2 2.006h92.009c1.105 0 2.001-.897 2.001-2.006v-57.001c0-1.108-.896-2.005-2.001-2.005z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" d="M5 15.974v82.004c0 1.117.896 2.022 2 2.022h86.001c1.104 0 1.999-.905 1.999-2.021v-95.989c0-1.117-.895-2.021-1.999-2.021l-71.997.008-16.004 15.997z"/><path opacity=".1" d="M40 72l54.997-33 .003 6.98-43.972 26.02h-11.028z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F39C12" d="M2 97.991c0 1.11.895 2.009 2 2.009h92c1.104 0 2-.899 2-2.009v-55.991l-48 29-48-29v55.991z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F1C40F" d="M5 15.974l16.001.01v-15.984l-16.001 15.974z"/><path fill="#F1C40F" d="M2 42l.052 54 47.948-25-48-29z"/><polygon fill="#E57E22" points="98,42 50,71 98,96"/><path opacity=".3" fill-rule="evenodd" clip-rule="evenodd" d="M98 97.991v-1.991l-48-25 47.328 28.482c.409-.367.672-.896.672-1.491z"/><path opacity=".3" fill-rule="evenodd" clip-rule="evenodd" d="M2 97.991v-1.991l48-25-47.328 28.482c-.409-.367-.672-.896-.672-1.491z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
lib/icons/svg/map.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#F2F2F2" d="M75 87.425l-25 12.575-25-12.575-25 12.575v-87.424l25-12.576 25 12.576 25-12.576 25 12.576v87.424l-25-12.575z"/><path clip-rule="evenodd" stroke="#6BC9F2" stroke-width="4" stroke-miterlimit="10" d="M15 60v-28l9.988-5.006 25.012 14.006 25-12 12 4" fill="none"/><path clip-rule="evenodd" stroke="#E64C3C" stroke-width="4" stroke-miterlimit="10" d="M15 61v-8l10-5 25 13 25-11 12-5v-13" fill="none"/><path clip-rule="evenodd" stroke="#F29C1F" stroke-width="4" stroke-miterlimit="10" d="M15 61l35 18 17-8v-28l20-10" fill="none"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M87 36.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"/><path fill="#2980BA" d="M87 31c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2m0-3c-2.761 0-5 2.239-5 5s2.239 5 5 5 5-2.239 5-5-2.239-5-5-5z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M15 64.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"/><path fill="#2980BA" d="M15 59c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2m0-3c-2.761 0-5 2.239-5 5s2.239 5 5 5 5-2.239 5-5-2.239-5-5-5z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" fill="#2C3E50" d="M0 100l25-12.576v-87.424l-25 12.576v87.424zm50-87.424v87.424l25-12.576v-87.424l-25 12.576z"/></svg>
|
After Width: | Height: | Size: 1.4 KiB |
1
lib/icons/svg/paper-bag.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#F39C12" d="M100 93c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-73h100v73z"/><rect x="4" fill="#E57D22" width="92" height="20"/><polygon fill="#F39C12" points="96,20 88,20 88,8 96,0"/><polygon fill="#F39C12" points="4,20 12,20 12,8 4,0"/><polygon fill="#F1C40F" points="12,8 12,20 0,20"/><polygon fill="#F1C40F" points="88,8 88,20 100,20"/><circle opacity=".3" cx="26" cy="40" r="5"/><circle opacity=".3" cx="74" cy="40" r="5"/><path clip-rule="evenodd" stroke="#fff" stroke-width="6" stroke-linecap="round" stroke-miterlimit="10" d="M74 40c0 13.254-10.745 24-24 24s-24-10.745-24-24" fill="none"/></svg>
|
After Width: | Height: | Size: 682 B |
1
lib/icons/svg/pencils.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><g><path fill="#e74c3c" d="M50 74.001v25.999h.072l-.072.002c-12.816-.008-25.662-4.828-35.417-14.584-9.771-9.772-14.591-22.58-14.583-35.418.009-12.816 4.829-25.662 14.583-35.417l18.417 18.417c-4.682 4.683-6.996 10.849-7 17-.004 6.162 2.31 12.311 7 17 4.683 4.684 10.848 6.996 17 7.001z"/><path fill-opacity=".15" enable-background="new" d="M50 92c-23.196 0-42-18.805-42-42 0-11.598 4.701-22.098 12.302-29.699l-5.719-5.718c-6.715 6.716-14.583 18.855-14.583 35.417 0 27.062 21.625 50 50 50v-8z"/><path fill-opacity=".15" fill="#fff" enable-background="new" d="M32.928 67c-4.689-4.689-7.003-10.838-7-17 .004-6.151 2.316-12.317 7-17l-5.627-5.627c-5.791 5.79-9.373 13.79-9.373 22.627 0 17.673 14.327 32 32 32v-7.999c-6.152-.005-12.316-2.317-17-7.001z"/><path fill="#EFC22D" d="M63 87l-12.986-12.991v-.009l-.008.001-.001-.001-.005.001c-3.309.011-6.009 5.826-6.009 13 0 7.181 2.709 13.001 6.022 13.001v-.022l12.987-12.98z"/><path fill="#2D3E4F" d="M58.758 82.757c-1.086 1.086-1.758 2.586-1.758 4.243 0 1.656.672 3.156 1.757 4.242l4.243-4.242-4.242-4.243z"/></g><g><path fill="#3498db" d="M50 26.001v-25.999h-.072l.072-.002c12.816.008 25.662 4.828 35.417 14.584 9.771 9.771 14.592 22.58 14.584 35.417-.009 12.817-4.829 25.663-14.584 35.418l-18.418-18.417c4.683-4.682 6.996-10.85 7-17 .004-6.162-2.312-12.31-7-17-4.683-4.683-10.849-6.996-16.999-7.001z"/><path fill-opacity=".1" enable-background="new" d="M66.999 33.002c4.688 4.689 7.004 10.838 7 17-.004 6.15-2.317 12.318-7 17l5.627 5.627c5.791-5.789 9.373-13.789 9.373-22.627 0-17.672-14.326-32-32-32v7.999c6.151.005 12.317 2.318 17 7.001z"/><path fill-opacity=".15" fill="#fff" enable-background="new" d="M50.001 8.001c23.195 0 41.999 18.805 41.999 42 0 11.599-4.701 22.099-12.302 29.699l5.72 5.718c6.715-6.716 14.582-18.855 14.582-35.417 0-27.062-21.624-50-49.999-50v8z"/><path fill="#EFC22D" d="M37 13.002l12.986 12.991v.009l.008-.001.001.001.005-.001c3.309-.011 6.008-5.826 6.008-13 0-7.18-2.709-13.001-6.022-13.001v.021l-12.986 12.981z"/><path fill="#2D3E4F" d="M41.242 17.245c1.086-1.086 1.758-2.586 1.758-4.243 0-1.656-.672-3.156-1.757-4.242l-4.243 4.242 4.242 4.243z"/></g></svg>
|
After Width: | Height: | Size: 2.1 KiB |
1
lib/icons/svg/retina.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="117" height="104"><path fill="#26B99A" d="M50 4c27.614 0 50 22.386 50 50 0 27.613-22.386 50-50 50s-50-22.387-50-50c0-27.614 22.386-50 50-50z"/><path fill="#fff" d="M81.309 43.339l-35.868 35.869c-.731.731-1.924.731-2.651 0l-20.286-20.498c-.362-.366-.556-1.374-.556-1.859 0-.484.194-.947.556-1.315l5.404-4.871c.366-.375.855-.555 1.338-.55.476.001.951.185 1.313.55l12.231 12.478c.728.743 1.92.743 2.651 0l27.918-27.835c.728-.737 1.92-.737 2.647 0l5.302 5.354c.732.734.732 1.942.001 2.677z"/><circle cx="84.625" cy="33" r="26" opacity=".15"/><path fill="#26B99A" d="M87.999 56.5c-15.163 0-27.499-12.337-27.499-27.5s12.336-27.5 27.499-27.5c15.164 0 27.501 12.336 27.501 27.5 0 15.163-12.337 27.5-27.501 27.5z"/><path fill="#ECF0F1" d="M87.999 3c14.337 0 26.001 11.663 26.001 26s-11.664 26-26.001 26c-14.336 0-25.999-11.664-25.999-26s11.663-26 25.999-26m0-3c-16.015 0-28.999 12.984-28.999 29 0 16.017 12.984 29 28.999 29 16.017 0 29.001-12.984 29.001-29s-12.984-29-29.001-29z"/><defs><path id="a" d="M114 29c0 14.359-11.64 26-25.998 26-14.362 0-26.002-11.641-26.002-26s11.64-26 26.002-26c14.358 0 25.998 11.64 25.998 26z"/></defs><clipPath id="b"><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#fff" d="M107.314 30.594l-81.091 81.092c-1.653 1.654-4.349 1.654-5.994 0l-11.987-12.097c-1.644-1.674-4.348-4.391-5.993-6.063l-27.885-29.303c-.818-.828-1.257-1.982-1.257-3.082 0-1.094.439-2.141 1.257-2.974l12.218-11.01c.827-.849 1.935-1.257 3.025-1.246 1.075.004 2.149.417 2.969 1.246l27.653 28.213c1.645 1.683 4.341 1.683 5.994 0l63.121-62.932c1.644-1.666 4.34-1.666 5.984 0l11.986 12.102c1.655 1.661 1.655 4.393 0 6.054z"/></svg>
|
After Width: | Height: | Size: 1.7 KiB |
1
lib/icons/svg/toilet-paper.svg
Executable file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#F1C40F" d="M78.993 26h21l.007 74h-60.135v-.004l-.355.004c-21.828 0-39.521-5.73-39.521-12.801l.004-74.199h79v13z"/><rect x="40" y="13" fill="#F39C12" width="39" height="13"/><ellipse fill="#E67E22" cx="39.5" cy="13" rx="39.5" ry="13"/><ellipse opacity=".2" cx="40.334" cy="12.812" rx="16" ry="4.5"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F39C12" d="M40.668 93c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-16c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-12c1.104 0 1.999-.895 1.999-2s-.895-2-1.999-2c-1.105 0-2 .896-2 2s.894 2 2 2zm0 4c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2zm0 24c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
46
lib/less/flat-ui.import.less
vendored
Executable file
@ -0,0 +1,46 @@
|
||||
// Flat UI main stylesheet that aggregates all modules
|
||||
|
||||
// Loading custom fonts
|
||||
//@import url("https://fonts.googleapis.com/css?family=Lato:400,700,700italic,900,400italic,300");
|
||||
@import "modules/local-fonts.import.less";
|
||||
|
||||
// Loading config with variables (changing them leads to changing a color scheme)
|
||||
@import "variables.import.less";
|
||||
|
||||
// Utility mixins for greater good
|
||||
@import "mixins.import.less";
|
||||
|
||||
@import "modules/scaffolding.import.less";
|
||||
|
||||
// Modules
|
||||
@import "modules/type.import.less";
|
||||
@import "modules/code.import.less";
|
||||
@import "modules/thumbnails.import.less";
|
||||
@import "modules/buttons.import.less";
|
||||
@import "modules/button-groups.import.less";
|
||||
@import "modules/caret.import.less";
|
||||
@import "modules/select.import.less";
|
||||
@import "modules/forms.import.less";
|
||||
@import "modules/inputs.import.less";
|
||||
@import "modules/input-icons.import.less";
|
||||
@import "modules/input-groups.import.less";
|
||||
@import "modules/navbar.import.less";
|
||||
@import "modules/tagsinput.import.less";
|
||||
@import "modules/typeahead.import.less";
|
||||
@import "modules/progress-bars.import.less";
|
||||
@import "modules/slider.import.less";
|
||||
@import "modules/pager.import.less";
|
||||
@import "modules/pagination.import.less";
|
||||
@import "modules/share.import.less";
|
||||
|
||||
// Examples
|
||||
@import "modules/palette.import.less";
|
||||
@import "modules/tile.import.less";
|
||||
@import "modules/todo.import.less";
|
||||
@import "modules/video.import.less";
|
||||
@import "modules/login.import.less";
|
||||
|
||||
@import "modules/footer.import.less";
|
||||
|
||||
// Spaces
|
||||
@import "spaces.import.less";
|
859
lib/less/mixins.import.less
vendored
Executable file
@ -0,0 +1,859 @@
|
||||
//
|
||||
// Mixins
|
||||
// --------------------------------------------------
|
||||
|
||||
// Utilities
|
||||
// -------------------------
|
||||
|
||||
// Clearfix
|
||||
// Source: http://nicolasgallagher.com/micro-clearfix-hack/
|
||||
//
|
||||
// For modern browsers
|
||||
// 1. The space content is one way to avoid an Opera bug when the
|
||||
// contenteditable attribute is included anywhere else in the document.
|
||||
// Otherwise it causes space to appear at the top and bottom of elements
|
||||
// that are clearfixed.
|
||||
// 2. The use of `table` rather than `block` is only necessary if using
|
||||
// `:before` to contain the top-margins of child elements.
|
||||
.clearfix() {
|
||||
&:before,
|
||||
&:after {
|
||||
content: " "; /* 1 */
|
||||
display: table; /* 2 */
|
||||
}
|
||||
&:after {
|
||||
clear: both;
|
||||
}
|
||||
}
|
||||
|
||||
// Webkit-style focus
|
||||
.tab-focus() {
|
||||
// Default
|
||||
outline: thin dotted;
|
||||
// Webkit
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
||||
// Center-align a block level element
|
||||
.center-block() {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
// Sizing shortcuts
|
||||
.size(@width; @height) {
|
||||
width: @width;
|
||||
height: @height;
|
||||
}
|
||||
.square(@size) {
|
||||
.size(@size; @size);
|
||||
}
|
||||
|
||||
// Placeholder text
|
||||
.placeholder(@color: @input-color-placeholder) {
|
||||
&:-moz-placeholder { color: @color; } // Firefox 4-18
|
||||
&::-moz-placeholder { color: @color; // Firefox 19+
|
||||
opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526
|
||||
&:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
|
||||
&::-webkit-input-placeholder { color: @color; } // Safari and Chrome
|
||||
&.placeholder { color: @color; } // Fallback
|
||||
}
|
||||
|
||||
.placeholder-height(@height) {
|
||||
&:-moz-placeholder {
|
||||
line-height: @height;
|
||||
}
|
||||
&::-webkit-input-placeholder {
|
||||
line-height: @height;
|
||||
}
|
||||
&.placeholder {
|
||||
line-height: @height;
|
||||
}
|
||||
}
|
||||
|
||||
// Text overflow
|
||||
// Requires inline-block or block for proper styling
|
||||
.text-overflow() {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
// CSS image replacement
|
||||
.text-hide() {
|
||||
font: ~"0/0" a;
|
||||
color: transparent;
|
||||
text-shadow: none;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
// CSS3 PROPERTIES
|
||||
// --------------------------------------------------
|
||||
|
||||
.mask(@arguments) {
|
||||
-webkit-mask: @arguments;
|
||||
mask: @arguments;
|
||||
}
|
||||
|
||||
// Single side border-radius
|
||||
.border-top-radius(@radius) {
|
||||
border-top-right-radius: @radius;
|
||||
border-top-left-radius: @radius;
|
||||
}
|
||||
.border-right-radius(@radius) {
|
||||
border-bottom-right-radius: @radius;
|
||||
border-top-right-radius: @radius;
|
||||
}
|
||||
.border-bottom-radius(@radius) {
|
||||
border-bottom-right-radius: @radius;
|
||||
border-bottom-left-radius: @radius;
|
||||
}
|
||||
.border-left-radius(@radius) {
|
||||
border-bottom-left-radius: @radius;
|
||||
border-top-left-radius: @radius;
|
||||
}
|
||||
|
||||
// Drop shadows
|
||||
.box-shadow(@shadow) {
|
||||
-webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1
|
||||
box-shadow: @shadow;
|
||||
}
|
||||
|
||||
// Transitions
|
||||
.transition(@transition) {
|
||||
-webkit-transition: @transition;
|
||||
transition: @transition;
|
||||
}
|
||||
.transition-property(@transition-property) {
|
||||
-webkit-transition-property: @transition-property;
|
||||
transition-property: @transition-property;
|
||||
}
|
||||
.transition-delay(@transition-delay) {
|
||||
-webkit-transition-delay: @transition-delay;
|
||||
transition-delay: @transition-delay;
|
||||
}
|
||||
.transition-duration(@transition-duration) {
|
||||
-webkit-transition-duration: @transition-duration;
|
||||
transition-duration: @transition-duration;
|
||||
}
|
||||
.transition-transform(@transition) {
|
||||
-webkit-transition: -webkit-transform @transition;
|
||||
-moz-transition: -moz-transform @transition;
|
||||
-o-transition: -o-transform @transition;
|
||||
transition: transform @transition;
|
||||
}
|
||||
|
||||
// Transformations
|
||||
.rotate(@degrees) {
|
||||
-webkit-transform: rotate(@degrees);
|
||||
-ms-transform: rotate(@degrees); // IE9+
|
||||
transform: rotate(@degrees);
|
||||
}
|
||||
.scale(@ratio; @ratio-y...) {
|
||||
-webkit-transform: scale(@ratio, @ratio-y);
|
||||
-ms-transform: scale(@ratio, @ratio-y); // IE9 only
|
||||
transform: scale(@ratio, @ratio-y);
|
||||
}
|
||||
.translate(@x; @y) {
|
||||
-webkit-transform: translate(@x, @y);
|
||||
-ms-transform: translate(@x, @y); // IE9+
|
||||
transform: translate(@x, @y);
|
||||
}
|
||||
.skew(@x; @y) {
|
||||
-webkit-transform: skew(@x, @y);
|
||||
-ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
|
||||
transform: skew(@x, @y);
|
||||
}
|
||||
.translate3d(@x; @y; @z) {
|
||||
-webkit-transform: translate3d(@x, @y, @z);
|
||||
transform: translate3d(@x, @y, @z);
|
||||
}
|
||||
|
||||
.rotateX(@degrees) {
|
||||
-webkit-transform: rotateX(@degrees);
|
||||
-ms-transform: rotateX(@degrees); // IE9+
|
||||
transform: rotateX(@degrees);
|
||||
}
|
||||
.rotateY(@degrees) {
|
||||
-webkit-transform: rotateY(@degrees);
|
||||
-ms-transform: rotateY(@degrees); // IE9+
|
||||
transform: rotateY(@degrees);
|
||||
}
|
||||
.perspective(@perspective) {
|
||||
-webkit-perspective: @perspective;
|
||||
-moz-perspective: @perspective;
|
||||
perspective: @perspective;
|
||||
}
|
||||
.perspective-origin(@perspective) {
|
||||
-webkit-perspective-origin: @perspective;
|
||||
-moz-perspective-origin: @perspective;
|
||||
perspective-origin: @perspective;
|
||||
}
|
||||
.transform-origin(@origin) {
|
||||
-webkit-transform-origin: @origin;
|
||||
-moz-transform-origin: @origin;
|
||||
-ms-transform-origin: @origin; // IE9 only
|
||||
transform-origin: @origin;
|
||||
}
|
||||
|
||||
// Animations
|
||||
.animation(@animation) {
|
||||
-webkit-animation: @animation;
|
||||
animation: @animation;
|
||||
}
|
||||
.animation-name(@name) {
|
||||
-webkit-animation-name: @name;
|
||||
animation-name: @name;
|
||||
}
|
||||
.animation-duration(@duration) {
|
||||
-webkit-animation-duration: @duration;
|
||||
animation-duration: @duration;
|
||||
}
|
||||
.animation-timing-function(@timing-function) {
|
||||
-webkit-animation-timing-function: @timing-function;
|
||||
animation-timing-function: @timing-function;
|
||||
}
|
||||
.animation-delay(@delay) {
|
||||
-webkit-animation-delay: @delay;
|
||||
animation-delay: @delay;
|
||||
}
|
||||
.animation-iteration-count(@iteration-count) {
|
||||
-webkit-animation-iteration-count: @iteration-count;
|
||||
animation-iteration-count: @iteration-count;
|
||||
}
|
||||
.animation-direction(@direction) {
|
||||
-webkit-animation-direction: @direction;
|
||||
animation-direction: @direction;
|
||||
}
|
||||
|
||||
|
||||
// Backface visibility
|
||||
// Prevent browsers from flickering when using CSS 3D transforms.
|
||||
// Default value is `visible`, but can be changed to `hidden`
|
||||
// See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
|
||||
.backface-visibility(@visibility){
|
||||
-webkit-backface-visibility: @visibility;
|
||||
-moz-backface-visibility: @visibility;
|
||||
backface-visibility: @visibility;
|
||||
}
|
||||
|
||||
// Background clip
|
||||
.background-clip(@clip: border-box) {
|
||||
-webkit-background-clip: @clip;
|
||||
-moz-background-clip: @clip;
|
||||
background-clip: @clip;
|
||||
}
|
||||
|
||||
// Box sizing
|
||||
.box-sizing(@boxmodel) {
|
||||
-webkit-box-sizing: @boxmodel;
|
||||
-moz-box-sizing: @boxmodel;
|
||||
box-sizing: @boxmodel;
|
||||
}
|
||||
|
||||
// User select
|
||||
// For selecting text on the page
|
||||
.user-select(@select) {
|
||||
-webkit-user-select: @select;
|
||||
-moz-user-select: @select;
|
||||
-ms-user-select: @select; // IE10+
|
||||
-o-user-select: @select;
|
||||
user-select: @select;
|
||||
}
|
||||
|
||||
// Resize anything
|
||||
.resizable(@direction) {
|
||||
resize: @direction; // Options: horizontal, vertical, both
|
||||
overflow: auto; // Safari fix
|
||||
}
|
||||
|
||||
// CSS3 Content Columns
|
||||
.content-columns(@column-count; @column-gap: @grid-gutter-width) {
|
||||
-webkit-column-count: @column-count;
|
||||
-moz-column-count: @column-count;
|
||||
column-count: @column-count;
|
||||
-webkit-column-gap: @column-gap;
|
||||
-moz-column-gap: @column-gap;
|
||||
column-gap: @column-gap;
|
||||
}
|
||||
|
||||
// Optional hyphenation
|
||||
.hyphens(@mode: auto) {
|
||||
word-wrap: break-word;
|
||||
-webkit-hyphens: @mode;
|
||||
-moz-hyphens: @mode;
|
||||
-ms-hyphens: @mode; // IE10+
|
||||
-o-hyphens: @mode;
|
||||
hyphens: @mode;
|
||||
}
|
||||
|
||||
// Opacity
|
||||
.opacity(@opacity) {
|
||||
opacity: @opacity;
|
||||
// IE8 filter
|
||||
@opacity-ie: (@opacity * 100);
|
||||
filter: ~"alpha(opacity=@{opacity-ie})";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// GRADIENTS
|
||||
// --------------------------------------------------
|
||||
|
||||
#gradient {
|
||||
|
||||
// Horizontal gradient, from left to right
|
||||
//
|
||||
// Creates two color stops, start and end, by specifying a color and position for each color stop.
|
||||
// Color stops are not available in IE9 and below.
|
||||
.horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {
|
||||
background-image: -webkit-linear-gradient(left, color-stop(@start-color @start-percent), color-stop(@end-color @end-percent)); // Safari 5.1-6, Chrome 10+
|
||||
background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
|
||||
background-repeat: repeat-x;
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down
|
||||
}
|
||||
|
||||
// Vertical gradient, from top to bottom
|
||||
//
|
||||
// Creates two color stops, start and end, by specifying a color and position for each color stop.
|
||||
// Color stops are not available in IE9 and below.
|
||||
.vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {
|
||||
background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+
|
||||
background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
|
||||
background-repeat: repeat-x;
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down
|
||||
}
|
||||
|
||||
.directional(@start-color: #555; @end-color: #333; @deg: 45deg) {
|
||||
background-repeat: repeat-x;
|
||||
background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+
|
||||
background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
|
||||
}
|
||||
.horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {
|
||||
background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);
|
||||
background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);
|
||||
background-repeat: no-repeat;
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback
|
||||
}
|
||||
.vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {
|
||||
background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);
|
||||
background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);
|
||||
background-repeat: no-repeat;
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback
|
||||
}
|
||||
.radial(@inner-color: #555; @outer-color: #333) {
|
||||
background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);
|
||||
background-image: radial-gradient(circle, @inner-color, @outer-color);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
.striped(@color: rgba(255,255,255,.15); @angle: 45deg) {
|
||||
background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
|
||||
background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);
|
||||
}
|
||||
}
|
||||
|
||||
// Reset filters for IE
|
||||
//
|
||||
// When you need to remove a gradient background, do not forget to use this to reset
|
||||
// the IE filter for IE9 and below.
|
||||
.reset-filter() {
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Retina images
|
||||
//
|
||||
// Short retina mixin for setting background-image and -size
|
||||
|
||||
.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
|
||||
background-image: url("@{file-1x}");
|
||||
|
||||
@media
|
||||
only screen and (-webkit-min-device-pixel-ratio: 2),
|
||||
only screen and ( min--moz-device-pixel-ratio: 2),
|
||||
only screen and ( -o-min-device-pixel-ratio: 2/1),
|
||||
only screen and ( min-device-pixel-ratio: 2),
|
||||
only screen and ( min-resolution: 192dpi),
|
||||
only screen and ( min-resolution: 2dppx) {
|
||||
background-image: url("@{file-2x}");
|
||||
background-size: @width-1x @height-1x;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Responsive image
|
||||
//
|
||||
// Keep images from scaling beyond the width of their parents.
|
||||
|
||||
.img-responsive(@display: block;) {
|
||||
display: @display;
|
||||
max-width: 100%; // Part 1: Set a maximum relative to the parent
|
||||
height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
|
||||
}
|
||||
|
||||
// Responsive utilities
|
||||
// -------------------------
|
||||
// More easily include all the states for responsive-utilities.less.
|
||||
.responsive-visibility() {
|
||||
display: block !important;
|
||||
tr& { display: table-row !important; }
|
||||
th&,
|
||||
td& { display: table-cell !important; }
|
||||
}
|
||||
|
||||
.responsive-invisibility() {
|
||||
&,
|
||||
tr&,
|
||||
th&,
|
||||
td& { display: none !important; }
|
||||
}
|
||||
|
||||
// Grid System
|
||||
// -----------
|
||||
|
||||
// Centered container element
|
||||
.container-fixed() {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
padding-left: (@grid-gutter-width / 2);
|
||||
padding-right: (@grid-gutter-width / 2);
|
||||
.clearfix();
|
||||
}
|
||||
|
||||
// Creates a wrapper for a series of columns
|
||||
.make-row(@gutter: @grid-gutter-width) {
|
||||
margin-left: (@gutter / -2);
|
||||
margin-right: (@gutter / -2);
|
||||
.clearfix();
|
||||
}
|
||||
|
||||
// Generate the extra small columns
|
||||
.make-xs-column(@columns; @gutter: @grid-gutter-width) {
|
||||
position: relative;
|
||||
float: left;
|
||||
width: percentage((@columns / @grid-columns));
|
||||
min-height: 1px;
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
}
|
||||
.make-xs-column-offset(@columns) {
|
||||
@media (min-width: @screen-xs-min) {
|
||||
margin-left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-xs-column-push(@columns) {
|
||||
@media (min-width: @screen-xs-min) {
|
||||
left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-xs-column-pull(@columns) {
|
||||
@media (min-width: @screen-xs-min) {
|
||||
right: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Generate the small columns
|
||||
.make-sm-column(@columns; @gutter: @grid-gutter-width) {
|
||||
position: relative;
|
||||
min-height: 1px;
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
|
||||
@media (min-width: @screen-sm-min) {
|
||||
float: left;
|
||||
width: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-sm-column-offset(@columns) {
|
||||
@media (min-width: @screen-sm-min) {
|
||||
margin-left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-sm-column-push(@columns) {
|
||||
@media (min-width: @screen-sm-min) {
|
||||
left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-sm-column-pull(@columns) {
|
||||
@media (min-width: @screen-sm-min) {
|
||||
right: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Generate the medium columns
|
||||
.make-md-column(@columns; @gutter: @grid-gutter-width) {
|
||||
position: relative;
|
||||
min-height: 1px;
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
|
||||
@media (min-width: @screen-md-min) {
|
||||
float: left;
|
||||
width: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-md-column-offset(@columns) {
|
||||
@media (min-width: @screen-md-min) {
|
||||
margin-left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-md-column-push(@columns) {
|
||||
@media (min-width: @screen-md-min) {
|
||||
left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-md-column-pull(@columns) {
|
||||
@media (min-width: @screen-md-min) {
|
||||
right: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Generate the large columns
|
||||
.make-lg-column(@columns; @gutter: @grid-gutter-width) {
|
||||
position: relative;
|
||||
min-height: 1px;
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
|
||||
@media (min-width: @screen-lg-min) {
|
||||
float: left;
|
||||
width: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-lg-column-offset(@columns) {
|
||||
@media (min-width: @screen-lg-min) {
|
||||
margin-left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-lg-column-push(@columns) {
|
||||
@media (min-width: @screen-lg-min) {
|
||||
left: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
.make-lg-column-pull(@columns) {
|
||||
@media (min-width: @screen-lg-min) {
|
||||
right: percentage((@columns / @grid-columns));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// COMPONENT MIXINS
|
||||
// --------------------------------------------------
|
||||
|
||||
// Color swatches grid
|
||||
.calc-color(@first-color, @second-color) {
|
||||
.palette-@{first-color} {
|
||||
background-color: ~"@{@{first-color}}";
|
||||
}
|
||||
.palette-@{second-color} {
|
||||
background-color: ~"@{@{second-color}}";
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown arrow
|
||||
// -------------------------
|
||||
.dropdown-arrow(@color: @brand-primary; @top: 5px; @left: 15px; @size: 9px) {
|
||||
&:before {
|
||||
content: "";
|
||||
border-style: solid;
|
||||
border-width: 0 @size @size @size;
|
||||
border-color: transparent transparent @color transparent;
|
||||
height: 0;
|
||||
position: absolute;
|
||||
left: @left;
|
||||
top: @top;
|
||||
width: 0;
|
||||
// Make corners smooth
|
||||
-webkit-transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
// Button variants
|
||||
// -------------------------
|
||||
// Easily pump out default styles, as well as :hover, :focus, :active,
|
||||
// and disabled options for all buttons
|
||||
.button-variant(@color; @background; @hover-background; @active-background; @disabled-background: @gray-light) {
|
||||
color: @color;
|
||||
background-color: @background;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active,
|
||||
&.active,
|
||||
.open .dropdown-toggle& {
|
||||
color: @color;
|
||||
background-color: @hover-background;
|
||||
border-color: @hover-background;
|
||||
}
|
||||
&:active,
|
||||
&.active,
|
||||
.open .dropdown-toggle& {
|
||||
background: @active-background;
|
||||
border-color: @active-background;
|
||||
}
|
||||
&.disabled,
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active,
|
||||
&.active {
|
||||
background-color: @background;
|
||||
border-color: @background;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Button sizes
|
||||
// -------------------------
|
||||
.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
|
||||
padding: @padding-vertical @padding-horizontal;
|
||||
font-size: @font-size;
|
||||
line-height: @line-height;
|
||||
border-radius: @border-radius;
|
||||
}
|
||||
|
||||
// Social button variants
|
||||
// -------------------------
|
||||
.social-button-variant(@color; @background) {
|
||||
color: @color;
|
||||
background-color: @background;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: mix(@background, white, 80%);
|
||||
}
|
||||
&:active,
|
||||
&.active {
|
||||
background-color: mix(@background, black, 85%);
|
||||
}
|
||||
}
|
||||
|
||||
.swap-dialog-color(@color) {
|
||||
background-color: mix(@color, white, 9%);
|
||||
border-top-color: mix(@color, white, 20%);
|
||||
}
|
||||
|
||||
.dropdown-arrow-inverse {
|
||||
border-bottom-color: @brand-primary !important;
|
||||
border-top-color: @brand-primary !important;
|
||||
}
|
||||
|
||||
.swap-iconbar-color(@color) {
|
||||
background-color: @color;
|
||||
> ul {
|
||||
> li {
|
||||
&.active {
|
||||
> a {
|
||||
color: mix(@color, black, 66%);
|
||||
}
|
||||
}
|
||||
> a {
|
||||
&:hover, &:focus {
|
||||
color: mix(@color, black, 66%);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.iconbar-unread { background-color: mix(@color, black, 66%); }
|
||||
}
|
||||
|
||||
.swap-pagination-color(@color, @hover, @active) {
|
||||
ul {
|
||||
background-color: @color;
|
||||
|
||||
li {
|
||||
&.previous {
|
||||
> a {
|
||||
border-right-color: mix(@color, white, 66%);
|
||||
}
|
||||
}
|
||||
> a, > span {
|
||||
border-left-color: mix(@color, white, 66%);
|
||||
|
||||
&:hover, &:focus {
|
||||
background-color: @hover;
|
||||
}
|
||||
&:active {
|
||||
background-color: @active;
|
||||
}
|
||||
}
|
||||
&.active {
|
||||
> a, > span {
|
||||
background-color: @active;
|
||||
}
|
||||
}
|
||||
|
||||
&.pagination-dropdown.dropup {
|
||||
.dropdown-arrow {
|
||||
border-top-color: @color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Labels
|
||||
// -------------------------
|
||||
.label-variant(@color, @hover-color, @text-color: @inverse) {
|
||||
background-color: @color;
|
||||
color: @text-color;
|
||||
|
||||
&[href] {
|
||||
color: @text-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @text-color;
|
||||
background-color: @hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Contextual backgrounds
|
||||
// -------------------------
|
||||
.bg-variant(@color) {
|
||||
background-color: @color;
|
||||
a&:hover {
|
||||
background-color: darken(@color, 10%);
|
||||
}
|
||||
}
|
||||
|
||||
// Typography
|
||||
// -------------------------
|
||||
.text-emphasis-variant(@color) {
|
||||
color: @color;
|
||||
a&:hover {
|
||||
color: mix(@color, black, 80%);
|
||||
}
|
||||
}
|
||||
|
||||
// Navbar vertical align
|
||||
// -------------------------
|
||||
// Vertically center elements in the navbar.
|
||||
// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
|
||||
.navbar-vertical-align(@element-height; @navbar-height: @navbar-height-base) {
|
||||
padding-top: ((@navbar-height - @element-height) / 2);
|
||||
padding-bottom: ((@navbar-height - @element-height) / 2);
|
||||
}
|
||||
|
||||
// Form validation states
|
||||
//
|
||||
// Used in forms.less to generate the form validation CSS for warnings, errors,
|
||||
// and successes.
|
||||
|
||||
.form-control-validation(@text-color: @brand-primary; @border-color: @gray-light; @background-color: @inverse) {
|
||||
// Color the label and help text
|
||||
.help-block,
|
||||
.control-label,
|
||||
.radio,
|
||||
.checkbox,
|
||||
.radio-inline,
|
||||
.checkbox-inline {
|
||||
color: @text-color;
|
||||
}
|
||||
// Set the border and box shadow on specific inputs to match
|
||||
.form-control {
|
||||
color: @text-color;
|
||||
border-color: @border-color;
|
||||
.box-shadow(none);
|
||||
.placeholder(@text-color);
|
||||
|
||||
&:focus {
|
||||
border-color: @border-color;
|
||||
.box-shadow(none);
|
||||
}
|
||||
}
|
||||
// Set validation states also for addons
|
||||
.input-group-addon {
|
||||
color: @text-color;
|
||||
border-color: @border-color;
|
||||
background-color: @background-color;
|
||||
}
|
||||
}
|
||||
|
||||
// Form control focus state
|
||||
//
|
||||
// Generate a customized focus state and for any input with the specified color,
|
||||
// which defaults to the `@input-focus-border` variable.
|
||||
//
|
||||
// We highly encourage you to not customize the default value, but instead use
|
||||
// this to tweak colors on an as-needed basis. This aesthetic change is based on
|
||||
// WebKit's default styles, but applicable to a wider range of browsers. Its
|
||||
// usability and accessibility should be taken into account with any change.
|
||||
//
|
||||
// Example usage: change the default blue border and shadow to white for better
|
||||
// contrast against a dark gray background.
|
||||
|
||||
.form-control-focus(@color: @brand-secondary) {
|
||||
.form-group.focus &,
|
||||
&:focus {
|
||||
border-color: @color;
|
||||
outline: 0;
|
||||
.box-shadow(none);
|
||||
}
|
||||
}
|
||||
|
||||
// Form control sizing
|
||||
//
|
||||
// Relative text size, padding, and border-radii changes for form controls. For
|
||||
// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
|
||||
// element gets special love because it's special, and that's a fact!
|
||||
|
||||
.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius: @border-radius-large) {
|
||||
height: @input-height;
|
||||
padding: @padding-vertical @padding-horizontal;
|
||||
font-size: @font-size;
|
||||
line-height: @line-height;
|
||||
border-radius: @border-radius;
|
||||
|
||||
select& {
|
||||
height: @input-height;
|
||||
line-height: @input-height;
|
||||
}
|
||||
|
||||
textarea&,
|
||||
select[multiple]& {
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
|
||||
// Reset rounded corners for form controls
|
||||
//
|
||||
.form-controls-corners-reset() {
|
||||
.input-group .form-control:first-child,
|
||||
.input-group-addon:first-child,
|
||||
.input-group-btn:first-child > .btn,
|
||||
.input-group-btn:first-child > .dropdown-toggle,
|
||||
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
|
||||
.border-right-radius(0);
|
||||
}
|
||||
.input-group .form-control:last-child,
|
||||
.input-group-addon:last-child,
|
||||
.input-group-btn:last-child > .btn,
|
||||
.input-group-btn:last-child > .dropdown-toggle,
|
||||
.input-group-btn:first-child > .btn:not(:first-child) {
|
||||
.border-left-radius(0);
|
||||
}
|
||||
}
|
||||
|
||||
// Spinner variants
|
||||
// -------------------------
|
||||
.spinner-variant(@up-btn-height; @down-btn-height; @line-height) {
|
||||
& + .ui-spinner-button {
|
||||
height: @up-btn-height;
|
||||
line-height: @line-height;
|
||||
}
|
||||
& + .ui-spinner-button + .ui-spinner-button {
|
||||
height: @down-btn-height;
|
||||
line-height: @line-height;
|
||||
}
|
||||
}
|
110
lib/less/modules/button-groups.import.less
vendored
Executable file
@ -0,0 +1,110 @@
|
||||
//
|
||||
// Button groups
|
||||
// --------------------------------------------------
|
||||
|
||||
// Button carets
|
||||
//
|
||||
// Match the button text color to the arrow/caret for indicating dropdown-ness.
|
||||
|
||||
.caret {
|
||||
.btn-default & {
|
||||
border-top-color: @btn-default-color;
|
||||
}
|
||||
.btn-primary &,
|
||||
.btn-success &,
|
||||
.btn-warning &,
|
||||
.btn-danger &,
|
||||
.btn-info & {
|
||||
border-top-color: @inverse;
|
||||
}
|
||||
}
|
||||
.dropup {
|
||||
& .btn-default .caret {
|
||||
border-bottom-color: @btn-default-color;
|
||||
}
|
||||
.btn-primary,
|
||||
.btn-success,
|
||||
.btn-warning,
|
||||
.btn-danger,
|
||||
.btn-info {
|
||||
.caret {
|
||||
border-bottom-color: @inverse;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Sizing
|
||||
//
|
||||
// Remix the default button sizing classes into new ones for easier manipulation.
|
||||
|
||||
.btn-group-xs > .btn { .btn-xs(); }
|
||||
.btn-group-sm > .btn { .btn-sm(); }
|
||||
.btn-group-lg > .btn { .btn-lg(); }
|
||||
.btn-group-gh > .btn { .btn-hg(); }
|
||||
|
||||
|
||||
.btn-group {
|
||||
> .btn {
|
||||
& + .btn {
|
||||
margin-left: 0;
|
||||
}
|
||||
& + .dropdown-toggle {
|
||||
border-left: 2px solid fade(@brand-primary, 15%);
|
||||
padding-left: 12px;
|
||||
padding-right: 12px;
|
||||
|
||||
.caret {
|
||||
margin-left: 3px;
|
||||
margin-right: 3px;
|
||||
}
|
||||
}
|
||||
&.btn-gh + .dropdown-toggle {
|
||||
.caret {
|
||||
margin-left: 7px;
|
||||
margin-right: 7px;
|
||||
}
|
||||
}
|
||||
&.btn-sm + .dropdown-toggle {
|
||||
.caret {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-toggle {
|
||||
.caret {
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-group > .btn,
|
||||
.btn-group > .dropdown-menu,
|
||||
.btn-group > .popover {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.btn-group:focus .dropdown-toggle {
|
||||
outline: none;
|
||||
.transition(.25s);
|
||||
}
|
||||
|
||||
// The clickable button for toggling the menu
|
||||
// Remove the gradient and set the same inset shadow as the :active state
|
||||
.btn-group.open .dropdown-toggle {
|
||||
color: fade(@btn-default-color, 75%);
|
||||
.box-shadow(none);
|
||||
}
|
||||
|
||||
// Other button locations
|
||||
// Button with icon inside
|
||||
.btn-toolbar .btn {
|
||||
&.active {
|
||||
color: @btn-default-color;
|
||||
}
|
||||
> [class^="fui-"] {
|
||||
font-size: @icon-normal;
|
||||
margin: 0 1px;
|
||||
}
|
||||
}
|
147
lib/less/modules/buttons.import.less
vendored
Executable file
@ -0,0 +1,147 @@
|
||||
//
|
||||
// Buttons
|
||||
// --------------------------------------------------
|
||||
|
||||
// Base styles
|
||||
// --------------------------------------------------
|
||||
.btn {
|
||||
border: none;
|
||||
font-size: @btn-font-size-base;
|
||||
font-weight: @btn-font-weight;
|
||||
line-height: @btn-line-height-base;
|
||||
border-radius: @border-radius-base;
|
||||
padding: 10px 15px;
|
||||
-webkit-font-smoothing: subpixel-antialiased;
|
||||
.transition(~"border .25s linear, color .25s linear, background-color .25s linear");
|
||||
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
outline: none;
|
||||
color: @btn-default-color;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.active {
|
||||
outline: none;
|
||||
.box-shadow(none);
|
||||
}
|
||||
|
||||
&.disabled,
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
background-color: @btn-link-disabled-color;
|
||||
color: fade(@btn-default-color, 75%);
|
||||
.opacity(.7);
|
||||
}
|
||||
|
||||
// Button icons
|
||||
// --------------------------------------------------
|
||||
> [class^="fui-"] {
|
||||
margin: 0 1px;
|
||||
position: relative;
|
||||
line-height: 1;
|
||||
top: 1px;
|
||||
|
||||
.btn-xs& {
|
||||
font-size: 11px;
|
||||
top: 0;
|
||||
}
|
||||
.btn-hg& {
|
||||
top: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Alternate buttons
|
||||
// --------------------------------------------------
|
||||
.btn-default {
|
||||
.button-variant(@btn-default-color, @btn-default-bg, @btn-hover-bg, @btn-active-bg);
|
||||
}
|
||||
.btn-primary {
|
||||
.button-variant(@btn-default-color, @brand-secondary, @btn-primary-hover-bg, @btn-primary-active-bg);
|
||||
}
|
||||
.btn-info {
|
||||
.button-variant(@btn-default-color, @brand-info, @btn-info-hover-bg, @btn-info-active-bg);
|
||||
}
|
||||
.btn-danger {
|
||||
.button-variant(@btn-default-color, @brand-danger, @btn-danger-hover-bg, @btn-danger-active-bg);
|
||||
}
|
||||
.btn-success {
|
||||
.button-variant(@btn-default-color, @brand-success, @btn-success-hover-bg, @btn-success-active-bg);
|
||||
}
|
||||
.btn-warning {
|
||||
.button-variant(@btn-default-color, @brand-warning, @btn-warning-hover-bg, @btn-warning-active-bg);
|
||||
}
|
||||
.btn-inverse {
|
||||
.button-variant(@btn-default-color, @brand-primary, @btn-inverse-hover-bg, @btn-inverse-active-bg);
|
||||
}
|
||||
.btn-embossed {
|
||||
.box-shadow(inset 0 -2px 0 fade(black, 15%));
|
||||
|
||||
&.active,
|
||||
&:active {
|
||||
.box-shadow(inset 0 2px 0 fade(black, 15%));
|
||||
}
|
||||
}
|
||||
.btn-wide {
|
||||
min-width: 140px;
|
||||
padding-left: 30px;
|
||||
padding-right: 30px;
|
||||
}
|
||||
|
||||
|
||||
// Link buttons
|
||||
// -------------------------
|
||||
|
||||
// Make a button look and behave like a link
|
||||
.btn-link {
|
||||
color: @link-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @link-hover-color;
|
||||
text-decoration: underline;
|
||||
background-color: transparent;
|
||||
}
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @btn-link-disabled-color;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Button sizes
|
||||
// --------------------------------------------------
|
||||
|
||||
.btn-hg {
|
||||
.button-size(13px, 20px, @btn-font-size-hg, @btn-line-height-hg, @border-radius-large);
|
||||
}
|
||||
.btn-lg {
|
||||
.button-size(10px, 19px, @btn-font-size-lg, @btn-line-height-lg, @border-radius-large);
|
||||
}
|
||||
.btn-sm {
|
||||
.button-size(9px, 13px, @btn-font-size-sm, @btn-line-height-sm, @border-radius-base);
|
||||
}
|
||||
.btn-xs {
|
||||
.button-size(6px, 9px, @btn-font-size-xs, @btn-line-height-xs, @border-radius-small);
|
||||
}
|
||||
|
||||
|
||||
// Button tip
|
||||
.btn-tip {
|
||||
font-weight: 300;
|
||||
padding-left: 10px;
|
||||
font-size: 92%;
|
||||
}
|
||||
|
||||
// Block button
|
||||
// --------------------------------------------------
|
||||
|
||||
.btn-block {
|
||||
white-space: normal;
|
||||
}
|
30
lib/less/modules/caret.import.less
vendored
Executable file
@ -0,0 +1,30 @@
|
||||
//
|
||||
// Caret
|
||||
// --------------------------------------------------
|
||||
|
||||
.caret {
|
||||
border-width: 8px 6px;
|
||||
border-bottom-color: @brand-primary;
|
||||
border-top-color: @brand-primary;
|
||||
border-style: solid;
|
||||
border-bottom-style: none;
|
||||
.transition(.25s);
|
||||
.scale(1.001);
|
||||
}
|
||||
|
||||
.caret(@color: @brand-primary) {
|
||||
border-bottom-color: @color;
|
||||
border-top-color: @color;
|
||||
}
|
||||
|
||||
.dropup .caret,
|
||||
.dropup .btn-lg .caret,
|
||||
.navbar-fixed-bottom .dropdown .caret {
|
||||
border-bottom-width: 8px;
|
||||
}
|
||||
|
||||
.btn-lg .caret {
|
||||
border-top-width: 8px;
|
||||
border-right-width: 6px;
|
||||
border-left-width: 6px;
|
||||
}
|
49
lib/less/modules/code.import.less
vendored
Executable file
@ -0,0 +1,49 @@
|
||||
//
|
||||
// Code (inline and blocK)
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Inline and block code styles
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: @font-family-monospace;
|
||||
}
|
||||
|
||||
// Inline code
|
||||
code {
|
||||
padding: 2px 6px;
|
||||
font-size: 85%;
|
||||
color: @code-color;
|
||||
background-color: @code-bg;
|
||||
border-radius: @border-radius-base;
|
||||
}
|
||||
|
||||
// User input typically entered via keyboard
|
||||
kbd {
|
||||
padding: 2px 6px;
|
||||
font-size: 85%;
|
||||
color: @kbd-color;
|
||||
background-color: @kbd-bg;
|
||||
border-radius: @border-radius-base;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
// Blocks of code
|
||||
pre {
|
||||
padding: ((@line-height-computed - 6) / 3);
|
||||
margin: 0 0 (@line-height-computed / 2);
|
||||
font-size: (@font-size-base - 5); // 18px to 13px
|
||||
line-height: @line-height-base;
|
||||
color: @pre-color;
|
||||
background-color: @pre-bg;
|
||||
border: 2px solid @pre-border-color;
|
||||
border-radius: @pre-border-radius;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
// Enable scrollable blocks of code
|
||||
.pre-scrollable {
|
||||
max-height: @pre-scrollable-max-height;
|
||||
}
|
76
lib/less/modules/footer.import.less
vendored
Executable file
@ -0,0 +1,76 @@
|
||||
//
|
||||
// Footer
|
||||
// --------------------------------------------------
|
||||
|
||||
footer {
|
||||
background-color: mix(@brand-primary, @inverse, 9%);
|
||||
color: mix(@brand-primary, @inverse, 34%);
|
||||
font-size: 15px;
|
||||
padding: 0;
|
||||
|
||||
a {
|
||||
color: mix(@brand-primary, @inverse, 50%);
|
||||
font-weight: 700;
|
||||
}
|
||||
p {
|
||||
font-size: 15px;
|
||||
line-height: 20px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
.footer-title {
|
||||
margin: 0 0 22px;
|
||||
padding-top: 21px;
|
||||
font-size: 24px;
|
||||
line-height: 40px;
|
||||
}
|
||||
|
||||
.footer-brand {
|
||||
display: block;
|
||||
margin-bottom: 26px;
|
||||
width: 220px;
|
||||
|
||||
img {
|
||||
width: 216px;
|
||||
}
|
||||
}
|
||||
|
||||
// FOOTER BANNER
|
||||
// ----------------------
|
||||
.footer-banner {
|
||||
background-color: @brand-secondary;
|
||||
color: mix(@brand-secondary, @inverse, 20%);
|
||||
margin-left: 42px;
|
||||
min-height: 316px;
|
||||
padding: 0 30px 30px;
|
||||
|
||||
.footer-title {
|
||||
color: @inverse;
|
||||
}
|
||||
a {
|
||||
color: lighten(@brand-secondary, 42%);
|
||||
text-decoration: underline;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
ul {
|
||||
list-style-type: none;
|
||||
margin: 0 0 26px;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
border-top: 1px solid lighten(@brand-secondary, 2%);
|
||||
line-height: 19px;
|
||||
padding: 6px 0;
|
||||
|
||||
&:first-child {
|
||||
border-top: none;
|
||||
padding-top: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
193
lib/less/modules/forms.import.less
vendored
Executable file
@ -0,0 +1,193 @@
|
||||
//
|
||||
// Forms
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Normalize non-controls
|
||||
//
|
||||
// Restyle and baseline non-control form elements.
|
||||
|
||||
legend {
|
||||
display: block;
|
||||
width: 100%;
|
||||
padding: 0;
|
||||
margin-bottom: @line-height-computed / 2;
|
||||
font-size: (@component-font-size-base * 1.6); // ~24px
|
||||
line-height: inherit;
|
||||
color: @legend-color;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
// Normalize form controls
|
||||
|
||||
// Textarea
|
||||
textarea {
|
||||
font-size: ceil(@font-size-base * 1.071); // ~15px
|
||||
line-height: 24px;
|
||||
padding: 5px 11px;
|
||||
}
|
||||
|
||||
// Search
|
||||
input[type="search"] {
|
||||
-webkit-appearance: none !important; // removes rounded corners for searchfields on iOS
|
||||
}
|
||||
|
||||
|
||||
// Label
|
||||
label {
|
||||
font-weight: normal;
|
||||
font-size: @component-font-size-base;
|
||||
line-height: 2.4; // ~36px
|
||||
}
|
||||
|
||||
// Placeholder
|
||||
//
|
||||
// Placeholder text gets special styles because when browsers invalidate entire
|
||||
// lines if it doesn't understand a selector/
|
||||
.form-control {
|
||||
.placeholder(desaturate(lighten(@brand-primary, 45%), 15%));
|
||||
}
|
||||
|
||||
// Common form controls
|
||||
//
|
||||
// Shared size and type resets for form controls. Apply `.form-control` to any
|
||||
// of the following form controls:
|
||||
//
|
||||
// select
|
||||
// textarea
|
||||
// input[type="text"]
|
||||
// input[type="password"]
|
||||
// input[type="datetime"]
|
||||
// input[type="datetime-local"]
|
||||
// input[type="date"]
|
||||
// input[type="month"]
|
||||
// input[type="time"]
|
||||
// input[type="week"]
|
||||
// input[type="number"]
|
||||
// input[type="email"]
|
||||
// input[type="url"]
|
||||
// input[type="search"]
|
||||
// input[type="tel"]
|
||||
// input[type="color"]
|
||||
|
||||
.form-control {
|
||||
border: 2px solid @gray-light;
|
||||
color: @brand-primary;
|
||||
font-family: @font-family-base;
|
||||
font-size: @input-font-size-base;
|
||||
line-height: @input-line-height-base;
|
||||
padding: 8px 12px;
|
||||
height: 42px;
|
||||
-webkit-appearance: none;
|
||||
border-radius: @input-border-radius;
|
||||
.box-shadow(none);
|
||||
.transition(~"border .25s linear, color .25s linear, background-color .25s linear");
|
||||
|
||||
// Customize the `:focus` state
|
||||
.form-control-focus();
|
||||
|
||||
// Disabled and read-only inputs
|
||||
// Note: HTML5 says that controls under a fieldset > legend:first-child won't
|
||||
// be disabled if the fieldset is disabled. Due to implementation difficulty,
|
||||
// we don't honor that edge case; we style them as disabled anyway.
|
||||
&[disabled],
|
||||
&[readonly],
|
||||
fieldset[disabled] & {
|
||||
background-color: @input-bg-disabled;
|
||||
border-color: mix(@gray, white, 40%);
|
||||
color: mix(@gray, white, 40%);
|
||||
cursor: default;
|
||||
.opacity(.7);
|
||||
}
|
||||
|
||||
// Flat (without border)
|
||||
&.flat {
|
||||
border-color: transparent;
|
||||
|
||||
&:hover {
|
||||
border-color: @gray-light;
|
||||
}
|
||||
&:focus {
|
||||
border-color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Form control sizing
|
||||
.input-sm {
|
||||
.input-size(@input-height-small; 6px; 10px; @input-font-size-small; @input-line-height-small);
|
||||
}
|
||||
|
||||
.input-lg {
|
||||
.input-size(@input-height-large; 10px; 15px; @input-font-size-large; @input-line-height-large);
|
||||
}
|
||||
|
||||
.input-hg {
|
||||
.input-size(@input-height-huge; 10px; 16px; @input-font-size-huge; @input-line-height-huge);
|
||||
}
|
||||
|
||||
// Form control feedback states
|
||||
//
|
||||
// Apply contextual and semantic states to individual form controls.
|
||||
|
||||
// Warning
|
||||
.has-warning {
|
||||
.form-control-validation(@brand-warning; @brand-warning);
|
||||
}
|
||||
// Error
|
||||
.has-error {
|
||||
.form-control-validation(@brand-danger; @brand-danger);
|
||||
}
|
||||
// Success
|
||||
.has-success {
|
||||
.form-control-validation(@brand-success; @brand-success);
|
||||
}
|
||||
|
||||
// Help text
|
||||
//
|
||||
// Apply to any element you wish to create light text for placement immediately
|
||||
// below a form control. Use for general help, formatting, or instructional text.
|
||||
|
||||
.help-block {
|
||||
font-size: @component-font-size-base;
|
||||
margin-bottom: 5px;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
// Form groups
|
||||
//
|
||||
// Designed to help with the organization and spacing of vertical forms. For
|
||||
// horizontal forms, use the predefined grid classes.
|
||||
|
||||
.form-group {
|
||||
position: relative;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
// Horizontal forms
|
||||
//
|
||||
// Horizontal forms are built on grid classes and allow you to create forms with
|
||||
// labels on the left and inputs on the right.
|
||||
|
||||
.form-horizontal {
|
||||
|
||||
// Consistent vertical alignment of labels, radios, and checkboxes
|
||||
.control-label,
|
||||
.radio,
|
||||
.checkbox,
|
||||
.radio-inline,
|
||||
.checkbox-inline {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
padding-top: 6px;
|
||||
}
|
||||
|
||||
// Make form groups behave like rows
|
||||
.form-group {
|
||||
.make-row();
|
||||
}
|
||||
|
||||
.form-control-static {
|
||||
padding-top: 6px;
|
||||
}
|
||||
}
|
137
lib/less/modules/input-groups.import.less
vendored
Executable file
@ -0,0 +1,137 @@
|
||||
//
|
||||
// Input groups
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Sizing options
|
||||
//
|
||||
// Remix the default form control sizing classes into new ones for easier
|
||||
// manipulation.
|
||||
|
||||
.input-group-hg > .form-control,
|
||||
.input-group-hg > .input-group-addon,
|
||||
.input-group-hg > .input-group-btn > .btn { .input-hg(); }
|
||||
.input-group-lg > .form-control,
|
||||
.input-group-lg > .input-group-addon,
|
||||
.input-group-lg > .input-group-btn > .btn { .input-lg(); }
|
||||
.input-group-sm > .form-control,
|
||||
.input-group-sm > .input-group-addon,
|
||||
.input-group-sm > .input-group-btn > .btn { .input-sm(); }
|
||||
|
||||
// Text input groups
|
||||
// -------------------------
|
||||
.input-group-addon {
|
||||
padding: 10px 12px;
|
||||
font-size: @component-font-size-base;
|
||||
color: @inverse;
|
||||
text-align: center;
|
||||
background-color: @gray-light;
|
||||
border: 1px solid @gray-light;
|
||||
border-radius: @border-radius-large;
|
||||
.transition(~"border .25s linear, color .25s linear, background-color .25s linear");
|
||||
|
||||
.input-group-hg &,
|
||||
.input-group-lg &,
|
||||
.input-group-sm &, {
|
||||
line-height: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Reset rounded corners
|
||||
.form-controls-corners-reset();
|
||||
|
||||
|
||||
|
||||
// Focus State
|
||||
// -------------------------
|
||||
.form-group.focus,
|
||||
.input-group.focus {
|
||||
.input-group-addon {
|
||||
background-color: @brand-secondary;
|
||||
border-color: @brand-secondary;
|
||||
}
|
||||
.input-group-btn {
|
||||
> .btn-default + .btn-default {
|
||||
border-left-color: mix(@brand-secondary, black, 85%);
|
||||
}
|
||||
.btn {
|
||||
border-color: @brand-secondary;
|
||||
background-color: @inverse;
|
||||
color: @brand-secondary;
|
||||
}
|
||||
.btn-default {
|
||||
.button-variant(@btn-default-color, @brand-secondary, @btn-primary-hover-bg, @btn-primary-active-bg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Button input groups
|
||||
// -------------------------
|
||||
.input-group-btn {
|
||||
.btn {
|
||||
background-color: @inverse;
|
||||
border: 2px solid @gray-light;
|
||||
color: @gray-light;
|
||||
line-height: 18px;
|
||||
}
|
||||
.btn-default {
|
||||
.button-variant(@btn-default-color, @gray-light, @btn-hover-bg, @btn-active-bg);
|
||||
}
|
||||
.input-group-hg & .btn {
|
||||
line-height: 31px;
|
||||
}
|
||||
.input-group-lg & .btn {
|
||||
line-height: 21px;
|
||||
}
|
||||
.input-group-sm & .btn {
|
||||
line-height: 19px;
|
||||
}
|
||||
&:first-child > .btn {
|
||||
border-right-width: 0;
|
||||
margin-right: -2px;
|
||||
}
|
||||
&:last-child > .btn {
|
||||
border-left-width: 0;
|
||||
margin-left: -2px;
|
||||
}
|
||||
& > .btn-default + .btn-default {
|
||||
border-left: 2px solid @gray-light;
|
||||
}
|
||||
& > .btn:first-child + .btn {
|
||||
.caret {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Rounded input groups
|
||||
// -------------------------
|
||||
.input-group-rounded {
|
||||
.input-group-btn + .form-control,
|
||||
.input-group-btn:last-child .btn {
|
||||
.border-right-radius(20px);
|
||||
|
||||
.input-group-hg& {
|
||||
.border-right-radius(27px);
|
||||
}
|
||||
.input-group-lg& {
|
||||
.border-right-radius(25px);
|
||||
}
|
||||
}
|
||||
.form-control:first-child,
|
||||
.input-group-btn:first-child .btn {
|
||||
.border-left-radius(20px);
|
||||
|
||||
.input-group-hg& {
|
||||
.border-left-radius(27px);
|
||||
}
|
||||
.input-group-lg& {
|
||||
.border-left-radius(25px);
|
||||
}
|
||||
}
|
||||
// Remove left padding for .form-control after button
|
||||
.input-group-btn + .form-control {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
72
lib/less/modules/input-icons.import.less
vendored
Executable file
@ -0,0 +1,72 @@
|
||||
//
|
||||
// Input Icons
|
||||
// --------------------------------------------------
|
||||
|
||||
.form-group {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.form-control {
|
||||
& + .input-icon {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
right: 2px;
|
||||
line-height: 37px;
|
||||
vertical-align: middle;
|
||||
font-size: @input-icon-font-size;
|
||||
color: desaturate(lighten(@brand-primary, 45%), 15%);
|
||||
background-color: @inverse;
|
||||
padding: 0 12px 0 0;
|
||||
border-radius: @input-border-radius;
|
||||
}
|
||||
}
|
||||
|
||||
// Icons sizing
|
||||
// ---------------------------
|
||||
|
||||
// Huge
|
||||
.input-hg + .input-icon {
|
||||
line-height: 49px;
|
||||
padding: 0 16px 0 0;
|
||||
}
|
||||
|
||||
//Large
|
||||
.input-lg + .input-icon {
|
||||
line-height: 41px;
|
||||
padding: 0 15px 0 0;
|
||||
}
|
||||
|
||||
// Small
|
||||
.input-sm + .input-icon {
|
||||
font-size: @font-size-base;
|
||||
line-height: 30px;
|
||||
padding: 0 10px 0 0;
|
||||
}
|
||||
|
||||
|
||||
// Icons states
|
||||
// ---------------------------
|
||||
|
||||
.has-success {
|
||||
.input-icon {
|
||||
color: @brand-success;
|
||||
}
|
||||
}
|
||||
.has-warning {
|
||||
.input-icon {
|
||||
color: @brand-warning;
|
||||
}
|
||||
}
|
||||
.has-error {
|
||||
.input-icon {
|
||||
color: @brand-danger;
|
||||
}
|
||||
}
|
||||
.form-control[disabled] + .input-icon,
|
||||
.form-control[readonly] + .input-icon,
|
||||
fieldset[disabled] .form-control + .input-icon,
|
||||
.form-control.disabled + .input-icon {
|
||||
color: mix(@gray, white, 40%);
|
||||
background-color: transparent;
|
||||
.opacity(.7);
|
||||
}
|
308
lib/less/modules/inputs.import.less
vendored
Executable file
@ -0,0 +1,308 @@
|
||||
/* Mixins
|
||||
===============================*/
|
||||
.border-radius(@radius) {
|
||||
-webkit-border-radius: @radius;
|
||||
-moz-border-radius: @radius;
|
||||
border-radius: @radius;
|
||||
}
|
||||
|
||||
.input-placeholder() {
|
||||
&::-webkit-input-placeholder {color: #fff}
|
||||
&:-moz-placeholder {color: #fff}
|
||||
&::-moz-placeholder {color: #fff}
|
||||
&:-ms-input-placeholder {color: #fff}
|
||||
}
|
||||
|
||||
.transition() {
|
||||
-webkit-transition: all .3s ease-in-out;
|
||||
-moz-transition: all .3s ease-in-out;
|
||||
transition: all .3s ease-in-out;
|
||||
}
|
||||
|
||||
/* Main Colors
|
||||
===============================*/
|
||||
.turq {
|
||||
background:@turquoise;
|
||||
&:checked {background: @green-sea}
|
||||
}
|
||||
|
||||
.blue {
|
||||
background:@peter-river;
|
||||
&:checked {background:@belize-hole}
|
||||
}
|
||||
|
||||
.yellow {
|
||||
background:@sun-flower;
|
||||
&:checked {background:@orange}
|
||||
}
|
||||
|
||||
.red {
|
||||
background:@alizarin;
|
||||
&:checked {background: @pomegranate}
|
||||
}
|
||||
|
||||
.dark {
|
||||
background:@wet-asphalt;
|
||||
&:checked {background:@midnight-blue}
|
||||
}
|
||||
|
||||
.sun {
|
||||
background:@carrot;
|
||||
&:checked {background:@pumpkin}
|
||||
}
|
||||
|
||||
/* Menus
|
||||
===============================*/
|
||||
nav {
|
||||
.border-radius(4px);
|
||||
position: relative;
|
||||
margin:30px auto;
|
||||
margin-bottom: 40px;
|
||||
padding: 15px;
|
||||
text-align: left;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
color:#fff;
|
||||
font-weight: 600;
|
||||
display:inline-block;
|
||||
|
||||
& > a, a:visited {
|
||||
.transition;
|
||||
padding: 15px;
|
||||
color:#fff;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
& > a:hover {
|
||||
.transition;
|
||||
background:rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.nav-search {
|
||||
.transition;
|
||||
.input-placeholder;
|
||||
.border-radius(4px);
|
||||
position: absolute;
|
||||
right: .6em;
|
||||
top: .7em;
|
||||
background:rgba(0, 0, 0, 0.1);
|
||||
border: none;
|
||||
padding: .2em;
|
||||
padding-left: .4em;
|
||||
outline: none;
|
||||
|
||||
&:focus {
|
||||
.transition;
|
||||
background:#fff;
|
||||
color: @asbestos;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
/* Checkbox
|
||||
===============================*/
|
||||
.check, .circles {
|
||||
&:after {
|
||||
.transition;
|
||||
font-family: FontAwesome;
|
||||
content:"\f00d";
|
||||
}
|
||||
&:checked:after {
|
||||
.transition;
|
||||
content:"\f00c";
|
||||
}
|
||||
}
|
||||
|
||||
.check {
|
||||
.square(30px);
|
||||
.transition;
|
||||
.border-radius(4px);
|
||||
position: relative;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none!important;
|
||||
text-align: center;
|
||||
|
||||
&:after {
|
||||
.transition;
|
||||
position: absolute;
|
||||
top: 7px;
|
||||
left: 8px;
|
||||
}
|
||||
|
||||
&:checked:after {
|
||||
.transition;
|
||||
position: absolute;
|
||||
top: 7px;
|
||||
left: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Circle Checkbox
|
||||
===============================*/
|
||||
.circles {
|
||||
.square(30px);
|
||||
.transition;
|
||||
.border-radius(100px);
|
||||
position: relative;
|
||||
-webkit-appearance: none;
|
||||
margin: 8px;
|
||||
|
||||
&:checked {
|
||||
.transition;
|
||||
|
||||
&:after {
|
||||
.transition;
|
||||
position: absolute;
|
||||
left: 6px;
|
||||
top: 6px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
&:after {
|
||||
.transition;
|
||||
position: absolute;
|
||||
left: 8px;
|
||||
top: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Radiobutton
|
||||
===============================*/
|
||||
.radio {
|
||||
.square(30px);
|
||||
.transition;
|
||||
.border-radius(100px);
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
-webkit-appearance: none;
|
||||
margin: 10px;
|
||||
margin-top: 0px;
|
||||
|
||||
&:checked {
|
||||
.transition;
|
||||
}
|
||||
|
||||
&:checked:after {
|
||||
.square(20px);
|
||||
.border-radius(100px);
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
background:#fff;
|
||||
content:"";
|
||||
}
|
||||
}
|
||||
|
||||
/* Search
|
||||
===============================*/
|
||||
.search {
|
||||
.input-placeholder;
|
||||
.border-radius(4px);
|
||||
padding: 10px;
|
||||
width: 300px;
|
||||
display: block;
|
||||
margin:0 auto;
|
||||
margin-bottom: 10px;
|
||||
border: none;
|
||||
color:#fff;
|
||||
outline: none;
|
||||
|
||||
&:focus {
|
||||
background:#fff;
|
||||
border:2px solid #34495E;
|
||||
color:#34495E;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
/* Dropdown menu
|
||||
===============================*/
|
||||
.drop-wrap {
|
||||
width: 300px;
|
||||
margin:0px auto;
|
||||
|
||||
ul {
|
||||
.border-radius(4px);
|
||||
margin-top: .4em;
|
||||
list-style: none;
|
||||
text-align: left;
|
||||
display: none;
|
||||
width: 300px;
|
||||
background: @turquoise;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
li {
|
||||
display: block;
|
||||
color:#fff;
|
||||
font-size:0.8em;
|
||||
padding: .6em;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
background: @green-sea;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-drop {
|
||||
.border-radius(4px);
|
||||
position: relative;
|
||||
width: 300px;
|
||||
background: @green-sea;
|
||||
padding: .6em;
|
||||
text-align: left;
|
||||
font-weight: 400;
|
||||
color:#fff;
|
||||
cursor: pointer;
|
||||
|
||||
&:after {
|
||||
.size(1.8em, 2em);
|
||||
.border-radius(4px);
|
||||
background: @turquoise;
|
||||
font-family: FontAwesome;
|
||||
content:"\f0d7";
|
||||
font-size: 1.4em;
|
||||
padding-top: .3em;
|
||||
padding-left:.6em;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
/* Range
|
||||
===============================*/
|
||||
input[type='range'] {
|
||||
.transition;
|
||||
.border-radius(5px);
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
left: 10px;
|
||||
width: 300px;
|
||||
-webkit-appearance: none;
|
||||
background: #34495E;
|
||||
height: 10px;
|
||||
margin: 0px auto;
|
||||
|
||||
&::-webkit-slider-thumb {
|
||||
.transition;
|
||||
.border-radius(100px);
|
||||
-webkit-appearance: none;
|
||||
background-color: #1ABC9C;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
}
|
||||
|
||||
&::-webkit-slider-thumb:active {
|
||||
.transition;
|
||||
padding: 11px;
|
||||
}
|
||||
}
|
69
lib/less/modules/local-fonts.import.less
vendored
Executable file
@ -0,0 +1,69 @@
|
||||
//
|
||||
// Fonts
|
||||
// --------------------------------------------------
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name-black}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name-black}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name-black}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name-black}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name-black}.svg#@{local-font-svg-id-black}') format('svg')";
|
||||
font-weight: 900;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name-bold}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name-bold}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold}.svg#@{local-font-svg-id-bold}') format('svg')";
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name-bold-italic}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name-bold-italic}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold-italic}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold-italic}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name-bold-italic}.svg#@{local-font-svg-id-bold-italic}') format('svg')";
|
||||
font-weight: bold;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name-italic}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name-italic}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name-italic}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name-italic}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name-italic}.svg#@{local-font-svg-id-italic}') format('svg')";
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name-light}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name-light}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name-light}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name-light}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name-light}.svg#@{local-font-svg-id-light}') format('svg')";
|
||||
font-weight: 300;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
src: ~"url('@{local-font-path}@{local-font-name}.eot')";
|
||||
src: ~"url('@{local-font-path}@{local-font-name}.eot?#iefix') format('embedded-opentype')",
|
||||
~"url('@{local-font-path}@{local-font-name}.woff') format('woff')",
|
||||
~"url('@{local-font-path}@{local-font-name}.ttf') format('truetype')",
|
||||
~"url('@{local-font-path}@{local-font-name}.svg#@{local-font-svg-id}') format('svg')";
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
111
lib/less/modules/login.import.less
vendored
Executable file
@ -0,0 +1,111 @@
|
||||
//
|
||||
// Login screen
|
||||
// --------------------------------------------------
|
||||
|
||||
// Module color variable
|
||||
@form-color: mix(@brand-primary, @inverse, 9%);
|
||||
|
||||
.login {
|
||||
background: ~"url(../images/login/imac.png) 0 0 no-repeat";
|
||||
background-size: 940px 778px;
|
||||
color: @inverse;
|
||||
margin-bottom: 77px;
|
||||
padding: 38px 38px 267px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.login-screen {
|
||||
background-color: @brand-secondary;
|
||||
min-height: 473px;
|
||||
padding: 123px 199px 33px 306px;
|
||||
}
|
||||
|
||||
.login-icon {
|
||||
left: 200px;
|
||||
position: absolute;
|
||||
top: 160px;
|
||||
width: 96px;
|
||||
|
||||
> img {
|
||||
display: block;
|
||||
margin-bottom: 6px;
|
||||
width: 100%;
|
||||
}
|
||||
> h4 {
|
||||
font-size: 17px;
|
||||
font-weight: 300;
|
||||
line-height: 34px;
|
||||
.opacity(.95);
|
||||
|
||||
small {
|
||||
color: inherit;
|
||||
display: block;
|
||||
font-size: inherit;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// LOGIN FORM
|
||||
// -----------
|
||||
.login-form {
|
||||
background-color: @form-color;
|
||||
padding: 24px 23px 20px;
|
||||
position: relative;
|
||||
border-radius: @border-radius-large;
|
||||
|
||||
// Ear
|
||||
&:before {
|
||||
content: '';
|
||||
border-style: solid;
|
||||
border-width: 12px 12px 12px 0;
|
||||
border-color: transparent @form-color transparent transparent;
|
||||
height: 0;
|
||||
position: absolute;
|
||||
left: -12px;
|
||||
top: 35px;
|
||||
width: 0;
|
||||
-webkit-transform: rotate(360deg); // Make corners smooth
|
||||
}
|
||||
.control-group {
|
||||
margin-bottom: 6px;
|
||||
position: relative;
|
||||
}
|
||||
.login-field {
|
||||
border-color: transparent;
|
||||
font-size: 17px;
|
||||
text-indent: 3px;
|
||||
|
||||
&:focus {
|
||||
border-color: @brand-secondary;
|
||||
|
||||
& + .login-field-icon {
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
.login-field-icon {
|
||||
color: mix(@gray, @inverse, 60%);
|
||||
font-size: 16px;
|
||||
position: absolute;
|
||||
right: 15px;
|
||||
top: 3px;
|
||||
.transition(.25s);
|
||||
}
|
||||
}
|
||||
|
||||
.login-link {
|
||||
color: mix(@gray, @inverse, 60%);
|
||||
display: block;
|
||||
font-size: 13px;
|
||||
margin-top: 15px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
// Retina support
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 2) {
|
||||
.login {
|
||||
background-image: ~"url(../images/login/imac-2x.png)";
|
||||
}
|
||||
}
|
||||
|
878
lib/less/modules/navbar.import.less
vendored
Executable file
@ -0,0 +1,878 @@
|
||||
//
|
||||
// Navbars
|
||||
// --------------------------------------------------
|
||||
|
||||
// Wrapper and base class
|
||||
//
|
||||
// Provide a static navbar from which we expand to create full-width, fixed, and
|
||||
// other navbar variations.
|
||||
|
||||
.navbar {
|
||||
font-size: floor(@component-font-size-base * 1.067); // ~16px
|
||||
min-height: @navbar-height-base;
|
||||
margin-bottom: @navbar-margin-bottom;
|
||||
border: none;
|
||||
border-radius: @navbar-border-radius;
|
||||
}
|
||||
|
||||
// Navbar heading
|
||||
//
|
||||
// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy
|
||||
// styling of responsive aspects.
|
||||
|
||||
.navbar-header {
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
// Navbar collapse (body)
|
||||
//
|
||||
// Group your navbar content into this for easy collapsing and expanding across
|
||||
// various device sizes. By default, this content is collapsed when <768px, but
|
||||
// will expand past that for a horizontal display.
|
||||
//
|
||||
// To start (on mobile devices) the navbar links, forms, and buttons are stacked
|
||||
// vertically and include a `max-height` to overflow in case you have too much
|
||||
// content for the user's viewport.
|
||||
|
||||
.navbar-collapse {
|
||||
box-shadow: none;
|
||||
padding-right: 21px;
|
||||
padding-left: 21px;
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
// Account for first and last children spacing
|
||||
.navbar-nav.navbar-left:first-child {
|
||||
margin-left: -21px;
|
||||
|
||||
> li:first-child a {
|
||||
.border-left-radius(@navbar-border-radius);
|
||||
}
|
||||
}
|
||||
.navbar-nav.navbar-right:last-child {
|
||||
margin-right: -21px;
|
||||
|
||||
.navbar > .container & {
|
||||
margin-right: -36px;
|
||||
}
|
||||
> .dropdown:last-child > a {
|
||||
border-radius: 0 @navbar-border-radius @navbar-border-radius 0;
|
||||
}
|
||||
}
|
||||
.navbar-form.navbar-right:last-child {
|
||||
margin-right: -17px;
|
||||
|
||||
.navbar-fixed-top &,
|
||||
.navbar-fixed-bottom & {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
.navbar-nav.navbar-right:last-child {
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Both navbar header and collapse
|
||||
//
|
||||
// When a container is present, change the behavior of the header and collapse.
|
||||
|
||||
.container,
|
||||
.container-fluid {
|
||||
> .navbar-header,
|
||||
> .navbar-collapse {
|
||||
margin-right: -21px;
|
||||
margin-left: -21px;
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
margin-right: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Navbar alignment options
|
||||
//
|
||||
// Display the navbar across the entirety of the page or fixed it to the top or
|
||||
// bottom of the page.
|
||||
|
||||
// Static top (unfixed, but 100% wide) navbar
|
||||
.navbar-static-top {
|
||||
z-index: @zindex-navbar;
|
||||
border-width: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
// Fix the top/bottom navbars when screen real estate supports it
|
||||
.navbar-fixed-top,
|
||||
.navbar-fixed-bottom {
|
||||
z-index: @zindex-navbar-fixed;
|
||||
border-radius: 0;
|
||||
}
|
||||
.navbar-fixed-top {
|
||||
border-width: 0;
|
||||
}
|
||||
.navbar-fixed-bottom {
|
||||
margin-bottom: 0; // override .navbar defaults
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
// Brand/project name
|
||||
|
||||
.navbar-brand {
|
||||
font-size: floor(@component-font-size-base * 1.6); // ~24px
|
||||
line-height: 1.042; // ~25px
|
||||
font-weight: 700;
|
||||
padding: ((@navbar-height-base - 25px) / 2) 21px;
|
||||
|
||||
> [class*="fui-"] {
|
||||
font-size: floor(@component-font-size-base * 1.267); // ~19px
|
||||
line-height: 1.263; // ~24px
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
.navbar > .container &,
|
||||
.navbar > .container-fluid & {
|
||||
margin-left: -21px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Navbar toggle
|
||||
//
|
||||
// Custom button for toggling the `.navbar-collapse`, powered by the collapse
|
||||
// JavaScript plugin.
|
||||
|
||||
.navbar-toggle {
|
||||
border: none;
|
||||
color: @brand-primary;
|
||||
margin: 0 0 0 21px;
|
||||
padding: 0 21px;
|
||||
height: @navbar-height-base;
|
||||
line-height: @navbar-height-base;
|
||||
|
||||
&:before {
|
||||
color: @link-color;
|
||||
content: "\f0c9";
|
||||
font-family: FontAwesome;
|
||||
font-size: floor(@component-font-size-base * 1.467); // ~22px
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
.transition(color .25s linear);
|
||||
}
|
||||
&:hover,
|
||||
&:focus {
|
||||
outline: none;
|
||||
|
||||
&:before {
|
||||
color: @link-hover-color;
|
||||
}
|
||||
}
|
||||
.icon-bar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Navbar nav links
|
||||
//
|
||||
// Builds on top of the `.nav` components with it's own modifier class to make
|
||||
// the nav the full height of the horizontal nav (above 768px).
|
||||
|
||||
.navbar-nav {
|
||||
margin: 0;
|
||||
|
||||
> li > a {
|
||||
font-size: floor(@component-font-size-base * 1.067); // ~16px
|
||||
padding: ((@navbar-height-base - 23px) / 2) 21px;
|
||||
line-height: 23px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.dropdown-toggle .caret {
|
||||
border-top-color: @link-color;
|
||||
border-bottom-color: @link-color;
|
||||
border-width: 8px 6px 0;
|
||||
margin-left: 12px;
|
||||
}
|
||||
> li > a:hover,
|
||||
> li > a:focus,
|
||||
.open > a:focus,
|
||||
.open > a:hover {
|
||||
background-color: transparent;
|
||||
|
||||
.caret {
|
||||
border-top-color: @link-hover-color;
|
||||
border-bottom-color: @link-hover-color;
|
||||
}
|
||||
}
|
||||
|
||||
[class^="fui-"] {
|
||||
line-height: 20px;
|
||||
position: relative;
|
||||
top: 1px;
|
||||
}
|
||||
.visible-sm,
|
||||
.visible-xs {
|
||||
> [class^="fui-"] {
|
||||
margin-left: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
margin: 0 -21px;
|
||||
|
||||
// Dropdowns get custom display when collapsed
|
||||
.open .dropdown-menu {
|
||||
> li > a,
|
||||
.dropdown-header {
|
||||
padding: 7px 15px 7px 31px !important;
|
||||
}
|
||||
> li > a {
|
||||
line-height: 23px;
|
||||
}
|
||||
}
|
||||
> li > a {
|
||||
padding-top: 7px;
|
||||
padding-bottom: 7px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Navbar form
|
||||
//
|
||||
// Extension of the `.form-inline` with some extra flavor for optimum display in
|
||||
// our navbars.
|
||||
|
||||
.navbar-input {
|
||||
.input-size(@input-height-small; 5px; 10px; @input-font-size-small; @navbar-input-line-height);
|
||||
}
|
||||
|
||||
.navbar-form {
|
||||
.box-shadow(none);
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
padding-right: 19px;
|
||||
padding-left: 19px;
|
||||
|
||||
// Vertically center in expanded, horizontal navbar
|
||||
.navbar-vertical-align(@input-height-small);
|
||||
|
||||
.form-group {
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
margin: 3px -21px;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.navbar-nav + &.navbar-left,
|
||||
&.navbar-right:last-child { // Width fix for Webkit and IE11
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
width: 260px;
|
||||
}
|
||||
}
|
||||
|
||||
// Controls sizing
|
||||
.form-control,
|
||||
.input-group-addon,
|
||||
.btn { .navbar-input(); }
|
||||
|
||||
// Reset rounded corners
|
||||
.form-controls-corners-reset();
|
||||
|
||||
.form-control {
|
||||
font-size: @component-font-size-base;
|
||||
border-radius: 5px;
|
||||
display: table-cell;
|
||||
}
|
||||
.form-group + .btn {
|
||||
font-size: @component-font-size-base;
|
||||
border-radius: 5px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
.form-group {
|
||||
margin-bottom: 0;
|
||||
|
||||
& + .btn {
|
||||
margin-top: 9px;
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown menus
|
||||
|
||||
// Menu position and menu carets
|
||||
.navbar-nav > li {
|
||||
> .dropdown-menu {
|
||||
min-width: 100%;
|
||||
border-radius: @border-radius-base;
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
.transition(all 0s);
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
&.open > .dropdown-menu {
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
margin-top: 0 !important;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Menu position and menu caret support for dropups via extra dropup class
|
||||
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
|
||||
.border-bottom-radius(@border-radius-base);
|
||||
}
|
||||
|
||||
.navbar-nav > .open > .dropdown-toggle,
|
||||
.navbar-nav > .open > .dropdown-toggle:focus,
|
||||
.navbar-nav > .open > .dropdown-toggle:hover {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
// Text in navbars
|
||||
//
|
||||
// Add a class to make any element properly align itself vertically within the navbars.
|
||||
|
||||
.navbar-text {
|
||||
font-size: floor(@component-font-size-base * 1.067); // ~16px
|
||||
line-height: 1.438; // ~23px
|
||||
color: @brand-primary;
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
|
||||
.navbar-vertical-align(23px, @navbar-height-base);
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
margin-left: 21px;
|
||||
margin-right: 21px;
|
||||
|
||||
// Outdent the form if last child to line up with content down the page
|
||||
&.navbar-right:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Buttons in navbars
|
||||
//
|
||||
// Vertically center a button within a navbar (when *not* in a form).
|
||||
|
||||
.navbar-btn {
|
||||
margin-top: ((@navbar-height-base - @input-height-base) / 2);
|
||||
margin-bottom: ((@navbar-height-base - @input-height-base) / 2);
|
||||
|
||||
&.btn-sm {
|
||||
margin-top: ((@navbar-height-base - @input-height-small) / 2);
|
||||
margin-bottom: ((@navbar-height-base - @input-height-small) / 2) - 1;
|
||||
}
|
||||
&.btn-xs {
|
||||
margin-top: ((@navbar-height-base - 25) / 2);
|
||||
margin-bottom: ((@navbar-height-base - 25) / 2);
|
||||
}
|
||||
}
|
||||
|
||||
// Unread icon
|
||||
//
|
||||
.navbar-unread,
|
||||
.navbar-new {
|
||||
font-family: @font-family-base;
|
||||
background-color: @brand-secondary;
|
||||
border-radius: 50%;
|
||||
color: @inverse;
|
||||
font-size: 0;
|
||||
font-weight: 700;
|
||||
height: 6px;
|
||||
line-height: 1;
|
||||
position: absolute;
|
||||
right: 12px;
|
||||
text-align: center;
|
||||
top: 35%;
|
||||
width: 6px;
|
||||
z-index: 10;
|
||||
|
||||
@media (max-width: @grid-float-breakpoint) {
|
||||
position: static;
|
||||
float: right;
|
||||
margin: 0 0 0 10px;
|
||||
}
|
||||
|
||||
.active & {
|
||||
background-color: @inverse;
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-new {
|
||||
background-color: @brand-danger;
|
||||
font-size: 12px;
|
||||
height: 18px;
|
||||
line-height: 17px;
|
||||
margin: -6px -10px;
|
||||
min-width: 18px;
|
||||
padding: 0 1px;
|
||||
width: auto;
|
||||
-webkit-font-smoothing: subpixel-antialiased;
|
||||
}
|
||||
|
||||
// Alternate navbars
|
||||
// --------------------------------------------------
|
||||
|
||||
// Default navbar
|
||||
.navbar-default {
|
||||
background-color: @navbar-default-bg;
|
||||
|
||||
.navbar-brand {
|
||||
color: @navbar-default-brand-color;
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-brand-hover-color;
|
||||
background-color: @navbar-default-brand-hover-bg;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-toggle {
|
||||
&:before {
|
||||
color: @navbar-default-toggle-color;
|
||||
}
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: transparent;
|
||||
|
||||
&:before {
|
||||
color: @navbar-default-toggle-hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-collapse,
|
||||
.navbar-form {
|
||||
border-color: @navbar-default-form-border;
|
||||
border-width: 2px;
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
> li > a {
|
||||
color: @navbar-default-link-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-hover-color;
|
||||
background-color: @navbar-default-link-hover-bg;
|
||||
}
|
||||
}
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-active-color;
|
||||
background-color: @navbar-default-link-active-bg;
|
||||
}
|
||||
}
|
||||
> .disabled > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-disabled-color;
|
||||
background-color: @navbar-default-link-disabled-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown menu items and carets
|
||||
.navbar-nav {
|
||||
// Caret text color
|
||||
> .dropdown > a .caret {
|
||||
border-top-color: @navbar-default-caret-color;
|
||||
border-bottom-color: @navbar-default-caret-color;
|
||||
}
|
||||
// Caret should match text color on active
|
||||
> .active > a .caret {
|
||||
border-top-color: @navbar-default-caret-active-color;
|
||||
border-bottom-color: @navbar-default-caret-active-color;
|
||||
}
|
||||
// Caret should match text color on hover
|
||||
> .dropdown > a:hover .caret,
|
||||
> .dropdown > a:focus .caret {
|
||||
border-top-color: @navbar-default-caret-hover-color;
|
||||
border-bottom-color: @navbar-default-caret-hover-color;
|
||||
}
|
||||
|
||||
// Remove background color from open dropdown
|
||||
> .open > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @navbar-default-link-active-bg;
|
||||
color: @navbar-default-link-active-color;
|
||||
.caret {
|
||||
border-top-color: @navbar-default-caret-active-color;
|
||||
border-bottom-color: @navbar-default-caret-active-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
// Dropdowns get custom display when collapsed
|
||||
.open .dropdown-menu {
|
||||
> li > a {
|
||||
color: @navbar-default-link-color;
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-hover-color;
|
||||
background-color: @navbar-default-link-hover-bg;
|
||||
}
|
||||
}
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-active-color;
|
||||
background-color: @navbar-default-link-active-bg;
|
||||
}
|
||||
}
|
||||
> .disabled > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-disabled-color;
|
||||
background-color: @navbar-default-link-disabled-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-form {
|
||||
.form-control {
|
||||
border-color: transparent;
|
||||
.placeholder(@navbar-default-form-placeholder);
|
||||
|
||||
&:focus {
|
||||
border-color: @brand-secondary;
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
.input-group-btn .btn {
|
||||
border-color: transparent;
|
||||
color: @navbar-default-form-icon;
|
||||
}
|
||||
.input-group.focus {
|
||||
.form-control,
|
||||
.input-group-btn .btn {
|
||||
border-color: @brand-secondary;
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-text {
|
||||
color: @brand-primary;
|
||||
|
||||
a {
|
||||
color: @navbar-default-link-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-default-link-hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Inverse navbar
|
||||
.navbar-inverse {
|
||||
background-color: @navbar-inverse-bg;
|
||||
|
||||
.navbar-brand {
|
||||
color: @navbar-inverse-brand-color;
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-brand-hover-color;
|
||||
background-color: @navbar-inverse-brand-hover-bg;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-toggle {
|
||||
&:before {
|
||||
color: @navbar-inverse-toggle-color;
|
||||
}
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: transparent;
|
||||
|
||||
&:before {
|
||||
color: @navbar-inverse-toggle-hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-collapse {
|
||||
border-color: @navbar-inverse-form-border;
|
||||
border-width: 2px;
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
> li > a {
|
||||
color: @navbar-inverse-link-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-hover-color;
|
||||
background-color: @navbar-inverse-link-hover-bg;
|
||||
}
|
||||
}
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-active-color;
|
||||
background-color: @navbar-inverse-link-active-bg;
|
||||
}
|
||||
}
|
||||
> .disabled > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-disabled-color;
|
||||
background-color: @navbar-inverse-link-disabled-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Dropdown menu items and carets
|
||||
.navbar-nav {
|
||||
// Caret should match text color on hover
|
||||
> .dropdown > a:hover .caret,
|
||||
> .dropdown > a:focus .caret {
|
||||
border-top-color: @navbar-inverse-caret-hover-color;
|
||||
border-bottom-color: @navbar-inverse-caret-hover-color;
|
||||
}
|
||||
|
||||
// Remove background color from open dropdown
|
||||
> .open > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @navbar-inverse-link-active-bg;
|
||||
color: @navbar-inverse-link-active-color;
|
||||
border-left-color: transparent;
|
||||
.caret {
|
||||
border-top-color: @navbar-inverse-link-active-color;
|
||||
border-bottom-color: @navbar-inverse-link-active-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
> .dropdown > a .caret {
|
||||
border-top-color: @navbar-inverse-caret-color;
|
||||
border-bottom-color: @navbar-inverse-caret-color;
|
||||
}
|
||||
|
||||
> .open {
|
||||
> .dropdown-arrow {
|
||||
border-top-color: @navbar-inverse-dropdown-arrow;
|
||||
border-bottom-color: @navbar-inverse-dropdown-arrow;
|
||||
}
|
||||
> .dropdown-menu {
|
||||
background-color: @navbar-inverse-dropdown-bg;
|
||||
padding: 3px 4px;
|
||||
|
||||
> li > a {
|
||||
color: @navbar-inverse-dropdown-link-color;
|
||||
border-radius: @border-radius-base;
|
||||
padding: 6px 9px;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-dropdown-link-hover-color;
|
||||
background-color: @navbar-inverse-dropdown-link-hover-bg;
|
||||
}
|
||||
}
|
||||
> .divider {
|
||||
background-color: @navbar-inverse-divider;
|
||||
height: 2px;
|
||||
margin-left: -4px;
|
||||
margin-right: -4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
> li > a {
|
||||
border-left-width: 0;
|
||||
}
|
||||
// Dropdowns get custom display when collapsed
|
||||
.open .dropdown-menu {
|
||||
> li > a {
|
||||
color: @navbar-inverse-link-color;
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-hover-color;
|
||||
background-color: @navbar-inverse-link-hover-bg;
|
||||
}
|
||||
}
|
||||
> .active > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-active-color;
|
||||
background-color: @navbar-inverse-link-active-bg;
|
||||
}
|
||||
}
|
||||
> .disabled > a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-disabled-color;
|
||||
background-color: @navbar-inverse-link-disabled-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Custom background for dividers when collapsed
|
||||
.dropdown-menu .divider {
|
||||
background-color: @navbar-inverse-divider;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-form {
|
||||
.form-control {
|
||||
color: @navbar-inverse-form-placeholder;
|
||||
border-color: transparent;
|
||||
background-color: @navbar-inverse-form-bg;
|
||||
.placeholder(@navbar-inverse-form-placeholder);
|
||||
|
||||
&:focus {
|
||||
border-color: @brand-secondary;
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
.btn {
|
||||
.button-variant(@btn-default-color, @brand-secondary, @btn-primary-hover-bg, @btn-primary-active-bg);
|
||||
}
|
||||
.input-group-btn .btn {
|
||||
border-color: transparent;
|
||||
background-color: @navbar-inverse-form-bg;
|
||||
color: @navbar-inverse-form-icon;
|
||||
}
|
||||
.input-group.focus {
|
||||
.form-control,
|
||||
.input-group-btn .btn {
|
||||
border-color: @brand-secondary;
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: @grid-float-breakpoint-max) {
|
||||
border-color: @navbar-inverse-form-border;
|
||||
border-width: 2px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-text {
|
||||
color: @inverse;
|
||||
|
||||
a {
|
||||
color: @navbar-inverse-link-color;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @navbar-inverse-link-hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-btn {
|
||||
.button-variant(@btn-default-color, @brand-secondary, @btn-primary-hover-bg, @btn-primary-active-bg);
|
||||
}
|
||||
}
|
||||
|
||||
// Embossed navbar
|
||||
.navbar-embossed {
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
> .navbar-collapse {
|
||||
border-radius: @navbar-border-radius;
|
||||
.box-shadow(inset 0 -2px 0 fade(black, 15%));
|
||||
}
|
||||
&.navbar-inverse .navbar-nav {
|
||||
.active > a,
|
||||
.open > a {
|
||||
.box-shadow(inset 0 -2px 0 fade(black, 15%));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Large navbar
|
||||
.navbar-lg {
|
||||
min-height: @navbar-height-large;
|
||||
|
||||
.navbar-brand {
|
||||
line-height: 1;
|
||||
padding-top: ((@navbar-height-large - 24px) / 2);
|
||||
padding-bottom: ((@navbar-height-large - 24px) / 2);
|
||||
|
||||
> [class*="fui-"] {
|
||||
font-size: floor(@component-font-size-base * 1.6); // ~24px
|
||||
line-height: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-nav {
|
||||
> li > a {
|
||||
font-size: @component-font-size-base;
|
||||
line-height: 1.6;
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
padding-top: ((@navbar-height-large - 24px) / 2);
|
||||
padding-bottom: ((@navbar-height-large - 24px) / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-toggle {
|
||||
height: @navbar-height-large;
|
||||
line-height: @navbar-height-large;
|
||||
}
|
||||
|
||||
.navbar-form {
|
||||
.navbar-vertical-align(@input-height-small; @navbar-height-large);
|
||||
}
|
||||
|
||||
.navbar-text {
|
||||
.navbar-vertical-align(23px; @navbar-height-large);
|
||||
}
|
||||
|
||||
.navbar-btn {
|
||||
margin-top: ((@navbar-height-large - @input-height-base) / 2);
|
||||
margin-bottom: ((@navbar-height-large - @input-height-base) / 2);
|
||||
|
||||
&.btn-sm {
|
||||
margin-top: ((@navbar-height-large - @input-height-small) / 2);
|
||||
margin-bottom: ((@navbar-height-large - @input-height-small) / 2);
|
||||
}
|
||||
&.btn-xs {
|
||||
margin-top: ((@navbar-height-large - 25px) / 2);
|
||||
margin-bottom: ((@navbar-height-large - 25px) / 2);
|
||||
}
|
||||
}
|
||||
}
|
51
lib/less/modules/pager.import.less
vendored
Executable file
@ -0,0 +1,51 @@
|
||||
//
|
||||
// Pager
|
||||
// --------------------------------------------------
|
||||
|
||||
.pager {
|
||||
background-color: @brand-primary;
|
||||
border-radius: @border-radius-large;
|
||||
color: @inverse;
|
||||
font-size: 16px;
|
||||
font-weight: 700;
|
||||
display: inline-block;
|
||||
|
||||
li {
|
||||
&:first-child {
|
||||
> a,
|
||||
> span {
|
||||
border-left: none;
|
||||
border-radius: @border-radius-large 0 0 @border-radius-large;
|
||||
}
|
||||
}
|
||||
|
||||
> a,
|
||||
> span {
|
||||
background: none;
|
||||
border: none;
|
||||
border-left: 2px solid mix(@brand-primary, black, 85%);
|
||||
color: @inverse;
|
||||
padding: @pager-padding;
|
||||
text-decoration: none;
|
||||
white-space: nowrap;
|
||||
border-radius: 0 @border-radius-large @border-radius-large 0;
|
||||
line-height: 1.313;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: mix(@brand-primary, black, 85%);
|
||||
}
|
||||
&:active {
|
||||
background-color: mix(@brand-primary, black, 85%);
|
||||
}
|
||||
|
||||
// Add some spacing between the icon and text
|
||||
[class*="fui-"] + span {
|
||||
margin-left: 8px;
|
||||
}
|
||||
span + [class*="fui-"] {
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
166
lib/less/modules/pagination.import.less
vendored
Executable file
@ -0,0 +1,166 @@
|
||||
//
|
||||
// Pagination
|
||||
// --------------------------------------------------
|
||||
|
||||
.pagination {
|
||||
position: relative;
|
||||
|
||||
ul {
|
||||
background: @pagination-color;
|
||||
color: @inverse;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
display: inline-block;
|
||||
border-radius: @border-radius-large;
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
margin-right: -3px;
|
||||
vertical-align: middle;
|
||||
|
||||
// Pseudos and states
|
||||
&:first-child {
|
||||
border-radius: @border-radius-large 0 0 @border-radius-large;
|
||||
|
||||
&.previous + li {
|
||||
> a,
|
||||
> span {
|
||||
border-left-width: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:last-child {
|
||||
border-radius: 0 @border-radius-large @border-radius-large 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
&.previous,
|
||||
&.next {
|
||||
> a,
|
||||
> span {
|
||||
background: transparent;
|
||||
border: none;
|
||||
border-right: 2px solid mix(@pagination-color, white, 66%);
|
||||
font-size: floor(@component-font-size-base * 1.067); // ~16px
|
||||
margin: 0 9px 0 0;
|
||||
padding: 12px 17px;
|
||||
border-radius: @border-radius-large 0 0 @border-radius-large;
|
||||
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
border-color: mix(@pagination-color, white, 66%) !important;
|
||||
}
|
||||
|
||||
@media (max-width: 480px) {
|
||||
& {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
&.next {
|
||||
margin-left: 9px;
|
||||
|
||||
> a,
|
||||
> span {
|
||||
border-left: 2px solid mix(@pagination-color, white, 66%);
|
||||
border-right: none;
|
||||
margin: 0;
|
||||
border-radius: 0 @border-radius-large @border-radius-large 0;
|
||||
}
|
||||
}
|
||||
&.active {
|
||||
> a,
|
||||
> span {
|
||||
background-color: @inverse;
|
||||
border-color: @inverse;
|
||||
border-width: 2px !important;
|
||||
color: @pagination-color;
|
||||
margin: 10px 5px 9px;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @inverse;
|
||||
border-color: @inverse;
|
||||
color: @pagination-color;
|
||||
}
|
||||
}
|
||||
&.previous,
|
||||
&.next {
|
||||
border-color: mix(@pagination-color, white, 66%);
|
||||
|
||||
> a, > span {
|
||||
margin: 0;
|
||||
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @brand-secondary;
|
||||
color: @inverse;
|
||||
}
|
||||
}
|
||||
}
|
||||
&.previous {
|
||||
margin-right: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
// Link
|
||||
> a,
|
||||
> span {
|
||||
display: inline-block;
|
||||
background: @inverse;
|
||||
border: 5px solid @pagination-color;
|
||||
color: @inverse;
|
||||
font-size: ceil(@component-font-size-base * 0.889);
|
||||
line-height: 16px;
|
||||
margin: 7px 2px 6px;
|
||||
min-width: 0;
|
||||
min-height: 16px;
|
||||
padding: 0 4px;
|
||||
border-radius: 50px;
|
||||
.transition(~"background .2s ease-out, border-color 0s ease-out, color .2s ease-out");
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @brand-secondary;
|
||||
border-color: @brand-secondary;
|
||||
color: @inverse;
|
||||
.transition(~"background .2s ease-out, border-color .2s ease-out, color .2s ease-out");
|
||||
}
|
||||
&:active {
|
||||
background-color: mix(@brand-secondary, black, 85%);
|
||||
border-color: mix(@brand-secondary, black, 85%);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Navigation buttons
|
||||
> .btn {
|
||||
&.previous,
|
||||
&.next {
|
||||
margin-right: 8px;
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
line-height: 1.429; // ~20px
|
||||
padding-left: 23px;
|
||||
padding-right: 23px;
|
||||
|
||||
[class*="fui-"] {
|
||||
font-size: @icon-normal;
|
||||
margin-left: -2px;
|
||||
margin-top: -2px;
|
||||
}
|
||||
}
|
||||
|
||||
&.next {
|
||||
margin-left: 8px;
|
||||
margin-right: 0;
|
||||
|
||||
[class*="fui-"] {
|
||||
margin-right: -2px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
71
lib/less/modules/palette.import.less
vendored
Executable file
@ -0,0 +1,71 @@
|
||||
//
|
||||
// Palette
|
||||
// --------------------------------------------------
|
||||
|
||||
.pallete-item {
|
||||
width: 140px;
|
||||
float: left;
|
||||
margin: 0 0 20px 20px;
|
||||
}
|
||||
.palette {
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
line-height: 1.214; // ~17px
|
||||
color: @inverse;
|
||||
margin: 0;
|
||||
padding: 15px;
|
||||
text-transform: uppercase;
|
||||
|
||||
dt,
|
||||
dd {
|
||||
line-height: 1.429;
|
||||
}
|
||||
dt {
|
||||
display: block;
|
||||
font-weight: bold;
|
||||
.opacity(.8);
|
||||
}
|
||||
dd {
|
||||
font-weight: 300;
|
||||
margin-left: 0;
|
||||
.opacity(.8);
|
||||
-webkit-font-smoothing: subpixel-antialiased;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Pallet grid
|
||||
// --------------------------------------------------
|
||||
.calc-color(~"turquoise", ~"green-sea");
|
||||
.calc-color(~"emerald", ~"nephritis");
|
||||
.calc-color(~"peter-river", ~"belize-hole");
|
||||
.calc-color(~"amethyst", ~"wisteria");
|
||||
.calc-color(~"wet-asphalt", ~"midnight-blue");
|
||||
|
||||
.calc-color(~"sun-flower", ~"orange");
|
||||
.calc-color(~"carrot", ~"pumpkin");
|
||||
.calc-color(~"alizarin", ~"pomegranate");
|
||||
.calc-color(~"clouds", ~"silver");
|
||||
.calc-color(~"concrete", ~"asbestos");
|
||||
|
||||
.palette-clouds {
|
||||
color: #bdc3c7;
|
||||
}
|
||||
|
||||
// Palette paragraph
|
||||
.palette-paragraph {
|
||||
color: #7f8c8d;
|
||||
font-size: 12px;
|
||||
line-height: 17px;
|
||||
|
||||
span {
|
||||
color: #bdc3c7;
|
||||
}
|
||||
}
|
||||
|
||||
// Headline
|
||||
.palette-headline {
|
||||
color: #7f8c8d;
|
||||
font-size: 13px;
|
||||
font-weight: 700;
|
||||
margin-top: -3px;
|
||||
}
|
34
lib/less/modules/progress-bars.import.less
vendored
Executable file
@ -0,0 +1,34 @@
|
||||
//
|
||||
// Progress bars
|
||||
// --------------------------------------------------
|
||||
|
||||
// Outer container
|
||||
.progress {
|
||||
background: mix(@brand-primary, white, 10%);
|
||||
border-radius: 32px;
|
||||
height: @progress-height;
|
||||
.box-shadow(none);
|
||||
}
|
||||
|
||||
// Bar of progress
|
||||
.progress-bar {
|
||||
background: @brand-secondary;
|
||||
line-height: @progress-height;
|
||||
.box-shadow(none);
|
||||
}
|
||||
|
||||
// Variations
|
||||
// -------------------------
|
||||
|
||||
.progress-bar-success {
|
||||
background-color: @brand-success;
|
||||
}
|
||||
.progress-bar-warning {
|
||||
background-color: @brand-warning;
|
||||
}
|
||||
.progress-bar-danger {
|
||||
background-color: @brand-danger;
|
||||
}
|
||||
.progress-bar-info {
|
||||
background-color: @brand-info;
|
||||
}
|
64
lib/less/modules/scaffolding.import.less
vendored
Executable file
@ -0,0 +1,64 @@
|
||||
//
|
||||
// Scaffolding
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Body reset
|
||||
// -------------------------
|
||||
|
||||
body {
|
||||
font-family: @font-family-base;
|
||||
font-size: @font-size-base;
|
||||
line-height: @line-height-base;
|
||||
color: @text-color;
|
||||
background-color: @body-bg;
|
||||
}
|
||||
|
||||
// Links
|
||||
// -------------------------
|
||||
|
||||
a {
|
||||
color: @link-color;
|
||||
text-decoration: none;
|
||||
.transition(.25s);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: @link-hover-color;
|
||||
text-decoration: none;
|
||||
}
|
||||
&:focus {
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Images
|
||||
// -------------------------
|
||||
|
||||
// Rounded corners
|
||||
.img-rounded {
|
||||
border-radius: @border-radius-large;
|
||||
}
|
||||
|
||||
// Image thumbnails
|
||||
//
|
||||
// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.
|
||||
.img-thumbnail {
|
||||
padding: @thumbnail-padding;
|
||||
line-height: @line-height-base;
|
||||
background-color: @thumbnail-bg;
|
||||
border: 2px solid @thumbnail-border;
|
||||
border-radius: @thumbnail-border-radius;
|
||||
.transition(all .25s ease-in-out);
|
||||
|
||||
// Keep them at most 100% wide
|
||||
.img-responsive(inline-block);
|
||||
}
|
||||
|
||||
// Description text under image
|
||||
.img-comment {
|
||||
font-size: ceil(@font-size-base * 0.8333); // ~15px
|
||||
line-height: 1.2;
|
||||
font-style: italic;
|
||||
margin: 24px 0;
|
||||
}
|
145
lib/less/modules/select.import.less
vendored
Executable file
@ -0,0 +1,145 @@
|
||||
//
|
||||
// Bootstrap Select
|
||||
// --------------------------------------------------
|
||||
// Credits: Silvio Moreto
|
||||
// http://github.com/silviomoreto/bootstrap-select
|
||||
|
||||
.select {
|
||||
display: inline-block;
|
||||
margin-bottom: 10px;
|
||||
|
||||
// Select grid
|
||||
&[class*="span"] {
|
||||
[class*="span"] > & {
|
||||
margin-left: 0; // No margin if select is a closest child of the grid
|
||||
}
|
||||
.btn {
|
||||
width: 100%; // Button should take all available space of its parent
|
||||
}
|
||||
}
|
||||
|
||||
// Fluid width. Takes all available space and behaves like a block
|
||||
&.select-block {
|
||||
display: block;
|
||||
float: none;
|
||||
margin-left: 0;
|
||||
width: auto;
|
||||
.clearfix();
|
||||
|
||||
.btn {
|
||||
width: 100%;
|
||||
}
|
||||
.dropdown-menu {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Button Sizes
|
||||
// --------------------------------------------------
|
||||
.btn {
|
||||
width: 220px; // Default select width until .span* is applied
|
||||
|
||||
// Huge
|
||||
&.btn-hg {
|
||||
.filter-option {
|
||||
left: 20px;
|
||||
right: 40px;
|
||||
top: 13px;
|
||||
}
|
||||
.caret {
|
||||
right: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
// Large
|
||||
&.btn-lg {
|
||||
.filter-option {
|
||||
left: 18px;
|
||||
right: 38px;
|
||||
}
|
||||
}
|
||||
|
||||
// Small
|
||||
&.btn-sm {
|
||||
.filter-option {
|
||||
left: 13px;
|
||||
right: 33px;
|
||||
}
|
||||
.caret {
|
||||
right: 13px;
|
||||
}
|
||||
}
|
||||
|
||||
// Exstra small
|
||||
&.btn-xs {
|
||||
.filter-option {
|
||||
left: 13px;
|
||||
right: 33px;
|
||||
top: 5px;
|
||||
}
|
||||
.caret {
|
||||
right: 13px;
|
||||
}
|
||||
}
|
||||
|
||||
.filter-option {
|
||||
height: 26px;
|
||||
left: 13px;
|
||||
overflow: hidden;
|
||||
position: absolute;
|
||||
right: 33px;
|
||||
text-align: left;
|
||||
top: 10px;
|
||||
}
|
||||
.caret {
|
||||
position: absolute;
|
||||
right: 16px;
|
||||
top: 50%;
|
||||
margin-top: -3px;
|
||||
}
|
||||
.dropdown-toggle {
|
||||
border-radius: @border-radius-large;
|
||||
}
|
||||
|
||||
// Dropdown menu
|
||||
.dropdown-menu {
|
||||
min-width: 100%;
|
||||
|
||||
dt {
|
||||
cursor: default;
|
||||
display: block;
|
||||
padding: 3px 20px;
|
||||
}
|
||||
li {
|
||||
&:not(.disabled) > a:hover small {
|
||||
color: fade(@inverse, .4);
|
||||
}
|
||||
> a {
|
||||
min-height: 20px;
|
||||
|
||||
&.opt {
|
||||
padding-left: 35px;
|
||||
}
|
||||
}
|
||||
small {
|
||||
padding-left: .5em;
|
||||
}
|
||||
> dt small {
|
||||
font-weight: normal;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Disabled state
|
||||
> .disabled,
|
||||
.dropdown-menu li.disabled > a {
|
||||
cursor: default;
|
||||
}
|
||||
}
|
||||
|
||||
// Caret
|
||||
.caret {
|
||||
.caret(@inverse);
|
||||
}
|
||||
}
|
44
lib/less/modules/share.import.less
vendored
Executable file
@ -0,0 +1,44 @@
|
||||
//
|
||||
// Sharing box
|
||||
// --------------------------------------------------
|
||||
|
||||
// Module color variable
|
||||
@share-color: mix(@brand-primary, @inverse, 8%);
|
||||
|
||||
.share {
|
||||
background-color: @share-color;
|
||||
position: relative;
|
||||
border-radius: @border-radius-large;
|
||||
.dropdown-arrow(@share-color, -9px, 23px);
|
||||
|
||||
ul {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 15px;
|
||||
}
|
||||
li {
|
||||
font-size: @component-font-size-base;
|
||||
line-height: 1.4;
|
||||
padding-top: 11px;
|
||||
.clearfix();
|
||||
|
||||
&:first-child {
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
.toggle {
|
||||
float: right;
|
||||
margin: 0;
|
||||
}
|
||||
.btn {
|
||||
border-radius: 0 0 @border-radius-large @border-radius-large;
|
||||
}
|
||||
}
|
||||
|
||||
.share-label {
|
||||
float: left;
|
||||
font-size: 15px;
|
||||
line-height: 1.4;
|
||||
padding-top: 5px;
|
||||
width: 50%;
|
||||
}
|
105
lib/less/modules/slider.import.less
vendored
Executable file
@ -0,0 +1,105 @@
|
||||
// Slider
|
||||
// --------------------------------------------------
|
||||
|
||||
// Default controls
|
||||
// -------------------------
|
||||
|
||||
.ui-slider {
|
||||
.progress();
|
||||
margin-bottom: 20px;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.ui-slider-handle {
|
||||
background-color: @slider-handle-bg;
|
||||
border-radius: 50%;
|
||||
cursor: pointer;
|
||||
height: 18px;
|
||||
position: absolute;
|
||||
width: 18px;
|
||||
z-index: 2;
|
||||
.transition(background .25s);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: @slider-handle-hover-bg;
|
||||
outline: none;
|
||||
}
|
||||
&:active {
|
||||
background-color: @slider-handle-active-bg;
|
||||
}
|
||||
}
|
||||
|
||||
.ui-slider-range {
|
||||
background-color: @slider-range-bg;
|
||||
display: block;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
// Segments
|
||||
// -------------------------
|
||||
.ui-slider-segment {
|
||||
background-color: @slider-segment-bg;
|
||||
border-radius: 50%;
|
||||
height: 6px;
|
||||
width: 6px;
|
||||
}
|
||||
|
||||
// Values
|
||||
// -------------------------
|
||||
.ui-slider-value {
|
||||
float: right;
|
||||
font-size: @slider-value-font-size;
|
||||
margin-top: @slider-height;
|
||||
|
||||
&.first {
|
||||
clear: left;
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
// Horizontal orientation
|
||||
// -------------------------
|
||||
|
||||
.ui-slider-horizontal {
|
||||
.ui-slider-handle {
|
||||
margin-left: -9px;
|
||||
top: -3px;
|
||||
|
||||
&[style*="100"] {
|
||||
margin-left: -15px;
|
||||
}
|
||||
}
|
||||
.ui-slider-range {
|
||||
border-radius: 30px 0 0 30px;
|
||||
}
|
||||
.ui-slider-segment {
|
||||
float: left;
|
||||
margin: 3px -6px 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical orientation
|
||||
// -------------------------
|
||||
|
||||
.ui-slider-vertical {
|
||||
width: @slider-height;
|
||||
|
||||
.ui-slider-handle {
|
||||
margin-left: -3px;
|
||||
margin-bottom: -11px;
|
||||
top: auto;
|
||||
}
|
||||
.ui-slider-range {
|
||||
width: 100%;
|
||||
bottom: 0;
|
||||
border-radius: 0 0 30px 30px;
|
||||
}
|
||||
.ui-slider-segment {
|
||||
position: absolute;
|
||||
right: 3px;
|
||||
}
|
||||
}
|
121
lib/less/modules/tagsinput.import.less
vendored
Executable file
@ -0,0 +1,121 @@
|
||||
//
|
||||
// Tags Input
|
||||
// --------------------------------------------------
|
||||
|
||||
.tagsinput {
|
||||
background: white;
|
||||
border: 2px solid @brand-secondary;
|
||||
border-radius: @border-radius-large;
|
||||
height: 100px;
|
||||
margin-bottom: 18px;
|
||||
padding: 6px 1px 1px 6px;
|
||||
overflow-y: auto;
|
||||
text-align: left;
|
||||
|
||||
.tag {
|
||||
border-radius: @border-radius-base;
|
||||
background-color: @brand-secondary;
|
||||
color: @inverse;
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 5px;
|
||||
overflow: hidden;
|
||||
line-height: 15px;
|
||||
padding: 6px 13px 8px 19px;
|
||||
position: relative;
|
||||
vertical-align: middle;
|
||||
.transition(.25s linear);
|
||||
|
||||
&:hover {
|
||||
background-color: mix(@brand-secondary, black, 85%);
|
||||
color: @inverse;
|
||||
padding-left: 12px;
|
||||
padding-right: 20px;
|
||||
|
||||
.tagsinput-remove-link {
|
||||
color: @inverse;
|
||||
opacity: 1;
|
||||
// Opacity fallback for IE
|
||||
display: block\9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
input {
|
||||
background: transparent;
|
||||
border: none;
|
||||
color: @brand-primary;
|
||||
font-family: @font-family-base;
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
margin: 0px;
|
||||
padding: 0 0 0 5px;
|
||||
outline: none !important;
|
||||
margin: 6px 5px 0 0;
|
||||
vertical-align: top;
|
||||
width: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.tagsinput-remove-link {
|
||||
bottom: 0;
|
||||
color: @inverse;
|
||||
cursor: pointer;
|
||||
font-size: 12px;
|
||||
opacity: 0;
|
||||
padding: 7px 7px 5px 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
text-align: right;
|
||||
text-decoration: none;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
z-index: 2;
|
||||
// Opacity fallback for IE
|
||||
display: none\9;
|
||||
|
||||
&:before {
|
||||
color: @inverse;
|
||||
content: "\f00d";
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
}
|
||||
|
||||
.tagsinput-add-container {
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.tagsinput-add {
|
||||
background-color: mix(@inverse, @brand-primary, 80%);
|
||||
border-radius: @border-radius-small;
|
||||
color: @inverse;
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
line-height: 1;
|
||||
margin-bottom: 5px;
|
||||
padding: 7px 9px;
|
||||
vertical-align: top;
|
||||
.transition(.25s linear);
|
||||
|
||||
&:hover {
|
||||
background-color: @brand-secondary;
|
||||
}
|
||||
&:before {
|
||||
content: "\f067";
|
||||
font-family: FontAwesome;
|
||||
}
|
||||
}
|
||||
|
||||
.tags_clear {
|
||||
clear: both;
|
||||
width: 100%;
|
||||
height: 0px;
|
||||
}
|
||||
.not_valid {
|
||||
background: #fbd8db !important;
|
||||
color: #90111a !important;
|
||||
margin-left: 5px !important;
|
||||
}
|
36
lib/less/modules/thumbnails.import.less
vendored
Executable file
@ -0,0 +1,36 @@
|
||||
//
|
||||
// Thumbnails
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Mixin and adjust the regular image class
|
||||
.thumbnail {
|
||||
display: block;
|
||||
padding: @thumbnail-padding;
|
||||
margin-bottom: 5px;
|
||||
line-height: @line-height-base;
|
||||
background-color: @thumbnail-bg;
|
||||
border: 2px solid @thumbnail-border;
|
||||
border-radius: @thumbnail-border-radius;
|
||||
.transition(all .25s ease-in-out);
|
||||
|
||||
> img,
|
||||
a > img {
|
||||
.img-responsive();
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
// Add a hover state for linked versions only
|
||||
a&:hover,
|
||||
a&:focus,
|
||||
a&.active {
|
||||
border-color: @link-color;
|
||||
}
|
||||
|
||||
// Image captions
|
||||
.caption {
|
||||
padding: @thumbnail-caption-padding;
|
||||
color: @thumbnail-caption-color;
|
||||
}
|
||||
}
|
54
lib/less/modules/tile.import.less
vendored
Executable file
@ -0,0 +1,54 @@
|
||||
//
|
||||
// Tile
|
||||
// -------------------------------------------------
|
||||
|
||||
.tile {
|
||||
background-color: mix(@brand-primary, @inverse, 8%);
|
||||
border-radius: @border-radius-large;
|
||||
padding: 14px;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
|
||||
&.tile-hot {
|
||||
&:before {
|
||||
background: ~"url(../images/tile/ribbon.png) 0 0 no-repeat";
|
||||
background-size: 82px 82px;
|
||||
content: '';
|
||||
height: 82px;
|
||||
position: absolute;
|
||||
right: -4px;
|
||||
top: -4px;
|
||||
width: 82px;
|
||||
}
|
||||
}
|
||||
p {
|
||||
font-size: 15px;
|
||||
margin-bottom: 33px;
|
||||
}
|
||||
}
|
||||
.tile-image {
|
||||
height: 100px;
|
||||
margin: 31px 0 27px;
|
||||
vertical-align: bottom;
|
||||
|
||||
&.big-illustration {
|
||||
height: 111px;
|
||||
margin-top: 20px;
|
||||
width: 112px;
|
||||
}
|
||||
}
|
||||
.tile-title {
|
||||
font-size: 20px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
// Retina Support
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 2) {
|
||||
.tile {
|
||||
&.tile-hot {
|
||||
&:before {
|
||||
background-image: ~"url(../images/tile/ribbon-2x.png)";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
110
lib/less/modules/todo.import.less
vendored
Executable file
@ -0,0 +1,110 @@
|
||||
//
|
||||
// Todo list
|
||||
// --------------------------------------------------
|
||||
|
||||
.todo {
|
||||
color: mix(@brand-primary, @inverse, 66%);
|
||||
margin-bottom: 20px;
|
||||
border-radius: @border-radius-large;
|
||||
|
||||
ul {
|
||||
background-color: mix(@brand-primary, black, 85%);
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
border-radius: 0 0 @border-radius-large @border-radius-large;
|
||||
}
|
||||
li {
|
||||
background: @brand-primary ~"url(../images/todo/todo.png) 92% center no-repeat";
|
||||
background-size: 20px 20px;
|
||||
cursor: pointer;
|
||||
font-size: ceil(@component-font-size-base * 0.933); // ~14px
|
||||
line-height: 1.214;
|
||||
margin-top: 2px;
|
||||
padding: 18px 42px 21px 25px;
|
||||
position: relative;
|
||||
.transition(.25s);
|
||||
|
||||
&:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
&:last-child {
|
||||
border-radius: 0 0 @border-radius-large @border-radius-large;
|
||||
padding-bottom: 21px;
|
||||
}
|
||||
&.todo-done {
|
||||
background: transparent ~"url(../images/todo/done.png) 92% center no-repeat";
|
||||
background-size: 20px 20px;
|
||||
color: @brand-secondary;
|
||||
|
||||
.todo-name {
|
||||
color: @brand-secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.todo-search {
|
||||
position: relative;
|
||||
background: @brand-secondary;
|
||||
background-size: 16px 16px;
|
||||
border-radius: @border-radius-large @border-radius-large 0 0;
|
||||
color: @brand-primary;
|
||||
padding: 19px 25px 20px;
|
||||
|
||||
&:before {
|
||||
position: absolute;
|
||||
font-family: FontAwesome;
|
||||
content: "\f002";
|
||||
font-size: 16px;
|
||||
line-height: 17px;
|
||||
display: inline-block;
|
||||
top: 50%;
|
||||
left: 92%;
|
||||
margin: -0.5em 0 0 -1em;
|
||||
}
|
||||
}
|
||||
|
||||
input.todo-search-field {
|
||||
background: none;
|
||||
border: none;
|
||||
color: @brand-primary;
|
||||
font-size: 19px;
|
||||
font-weight: 700;
|
||||
margin: 0;
|
||||
line-height: 23px;
|
||||
padding: 5px 0;
|
||||
text-indent: 0;
|
||||
.box-shadow(none);
|
||||
.placeholder(@brand-primary);
|
||||
}
|
||||
|
||||
.todo-icon {
|
||||
float: left;
|
||||
font-size: 24px;
|
||||
padding: 11px 22px 0 0;
|
||||
}
|
||||
|
||||
.todo-content {
|
||||
padding-top: 1px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.todo-name {
|
||||
color: @inverse;
|
||||
font-size: 17px;
|
||||
margin: 1px 0 3px;
|
||||
}
|
||||
|
||||
// Retina Support
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 2) {
|
||||
.todo {
|
||||
li {
|
||||
background-image: ~"url(../images/todo/todo-2x.png)";
|
||||
|
||||
&.todo-done {
|
||||
background-image: ~"url(../images/todo/done-2x.png)";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
216
lib/less/modules/type.import.less
vendored
Executable file
@ -0,0 +1,216 @@
|
||||
//
|
||||
// Typography
|
||||
// --------------------------------------------------
|
||||
|
||||
|
||||
// Headings
|
||||
// -------------------------
|
||||
|
||||
h1, h2, h3, h4, h5, h6,
|
||||
.h1, .h2, .h3, .h4, .h5, .h6 {
|
||||
font-family: @headings-font-family;
|
||||
font-weight: @headings-font-weight;
|
||||
line-height: @headings-line-height;
|
||||
color: @headings-color;
|
||||
|
||||
small {
|
||||
color: @headings-small-color;
|
||||
}
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-top: @line-height-computed;
|
||||
margin-bottom: (@line-height-computed / 2);
|
||||
}
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
margin-top: (@line-height-computed / 2);
|
||||
margin-bottom: (@line-height-computed / 2);
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
h1, .h1 { font-size: @font-size-h1; } // ~62px
|
||||
h2, .h2 { font-size: @font-size-h2; } // ~52px
|
||||
h3, .h3 { font-size: @font-size-h3; } // ~40px
|
||||
h4, .h4 { font-size: @font-size-h4; } // ~29px
|
||||
h5, .h5 { font-size: @font-size-h5; } // ~28px
|
||||
h6, .h6 { font-size: @font-size-h6; } // ~24px
|
||||
|
||||
|
||||
// Body text
|
||||
// -------------------------
|
||||
|
||||
p {
|
||||
font-size: @font-size-base;
|
||||
line-height: @line-height-base;
|
||||
margin: 0 0 (@line-height-computed / 2);
|
||||
}
|
||||
|
||||
.lead {
|
||||
margin-bottom: @line-height-computed;
|
||||
font-size: floor(@font-size-base * 1.556); // ~28px
|
||||
line-height: 1.46428571; // ~41px
|
||||
font-weight: 300;
|
||||
|
||||
@media (min-width: @screen-sm-min) {
|
||||
font-size: (@font-size-base * 1.667); // ~30px
|
||||
}
|
||||
}
|
||||
|
||||
// Emphasis & misc
|
||||
// -------------------------
|
||||
|
||||
// Ex: 18px base font * 83% = about 15px
|
||||
small,
|
||||
.small {
|
||||
font-size: 83%; // ~15px
|
||||
line-height: 2.067; // ~31px
|
||||
}
|
||||
|
||||
// Contextual emphasis
|
||||
.text-muted {
|
||||
color: @text-muted;
|
||||
}
|
||||
.text-inverse {
|
||||
color: @inverse;
|
||||
}
|
||||
.text-primary {
|
||||
.text-emphasis-variant(@brand-secondary);
|
||||
}
|
||||
.text-warning {
|
||||
.text-emphasis-variant(@state-warning-text);
|
||||
}
|
||||
.text-danger {
|
||||
.text-emphasis-variant(@state-danger-text);
|
||||
}
|
||||
.text-success {
|
||||
.text-emphasis-variant(@state-success-text);
|
||||
}
|
||||
.text-info {
|
||||
.text-emphasis-variant(@state-info-text);
|
||||
}
|
||||
|
||||
// Contextual backgrounds
|
||||
.bg-primary {
|
||||
// Given the contrast here, this is the only class to have its color inverted
|
||||
// automatically.
|
||||
color: @inverse;
|
||||
.bg-variant(@brand-primary);
|
||||
}
|
||||
.bg-success {
|
||||
.bg-variant(@state-success-bg);
|
||||
}
|
||||
.bg-info {
|
||||
.bg-variant(@state-info-bg);
|
||||
}
|
||||
.bg-warning {
|
||||
.bg-variant(@state-warning-bg);
|
||||
}
|
||||
.bg-danger {
|
||||
.bg-variant(@state-danger-bg);
|
||||
}
|
||||
|
||||
|
||||
// Page header
|
||||
// -------------------------
|
||||
|
||||
.page-header {
|
||||
padding-bottom: ((@line-height-computed / 2) - 1);
|
||||
margin: (@line-height-computed * 2) 0 @line-height-computed;
|
||||
border-bottom: 1px solid @page-header-border-color;
|
||||
}
|
||||
|
||||
|
||||
// Lists
|
||||
// --------------------------------------------------
|
||||
|
||||
// Unordered and Ordered lists
|
||||
ul,
|
||||
ol {
|
||||
margin-bottom: (@line-height-computed / 2);
|
||||
}
|
||||
|
||||
// Description Lists
|
||||
dl {
|
||||
margin-bottom: @line-height-computed;
|
||||
}
|
||||
dt,
|
||||
dd {
|
||||
line-height: @line-height-base;
|
||||
}
|
||||
|
||||
// Horizontal description lists
|
||||
//
|
||||
// Defaults to being stacked without any of the below styles applied, until the
|
||||
// grid breakpoint is reached (default of ~768px).
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
.dl-horizontal {
|
||||
dt {
|
||||
width: (@component-offset-horizontal - 20);
|
||||
}
|
||||
dd {
|
||||
margin-left: @component-offset-horizontal;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MISC
|
||||
// ----
|
||||
|
||||
// Abbreviations and acronyms
|
||||
abbr[title],
|
||||
abbr[data-original-title] {
|
||||
border-bottom: 1px dotted @abbr-border-color;
|
||||
}
|
||||
|
||||
// Blockquotes
|
||||
blockquote {
|
||||
border-left: 3px solid @blockquote-border-color;
|
||||
padding: 0 0 0 16px;
|
||||
margin: 0 0 @line-height-computed;
|
||||
|
||||
p {
|
||||
font-size: ceil(@font-size-base * 1.111); // ~20px
|
||||
line-height: 1.55; // ~31px
|
||||
font-weight: normal;
|
||||
margin-bottom: .4em;
|
||||
}
|
||||
small,
|
||||
.small {
|
||||
font-size: @font-size-base;
|
||||
line-height: @line-height-base;
|
||||
font-style: italic;
|
||||
color: @blockquote-small-color;
|
||||
|
||||
&:before {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
|
||||
// Float right with text-align: right
|
||||
&.pull-right {
|
||||
padding-right: 16px;
|
||||
padding-left: 0;
|
||||
border-right: 3px solid @blockquote-border-color;
|
||||
border-left: 0;
|
||||
|
||||
small {
|
||||
&:after {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Addresses
|
||||
address {
|
||||
margin-bottom: @line-height-computed;
|
||||
line-height: @line-height-base;
|
||||
}
|
41
lib/less/modules/typeahead.import.less
vendored
Executable file
@ -0,0 +1,41 @@
|
||||
//
|
||||
// Typeahead
|
||||
// --------------------------------------------------
|
||||
|
||||
.twitter-typeahead {
|
||||
width: 100%;
|
||||
|
||||
.tt-query,
|
||||
.tt-hint {
|
||||
.form-control();
|
||||
}
|
||||
|
||||
.tt-dropdown-menu {
|
||||
width: 100%;
|
||||
margin-top: 5px;
|
||||
border: 2px solid @brand-secondary;
|
||||
padding: 5px 0;
|
||||
background-color: @inverse;
|
||||
border-radius: @border-radius-large;
|
||||
}
|
||||
|
||||
.tt-suggestion {
|
||||
p {
|
||||
padding: 6px 14px;
|
||||
font-size: ceil(@component-font-size-base * 0.933);
|
||||
line-height: 1.429; // ~20px
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
&:first-child,
|
||||
&:last-child {
|
||||
p {
|
||||
padding: 6px 14px;
|
||||
}
|
||||
}
|
||||
&.tt-is-under-cursor {
|
||||
color: #fff;
|
||||
background-color: mix(@brand-secondary, black, 85%);
|
||||
}
|
||||
}
|
||||
}
|
458
lib/less/modules/video.import.less
vendored
Executable file
@ -0,0 +1,458 @@
|
||||
//
|
||||
// Video Player
|
||||
// --------------------------------------------------
|
||||
|
||||
// Module color variable
|
||||
@controls-color: mix(@brand-primary, black, 75%);
|
||||
|
||||
.video-js {
|
||||
background-color: transparent;
|
||||
// Otherwise you won't see controls in Fullscreen mode
|
||||
margin-top: -95px;
|
||||
position: relative;
|
||||
padding: 0;
|
||||
font-size: 10px;
|
||||
vertical-align: middle;
|
||||
border-radius: @border-radius-large @border-radius-large 0 0;
|
||||
-webkit-backface-visibility: hidden;
|
||||
-moz-backface-visibility:hidden;
|
||||
-ms-backface-visibility:hidden;
|
||||
backface-visibility:hidden;
|
||||
|
||||
.vjs-tech {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: @border-radius-large @border-radius-large 0 0;
|
||||
}
|
||||
&:-moz-full-screen {
|
||||
position: absolute;
|
||||
}
|
||||
}
|
||||
|
||||
body.vjs-full-window {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.video-js {
|
||||
&.vjs-fullscreen {
|
||||
position: fixed;
|
||||
overflow: hidden;
|
||||
z-index: 1000;
|
||||
left: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
_position: absolute;
|
||||
}
|
||||
&:-webkit-full-screen {
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-poster {
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
max-height: 100%;
|
||||
border-radius: @border-radius-large @border-radius-large 0 0;
|
||||
}
|
||||
|
||||
.video-js {
|
||||
.vjs-text-track-display {
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
bottom: 4em;
|
||||
left: 1em;
|
||||
right: 1em;
|
||||
font-family: @font-family-base;
|
||||
}
|
||||
.vjs-text-track {
|
||||
display: none;
|
||||
color: @inverse;
|
||||
font-size: 1.4em;
|
||||
text-align: center;
|
||||
margin-bottom: .1em;
|
||||
background: #000;
|
||||
background: rgba(0,0,0,.5);
|
||||
}
|
||||
.vjs-subtitles {
|
||||
color: #fff;
|
||||
}
|
||||
.vjs-captions {
|
||||
color: #fc6;
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-tt-cue {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.vjs-fade-in {
|
||||
visibility: visible !important;
|
||||
opacity: 1 !important;
|
||||
.transition(~"visibility 0s linear 0s, opacity .3s linear");
|
||||
}
|
||||
.vjs-fade-out {
|
||||
visibility: hidden !important;
|
||||
opacity: 0 !important;
|
||||
.transition(~"visibility 0s linear 1.5s, opacity 1.5s linear");
|
||||
}
|
||||
|
||||
.vjs-control-bar {
|
||||
position: absolute;
|
||||
bottom: -47px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 47px;
|
||||
color: @inverse;
|
||||
background: @controls-color;
|
||||
border-radius: 0 0 @border-radius-large @border-radius-large;
|
||||
|
||||
&.vjs-fade-out {
|
||||
visibility: visible !important;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
}
|
||||
|
||||
// Video player control general style
|
||||
.vjs-control {
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
position: relative;
|
||||
float: left;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 18px;
|
||||
width: 18px;
|
||||
|
||||
&:focus {
|
||||
outline: 0
|
||||
}
|
||||
div {
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
}
|
||||
|
||||
// Control tooltip
|
||||
.vjs-control-text {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.vjs-play-control {
|
||||
cursor: pointer !important;
|
||||
height: 47px;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 58px;
|
||||
|
||||
div {
|
||||
position: relative;
|
||||
height: 47px;
|
||||
|
||||
&:before,
|
||||
&:after {
|
||||
position: absolute;
|
||||
font-family: FontAwesome;
|
||||
color: @brand-secondary;
|
||||
font-size: 16px;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin: -0.55em 0 0 -0.5em;
|
||||
.transition(~"color .25s, opacity .25s");
|
||||
}
|
||||
&:after {
|
||||
content: "\f04c";
|
||||
}
|
||||
&:before {
|
||||
content: "\f04b";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-paused .vjs-play-control {
|
||||
&:hover {
|
||||
div:before {
|
||||
color: mix(@brand-secondary, black, 85%);
|
||||
}
|
||||
}
|
||||
div {
|
||||
&:after {
|
||||
.opacity(0);
|
||||
}
|
||||
&:before {
|
||||
.opacity(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-playing .vjs-play-control {
|
||||
&:hover {
|
||||
div:after {
|
||||
color: mix(@brand-secondary, black, 85%);
|
||||
}
|
||||
}
|
||||
div {
|
||||
&:after {
|
||||
.opacity(1);
|
||||
}
|
||||
&:before {
|
||||
.opacity(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-rewind-control {
|
||||
width: 5em;
|
||||
cursor: pointer !important;
|
||||
|
||||
div {
|
||||
width: 19px;
|
||||
height: 16px;
|
||||
background: none transparent;
|
||||
margin: .5em auto 0;
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-mute-control {
|
||||
background: ~"url(../images/video/volume-full.png) center -48px no-repeat";
|
||||
background-size: 16px 64px;
|
||||
cursor: pointer !important;
|
||||
position: absolute;
|
||||
right: 51px;
|
||||
top: 14px;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
div {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Muted state
|
||||
&.vjs-vol-0 {
|
||||
&,
|
||||
div {
|
||||
background-image: ~"url(../images/video/volume-off.png)";
|
||||
}
|
||||
}
|
||||
div {
|
||||
background: @controls-color ~"url(../images/video/volume-full.png) no-repeat center 2px";
|
||||
background-size: 16px 64px;
|
||||
height: 18px;
|
||||
.transition(opacity .25s);
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-volume-control,
|
||||
.vjs-volume-level,
|
||||
.vjs-volume-handle,
|
||||
.vjs-volume-bar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.vjs-progress-control {
|
||||
position: absolute;
|
||||
left: 60px;
|
||||
right: 180px;
|
||||
height: 12px;
|
||||
width: auto;
|
||||
top: 18px;
|
||||
background: mix(@brand-primary, @inverse, 93%);
|
||||
border-radius: 32px;
|
||||
}
|
||||
|
||||
.vjs-progress-holder {
|
||||
position: relative;
|
||||
cursor: pointer !important;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
.vjs-play-progress,
|
||||
.vjs-load-progress {
|
||||
position: absolute;
|
||||
display: block;
|
||||
height: 12px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
left: 0;
|
||||
top: 0;
|
||||
border-radius: 32px;
|
||||
}
|
||||
|
||||
.vjs-play-progress {
|
||||
background: @brand-secondary;
|
||||
left: -1px;
|
||||
}
|
||||
|
||||
.vjs-load-progress {
|
||||
background: mix(@brand-primary, @inverse, 20%);
|
||||
border-radius: 32px 0 0 32px;
|
||||
|
||||
&[style*='100%'],
|
||||
&[style*='99%'] {
|
||||
border-radius: 32px;
|
||||
}
|
||||
}
|
||||
|
||||
.vjs-seek-handle {
|
||||
background-color: mix(@brand-secondary, black, 85%);
|
||||
position: absolute;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
margin: -3px 0 0 1px;
|
||||
left: 0;
|
||||
top: 0;
|
||||
border-radius: 50%;
|
||||
.transition(background-color .25s);
|
||||
|
||||
&[style*='95.'] {
|
||||
margin-left: 3px;
|
||||
}
|
||||
&[style='left: 0%;'] {
|
||||
margin-left: -2px;
|
||||
}
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: mix(@brand-secondary, black, 75%);
|
||||
}
|
||||
&:active {
|
||||
background-color: mix(@brand-secondary, black, 65%)
|
||||
}
|
||||
}
|
||||
|
||||
// Player time controls
|
||||
.vjs-time-controls {
|
||||
position: absolute;
|
||||
height: 20px;
|
||||
width: 50px;
|
||||
top: 16px;
|
||||
font: 300 13px @font-family-base;
|
||||
}
|
||||
|
||||
.vjs-current-time {
|
||||
right: 128px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.vjs-duration {
|
||||
color: mix(@brand-primary, @inverse, 80%);
|
||||
right: 69px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.vjs-remaining-time {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.vjs-time-divider {
|
||||
color: mix(@brand-primary, @inverse, 80%);
|
||||
font-size: 14px;
|
||||
position: absolute;
|
||||
right: 121px;
|
||||
top: 15px;
|
||||
}
|
||||
|
||||
.vjs-secondary-controls {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.vjs-fullscreen-control {
|
||||
background-image: ~"url(../images/video/fullscreen.png)";
|
||||
background-position: center -47px;
|
||||
background-size: 15px 64px;
|
||||
cursor: pointer !important;
|
||||
position: absolute;
|
||||
right: 17px;
|
||||
top: 13px;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
div {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
div {
|
||||
height: 18px;
|
||||
background: ~"url(../images/video/fullscreen.png) no-repeat center 2px";
|
||||
background-size: 15px 64px;
|
||||
.transition(opacity .25s);
|
||||
}
|
||||
}
|
||||
|
||||
// Subtitles menu. Hide for no need by design.
|
||||
.vjs-menu-button {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
// Video preloader
|
||||
.sharp-keyframes() {
|
||||
0% {
|
||||
background: #e74c3c;
|
||||
border-radius: 10px;
|
||||
.rotate(0deg);
|
||||
}
|
||||
50% {
|
||||
background: #ebedee;
|
||||
border-radius: 0;
|
||||
.rotate(180deg);
|
||||
}
|
||||
100% {
|
||||
background: #e74c3c;
|
||||
border-radius: 10px;
|
||||
.rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes sharp {
|
||||
.sharp-keyframes();
|
||||
}
|
||||
|
||||
@-moz-keyframes sharp {
|
||||
.sharp-keyframes();
|
||||
}
|
||||
|
||||
@-o-keyframes sharp {
|
||||
.sharp-keyframes();
|
||||
}
|
||||
|
||||
@keyframes sharp {
|
||||
.sharp-keyframes();
|
||||
}
|
||||
|
||||
.vjs-loading-spinner {
|
||||
background: #ebedee;
|
||||
display: none;
|
||||
height: 16px;
|
||||
left: 50%;
|
||||
margin: -8px 0 0 -8px;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
width: 16px;
|
||||
border-radius: 10px;
|
||||
.animation(sharp 2s ease infinite);
|
||||
}
|
172
lib/less/spaces.import.less
vendored
Executable file
@ -0,0 +1,172 @@
|
||||
// Should be used to modify the default spacing between objects (not between nodes of * the same object)
|
||||
// p,m = padding,margin
|
||||
// a,t,r,b,l,h,v = all,top,right,bottom,left,horizontal,vertical
|
||||
// x,s,m,l,n = extra-small(@x),small(@s),medium(@m),large(@l),none(0px)
|
||||
@x: 3px;
|
||||
@s: 5px;
|
||||
@m: 10px;
|
||||
@l: 20px;
|
||||
|
||||
.last-col {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.ptn, .pvn, .pan {
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.ptx, .pvx, .pax {
|
||||
padding-top: @x;
|
||||
}
|
||||
|
||||
.pts, .pvs, .pas {
|
||||
padding-top: @s;
|
||||
}
|
||||
|
||||
.ptm, .pvm, .pam {
|
||||
padding-top: @m;
|
||||
}
|
||||
|
||||
.ptl, .pvl, .pal {
|
||||
padding-top: @l;
|
||||
}
|
||||
|
||||
.prn, .phn, .pan {
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.prx, .phx, .pax {
|
||||
padding-right: @x;
|
||||
}
|
||||
|
||||
.prs, .phs, .pas {
|
||||
padding-right: @s;
|
||||
}
|
||||
|
||||
.prm, .phm, .pam {
|
||||
padding-right: @m;
|
||||
}
|
||||
|
||||
.prl, .phl, .pal {
|
||||
padding-right: @l;
|
||||
}
|
||||
|
||||
.pbn, .pvn, .pan {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
.pbx, .pvx, .pax {
|
||||
padding-bottom: @x;
|
||||
}
|
||||
|
||||
.pbs, .pvs, .pas {
|
||||
padding-bottom: @s;
|
||||
}
|
||||
|
||||
.pbm, .pvm, .pam {
|
||||
padding-bottom: @m;
|
||||
}
|
||||
|
||||
.pbl, .pvl, .pal {
|
||||
padding-bottom: @l;
|
||||
}
|
||||
|
||||
.pln, .phn, .pan {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.plx, .phx, .pax {
|
||||
padding-left: @x;
|
||||
}
|
||||
|
||||
.pls, .phs, .pas {
|
||||
padding-left: @s;
|
||||
}
|
||||
|
||||
.plm, .phm, .pam {
|
||||
padding-left: @m;
|
||||
}
|
||||
|
||||
.pll, .phl, .pal {
|
||||
padding-left: @l;
|
||||
}
|
||||
|
||||
.mtn, .mvn, .man {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
.mtx, .mvx, .max {
|
||||
margin-top: @x;
|
||||
}
|
||||
|
||||
.mts, .mvs, .mas {
|
||||
margin-top: @s;
|
||||
}
|
||||
|
||||
.mtm, .mvm, .mam {
|
||||
margin-top: @m;
|
||||
}
|
||||
|
||||
.mtl, .mvl, .mal {
|
||||
margin-top: @l;
|
||||
}
|
||||
|
||||
.mrn, .mhn, .man {
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
.mrx, .mhx, .max {
|
||||
margin-right: @x;
|
||||
}
|
||||
|
||||
.mrs, .mhs, .mas {
|
||||
margin-right: @s;
|
||||
}
|
||||
|
||||
.mrm, .mhm, .mam {
|
||||
margin-right: @m;
|
||||
}
|
||||
|
||||
.mrl, .mhl, .mal {
|
||||
margin-right: @l;
|
||||
}
|
||||
|
||||
.mbn, .mvn, .man {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.mbx, .mvx, .max {
|
||||
margin-bottom: @x;
|
||||
}
|
||||
|
||||
.mbs, .mvs, .mas {
|
||||
margin-bottom: @s;
|
||||
}
|
||||
|
||||
.mbm, .mvm, .mam {
|
||||
margin-bottom: @m;
|
||||
}
|
||||
|
||||
.mbl, .mvl, .mal {
|
||||
margin-bottom: @l;
|
||||
}
|
||||
|
||||
.mln, .mhn, .man {
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
.mlx, .mhx, .max {
|
||||
margin-left: @x;
|
||||
}
|
||||
|
||||
.mls, .mhs, .mas {
|
||||
margin-left: @s;
|
||||
}
|
||||
|
||||
.mlm, .mhm, .mam {
|
||||
margin-left: @m;
|
||||
}
|
||||
|
||||
.mll, .mhl, .mal {
|
||||
margin-left: @l;
|
||||
}
|
500
lib/less/variables.import.less
vendored
Executable file
@ -0,0 +1,500 @@
|
||||
//
|
||||
// Variables
|
||||
// --------------------------------------------------
|
||||
|
||||
// == Colors
|
||||
//
|
||||
//##
|
||||
|
||||
// Color swatches
|
||||
@turquoise: #1abc9c;
|
||||
@green-sea: #16a085;
|
||||
|
||||
@emerald: #2ecc71;
|
||||
@nephritis: #27ae60;
|
||||
|
||||
@peter-river: #3498db;
|
||||
@belize-hole: #2980b9;
|
||||
|
||||
@amethyst: #9b59b6;
|
||||
@wisteria: #8e44ad;
|
||||
|
||||
@wet-asphalt: #34495e;
|
||||
@midnight-blue: #2c3e50;
|
||||
|
||||
@sun-flower: #f1c40f;
|
||||
@orange: #f39c12;
|
||||
|
||||
@carrot: #e67e22;
|
||||
@pumpkin: #d35400;
|
||||
|
||||
@alizarin: #e74c3c;
|
||||
@pomegranate: #c0392b;
|
||||
|
||||
@clouds: #ecf0f1;
|
||||
@silver: #bdc3c7;
|
||||
|
||||
@concrete: #95a5a6;
|
||||
@asbestos: #7f8c8d;
|
||||
|
||||
// Grays
|
||||
@gray: @concrete;
|
||||
@gray-light: @silver;
|
||||
@inverse: white;
|
||||
|
||||
// Brand colors
|
||||
@brand-primary: @wet-asphalt;
|
||||
@brand-secondary: @turquoise;
|
||||
@brand-success: @emerald;
|
||||
@brand-warning: @sun-flower;
|
||||
@brand-danger: @alizarin;
|
||||
@brand-info: @peter-river;
|
||||
|
||||
|
||||
//== Scaffolding
|
||||
//
|
||||
//## Settings for some of the most global styles.
|
||||
|
||||
@body-bg: #fff;
|
||||
@text-color: @brand-primary;
|
||||
|
||||
//** Global textual link color.
|
||||
@link-color: @green-sea;
|
||||
@link-hover-color: @turquoise;
|
||||
|
||||
|
||||
//== Typography
|
||||
//
|
||||
//## Font, line-height for body text, headings, and more.
|
||||
|
||||
@font-family-base: "Lato", Helvetica, Arial, sans-serif;
|
||||
@font-family-demo: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
@font-family-monospace: Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
@font-size-base: 18px;
|
||||
|
||||
@local-font-path: "../fonts/lato/";
|
||||
@local-font-name: "lato-regular";
|
||||
@local-font-svg-id: "latoregular";
|
||||
@local-font-name-light: "lato-light";
|
||||
@local-font-svg-id-light: "latolight";
|
||||
@local-font-name-black: "lato-black";
|
||||
@local-font-svg-id-black: "latoblack";
|
||||
@local-font-name-bold: "lato-bold";
|
||||
@local-font-svg-id-bold: "latobold";
|
||||
@local-font-name-italic: "lato-italic";
|
||||
@local-font-svg-id-italic: "latoitalic";
|
||||
@local-font-name-bold-italic: "lato-bolditalic";
|
||||
@local-font-svg-id-bold-italic: "latobold-italic";
|
||||
|
||||
@font-size-h1: floor(@font-size-base * 3.444); // ~62px
|
||||
@font-size-h2: ceil(@font-size-base * 2.889); // ~52px
|
||||
@font-size-h3: ceil(@font-size-base * 2.222); // ~40px
|
||||
@font-size-h4: ceil(@font-size-base * 1.611); // ~29px
|
||||
@font-size-h5: floor(@font-size-base * 1.556); // ~28px
|
||||
@font-size-h6: ceil(@font-size-base * 1.333); // ~24px
|
||||
|
||||
@line-height-base: 1.72222; // 31/18
|
||||
@line-height-computed: floor(@font-size-base * @line-height-base); // ~31px
|
||||
|
||||
@headings-font-family: inherit;
|
||||
@headings-font-weight: 700;
|
||||
@headings-line-height: 1.1;
|
||||
@headings-color: inherit;
|
||||
|
||||
|
||||
//== Iconography
|
||||
//
|
||||
|
||||
//** Icon sizes for use in components
|
||||
@icon-normal: 16px;
|
||||
@icon-medium: 18px;
|
||||
@icon-large: 32px;
|
||||
|
||||
|
||||
//== Components
|
||||
//
|
||||
//## Define common padding and border radius sizes and more.
|
||||
|
||||
//** Default font-size in components
|
||||
@component-font-size-base: ceil(@font-size-base * 0.833); // ~15px
|
||||
|
||||
// Border-radius
|
||||
@border-radius-base: 4px;
|
||||
@border-radius-large: 6px;
|
||||
@border-radius-small: 3px;
|
||||
|
||||
|
||||
//== Buttons
|
||||
//
|
||||
//## For each of Flat UI's buttons, define text, background, font size and height.
|
||||
|
||||
@btn-font-size-base: @component-font-size-base;
|
||||
@btn-font-size-xs: ceil(@component-font-size-base * 0.80); // ~12px
|
||||
@btn-font-size-sm: floor(@component-font-size-base * 0.867); // ~13px
|
||||
@btn-font-size-lg: ceil(@component-font-size-base * 1.133); // ~17px
|
||||
@btn-font-size-hg: floor(@component-font-size-base * 1.467); // ~22px
|
||||
|
||||
@btn-line-height-base: 1.4; // ~21px
|
||||
@btn-line-height-hg: 1.227; // ~27px
|
||||
@btn-line-height-lg: 1.471; // ~25px
|
||||
@btn-line-height-sm: 1.385; // ~16px
|
||||
@btn-line-height-xs: 1.083; // ~13px
|
||||
|
||||
@btn-social-font-size-base: floor(@component-font-size-base * 0.867); // ~13px
|
||||
@btn-social-line-height-base: 1.077; // ~14px
|
||||
|
||||
@btn-font-weight: normal;
|
||||
|
||||
@btn-default-color: @inverse;
|
||||
@btn-default-bg: @gray-light;
|
||||
@btn-hover-bg: mix(@gray-light, white, 80%);
|
||||
@btn-active-bg: mix(@gray-light, black, 85%);
|
||||
|
||||
@btn-primary-hover-bg: mix(@brand-secondary, white, 80%);
|
||||
@btn-primary-active-bg: mix(@brand-secondary, black, 85%);
|
||||
|
||||
@btn-info-hover-bg: mix(@brand-info, white, 80%);
|
||||
@btn-info-active-bg: mix(@brand-info, black, 85%);
|
||||
|
||||
@btn-success-hover-bg: mix(@brand-success, white, 80%);
|
||||
@btn-success-active-bg: mix(@brand-success, black, 85%);
|
||||
|
||||
@btn-danger-hover-bg: mix(@brand-danger, white, 80%);
|
||||
@btn-danger-active-bg: mix(@brand-danger, black, 85%);
|
||||
|
||||
@btn-warning-hover-bg: overlay(@brand-warning, darken(white, 37.5%));
|
||||
@btn-warning-active-bg: mix(@brand-warning, black, 85%);
|
||||
|
||||
@btn-inverse-hover-bg: overlay(@brand-primary, darken(white, 37.5%));
|
||||
@btn-inverse-active-bg: mix(@brand-primary, black, 85%);
|
||||
|
||||
@btn-link-disabled-color: @gray-light;
|
||||
|
||||
|
||||
//== Forms
|
||||
//
|
||||
//##
|
||||
|
||||
@input-font-size-base: @component-font-size-base;
|
||||
@input-font-size-small: floor(@component-font-size-base * 0.867); // ~13px
|
||||
@input-font-size-large: ceil(@component-font-size-base * 1.133); // ~17px
|
||||
@input-font-size-huge: floor(@component-font-size-base * 1.467); // ~22px
|
||||
|
||||
@input-line-height-base: 1.467; // ~22px
|
||||
@input-line-height-small: 1.462; // ~19px
|
||||
@input-line-height-large: 1.235; // ~21px
|
||||
@input-line-height-huge: 1.318; // ~29px
|
||||
|
||||
@input-icon-font-size: ceil(@component-font-size-base * 1.333); // ~20px
|
||||
|
||||
@input-bg: @inverse;
|
||||
@input-bg-disabled: mix(@gray, white, 10%);
|
||||
|
||||
@input-height-small: 35px;
|
||||
@input-height-base: 41px;
|
||||
@input-height-large: 45px;
|
||||
@input-height-huge: 53px;
|
||||
|
||||
@input-border-radius: @border-radius-large;
|
||||
|
||||
@legend-color: inherit;
|
||||
|
||||
|
||||
//== Forms
|
||||
//
|
||||
//##
|
||||
|
||||
@input-font-size-base: @component-font-size-base;
|
||||
@input-font-size-small: floor(@component-font-size-base * 0.867); // ~13px
|
||||
@input-font-size-large: ceil(@component-font-size-base * 1.133); // ~17px
|
||||
@input-font-size-huge: floor(@component-font-size-base * 1.467); // ~22px
|
||||
|
||||
@input-line-height-base: 1.467; // ~22px
|
||||
@input-line-height-small: 1.462; // ~19px
|
||||
@input-line-height-large: 1.235; // ~21px
|
||||
@input-line-height-huge: 1.318; // ~29px
|
||||
|
||||
@input-icon-font-size: ceil(@component-font-size-base * 1.333); // ~20px
|
||||
|
||||
@input-bg: @inverse;
|
||||
@input-bg-disabled: mix(@gray, white, 10%);
|
||||
|
||||
@input-height-small: 35px;
|
||||
@input-height-base: 41px;
|
||||
@input-height-large: 45px;
|
||||
@input-height-huge: 53px;
|
||||
|
||||
@input-border-radius: @border-radius-large;
|
||||
|
||||
@legend-color: inherit;
|
||||
|
||||
|
||||
//== Pagination
|
||||
//
|
||||
//##
|
||||
|
||||
@pagination-color: mix(@brand-primary, white, 20%);
|
||||
|
||||
|
||||
//== Pager
|
||||
//
|
||||
//##
|
||||
|
||||
@pager-padding: 9px 15px 10px;
|
||||
|
||||
|
||||
//== Navbar
|
||||
//
|
||||
//##
|
||||
|
||||
// Basics of a navbar
|
||||
@zindex-navbar: 1000;
|
||||
@zindex-navbar-fixed: 1030;
|
||||
@navbar-height-base: 53px;
|
||||
@navbar-height-large: 76px;
|
||||
@navbar-input-line-height: 1.4; // ~21px
|
||||
@navbar-margin-bottom: @line-height-computed;
|
||||
@navbar-border-radius: @border-radius-large;
|
||||
|
||||
@navbar-default-bg: saturate(spin(tint(@brand-primary, 91%), -18), 2%);
|
||||
|
||||
// Navbar links
|
||||
@navbar-default-link-color: @brand-primary;
|
||||
@navbar-default-link-hover-color: @brand-secondary;
|
||||
@navbar-default-link-hover-bg: transparent;
|
||||
@navbar-default-link-active-color: @brand-secondary;
|
||||
@navbar-default-link-active-bg: transparent;
|
||||
@navbar-default-link-disabled-color: #ccc;
|
||||
@navbar-default-link-disabled-bg: transparent;
|
||||
|
||||
// Navbar nav carets
|
||||
@navbar-default-caret-color: @navbar-default-link-color;
|
||||
@navbar-default-caret-hover-color: @navbar-default-link-hover-color;
|
||||
@navbar-default-caret-active-color: @navbar-default-link-active-color;
|
||||
|
||||
// Navbar brand label
|
||||
@navbar-default-brand-color: @navbar-default-link-color;
|
||||
@navbar-default-brand-hover-color: @navbar-default-link-hover-color;
|
||||
@navbar-default-brand-hover-bg: transparent;
|
||||
|
||||
// Navbar toggle
|
||||
@navbar-default-toggle-color: @navbar-default-link-color;
|
||||
@navbar-default-toggle-hover-color: @navbar-default-link-hover-color;
|
||||
|
||||
// Navbar form
|
||||
@navbar-default-form-placeholder: spin(tint(@brand-primary, 60%), 2);
|
||||
@navbar-default-form-icon: desaturate(tint(@brand-primary, 45%), 2%);
|
||||
@navbar-default-form-border: shade(@navbar-default-bg, 3%);
|
||||
|
||||
|
||||
// Inverted navbar
|
||||
// Reset inverted navbar basics
|
||||
@navbar-inverse-divider: darken(@brand-primary, 3%);
|
||||
|
||||
// Reset inverted navbar basics
|
||||
@navbar-inverse-color: @inverse;
|
||||
@navbar-inverse-bg: @brand-primary;
|
||||
@navbar-inverse-border: darken(@navbar-inverse-bg, 10%);
|
||||
|
||||
// Inverted navbar links
|
||||
@navbar-inverse-link-color: @inverse;
|
||||
@navbar-inverse-link-hover-color: @brand-secondary;
|
||||
@navbar-inverse-link-hover-bg: transparent;
|
||||
@navbar-inverse-link-active-color: @navbar-inverse-link-color;
|
||||
@navbar-inverse-link-active-bg: @brand-secondary;
|
||||
@navbar-inverse-link-disabled-color: #444;
|
||||
@navbar-inverse-link-disabled-bg: transparent;
|
||||
|
||||
// Navbar nav carets
|
||||
@navbar-inverse-caret-color: lighten(desaturate(@brand-primary, 7%), 9%);
|
||||
@navbar-inverse-caret-hover-color: @navbar-inverse-link-hover-color;
|
||||
@navbar-inverse-caret-active-color: @navbar-inverse-link-active-color;
|
||||
|
||||
// Inverted navbar brand label
|
||||
@navbar-inverse-brand-color: @navbar-inverse-link-color;
|
||||
@navbar-inverse-brand-hover-color: @navbar-inverse-link-hover-color;
|
||||
@navbar-inverse-brand-hover-bg: transparent;
|
||||
|
||||
// Inverted navbar toggle
|
||||
@navbar-inverse-toggle-color: @navbar-inverse-link-color;
|
||||
@navbar-inverse-toggle-hover-color: @navbar-inverse-link-hover-color;
|
||||
|
||||
// Navbar form
|
||||
@navbar-inverse-form-bg: darken(@brand-primary, 6%);
|
||||
@navbar-inverse-form-placeholder: desaturate(lighten(@brand-primary, 13%), 7%);
|
||||
@navbar-inverse-form-icon: desaturate(lighten(@brand-primary, 13%), 6%);
|
||||
@navbar-inverse-form-border: @navbar-inverse-divider;
|
||||
|
||||
// Dropdown menu
|
||||
@navbar-inverse-dropdown-arrow: @navbar-inverse-bg;
|
||||
@navbar-inverse-dropdown-bg: @navbar-inverse-bg;
|
||||
@navbar-inverse-dropdown-link-color: mix(@navbar-inverse-bg, @navbar-inverse-color, 15%);
|
||||
@navbar-inverse-dropdown-link-hover-color: @inverse;
|
||||
@navbar-inverse-dropdown-link-hover-bg: @brand-secondary;
|
||||
|
||||
|
||||
//== Dropdown Menu
|
||||
//
|
||||
//##
|
||||
|
||||
@dropdown-background: mix(@inverse, @brand-primary, 94%);
|
||||
|
||||
|
||||
//== Iconbar
|
||||
//
|
||||
//##
|
||||
|
||||
@iconbar-background: mix(@brand-primary, black, 85%);
|
||||
|
||||
|
||||
//== Progress bars
|
||||
//
|
||||
//##
|
||||
|
||||
@progress-height: 12px;
|
||||
|
||||
|
||||
//== Slider
|
||||
//
|
||||
//##
|
||||
|
||||
@slider-height: 12px;
|
||||
@slider-value-font-size: floor(@component-font-size-base * 0.867); // ~13px;
|
||||
|
||||
@slider-handle-bg: mix(@brand-secondary, black, 85%);
|
||||
@slider-handle-hover-bg: mix(@brand-secondary, white, 80%);
|
||||
@slider-handle-active-bg: mix(@brand-secondary, black, 85%);
|
||||
|
||||
@slider-range-bg: @brand-secondary;
|
||||
|
||||
@slider-segment-bg: mix(desaturate(@brand-primary, 15%), white, 20%);
|
||||
|
||||
|
||||
//== Switch
|
||||
//
|
||||
//##
|
||||
|
||||
@switch-border-radius: 30px;
|
||||
@switch-width: 80px;
|
||||
|
||||
|
||||
//== Thumbnails
|
||||
//
|
||||
//##
|
||||
|
||||
//** Padding around the thumbnail image
|
||||
@thumbnail-padding: 4px;
|
||||
//** Thumbnail background color
|
||||
@thumbnail-bg: @body-bg;
|
||||
//** Thumbnail border color
|
||||
@thumbnail-border: @gray-light;
|
||||
//** Thumbnail border radius
|
||||
@thumbnail-border-radius: @border-radius-large;
|
||||
|
||||
//** Custom text color for thumbnail captions
|
||||
@thumbnail-caption-color: @text-color;
|
||||
//** Padding around the thumbnail caption
|
||||
@thumbnail-caption-padding: 9px;
|
||||
|
||||
|
||||
//== Media queries breakpoints
|
||||
//
|
||||
//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
|
||||
|
||||
// Extra small screen / phone
|
||||
@screen-xs-min: 480px;
|
||||
|
||||
// Small screen / tablet
|
||||
@screen-sm-min: 768px;
|
||||
|
||||
// Medium screen / desktop
|
||||
@screen-md-min: 992px;
|
||||
|
||||
// Large screen / wide desktop
|
||||
@screen-lg-min: 1200px;
|
||||
|
||||
// So media queries don't overlap when required, provide a maximum
|
||||
@screen-xs-max: (@screen-sm-min - 1);
|
||||
@screen-sm-max: (@screen-md-min - 1);
|
||||
@screen-md-max: (@screen-lg-min - 1);
|
||||
|
||||
|
||||
//== Grid system
|
||||
//
|
||||
//## Define your custom responsive grid.
|
||||
|
||||
//** Number of columns in the grid.
|
||||
@grid-columns: 12;
|
||||
//** Padding between columns. Gets divided in half for the left and right.
|
||||
@grid-gutter-width: 30px;
|
||||
// Navbar collapse
|
||||
//** Point at which the navbar becomes uncollapsed.
|
||||
@grid-float-breakpoint: @screen-sm-min;
|
||||
//** Point at which the navbar begins collapsing.
|
||||
@grid-float-breakpoint-max: (@grid-float-breakpoint - 1);
|
||||
|
||||
// Form states and alerts
|
||||
//
|
||||
//## Define colors for form feedback states and, by default, alerts.
|
||||
|
||||
@state-success-text: @brand-success;
|
||||
@state-success-bg: #dff0d8;
|
||||
@state-success-border: darken(spin(@state-success-bg, -10), 5%);
|
||||
|
||||
@state-info-text: @brand-info;
|
||||
@state-info-bg: #d9edf7;
|
||||
@state-info-border: darken(spin(@state-info-bg, -10), 7%);
|
||||
|
||||
@state-warning-text: @brand-warning;
|
||||
@state-warning-bg: #fcf8e3;
|
||||
@state-warning-border: darken(spin(@state-warning-bg, -10), 5%);
|
||||
|
||||
@state-danger-text: @brand-danger;
|
||||
@state-danger-bg: #f2dede;
|
||||
@state-danger-border: darken(spin(@state-danger-bg, -10), 5%);
|
||||
|
||||
|
||||
// Code
|
||||
//
|
||||
//##
|
||||
|
||||
@code-color: #c7254e;
|
||||
@code-bg: #f9f2f4;
|
||||
|
||||
@kbd-color: @inverse;
|
||||
@kbd-bg: @brand-primary;
|
||||
|
||||
@pre-bg: @inverse;
|
||||
@pre-color: inherit;
|
||||
@pre-border-color: mix(@brand-primary, @inverse, 12%);
|
||||
@pre-scrollable-max-height: 340px;
|
||||
@pre-border-radius: @border-radius-large;
|
||||
|
||||
|
||||
// Type
|
||||
//
|
||||
//##
|
||||
|
||||
//** Text muted color
|
||||
@text-muted: @gray-light;
|
||||
//** Abbreviations and acronyms border color
|
||||
@abbr-border-color: @gray-light;
|
||||
//** Headings small color
|
||||
@headings-small-color: mix(@brand-primary, @inverse, 12%);
|
||||
//** Blockquote small color
|
||||
@blockquote-small-color: inherit;
|
||||
//** Blockquote border color
|
||||
@blockquote-border-color: mix(@brand-primary, @inverse, 12%);
|
||||
//** Page header border color
|
||||
@page-header-border-color: mix(@brand-primary, @inverse, 12%);
|
||||
|
||||
|
||||
// Miscellaneous
|
||||
//
|
||||
//##
|
||||
|
||||
//** Hr border color
|
||||
@hr-border: mix(@brand-primary, @inverse, 63%);
|
||||
|
||||
//** Horizontal forms & lists
|
||||
@component-offset-horizontal: 180px;
|