add assets to gumpy dir

This commit is contained in:
2013-10-23 15:02:19 +02:00
parent 98cfc97646
commit f790214001
105 changed files with 16053 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
@import "compass/typography/vertical_rhythm";
@include establish-baseline;
* {
@include box-sizing(border-box);
}
body {
background: $global-bg-color;
font-family: $font-family;
font-weight: $body-font-weight;
color: $body-font-color;
position: relative;
-webkit-font-smoothing: $font-smoothing;
@include respond(all-phones) {
-webkit-text-size-adjust: none;
-ms-text-size-adjust: none;
width: 100%;
min-width: 0;
}
}
html, body {
height: 100%;
}
.hide {
display: none;
}
.hide.active, .show {
display: block;
}
// include all entypo icon classes
@include icon(all);
// .fixed elements will be static at supplied breakpoint
// set arg to false for permanent .fixed elements
@include fixed(portrait-tablets);
.text-center { @extend %text-center; }
.text-left { @extend %text-left; }
.text-right { @extend %text-right; }
// Partial to align Text Left or Right
%text-center { text-align: center; }
%text-left { text-align: left; }
%text-right { text-align: right; }

View File

@@ -0,0 +1 @@
// Your custom SCSS should be written here...

View File

@@ -0,0 +1,28 @@
/* Fonts */
// Import Google Web Fonts
@import url(//fonts.googleapis.com/css?family=Open+Sans:400,300,600,700);
// Set local icon font
@font-face {
font-family: '#{$icons}';
font-style: normal;
font-weight: 400;
src: url(../fonts/icons/#{$icons}.eot);
src: url('../fonts/icons/#{$icons}.eot?#iefix') format('ie9-skip-eot'),
url('../fonts/icons/#{$icons}.woff') format('woff'),
url('../fonts/icons/#{$icons}.ttf') format('truetype');
}
// To include your own, local copies of fonts, use the following template
//
//@font-face {
// font-family: '#{$some-font-variable}';
// font-style: normal;
// font-weight: 400;
// src: url(../fonts/icons/#{$some-font-variable}.eot);
// src: url('../fonts/icons/#{$some-font-variable}.eot?#iefix') format('ie9-skip-eot'),
// url('../fonts/icons/#{$some-font-variable}.woff') format('woff'),
// url('../fonts/icons/#{$some-font-variable}.ttf') format('truetype');
//}

View File

@@ -0,0 +1,315 @@
/*=================================================
+++ LE GRID +++
A Responsive Grid -- Gumby defaults to a standard 960 grid,
but you can change it to whatever you'd like.
==================================================*/
// We're removing the container class in favor
// of adding padding to rows at the $device-width
// breakpoint.
/*.container {
padding: 0 $gutter-in-px;
}*/
.row {
width: 100%;
max-width: $row-max-width + 40px;
min-width: $min-device-width;
margin: 0 auto;
padding-left: 20px;
padding-right: 20px;
.row {
min-width: 0;
padding-left: 0;
padding-right: 0;
}
}
/* To fix the grid into a different size, set max-width to your desired width */
.column, .columns {
margin-left: $gutter;
float: $default-float;
min-height: 1px;
@include box-sizing(border-box);
}
.column:first-child, .columns:first-child, .alpha {
margin-left: 0;
}
.column.omega, .columns.omega {
float: $switch-float;
}
// Generate the Grid
/* Column Classes */
// Generate Column Classes
.row {
@for $i from 1 through $cols{
@if $i == 1 {
.one.column {
width: columns($i);
}
}
.#{number-as-word($i)}.columns {
width: columns($i);
}
}
}
/* Push and Pull Classes */
// Generate Push and Pull Classes
.row {
@for $i from 1 through $cols - 1 {
.push_#{number-as-word($i)} {
margin-left: push_x($i);
&:first-child {
margin-left: push_x($i, true);
}
}
.pull_#{number-as-word($i)} {
// pull classes need to know the width of the container being pulled
@for $j from 1 through $cols - 1 {
@if $j == 1 {
&.one.column {
margin-left: pull_x($i, $j);
&:first-child {
margin-left: 0;
}
}
}
@else {
&.#{number-as-word($j)}.columns {
margin-left: pull_x($i, $j);
&:first-child {
margin-left: 0;
}
}
}
}
}
}
}
/* Centered Classes */
// Generate Centered Classes
.row {
@for $i from 1 through $cols - 1 {
.#{number-as-word($i)}.centered {
margin-left: centered($i);
}
}
}
/* Hybrid Grid Columns */
// Generate Hybrid Grid Column Classes
.#{number-as-word($hybrid)}.colgrid .row {
@for $i from 1 through $hybrid{
@if $i == 1 {
.one.column {
width: columns($i, true);
}
}
.#{number-as-word($i)}.columns{
width: columns($i, true);
}
}
}
/* Hybrid Push and Pull Classes */
// Generate Hybrid Push Classes
.#{number-as-word($hybrid)}.colgrid .row {
@for $i from 1 through $hybrid - 1{
.push_#{number-as-word($i)} {
margin-left: push_x($i, false, true);
&:first-child {
margin-left: push_x($i, true, true);
}
}
.pull_#{number-as-word($i)} {
// pull classes need to know the width of the container being pulled
@for $j from 1 through $hybrid - 1 {
@if $j == 1 {
&.one.column {
margin-left: pull_x($i, $j, true);
&:first-child {
margin-left: 0;
}
}
}
@else {
&.#{number-as-word($j)}.columns {
margin-left: pull_x($i, $j, true);
&:first-child {
margin-left: 0;
}
}
}
}
}
}
}
/* Hybrid Centered Classes */
// Generate Centered Classes
.#{number-as-word($hybrid)}.colgrid .row {
@for $i from 1 through $hybrid - 1 {
.#{number-as-word($i)}.centered {
margin-left: centered($i, true);
}
}
}
.pull_right { @include pull(right); }
.pull_left { @include pull(left); }
img, object, embed {
max-width: 100%;
height: auto;
}
img {
-ms-interpolation-mode: bicubic;
}
#map_canvas img, .map_canvas img {
max-width: none !important;
}
/* Tile Grid */
.tiles {
display: block;
overflow: hidden;
> li {
display: block;
height: auto;
float: left;
padding-bottom:0;
}
&.two_up {
margin-left: -4%;
> li {
margin-left: 4%;
width: 46%;
}
}
&.three_up, &.four_up {
margin-left: -2%;
}
&.three_up > li {
margin-left: 2%;
width: 31.3%;
}
&.four_up > li {
margin-left: 2%;
width: 23%;
}
&.five_up {
margin-left: -1.5%;
> li {
margin-left: 1.5%;
width: 18.5%;
}
}
}
/* Nicolas Gallagher's micro clearfix */
.clearfix {
@include clearfix();
}
.row {
@include clearfix();
}
// vertically align stuff
.valign {
display: table;
width: 100%;
> div, > article, > section, > figure {
display: table-cell;
vertical-align: middle;
}
> article {
}
}
/* Mobile */
@include respond(all-phones) {
body {
-webkit-text-size-adjust: none;
-ms-text-size-adjust: none;
width: 100%;
min-width: 0;
}
.container {
min-width: 0;
margin-left: 0;
margin-right: 0;
}
.row {
width: 100%;
min-width: 0;
margin-left: 0;
margin-right: 0;
.row {
.column, .columns {
padding: 0;
}
}
.centered {
margin-left: 0 !important;
}
}
.column, .columns {
width: auto !important;
float: none;
margin-left: 0;
margin-right: 0;
}
.column:last-child, .columns:last-child {
margin-right: 0;
float: none;
}
[class*="column"] {
+ [class*="column"]:last-child {
float: none;
}
&:before {
display: table;
}
&:after {
display: table;
clear: both;
}
}
[class^="push_"],
[class*="push_"],
[class^="pull_"],
[class*="pull_"] {
margin-left: 0 !important;
}
}

View File

@@ -0,0 +1,36 @@
/* shame */
.ie8 {
//double input field fix
.xxwide,
.xwide,
.wide,
.normal,
.narrow,
.xnarrow {
display: inline;
&+input {
display: inline;
margin: 0 0 0 -.25em;
}
}
// tooltip 'fade' fix
.ttip {
&:before, &:after {
display: none;
}
&:hover {
&:before, &:after {
display: block;
}
}
}
}
.ie9 {
// IE9 checkbox fix
.radio.checked i, .checkbox.checked i {
top: 0;
}
}

View File

@@ -0,0 +1,274 @@
h1,h2,h3,h4,h5,h6 {
font-family: $font-family;
font-weight: $header-font-weight;
color: $header-font-color;
text-rendering: optimizeLegibility;
@include padding-leader($rhythm-spacing);
@include adjust-leading-to($rhythm-height);
@include padding-trailer($rhythm-spacing);
a {
color: $header-link-color;
}
}
@include respond(all-phones) {
h1,h2,h3,h4,h5,h6 { word-wrap: break-word;}
}
h1 {
@include font-size($xxxlarge);
&.xlarge {
@include font-size($reallybig);
}
&.xxlarge {
@include font-size($tremendous);
}
&.absurd {
@include font-size($absurd);
}
}
h2 { @include font-size($xlarge); }
h3 { @include font-size($larger);}
h4 { @include font-size($large);}
h5 { @include font-size($med);}
h6 { @include font-size($norm);}
@include respond(all-phones) {
h1 { @include font-size($xlarge);}
h2 { @include font-size($larger + 6);}
}
.subhead {
color: #777;
font-weight: normal;
margin-bottom: 20px;
}
/*=====================================================
Links & Paragraph styles
======================================================*/
p {
font-family: $font-family;
font-weight: $body-font-weight;
@include font-size($base-font-size);
margin-bottom: $base-line-height / 2;
@include adjust-leading-to(1);
&.lead {
@include font-size(ms(0) * 1.25);
margin-bottom: ms(1);
}
@include respond(portrait-tablets) {
@include font-size($base-font-size * 1.1);
@include adjust-leading-to(1);
}
}
a {
color: $body-link-color;
text-decoration: none;
outline: 0;
line-height: inherit;
&:hover {
color: $body-link-hover-color;
}
}
/*=====================================================
Lists
======================================================*/
ul, ol {
@include margin-trailer($rhythm-spacing);
}
ul {
list-style: none outside;
}
ol {
list-style: decimal;
margin-left: 30px;
}
ul {
&.square, &.circle, &.disc {
margin-left: 25px;
}
&.square {
list-style: square outside;
}
&.circle {
list-style: circle outside;
}
&.disc {
list-style: disc outside;
}
ul {
margin: 4px 0 5px 25px;
}
}
ol ol {
margin: 4px 0 5px 30px;
}
li {
@include padding-trailer($rhythm-spacing);
}
ul.large li {
line-height: 21px;
}
dl dt {
font-weight: bold;
@include font-size($norm);
}
@include respond(portrait-tablets) {
ul, ol, dl, p { text-align: left;}
}
/* Mobile */
em {
font-style: italic;
line-height: inherit;
}
strong {
font-weight: $font-weight-bold;
line-height: inherit;
}
small {
font-size: 56.4%;
line-height: inherit;
}
h1 small, h2 small, h3 small, h4 small, h5 small {
color: #777;
}
/* Blockquotes */
blockquote {
line-height: 20px;
color: #777;
p {
line-height: 20px;
color: #777;
}
margin: 0 0 18px;
padding: 9px 20px 0 19px;
border-left: 5px solid $horizontal-rule-color;
cite {
display: block;
font-size: 12px;
font-size: 1.2rem;
color: $body-font-color;
&:before {
content: "\2014 \0020";
}
a {
color: $body-font-color;
&:visited {
color: $body-font-color;
}
}
}
}
hr {
border: 1px solid $horizontal-rule-color;
clear: both;
margin: 16px 0 18px;
height: 0;
}
abbr, acronym {
text-transform: uppercase;
font-size: 90%;
color: #222;
border-bottom: 1px solid $horizontal-rule-color;
cursor: help;
}
abbr {
text-transform: none;
}
/**
* Print styles.
*
* Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
* Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
*/
@media print {
* {
background: transparent !important;
color: black !important;
text-shadow: none !important;
filter: none !important;
-ms-filter: none !important;
}
/* Black prints faster: sanbeiji.com/archives/953 */
p a {
color: $body-font-color !important;
text-decoration: underline;
&:visited {
color: $body-font-color !important;
text-decoration: underline;
}
&[href]:after {
content: " (" attr(href) ")";
}
}
abbr[title]:after {
content: " (" attr(title) ")";
}
.ir a:after {
content: "";
}
a {
&[href^="javascript:"]:after, &[href^="#"]:after {
content: "";
}
}
/* Don't show links for images, or javascript/internal links */
pre, blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
thead {
display: table-header-group;
}
/* css-discuss.incutio.com/wiki/Printing_Tables */
tr, img {
page-break-inside: avoid;
}
@page {
margin: 0.5cm;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3 {
page-break-after: avoid;
}
}

View File

@@ -0,0 +1,128 @@
require 'compass'
# require 'sassy-math'
# This tells Compass what your Compass extension is called, and where to find
# its files
# Replace 'extension' with the name of your extension. Spaces allowed.
extension_path = File.expand_path(File.join(File.dirname(__FILE__), ".."))
Compass::Frameworks.register('modular-scale', :path => extension_path)
# Version and date of version for your Compass extension.
# Replace Extension with the name of your extension
# Letters, numbers, and underscores only
# Version is a number. If a version contains alphas, it will be created as
# a prerelease version
# Date is in the form of YYYY-MM-DD
module ModularScale
VERSION = "1.0.6"
DATE = "2012-08-13"
end
# This is where any custom SassScript should be placed. The functions will be
# available on require of your extension without the need for users to import
# any partials. Uncomment below.
# Modular Scale Sass Script
module Sass::Script
class Number < Literal
# Comparison
def <=>(other)
value <=> other.value
end
end
end
module Sass::Script::Functions
# Modular Scale
def double_octave
value = 4 / 1.0
Sass::Script::Number.new(value)
end
def major_twelfth
value = 3 / 1.0
Sass::Script::Number.new(value)
end
def major_eleventh
value = 8 / 3.0
Sass::Script::Number.new(value)
end
def major_tenth
value = 5 / 2.0
Sass::Script::Number.new(value)
end
def octave
value = 2 / 1.0
Sass::Script::Number.new(value)
end
def major_seventh
value = 15 / 8.0
Sass::Script::Number.new(value)
end
def minor_seventh
value = 16 /9.0
Sass::Script::Number.new(value)
end
def major_sixth
value = 5 / 3.0
Sass::Script::Number.new(value)
end
def minor_sixth
value = 8 / 5.0
Sass::Script::Number.new(value)
end
def fifth
value = 3 / 2.0
Sass::Script::Number.new(value)
end
def augmented_fourth
value = Math.sqrt(2) / 1.0
Sass::Script::Number.new(value)
end
def fourth
value = 4 / 3.0
Sass::Script::Number.new(value)
end
def major_third
value = 5 / 4.0
Sass::Script::Number.new(value)
end
def minor_third
value = 6 / 5.0
Sass::Script::Number.new(value)
end
def major_second
value = 9 / 8.0
Sass::Script::Number.new(value)
end
def minor_second
value = 16 / 15.0
Sass::Script::Number.new(value)
end
# Lists
def sort_list(list)
sep = list.separator if list.is_a?(Sass::Script::List)
list = list.to_a.sort
Sass::Script::List.new(list, sep)
end
def reverse_list(list)
sep = list.separator if list.is_a?(Sass::Script::List)
list = list.to_a.reverse
Sass::Script::List.new(list, sep)
end
def trim_list(list, threshold, ascending)
# remove list items above or below a threshold
sep = list.separator if list.is_a?(Sass::Script::List)
list = list.to_a
if ascending.value
list = list.delete_if {
|x| x.value <= threshold.value
}
else
list = list.delete_if {
|x| x.value >= threshold.value
}
end
Sass::Script::List.new(list, sep)
end
end

View File

@@ -0,0 +1,310 @@
// SASSY MODULAR-SCALE
// https://github.com/scottkellum/modular-scale
// Defaults
$ratio: golden_ratio() !default;
$base-size: 16px !default;
$round-pixels: true !default;
// Modular Scale function
@function modular-scale($multiple, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
// return the $base-size if $multiple is zero
@if $multiple == 0 {
@if type-of($base-size) == "list" {
$base-size: sort_list($base-size);
@return nth($base-size, 1);
}
// return just the simple $base-size value if it's not a list
@return $base-size;
}
// if multiple base-sizes are passed in as a list
// and multiple ratios are passed in as a list
// calculate values in using each base-size / ratio combination
@if type-of($base-size) == "list" and type-of($ratio) == "list" {
@if unit(ms-multibase-multiratio($multiple, $base-size, $ratio)) == "px" and $round-pixels == true {
@return round(ms-multibase-multiratio($multiple, $base-size, $ratio));
}
@return ms-multibase-multiratio($multiple, $base-size, $ratio);
}
// if multiple base-sizes are passed in as a list
// calculate values in using each base-size
@if type-of($base-size) == "list" and type-of($ratio) == "number" {
@if unit(ms-multibase($multiple, $base-size, $ratio)) == "px" and $round-pixels == true {
@return round(ms-multibase($multiple, $base-size, $ratio));
}
@return ms-multibase($multiple, $base-size, $ratio);
}
// if multiple ratios are passed in as a list
// calculate values in using each ratio
@if type-of($base-size) == "number" and type-of($ratio) == "list" {
@if unit(ms-multiratio($multiple, $base-size, $ratio)) == "px" and $round-pixels == true {
@return round(ms-multiratio($multiple, $base-size, $ratio));
}
@return ms-multiratio($multiple, $base-size, $ratio);
}
// If there are no lists just run the simple function
@if unit(power($ratio, $multiple) * $base-size) == "px" and $round-pixels == true {
@return round(power($ratio, $multiple) * $base-size);
}
@return power($ratio, $multiple) * $base-size;
}
// calculate values in using each base-size / ratio combination
@function ms-multibase-multiratio($multiple, $base-size: $base-size, $ratio: $ratio) {
// start with an empty list to place all values in
$scale-values: ();
// make sure base sizes are in ascending order
$base-size: sort_list($base-size);
// take each base-size in turn
$k: 1;
@while $k <= length($base-size) {
// add each $base-size to the list except the first
@if $k > 1 {
$scale-values: append($scale-values, nth($base-size, $k));
}
// take each ratio in turn
$j: 1;
@while $j <= length($ratio) {
// reset $modular-scale for each set
$modular-scale: nth($base-size, $k);
// do the scale for each base-size using this ratio
@if $multiple > 0 {
// up $multiple times
// and add the result to $scale-values
@for $i from 1 through $multiple {
$modular-scale: power(nth($ratio, $j), $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
}
// and down until the value is lower than the lowest $base-size
// and add the result to $scale-values
$i: -1;
$modular-scale: nth($base-size, $k);
@while $modular-scale >= nth($base-size, 1) {
$modular-scale: power(nth($ratio, $j), $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
$i: $i - 1;
}
}
@if $multiple < 0 {
// do the scale down for each set to below 1px
$i: 0;
$modular-scale: nth($base-size, $k);
@while $i >= $multiple {
$modular-scale: power(nth($ratio, $j), $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
$i: $i - 1;
}
}
$j: $j + 1;
}
$k: $k + 1;
}
// return trimmed and sorted final list
@return trim-sort($multiple, $scale-values, $base-size);
}
// calculate values in using each base-size
@function ms-multibase($multiple, $base-size: $base-size, $ratio: $ratio) {
// start with an empty list to place all values in
$scale-values: ();
// make sure base sizes are in ascending order
$base-size: sort_list($base-size);
// take each base-size in turn
$k: 1;
@while $k <= length($base-size) {
// add each $base-size to the list except the first
@if $k > 1 {
$scale-values: append($scale-values, nth($base-size, $k));
}
// reset $modular-scale for each set
$modular-scale: nth($base-size, $k);
// do the scale for each base-size using this ratio
@if $multiple > 0 {
// up $multiple times
// and add the result to $scale-values
@for $i from 1 through $multiple {
$modular-scale: power($ratio, $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
}
// and down until the value is lower than the lowest $base-size
// and add the result to $scale-values
$i: -1;
$modular-scale: nth($base-size, $k);
@while $modular-scale >= nth($base-size, 1) {
$modular-scale: power($ratio, $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
$i: $i - 1;
}
}
@if $multiple < 0 {
// do the scale down for each set to below 1px
$i: 0;
$modular-scale: nth($base-size, $k);
@while $i >= $multiple {
$modular-scale: power($ratio, $i) * nth($base-size, $k);
$scale-values: append($scale-values, $modular-scale);
$i: $i - 1;
}
}
$k: $k + 1;
}
// return trimmed and sorted final list
@return trim-sort($multiple, $scale-values, $base-size);
}
// calculate values in using each ratio
@function ms-multiratio($multiple, $base-size: $base-size, $ratio: $ratio) {
// start with an empty list to place all values in
$scale-values: ();
// If $multiple is a positive integer (up the scale)
@if $multiple > 0 {
// take each ratio in turn
$j: 1;
@while $j <= length($ratio) {
// reset $modular-scale for each set
$modular-scale: $base-size;
// do the scale using this ratio thru the multiple, and add the result to $scale-values
@for $i from 1 through $multiple {
$modular-scale: power(nth($ratio, $j), $i) * $base-size;
$scale-values: append($scale-values, $modular-scale);
}
$j: $j + 1;
}
// sort acsending
$scale-values: sort_list($scale-values);
// return the final value using the laced list
@return nth($scale-values, $multiple);
}
// If $multiple is a negative integer (down the scale)
@if $multiple < 0 {
// take each ratio in turn
$j: 1;
@while $j <= length($ratio) {
// reset $modular-scale for each set
$modular-scale: $base-size;
// do the scale using this ratio thru the multiple, and add the result to $scale-values
@for $i from 1 through $multiple * -1 {
$modular-scale: power(nth($ratio, $j), -$i) * $base-size;
$scale-values: append($scale-values, $modular-scale);
}
$j: $j + 1;
}
// sort decending
$scale-values: reverse_list(sort_list($scale-values));
// return the final value using the laced list
@return nth($scale-values, $multiple * -1);
}
}
// trim and sort the final list
@function trim-sort($multiple, $scale-values: $scale-values, $base-size: $base-size) {
@if $multiple > 0 {
// trim list so we can count from the lowest $base-size
$scale-values: trim_list($scale-values, nth($base-size, 1), true);
// sort acsending
$scale-values: sort_list($scale-values);
// return the final value using the laced list
@return nth($scale-values, $multiple);
}
@else {
// trim list so we can count from the lowest $base-size
$scale-values: trim_list($scale-values, nth($base-size, 1), false);
// sort acsending
$scale-values: reverse_list(sort_list($scale-values));
// return the final value using the laced list
@return nth($scale-values, -$multiple);
}
}
/////////////////////////////////////////////////////////////////////////
// alias for golden_ratio()
@function golden() {
@return golden_ratio();
}
// Shortcut
@function ms($multiple, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
// Return the value from the Modular Scale function
@return modular-scale($multiple, $base-size, $ratio, $round-pixels);
}
// Write Modular Scale List
@function modular-scale-list($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
$ms-list: unquote("MS-LIST:");
@for $i from $start through $finish {
$ms-list: append($ms-list, ms($i, $base-size, $ratio, $round-pixels));
}
@return $ms-list;
}
@function ms-list($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
@return modular-scale-list($start, $finish, $base-size, $ratio, $round-pixels);
}
@mixin modular-scale-list($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
@debug modular-scale-list($start, $finish, $base-size, $ratio, $round-pixels);
}
@mixin ms-list($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
@debug modular-scale-list($start, $finish, $base-size, $ratio, $round-pixels);
}
@mixin modular-scale-list-output($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
MODULAR-SCALE-LIST {
ms-list: modular-scale-list($start, $finish, $base-size, $ratio, $round-pixels);
}
}
@mixin ms-list-output($start: 0, $finish: 20, $base-size: $base-size, $ratio: $ratio, $round-pixels: $round-pixels) {
@include modular-scale-list-output($start, $finish, $base-size, $ratio, $round-pixels);
}
// Other libraries can easily query if this function is avalible
$modular-scale-loaded: true;

View File

@@ -0,0 +1,159 @@
require 'compass'
Compass::Frameworks.register("sassy-math", :path => "#{File.dirname(__FILE__)}/..")
# Sassy math Functions
module Sass::Script::Functions
# Exponents
def exponent(base, powerNum, powerDen)
base = base.value.to_f
powerNum = powerNum.value.to_f
powerDen = powerDen.value.to_f
result = base ** (powerNum / powerDen)
Sass::Script::Number.new(result)
end
def power(base, exponent)
base = base.value.to_f
exponent = exponent.value.to_f
result = base ** exponent
Sass::Script::Number.new(result)
end
def sqrt(number)
number = number.value.to_f
result = Math.sqrt(number)
Sass::Script::Number.new(result)
end
def nth_root(number, root)
number = number.value.to_f
root = root.value.to_f
result = number ** (1.0 / root)
Sass::Script::Number.new(result)
end
# Logarithms
def ln(num)
result = Math.log(num.value)
Sass::Script::Number.new(result)
end
def log10(num)
result = Math.log10(num.value)
Sass::Script::Number.new(result)
end
# Miscellaneous
def factorial(number)
result = 1
number = number.value
if number > 0
(1..number).each do |i|
result = result * i
end
end
Sass::Script::Number.new(result)
end
def random(max = Sass::Script::Number.new(100)) ## shamelessly taken from here: https://gist.github.com/1561650
Sass::Script::Number.new(rand(max.value), max.numerator_units, max.denominator_units)
end
def hypot(a, b)
a = a.value.to_f
b = b.value.to_f
result = Math.hypot(a, b)
Sass::Script::Number.new(result)
end
# Constants
def pi
pi = Math::PI
Sass::Script::Number.new(pi)
end
def e
e = Math::E
Sass::Script::Number.new(e)
end
def golden_ratio()
result = (1.0 / 2.0) + (Math.sqrt(5) / 2.0)
Sass::Script::Number.new(result)
end
# Comparative Functions
def is_int(number)
number = number.value.to_f
if number - number.floor != 0
result = false
else
result = true
end
Sass::Script::Bool.new(result)
end
def is_float(number)
number = number.value
if number - number.floor != 0
result = true
else
result = false
end
Sass::Script::Bool.new(result)
end
# Trigonometric Functions
def deg_to_rad(degree)
result = degree.value.to_f * Math::PI / 180
Sass::Script::Number.new(result)
end
def rad_to_deg(rad)
result = rad.value.to_f * 180 / Math::PI
Sass::Script::Number.new(result)
end
def cosh(rad)
rad = rad.value.to_f
result = Math.cosh(rad)
Sass::Script::Number.new(result)
end
def acos(rad)
rad = rad.value.to_f
result = Math.acos(rad)
Sass::Script::Number.new(result)
end
def acosh(rad)
rad = rad.value.to_f
result = Math.acosh(rad)
Sass::Script::Number.new(result)
end
def sinh(rad)
rad = rad.value.to_f
result = Math.sinh(rad)
Sass::Script::Number.new(result)
end
def asin(rad)
rad = rad.value.to_f
result = Math.asin(rad)
Sass::Script::Number.new(result)
end
def asinh(rad)
rad = rad.value.to_f
result = Math.asinh(rad)
Sass::Script::Number.new(result)
end
def tanh(rad)
rad = rad.value.to_f
result = Math.tanh(rad)
Sass::Script::Number.new(result)
end
def atan(rad)
rad = rad.value.to_f
result = Math.atan(rad)
Sass::Script::Number.new(result)
end
def atan2(y, x)
y = y.value.to_f
x = x.value.to_f
result = Math.atan2(y, x)
Sass::Script::Number.new(result)
end
def atanh(rad)
rad = rad.value.to_f
result = Math.atanh(rad)
Sass::Script::Number.new(result)
end
end
module SassyMath
VERSION = "1.5"
DATE = "2012-07-29"
end

View File

@@ -0,0 +1,310 @@
// SASSY MATH
@charset "UTF-8";
//////////////////////////////
// Variables
//////////////////////////////
$pi: 3.1415926535897932384626433832795028841971693993751;
: $pi;
$e: 2.71828182845904523536028747135266249775724709369995;
$iter: 50;
//////////////////////////////
// Random Number
// Working from http://xkcd.com/221/
// Chosen by fair dice roll.
// Guarenteed to be random.
//////////////////////////////
@function rand() {
@return 4;
}
//////////////////////////////
// Percent
//////////////////////////////
@function percent($number) {
@return $number * 0.01;
}
//////////////////////////////
// Exponent
//////////////////////////////
@function exponent($base, $exponent) {
// reset value
$value: $base;
// positive intergers get multiplied
@if $exponent > 1 {
@for $i from 2 through $exponent {
$value: $value * $base; } }
// negitive intergers get divided. A number divided by itself is 1
@if $exponent < 1 {
@for $i from 0 through -$exponent {
$value: $value / $base; } }
// return the last value written
@return $value;
}
@function pow($base, $exponent) {
@return exponent($base, $exponent);
}
//////////////////////////////
// Factorial
//////////////////////////////
@function factorial($number) {
// reset value
$value: 1;
// positive intergers get multiplied
@if $number > 0 {
@for $i from 1 through $number {
$value: $value * $i;
}
}
@return $value;
}
@function fact($number) {
@return factorial($number);
}
//////////////////////////////
// Polynomial Approximation
//////////////////////////////
// Maclaurin series can be used to estimate Sine and Consine
@function maclaurin($start, $key, $number) {
$value: $start;
$add: 0;
@for $i from 1 through $iter {
@if $add == 0 {
$value: $value - ( exponent($number, $key) / factorial($key) );
$add: 1;
}
@else {
$value: $value + ( exponent($number, $key) / factorial($key) );
$add: 0;
}
$key: $key + 2;
}
@return $value;
}
// Taylor series can be used to estiamte ln
@function taylor($number) {
@return taylor;
}
//////////////////////////////
// Basic Trig Functions
//////////////////////////////
// Bundled in Compass: http://compass-style.org/reference/compass/helpers/trig/
// References for implementing using MacLaurin series below:
//@function sin($number, $unit: 'deg') {
// @if $unit == 'deg' {
// $number: deg-to-rad($number);
// }
// @return maclaurin($number, 3, $number);
//}
//
//@function cos($number, $unit: 'deg') {
// @if $unit == 'deg' {
// $number: deg-to-rad($number);
// }
// @return maclaurin(1, 2, $number);
//}
//
//// Trig Identity: Tangent = Sine divided by Cosine.
//@function tan($number, $unit: 'deg') {
// @if $unit == 'deg' {
// $number: deg-to-rad($number);
// }
// @return sin($number) / cos($number);
//}
//////////////////////////////
// Reciprocal Trig Functions
//////////////////////////////
@function csc($number, $unit: 'deg') {
@if $unit == 'deg' {
$number: deg-to-rad($number);
}
@return 1 / sin($number);
}
@function scs($number, $unit: 'deg') {
@if $unit == 'deg' {
$number: deg-to-rad($number);
}
@return 1 / cos($number);
}
@function cot($number, $unit: 'deg') {
@if $unit == 'deg' {
$number: deg-to-rad($number);
}
@return 1 / tan($number);
}
//////////////////////////////
// Hyperbolic Functions
//////////////////////////////
@function sinh($number) {
$top: exponent($e, (2 * $number)) - 1;
$bottom: 2 * exponent($e, $number);
@return $top / $bottom;
}
@function cosh($number) {
$top: exponent($e, (2 * $number)) + 1;
$bottom: 2 * exponent($e, $number);
@return $top / $bottom;
}
@function tanh($number) {
$top: exponent($e, (2 * $number)) - 1;
$bottom: exponent($e, (2 * $number)) + 1;
@return $top / $bottom;
}
//////////////////////////////
// Reciprocal Hyperbolic Functions
//////////////////////////////
@function csch($number) {
@return 1 / sinh($number);
}
@function sech($number) {
@return 1 / cosh($number);
}
@function coth($number) {
@return 1/ tanh($number);
}
@function log($number) {
@return $number;
}
@function ln($number) {
@if $number > 0 and $number < 1 {
$value: 0;
@for $i from 1 through $iter {
$value: $value + ( pow(-1, $i) * pow(-1 * (1 - $number), $i)) / $i;
}
$value: -1 * $value;
@return $value;
}
@else if $number == 1 {
@return 0;
}
@else {
@return ERROR;
@warn ln input must be greater than zero and less than or equal to 1;
}
}
//////////////////////////////
// Degree/Radian Conversion
//////////////////////////////
@function deg-to-rad($number) {
@return $number * $pi / 180deg;
}
@function rad-to-deg($number) {
@return $number * 180deg / $pi;
}
//////////////////////////////
// Root Functions
//////////////////////////////
// Basic General-Purpose Root Function
@function n-root($number, $n) {
@if $number < 1 {
@return ERROR;
@warn ROOT ERROR;
}
// If a whole number, generate it quickly
@for $i from 1 through $number {
@if exponent($i, $n) == $number {
@return $i;
}
}
// Else, run through other options
@for $i from 1 through $number * 1000 / 2 {
@if round(exponent($i / 1000, $n) * 100) == round($number * 100) {
@return $i / 1000;
}
}
}
@function root($number, $n) {
@return n-root($number, $n);
}
// Square Roots
@function ($number) {
@return sqrt($number);
}
@function sqrt($number) {
$guess: rand();
$root: $guess;
@for $i from 1 through $iter {
$root: $root - (pow($root, 2) - $number) / (2 * $root);
}
@return $root;
}
//////////////////////////////
// Golden Ratio
//////////////////////////////
@function golden() {
@return 1/2 + sqrt(5) / 2;
}
@function ϕ() {
@return golden();
}
$golden-ratio: golden();
: $golden-ratio;
//////////////////////////////
// Is Int and Is Float
//////////////////////////////
@function is-int($number) {
@if type-of($number) != 'number' {
@warn '#{$number} is not a number! It cannot be an integer if it is not a number!';
@return false;
}
@if $number - floor($number) != 0 {
@return false;
}
@else {
@return true;
}
}
@function is-float($number) {
@if type-of($number) != 'number' {
@warn '#{$number} is not a number! It cannot be an decimal if it is not a number!';
@return false;
}
@if $number - floor($number) != 0 {
@return true;
}
@else {
@return false;
}
}
@function is-decimal($number) {
@return is-float($number);
}

View File

@@ -0,0 +1,24 @@
// Global Gumby Functions
@import "breakpoints";
@import "strip-units";
@import "grid-calc";
@import "em";
@import "even";
// Global Gumby Mixins
@import "clearfix";
@import "typography";
@import "fixed";
@import "palette";
@import "shapes";
@import "palette";
@import "responsivity";
@import "line-and-height";
@import "height-calc";
@import "semantic-grid";
@import "tooltips";
@import "visibility";
@import "fancytiles";
@import "icons";

View File

@@ -0,0 +1,11 @@
@function breakpoint($breakpoint) {
@if $breakpoint == $document-width {
@return $document-width - 1;
}
@if $breakpoint == $tablet-device-width {
@return $tablet-device-width - 1;
}
@if $breakpoint == $min-device-width {
@return $min-device-width + 1;
}
}

View File

@@ -0,0 +1,44 @@
@mixin button-size($size) {
$n: 0;
@if $size == xlarge {
$n: $xlarge-button-font-size;
}
@if $size == large {
$n: $large-button-font-size;
}
@if $size == medium {
$n: $medium-button-font-size;
}
@if $size == small {
$n: $small-button-font-size;
}
$button-font-size: $n;
$button-height: ms($ratio, $button-font-size) + 1;
$line-height: $button-height - 2;
@include font-size($button-font-size);
@include line-and-height($button-height);
a {
position:relative;
padding: 0 ms(0, $button-font-size);
}
&.icon-left {
a {
padding-left: $button-height;
&:before {
left: $button-font-size / 1.5;
}
}
}
&.icon-right {
a {
padding-right: $button-height;
&:after {
right: $button-font-size / 1.5;
}
}
}
}

View File

@@ -0,0 +1,25 @@
@mixin clearfix() {
*zoom:1;
&:before, &:after {
content: "";
display: table;
}
&:after {
clear: both;
}
}
@mixin mobilefix() {
@include respond(all-phones) {
&:before, &:after {
content: " ";
display: table;
}
&:after {
clear: both;
}
&:last-child {
float: none;
}
}
}

View File

@@ -0,0 +1,11 @@
// Convert pixels to ems
@function em($size-in-px, $context: 16) {
@if not unitless($size-in-px) {
$size-in-px: strip-units($size-in-px);
}
@if not unitless($context) {
$context: strip-units($context);
}
@return ($size-in-px / $context) * 1em;
}

View File

@@ -0,0 +1,10 @@
// test for even numbers, do something with the result
@function even($number) {
@if ($number % 2 == 0) {
@return true;
}
@else {
@return false;
}
}

View File

@@ -0,0 +1,29 @@
@function divide-cols($colnum) {
@return 100%/$colnum;
}
@mixin fancytiles($desktop-columns, $tablet-columns: $desktop-columns, $mobile-columns: 1, $small-break: 0px, $medium-break: $tablet-device-width, $large-break: $row-max-width) {
// These styles apply to all shift-columns
display: inline-block;
float: left;
padding-left: $gutter / 2;
padding-right: $gutter / 2;
// IE8 fallback
width: divide-cols($mobile-columns);
@include respond("min-width: #{$small-break}") {
width: divide-cols($mobile-columns);
}
@include respond("min-width: #{$medium-break}") {
width: divide-cols($tablet-columns);
}
@include respond("min-width: #{$large-break}") {
width: divide-cols($desktop-columns);
}
}

View File

@@ -0,0 +1,21 @@
@mixin fixed($removal-breakpoint) {
.fixed {
position: fixed;
&.pinned {
position: absolute;
}
@if $removal-breakpoint != false {
@include respond($removal-breakpoint) {
position: relative !important;
top: auto !important;
left: auto !important;
}
}
}
.unfixed {
position: relative !important;
top: auto !important;
left: auto !important;
}
}

View File

@@ -0,0 +1,18 @@
@mixin input-size($size) {
@if $size == xxwide { $size: 100%; }
@if $size == xwide { $size: 82.6666666667%; }
@if $size == wide { $size: 65.3333333333%; }
@if $size == normal { $size: 48%; }
@if $size == narrow { $size: 30.6666666667%; }
@if $size == xnarrow { $size: 13.3333333333%; }
width: $size;
}
@mixin input-sizes-list() {
$sizes: ();
@each $item in $field-sizes {
$sizes: join($sizes, unquote(".#{$item} "), comma);
}
#{$sizes} { @content }
}

View File

@@ -0,0 +1,72 @@
// Calculate grid values
$gutter: percentage($gutter-in-px / $row-max-width); // 2.1276596
// Return single column width
@function oneCol($hybrid-grid: false) {
@if ($hybrid-grid == true){
@return (100% - ($gutter * ($hybrid - 1))) / $hybrid;
}
@else{
@return (100% - ($gutter * ($cols - 1))) / $cols;
}
}
// Calculate Grid Column Widths
@function columns($num, $hybrid-grid: false){
@if ($hybrid-grid == true) {
@return (oneCol(true) * $num) + ($gutter * ($num - 1));
}
@else {
@return (oneCol() * $num) + ($gutter * ($num - 1)); // (One column * 'x') + (gutter * ('x' - 1)) = Column Width
}
}
// Calculate Push Class Margins
@function push_x($num, $first-child: false, $is-hybrid: false) {
@if $first-child and $is-hybrid {
@return (oneCol(true) * $num) + ($gutter * ($num - 1)) + $gutter; // Column width + gutter
}
@else if $first-child != true and $is_hybrid{
@return (oneCol(true) * $num) + ($gutter * ($num - 1)) + ($gutter * 2); // Column width + (gutter * 2)
}
@else if $first-child and $is_hybrid != true{
@return (oneCol() * $num) + ($gutter * ($num - 1)) + $gutter;
}
@else {
@return (oneCol() * $num) + ($gutter * ($num - 1)) + ($gutter * 2); // Column width + (gutter * 2)
}
}
// Calculate Pull Class Margins
// note absence of first-child; first-child column containers should not be pulled
// $num is number of columns to be pulled
// $width is number of columns of container that is being pulled
@function pull_x($num, $width, $is-hybrid: false) {
@if $is-hybrid {
@return -((oneCol(true) * $num) + ($gutter * ($num - 1)) + (oneCol(true) * $width) + ($gutter * ($width - 1)) + $gutter); // Pull width + column width + gutter
}
@else {
@return -((oneCol() * $num) + ($gutter * ($num - 1)) + (oneCol() * $width) + ($gutter * ($width - 1)) + $gutter); // Pull width + column width + gutter
}
}
// Calculate Centered Class Margins
@function centered($num, $hybrid-grid: false) {
@if $hybrid-grid{
@return 50% - ((($num * (oneCol(true))) + (($num - 1) * $gutter)) / 2);
}
@else{
@return 50% - ((($num * (oneCol())) + (($num - 1) * $gutter)) / 2);
}
}
// Create class names from column count integers
@function number-as-word($number){
$w: "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven",
"twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen",
"twenty", "twenty-one", "twenty-two", "twenty-three", "twenty-four", "twenty-five", "twenty-six", "twenty-seven",
"twenty-eight", "twenty-nine", "thirty", "thirty-one", "thirty-two", "thirty-three",
"thirty-four", "thirty-five", "thirty-six";
@return nth($w, $number);
}

View File

@@ -0,0 +1,6 @@
// Calculate the height of an object based on its scale
@function height-calc($size) {
@return ms($ratio, $size) + 1;
}

View File

@@ -0,0 +1,48 @@
@function match($list, $icon) {
@each $item in $list {
$index: index($item, $icon);
@if $index {
$return: if($index == 1, 2, $index);
@return nth($item, $return);
}
}
@return false;
}
@mixin i($icon) {
.#{$icon} {
&.icon-left a:before, &.icon-right a:after {
content: "#{match($entypo-icons, $icon)}";
height: inherit;
}
}
i.#{$icon}:before {
content: "#{match($entypo-icons, $icon)}";
height: inherit;
}
}
@mixin icon($icon) {
@if (type-of($icon) == list) {
@each $i in $icon {
@include i($i);
}
} @elseif ($icon == all) {
@each $icon in $entypo-icons {
.#{nth($icon, 1)} {
&.icon-left a:before, &.icon-right a:after {
content: "#{nth($icon, 2)}";
height: inherit;
}
}
i.#{nth($icon, 1)}:before {
content: "#{nth($icon, 2)}";
height: inherit;
}
}
} @else {
@include i($icon);
}
}

View File

@@ -0,0 +1,7 @@
// Make line-height equal to an element's height
@mixin line-and-height($height) {
height: $height;
line-height: $height - 2;
}

View File

@@ -0,0 +1,76 @@
// Color Pallete
@function getColor($key, $state: false, $list: $ui-coloring) {
@each $color in $list {
@if $key == nth($color, 1) and $state == default {
@return nth($color, 2);
}
@else if $key == nth($color, 1) and $state == hover {
@return nth($color, 3);
}
@else if $key == nth($color, 1) {
@return nth($color, 1);
}
}
@return false;
}
@mixin palette($shade, $palette-text-color:false) {
@if $shade == getColor($shade) {
@if $palette-text-color != false {
color: $palette-text-color;
}
@else {
color: lighten(getColor($shade, default), 80%);
}
background: getColor($shade, default);
border: 1px solid getColor($shade, default);
&:hover {
background: getColor($shade, hover);
border: 1px solid darken(getColor($shade, hover), 3%);
}
&:active {
background: darken(getColor($shade, default), 10%);
border: 1px solid darken(getColor($shade, default), 10%);
}
@if $shade == default {
@if $palette-text-color != false {
color: $palette-text-color;
}
@else {
color: darken(getColor($shade, default), 61.5%);
}
border: 1px solid getColor($shade, default);
&:hover {
border: 1px solid darken(getColor($shade, hover), 5%);
}
}
@if $shade == warning {
@if $palette-text-color != false {
color: $palette-text-color;
}
@else {
color: darken(getColor($shade, hover), 40%);
}
}
}
@else {
@if $palette-text-color != false {
color: $palette-text-color;
}
@else {
color: lighten($shade, 80%);
}
background: $shade;
border: 1px solid $shade;
&:hover {
background: lighten($shade, 30%);
border: 1px solid lighten($shade, 27%);
}
&:active {
background: darken($shade, 10%);
border: 1px solid darken($shade, 10%);
}
}
}

View File

@@ -0,0 +1,34 @@
// Responsive Mixins
@mixin respond($media) {
@if $media == portrait-phones {
@media only screen and (max-width: $min-device-width) { @content; }
}
@else if $media == landscape-phones {
@media only screen and (min-width: breakpoint($min-device-width)) and (max-width: breakpoint($tablet-device-width)) { @content; }
}
@else if $media == all-phones {
@media only screen and (max-width: breakpoint($tablet-device-width)) { @content; }
}
@else if $media == portrait-tablets {
@media only screen and (max-width: $tablet-device-width) { @content; }
}
@else if $media == tablets {
@media only screen and (min-width: $tablet-device-width) and (max-width: $document-width - 1) { @content; }
}
@else if $media == desktop {
@media only screen and (min-width: $tablet-device-width) { @content; }
}
@else if $media == document-width {
@media only screen and (max-width: $document-width + 20) { @content; }
}
@else if $media == large-screens {
@media only screen and (min-width: $max-device-width) { @content; }
}
@else if $media == print {
@media print { @content; }
}
@else {
@media only screen and ('#{$media}') { @content; }
}
}

View File

@@ -0,0 +1,170 @@
// Gumby Semantic Grid Mixin //
// Mixin for rows
@mixin row($nested: false) {
@if $nested == nested {
@include nestedRow();
}
@else {
width: 100%;
max-width: $row-max-width + 40px;
min-width: $min-device-width;
margin: 0 auto;
padding-left: 20px;
padding-right: 20px;
@extend %clearfix;
}
> *:first-child {
margin-left: 0;
}
@include respond(all-phones) {
width: auto;
min-width: 0;
margin-left: 0;
margin-right: 0;
}
}
// Mixin for rows that are nested within columns
@mixin nestedRow() {
width: auto;
min-width: 0;
max-width: none;
padding-left: 0;
padding-right: 0;
@extend %clearfix;
}
@mixin column($columns:$columns, $alignment: false, $behavior: false, $hybrid: false) {
@extend %columnconfig;
@if $alignment == center {
float: none;
margin-left: auto !important;
margin-right: auto !important;
width: columns($columns, $hybrid);
@include respond(all-phones) {
float: left;
margin-left: 0;
width: 100%;
}
}
@else if $behavior == collapse {
@extend %collapse;
width: columns($columns, $hybrid);
@include respond(all-phones) {
float: left;
width: 100%;
}
}
@else {
width: columns($columns, $hybrid);
@include respond(all-phones) {
float: left;
margin-left: 0;
width: 100%;
}
}
}
@mixin hybrid($columns:$columns, $alignment: false, $behavior: false) {
@include column($columns, $alignment, $behavior, true);
}
@mixin push($columns, $hybrid-grid: false) {
@if $hybrid-grid == hybrid {
margin-left: push_x($columns, false, true);
&:first-child {
margin-left: push_x($columns, true, true);
}
@include respond(all-phones) {
margin-left: 0;
&:first-child {
margin-left: 0;
}
}
}
@else {
margin-left: push_x($columns);
&:first-child {
margin-left: push_x($columns, true);
}
@include respond(all-phones) {
margin-left: 0;
&:first-child {
margin-left: 0;
}
}
}
}
@mixin pull($direction: false, $columns: 0, $width: 0, $hybrid-grid: false) {
@if $direction == left {
@extend %pull-left;
@if ($columns > 0 and $width > 0) {
@if ($hybrid-grid == hybrid) {
margin-left: pull_x($columns, $width, true);
&:first-child {
margin-left: 0;
}
}
@else {
margin-left: pull_x($columns, $width);
&:first-child {
margin-left: 0;
}
}
}
}
@elseif $direction == none {
@extend %pull-none;
}
@else {
@extend %pull-right;
}
}
// Placeholders for the Semantic Grid
%container {
padding: 0 $gutter-in-px + px;
@include respond(all-phones) {
min-width: 0;
margin-left: 0;
margin-right: 0;
}
}
// Clearfix placeholder
%clearfix { @include clearfix(); }
// Clearfix placeholder for mobile
%mobilefix { @include mobilefix(); }
// Row placeholders
%row { @include row(); }
%nestedrow { @include row(); }
// Column Configuration placeholder
%columnconfig {
margin-left: $gutter;
float: $default-float;
min-height: 1px;
position: relative;
@include box-sizing(border-box);
}
%pull-right { float: right; }
%pull-left { float: left; }
%pull-none { float: none; }
// Collapse Gutters
%collapse {
margin-left: 0;
}

View File

@@ -0,0 +1,22 @@
// Shapes
@mixin shape($shape: square, $shape-radius: false) {
@if $shape == oval {
@include border-radius(1000px);
}
@else if $shape == circle {
@include border-radius(1000px);
}
@else if $shape == pill-left {
@include border-radius(500px 0 0 500px);
}
@else if $shape == pill-right {
@include border-radius(0 500px 500px 0);
}
@else if $shape-radius != false {
@include border-radius($shape-radius);
}
@else {
@include border-radius(0);
}
}

View File

@@ -0,0 +1,5 @@
// Strip out units to do math functions.
@function strip-units($number) {
@return $number / ($number * 0 + 1);
}

View File

@@ -0,0 +1,98 @@
// CSS Tooltips
@mixin tooltip($tt-min-width, $tt-bgcolor, $tt-position, $tt-align) {
position: relative;
&:after {
display: block;
background: $tt-bgcolor;
border: 1px solid $tt-bgcolor;
border-bottom: 0;
@include border-radius(3px);
padding: em(8) em(12);
width: auto;
min-width: $tt-min-width;
max-width: 500px;
position: absolute;
@if $tt-position == "bottom" {
@if $tt-align == "right" { right: 0 } @else { left: 0; }
top: 101%;
margin-top: 8px;
} @else if $tt-position == "top" {
@if $tt-align == "right" { right: 0 } @else { left: 0; }
bottom: 101%;
margin-bottom: 8px;
} @else if $tt-position == "left" {
right: 101%;
top: -35%;
margin-right: 8px;
} @else if $tt-position == "right" {
left: 101%;
top: -35%;
margin-left: 8px;
}
@if $tt-align == "right" {
text-align: right;
} @else if $tt-align == "left" {
text-align: left;
}
color: #fff;
content: attr(data-tooltip);
line-height: 1.5;
font-size: $norm;
font-weight: normal;
font-style: normal;
@include transition(opacity 0.1s ease);
@include opacity(0);
pointer-events: none;
@if $tt-pretty != "no" {
@include background-image(linear-gradient($tt-position, lighten($tt-bgcolor, 12.5%), $tt-bgcolor));
@include box-shadow(0 0 5px 0 rgba($tt-bgcolor,.25));
}
}
&:before {
content: " ";
width: 0;
height: 0;
position: absolute;
@if $tt-position == "bottom" {
top: 101%;
@if $tt-align == "right" { right: 8px } @else { left: 8px; }
border-bottom: 9px solid $tt-bgcolor !important;
border-left: 9px solid transparent;
border-right: 9px solid transparent;
} @else if $tt-position == "top" {
bottom: 101%;
@if $tt-align == "right" { right: 8px } @else { left: 8px; }
border-top: 9px solid $tt-bgcolor !important;
border-left: 9px solid transparent;
border-right: 9px solid transparent;
} @else if $tt-position == "left" {
top: 3px;
right: 101%;
border-left: 9px solid $tt-bgcolor !important;
border-top: 9px solid transparent;
border-bottom: 9px solid transparent;
} @else if $tt-position == "right" {
top: 3px;
left: 101%;
border-right: 9px solid $tt-bgcolor !important;
border-top: 9px solid transparent;
border-bottom: 9px solid transparent;
}
@include transition(opacity 0.1s ease);
@include opacity(0);
pointer-events: none;
}
&:hover:after,
&:hover:before {
@include transition(opacity 0.1s ease);
@include opacity(1);
}
}

View File

@@ -0,0 +1,15 @@
// Typography mixins
// Fonts in rems with px fallback
@mixin font-size($size, $is-important: false) {
$size: if(unitless($size), $size, $size / 1px);
@if $is-important {
font-size: $size + px !important;
font-size: ($size / strip-units($base-font-size)) + rem !important;
} @else {
font-size: $size + px;
font-size: ($size / strip-units($base-font-size)) + rem;
}
}

View File

@@ -0,0 +1,17 @@
// Visibility Mixins
// Mixin for hidden
@mixin hidden($media) {
@include respond($media) {
display: none !important;
}
}
// Mixin for visible
@mixin visible($media) {
@include respond($media) {
display: inherit !important;
}
}

View File

@@ -0,0 +1,39 @@
/**
* Gumby Framework
* ---------------
*
* Follow @gumbycss on twitter and spread the love.
* We worked super hard on making this awesome and released it to the web.
* All we ask is you leave this intact. #gumbyisawesome
*
* Gumby Framework
* http://gumbyframework.com
*
* Built with love by your friends @digitalsurgeons
* http://www.digitalsurgeons.com
*
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*/
@charset "UTF-8";
@import "modular-scale";
@import "var/settings";
@import "var/lists";
@import "var/icons/entypo";
@import "compass";
@import "compass/reset";
@import "functions/all";
@import "base";
@import "fonts";
@import "typography";
@import "grid";
@import "ui/all";
@import "shame";
@import "custom";

View File

@@ -0,0 +1,11 @@
@import "navbar";
@import "buttons";
@import "icons";
@import "forms";
@import "labels";
@import "tabs";
@import "images";
@import "video";
@import "toggles";
@import "tables";
@import "tooltips";

View File

@@ -0,0 +1,161 @@
/* Buttons */
// Buttons
@import "../functions/button-size";
// Button structure
.btn, .skiplink {
display: inline-block;
width: auto;
background: $default-color;
-webkit-appearance: none;
font-family: $font-family;
font-weight: $button-font-weight;
padding: 0 !important;
text-align: center;
.pretty & { @extend .pretty.btn; }
.metro & { @extend .metro.btn; }
> a, input, button {
display: block;
padding: 0 $default-button-padding;
color: $white;
height: 100%;
}
input, button {
background: none;
border: none;
width: 100%;
font-size: 100%;
cursor: pointer;
font-weight: $type-font-weight;
@include appearance(none);
}
}
// Button Shapes & Sizes
.btn, .skiplink {
&.xlarge {
@include button-size(xlarge);
}
&.large {
@include button-size(large);
}
&.medium {
@include button-size(medium);
a {
padding: 0 ms(1);
}
}
&.small {
@include button-size(small);
a {
padding: 0 ms(-1);
}
}
&.oval {
@include shape(oval);
}
&.pill-left {
@include shape(pill-left);
}
&.pill-right {
@include shape(pill-right);
}
}
// Button Colors & Styles
.btn, .skiplink {
@each $shade in $ui-coloring {
&.#{nth($shade, 1)} {
background: nth($shade, 2);
border: 1px solid nth($shade, 2);
&:hover {
background: lighten(nth($shade, 2), 10%);
}
&:active {
background: darken(nth($shade, 2), 10%);
}
@if nth($shade, 1) == default {
color: darken(nth($shade, 2), 61.5%);
border: 1px solid nth($shade, 2);
&:hover {
border: 1px solid darken(nth($shade, 2), 5%);
}
a, input, button {
color: darken(nth($shade, 2), 61.5%);
}
}
@if nth($shade, 1) == warning {
color: darken(nth($shade, 2), 40%);
a, input, button {
color: darken(nth($shade, 2), 40%);
}
}
}
}
@each $style in $styling {
&.#{nth($style, 1)} {
@include border-radius(nth($style, 2));
&:hover {
@extend .btn.#{nth($style, 1)}
}
&:active {
@extend .btn.#{nth($style, 1)}
}
@if nth($style, 1) == metro {
&.rounded {
@include border-radius($button-radius);
}
}
@if nth($style, 1) == pretty {
&.squared {
@include border-radius($metro-radius);
}
}
}
}
}
// Buttons with Gradients
.btn, .skiplink {
&.pretty {
@each $grade in $ui-coloring {
&.#{nth($grade, 1)} {
@include background-image(linear-gradient(lighten(nth($grade, 2), 20%), saturate(nth($grade, 2), 5%)));
@include box-shadow(inset 0 0 3px lighten(nth($grade, 2), 45%));
border: 1px solid darken(nth($grade, 2), 15%);
&:hover {
@include background-image(linear-gradient(lighten(nth($grade, 3), 15%), saturate(nth($grade, 3), 5%)));
@include box-shadow(inset 0 0 3px lighten(nth($grade, 3), 40%));
border: 1px solid darken(nth($grade, 3), 15%);
}
&:active {
@include background-image(linear-gradient(saturate(nth($grade, 2), 5%), lighten(nth($grade, 2), 20%)));
@include box-shadow(inset 0 0 3px lighten(nth($grade, 2), 50%));
}
@if nth($grade, 1) == default {
a, input, button {
text-shadow: 0 1px 1px lighten(nth($grade, 2), 20%);
}
}
@elseif nth($grade, 1) == warning {
color: darken(nth($grade, 2), 40%);
a, input, button {
text-shadow: 0 1px 1px lighten(nth($grade, 2), 20%);
}
}
@else {
a, input, button {
text-shadow: 0 1px 1px darken(nth($grade, 2), 20%);
}
}
}
}
}
}

View File

@@ -0,0 +1,399 @@
/* Form Styles */
@import "../functions/forms";
form {
margin: 0 0 18px;
label {
display: block;
@include font-size($norm);
@include adjust-leading-to(1);
cursor: pointer;
margin-bottom: 9px;
&.inline {
display: inline-block;
padding-right: 20px;
}
}
dt {
margin: 0;
}
textarea {
height: 150px;
}
ul, ul li {
margin-left: 0;
list-style-type: none;
}
fieldset {
@include rhythm-borders(1px,1,$norm,solid);
border-color: darken($default-color, 10%);
margin: 18px 0;
legend {
padding: 5px 10px;
}
}
}
.field {
position: relative;
max-width: 100%;
margin-bottom: 10px;
vertical-align: middle;
// Font-size 16px for weird form style error
font-size: 16px;
overflow: hidden;
&.metro, .metro {
@include border-radius(0);
}
input, input[type="*"], textarea {
max-width: 100%;
width: 100%;
padding: 0;
margin: 0;
border: none;
outline: none;
resize: none;
-webkit-appearance: none;
font-family: $font-family;
font-weight: $font-weight-light;
@include font-size($norm);
@include box-shadow(none);
}
.input {
position: relative;
padding: 0 10px;
background: #fff;
border: 1px solid darken($default-color, 10%);
@include line-and-height(height-calc($norm));
@include font-size($norm);
@include border-radius(4px);
&.search {
@include line-and-height(height-calc($norm));
@include border-radius(1000px);
padding-right: 0;
}
}
.input.textarea {
height: auto;
}
@each $width in $field-sizes {
.#{nth($width, 1)} {
@include input-size(#{nth($width, 1)})
}
}
@include input-sizes-list() {
margin:0;
&:last-child {
margin-left: -4px;
}
&:first-child {
margin-right: 3.94%;
margin-left: 0;
}
&:first-child:last-child {
margin: 0;
}
}
label + {
@include input-sizes-list() {
&:last-child {
margin-left: 0;
}
}
}
@include respond(document-width) {
.xxwide:first-child, .xxwide:last-child {
margin-right: 0%;
}
}
/* remove inline-block white-space — A 0px font-size = 0px of white space */
&.prepend, &.append {
font-size: 0;
white-space: nowrap;
padding-bottom: 3.5px;
}
&.prepend input,
&.prepend .input,
&.append input,
&.append .input {
display: inline-block;
max-width: 100%;
}
&.prepend input,
&.prepend .input {
@include border-radius(0px 4px 4px 0);
}
&.append input,
&.append .input {
@include border-radius(4px 0 0 4px);
}
&.prepend.append input {
@include border-radius(0);
}
&.prepend.append input:first-child {
@include border-radius(4px 0 0 4px);
}
&.prepend.append input:last-child {
margin-left: -1px;
@include border-radius(0px 4px 4px 0);
}
&.prepend .adjoined, &.append .adjoined, &.prepend .btn, &.append .btn {
position: relative;
display: inline-block;
margin-bottom:0;
z-index: 99;
}
&.prepend .btn, &.append .btn {
a, input, button {
padding: 0 12px;
}
}
&.prepend .adjoined, &.append .adjoined {
padding: 0 10px 0 10px;
background: $default-color;
border: 1px solid darken($default-color, 10%);
font-family: $font-family;
font-weight: $font-weight-semibold;
color: $body-font-color;
@include font-size($norm);
@include line-and-height(height-calc($norm));
}
&.prepend *:first-child {
@include border-radius(4px 0 0 4px);
}
&.prepend input:first-child {
margin-right: 0;
}
&.prepend .adjoined, &.prepend .btn {
margin-right: -1px;
}
.adjoined:first-child {
margin-left: 0 !important;
}
&.append .adjoined, &.append .btn {
margin-left: -1px;
}
&.append *:last-child {
@include border-radius(0px 4px 4px 0);
}
&.append button, &.prepend button {
display: inline-block;
}
&.append input:first-child {
margin-right: 0;
}
&.double input, &.double .input {
width: 50% !important;
&:last-child {
margin-left: -1px;
}
}
@each $error in danger $danger-color, warning $warning-color, success $success-color {
&.#{nth($error, 1)} {
&:after {
@if($icons != ""){
font-family: "#{$icons}";
@if nth($error, 1) == danger {
content: "#{$entypo-icon-cancel-circled}";
}
@if nth($error, 1) == warning {
content: "#{$entypo-icon-attention}";
}
@if nth($error, 1) == success {
content: "#{$entypo-icon-check}";
}
font-size: $norm;
position: absolute;
top: percentage((strip-units($base-font-size)) / 100) - 2;
right: 15px;
z-index: 999;
color: nth($error, 2);
}
}
&.no-icon:after {
display: none;
}
// <input> does not allow :before & :after
// pseudo elements. Removing validation
// icons from those elements to avoid
// edge-case styling issues
&.append:after, &.prepend:after {
content: "";
}
input, .input, textarea, .textarea, .radio span, .checkbox span, .picker {
border-color: nth($error, 2);
color: nth($error, 2);
background: lighten(nth($error, 2), 35%);
@include transition-duration(.2s);
}
textarea { color: nth($error, 2); }
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
color: nth($error, 2);
}
input:-moz-placeholder, textarea:-moz-placeholder {
color: nth($error, 2);
}
}
}
.picker {
@each $error in danger $danger-color, warning $warning-color, success $success-color {
&.#{nth($error, 1)} {
border-color: nth($error, 2);
color: nth($error, 2);
background: lighten(nth($error, 2), 35%);
@include transition-duration(.2s);
select, &:after { color: nth($error, 2); }
}
}
}
}
.field .text input[type="search"] {
-webkit-appearance: textfield;
}
// checkboxes/radio buttons only styled where JS supported
.no-js {
.radio input {
-webkit-appearance: radio;
margin-left: 1px;
}
.checkbox input {
-webkit-appearance: checkbox;
}
.radio input, .checkbox input {
display: inline-block;
width: 16px;
}
}
.js .field {
.radio, .checkbox {
@each $error in danger $danger-color, warning $warning-color, success $success-color {
&.#{nth($error, 1)} {
color: nth($error, 2);
@if nth($error, 1) == success {
color: $body-font-color;
i { color: nth($error, 2); }
}
span {
border-color: nth($error, 2);
color: nth($error, 2);
background: lighten(nth($error, 2), 35%);
@include transition-duration(.2s);
}
}
}
position: relative;
&.checked i {
position: absolute;
top: -1px;
left: -8px;
line-height: 16px;
}
span {
display: inline-block;
width: 16px;
height: 16px;
position: relative;
top: 2px;
border: solid 1px #ccc;
background: #fefefe;
}
input[type="radio"], input[type="checkbox"] {
display: none;
}
}
.radio span {
@include border-radius(8px);
}
.checkbox span {
@include border-radius(3px);
}
}
.field .text input[type="search"] {
-webkit-appearance: textfield;
}
/* Form Picker Element (<select>) */
.picker {
position: relative;
width: auto;
display: inline-block;
margin: 0 0 2px 1.2%;
overflow: hidden;
border: 1px solid darken($default-color, 5%);
@include border-radius(4px);
font-family: $font-family;
font-weight: $font-weight-semibold;
height: auto;
@include background-image(linear-gradient(lighten($default-color, 20%), $default-color));
&:after {
content: "\25BE";
font-family: $icons;
z-index: 0;
position:absolute;
right: 8%;
top: 50%;
margin-top: -12px;
color: $body-font-color;
}
&:first-child {
margin-left: 0;
}
select {
position: relative;
display: block;
min-width: 100%;
width: 135%;
height: 34px;
padding: 6px 45px 6px 15px;
color: $body-font-color;
border: none;
background: transparent;
outline: none;
-webkit-appearance: none;
z-index: 99;
cursor: pointer;
@include font-size($norm);
}
select::-ms-expand {
display: none;
}
}

View File

@@ -0,0 +1,22 @@
/* Icons */
[class^="icon-"] a:before,
[class*=" icon-"] a:before,
[class^="icon-"] a:after,
[class*=" icon-"] a:after,
i[class^="icon-"],
i[class*=" icon-"] {
font-family: "#{$icons}";
position:absolute;
text-decoration:none;
zoom: 1;
}
i[class^="icon-"],
i[class*=" icon-"] {
display: inline-block;
position: static;
min-width: 20px;
margin: 0 5px;
text-align: center;
}

View File

@@ -0,0 +1,21 @@
.image {
line-height:0;
margin-bottom: 20px;
&.circle {
@include border-radius(50% !important);
overflow: hidden;
width: auto;
}
&.rounded {
overflow: hidden;
@include border-radius($button-radius $button-radius);
}
&.photo {
border: 5px solid #fff;
@include box-shadow(0 0 1px $body-font-color);
&.polaroid {
padding-bottom: 50px;
background: #fff;
}
}
}

View File

@@ -0,0 +1,87 @@
/* Labels */
.badge, .label {
height: 20px;
display: inline-block;
font-family: Helvetica, arial, verdana, sans-serif;
font-weight: bold;
line-height: 20px;
text-align:center;
color: #fff;
a {
color: #fff;
}
@each $shade in $ui-coloring {
&.#{nth($shade, 1)} {
background: nth($shade, 2);
border: 1px solid nth($shade, 2);
@if nth($shade, 1) == default {
color: darken(nth($shade, 2), 61.5%);
&:hover {
border-color: darken(nth($shade, 2), 5%);
}
a {
color: darken(nth($shade, 2), 61.5%);
}
}
@if nth($shade, 1) == warning {
color: darken(nth($shade, 2), 40%);
a {
color: darken(nth($shade, 2), 40%);
}
}
}
}
&.light {
background: #fff;
color: $body-font-color;
border: 1px solid $default-color;
a {
color: $body-link-color;
}
}
&.dark {
background: #212121;
border: 1px solid #212121;
}
}
.badge {
padding: 0 10px;
@include font-size(ms(0, 14px));
@include border-radius(10px);
}
.label {
padding: 0 10px;
@include font-size(ms(0, 12px));
@include border-radius(2px);
}
.alert {
padding: 0 10px;
font-family: $font-family;
font-weight: $font-weight-semibold;
list-style-type: none;
word-wrap: break-word;
margin-bottom: $norm / 2;
@include font-size(ms(0, 14px));
@include border-radius($button-radius);
@each $shade in $ui-coloring {
&.#{nth($shade, 1)} {
background: lighten(nth($shade, 2), 20%);
border: 1px solid nth($shade, 2);
color: darken(nth($shade, 2), 20%);
@if nth($shade, 1) == info {
color: $default-color;
}
@if nth($shade, 1) == default {
color: darken(nth($shade, 2), 61.5%);
border: 1px solid nth($shade, 2);
}
@if nth($shade, 1) == warning {
color: darken(nth($shade, 2), 40%);
}
}
}
}

View File

@@ -0,0 +1,445 @@
/*=====================================================
Navigation (with dropdowns)
======================================================*/
.navbar {
width: 100%;
min-height: 60px;
display: block;
margin-bottom: 20px;
background: $navbar-color; // Change this color in settings to change the navbar color
position: relative;
@include respond(all-phones) {
border: none;
.column, .columns {
min-height: 0;
}
}
&.fixed {
position: fixed;
z-index: 99999;
}
&.pinned {
position: absolute;
}
a.toggle {
display: none;
// Navigation Toggle Mobile styles
@include respond(all-phones) {
top: 18%;
right: 4%;
width: 46px;
position: absolute;
text-align: center;
display: inline-block;
color: $navbar-link-color;
background: $navbar-color;
@include line-and-height(40px);
@include border-radius($button-radius);
@include font-size($larger);
&:hover {
background: lighten($navbar-color, 5%);
}
&:active, &.active {
background: darken($navbar-color, 5%);
}
}
}
}
.navbar .logo {
display: inline-block;
margin: 0 $gutter 0 0;
padding: 0;
@include line-and-height(height-calc($larger - 3));
a {
display: block;
padding: 0;
overflow: hidden;
@include line-and-height(height-calc($larger - 3));
img {
max-height: 95%;
}
}
// Navbar Logo Mobile Styles
@include respond(all-phones) {
float: $default-float;
display: inline;
a {
padding: 0;
img {
width: auto;
height: auto;
max-width: 100%;
}
}
}
}
.navbar ul {
display: table;
vertical-align: middle;
margin: 0;
float: none;
// Navbar Navigation List Mobile Specific Styles
@include respond(all-phones) {
position: absolute;
display: block;
width: 100% !important;
height: 0;
max-height: 0;
top: 60px;
left: 0;
overflow: hidden;
text-align: center;
background: darken($navbar-color, 5%);
&.active {
height: auto;
max-height: 600px;
z-index: 999998;
@include transition-duration(.5s);
@include box-shadow(0 2px 2px darken($navbar-color, 15%));
}
}
li {
display: table-cell;
text-align: center;
padding-bottom: 0;
margin: 0;
@include line-and-height(height-calc($larger - 3));
// Navbar List Item Mobile Specific Styles
@include respond(all-phones) {
display: block;
position: relative;
min-height: 50px;
max-height: 320px;
height: auto;
width: 100%;
border-right: 0 !important;
@include box-shadow(none);
@include transition-duration(.5s);
}
> a {
display: block;
padding: 0 ms(0);
white-space: nowrap;
color: $navbar-link-color;
text-shadow: 0 1px 2px darken($navbar-color, 20%),
0 1px 0 darken($navbar-color, 20%);
@include line-and-height(height-calc($larger - 3));
@include font-size($norm);
i.icon-popup {
position: absolute;
}
}
.btn {
border-color: darken($navbar-color, 30%) !important;
}
&.field {
margin-bottom: 0 !important;
margin-right: 0;
@include respond(all-phones) {
padding: 0 $gutter-in-px;
}
input.search {
background: darken($navbar-color, 20%);
border: none;
color: $default-color;
}
}
.dropdown {
width: auto;
min-width: 0;
max-width: $min-device-width;
height: 0;
position: absolute;
background: lighten($default-color, 3%);
overflow: hidden;
z-index: 999;
}
// Navigation Dropdown Mobile Specific Styles
@include respond(all-phones) {
.dropdown {
width: 100%;
max-width: 100%;
position: relative;
@include box-shadow(none !important);
}
&.active .dropdown {
border-bottom: 1px solid darken($navbar-color, 10%);
}
&.active .dropdown ul {
position: relative;
top: 0;
background: darken($navbar-color, 8%);
min-height: 50px;
max-height: 250px;
height: auto;
overflow: auto;
@include box-shadow(none !important);
li {
min-height: 50px;
border-bottom: darken($navbar-color, 5%);
a {
color: $white;
border-bottom: 1px solid darken($navbar-color, 10%);
&:hover {color: $body-link-color;}
}
}
}
}
}
}
.navbar {
// Mobile Only Navbar Styles
@include respond(tablets) {
> ul > li > .btn a {
padding: 0 $small 0 $small !important;
}
ul > li .dropdown ul li.active .dropdown {
left: -$min-device-width;
}
}
}
.navcontain {
height: $navcontain-height;
@include respond(portrait-tablets) {
height: auto;
}
}
// Pretty Navigation Styles
.pretty.navbar {
@include background-image(linear-gradient(lighten($navbar-color, 20%),darken($navbar-color, 10%)));
@include box-shadow(inset 0 1px 1px lighten($navbar-color, 20%),
0 1px 2px rgba(0,0,0,0.80) !important); /* Remove this line if you dont want a dropshadow on your navigation*/
// Pretty Nav Toggle Styles
@include respond(all-phones) {
a.toggle {
border: 1px solid darken($navbar-color, 5%);
@include background-image(linear-gradient(lighten($navbar-color, 20%), $navbar-color));
@include box-shadow(inset 0 1px 2px lighten($navbar-color, 25%),
inset 0 -1px 1px lighten($navbar-color, 5%),
inset 1px 0 1px lighten($navbar-color, 5%),
inset -1px 0 1px lighten($navbar-color, 5%),
0 1px 1px lighten($navbar-color, 10%));
i {
@include text-shadow(0 1px 1px darken($navbar-color, 20%));
}
&:hover {
@include background-image(linear-gradient(lighten($navbar-color, 25%), lighten($navbar-color, 5%)));
}
&:active, &.active {
@include background-image(linear-gradient(darken($navbar-color, 5%), $navbar-color));
@include box-shadow(0 1px 1px lighten($navbar-color, 10%));
}
}
}
&.row {
@include border-radius($button-radius);
@include respond(all-phones) {
@include border-radius(0);
}
}
ul li.field input.search {
@include background-image(linear-gradient(darken($navbar-color, 20%), lighten($navbar-color, 2%)));
border: none;
@include box-shadow(0 1px 2px lighten($navbar-color, 25%) !important); /* Remove this line if you dont want a dropshadow on your navigation*/
}
> ul > li:first-child, .pretty.navbar > ul > li:first-child a:hover {
@include box-shadow(none);
}
}
// Dropdown menu styles
.navbar li .dropdown {
width: auto;
min-width: 0;
max-width: $min-device-width;
height: 0;
position: absolute;
background: lighten($default-color, 3%);
overflow: hidden;
z-index: 999;
// Navigation Dropdown Mobile Specific Styles
@include respond(all-phones) {
.dropdown {
width: 100%;
max-width: 100%;
position: relative;
@include box-shadow(none !important);
}
&.active .dropdown {
border-bottom: 1px solid darken($navbar-color, 10%);
}
&.active .dropdown ul {
position: relative;
top: 0;
background: darken($navbar-color, 8%);
min-height: 50px;
max-height: 250px;
height: auto;
overflow: auto;
@include box-shadow(none !important);
li {
min-height: 50px;
border-bottom: darken($navbar-color, 5%);
a {
color: $white;
border-bottom: 1px solid darken($navbar-color, 10%);
&:hover {color: $body-link-color;}
}
}
}
}
}
.navbar li .dropdown ul {
margin: 0;
display: block;
> li {
position:relative;
display: block;
width: 100%;
float: left;
text-align: left;
height: auto;
@include border-radius(none);
@include respond(tablets) {
max-width: $min-device-width;
word-wrap: break-word;
}
a {
display: block;
padding: 0 20px;
color: $body-link-color;
border-bottom: 1px solid $horizontal-rule-color;
text-shadow: none;
@include line-and-height(height-calc($large - 3));
@include respond(all-phones) {
padding: 0 $gutter-in-px;
}
}
.dropdown {
display: none;
background: lighten($default-color, 10%);
}
}
li:first-child a {
@include border-radius(0);
}
}
.gumby-no-touch .navbar ul li:hover > a,
.gumby-touch .navbar ul li.active > a {
position: relative;
background: $info-hover-color;
z-index: 1000;
}
.gumby-no-touch .navbar ul li:hover .dropdown,
.gumby-touch .navbar ul li.active .dropdown {
min-height: 50px;
max-height: $tablet-device-width - 207;
overflow: visible;
height: auto;
width: 100%;
padding: 0;
border-top: 1px solid darken($navbar-color, 5%);
@include box-shadow(0px 3px 4px rgba(0,0,0,.3));
}
.gumby-no-touch .navbar ul li:hover .dropdown ul {
position: relative;
top: 0;
min-height: 50px;
max-height: 250px;
height: auto;
@include box-shadow(none !important);
@include transition-duration(.5s);
@include respond(all-phones) {
overflow: auto;
background: darken($navbar-color, 8%);
li {
border-bottom: darken($navbar-color, 5%);
a {
color: $white;
border-bottom: 1px solid darken($navbar-color, 10%);
&:hover {color: $body-link-color;}
}
}
}
}
.gumby-no-touch .navbar li .dropdown ul > li:hover .dropdown,
.gumby-touch .navbar li .dropdown ul > li.active .dropdown {
border-top: none;
display: block;
position: absolute;
z-index: 9999;
left: 100%;
top: $nav-distance;
margin-top: 0;
@include respond(all-phones) {
position: relative;
left: 0;
ul {
background: darken($navbar-color, 15%) !important;
}
}
}
.gumby-no-touch .navbar li .dropdown ul li a:hover {
background: $default-color;
}
.gumby-touch .navbar a:hover {
color: $navbar-link-color !important;
}
.subnav {
display: block;
width: auto;
overflow: hidden;
margin: 0 0 18px 0;
padding-top: 4px;
li, dt, dd {
float: left;
display: inline;
margin-left: 9px;
margin-bottom: 4px;
&:first-child {
margin-left: 0;
}
}
dt {
color: $default-color;
font-weight: normal;
}
li a, dd a {
color: $navbar-link-color;
font-size: 15px;
text-decoration: none;
@include border-radius(4px);
}
li.active a, dd.active a {
background: $navbar-color;
padding: 5px 9px;
text-shadow: 0 1px 1px $navbar-color;
}
}

View File

@@ -0,0 +1,87 @@
table {
display: table;
background-color: $table-bgcolor;
border-collapse: collapse;
border-spacing: 0;
margin-bottom: 20px;
width: 100%;
border: $table-border-size $table-border-style $table-border-color;
caption {
text-align: center;
font-size: $larger;
padding: .75em;
}
thead th,
tbody td,
tr td {
display: table-cell;
padding: 10px;
vertical-align: top;
text-align: left;
border-top: $table-cell-border-size $table-cell-border-style $table-cell-border-color;
}
tr td, tbody tr td {
font-size: $norm;
}
tr td:first-child {
font-weight: $table-row-first-cell-font-weight;
}
thead {
background-color: $table-thead-bgcolor;
color: #fff;
tr th {
font-size: $norm;
font-weight: bold;
vertical-align: bottom;
}
}
&.striped tr:nth-of-type(even),
table tr.stripe,
table tr.striped {
background-color: $table-stripe-bgcolor;
}
&.rounded {
border-radius: $table-border-radius;
border-collapse: separate;
caption + thead tr:first-child th:first-child,
caption + tr td:first-child,
> thead tr:first-child th:first-child,
> thead tr:first-child td:first-child,
> tr:first-child td:first-child {
border-top-left-radius: $table-border-radius;
}
caption + thead tr:first-child th:last-child,
caption + tr td:last-child,
> thead tr:first-child th:last-child,
> thead tr:first-child td:last-child,
> tr:first-child td:last-child {
border-top-right-radius: $table-border-radius;
}
thead ~ tr:last-child td:last-child,
tbody tr:last-child td:last-child {
border-bottom-right-radius: $table-border-radius;
}
thead ~ tr:last-child td:first-child,
tbody tr:last-child td:first-child {
border-bottom-left-radius: $table-border-radius;
}
thead th, thead td,
caption + tbody tr:first-child td,
> tbody:first-child tr:first-child td {
border-top: 0;
}
}
}

View File

@@ -0,0 +1,156 @@
/* Tabs */
.tabs {
display: block;
}
.tab-nav {
margin: 0;
padding: 0;
border-bottom: 1px solid darken($default-color, 5%);
> li {
display: inline-block;
width: auto;
padding: 0;
margin: 0 $gutter 0 0;
cursor: default;
top: 1px;
@include box-shadow(0 1px 0 $white);
> li {
display: inline-block;
width: auto;
padding: 0;
margin: 0 $gutter 0 0;
cursor: default;
top: 1px;
@include box-shadow(0 1px 0 $white);
> a {
display: block;
width: auto;
padding: 0 $norm;
margin: 0;
color: $body-font-color;
font-family: $font-family;
font-weight: $tabs-font-weight;
border: 1px solid darken($default-color, 5%);
border-width: 1px 1px 0 1px;
text-shadow: 0 1px 1px lighten($default-color, 5%);
background: $default-color;
cursor: pointer;
@include border-radius($button-radius $button-radius 0 0);
@include line-and-height($tab-height);
&:hover {
text-decoration: none;
background: lighten($default-color, 1%);
}
&:active {
background: darken($default-color, 2%);
}
}
&.active > a {
@include line-and-height($tab-height + 1);
background: $white;
cursor: default;
}
&:last-child {
margin-right: 0;
}
}
}
}
.tab-nav > li:last-child {
margin-right: 0;
}
.tab-nav > li > a {
display: block;
width: auto;
padding: 0 $norm;
margin: 0;
color: $body-font-color;
font-family: $font-family;
font-weight: $tabs-font-weight;
border: 1px solid darken($default-color, 5%);
border-width: 1px 1px 0 1px;
text-shadow: 0 1px 1px lighten($default-color, 5%);
background: $default-color;
cursor: pointer;
@include border-radius($button-radius $button-radius 0 0);
@include line-and-height($tab-height);
&:hover {
text-decoration: none;
background: lighten($default-color, 1%);
}
&:active {
background: darken($default-color, 2%);
}
}
.tab-nav > li.active > a {
@include line-and-height($tab-height + 1);
background: $white;
}
.tabs.pill .tab-nav {
width: 100%; /* remove if you dont want the tabs to span the full container width */
display: table;
overflow: hidden;
border: 1px solid darken($default-color, 5%);
@include border-radius($button-radius);
> li {
display: table-cell;
margin: 0;
margin-left: -4px;
text-align: center;
top: 0;
&:first-child {
margin-left: 0;
}
> a {
border: none;
border-right: 1px solid darken($default-color, 5%);
@include border-radius(0);
@include line-and-height($tab-height);
}
&:last-child > a {
border-right:none;
}
}
}
.tab-content {
display: none;
padding: 20px 10px;
&.active {
display: block;
}
}
.tabs.vertical {
.tab-nav {
border: none;
> li {
display: block;
margin: 0;
margin-bottom: 5px;
&.active {
position: relative;
z-index: 99;
> a {
border-right: 1px solid $global-bg-color;
}
}
> a {
border: 1px solid darken($default-color, 5%);
@include border-radius($button-radius 0 0 $button-radius);
}
}
}
.tab-content {
padding: 10px 0 30px 20px;
margin-left: -1px;
border-left: 1px solid darken($default-color, 5%);
}
}

View File

@@ -0,0 +1,71 @@
.drawer {
position: relative;
width: 100%;
max-height: 0;
background: $drawer-background-color;
@include box-shadow(
inset $drawer-inner-shadow-x-offset #{-$drawer-inner-shadow-y-offset} $drawer-inner-shadow-blur $drawer-inner-shadow-color,
inset $drawer-inner-shadow-x-offset $drawer-inner-shadow-y-offset $drawer-inner-shadow-blur $drawer-inner-shadow-color);
;
overflow: hidden;
@include transition-duration(.3s);
&.active {
height: auto;
max-height: 800px;
@include transition-duration(.5s);
}
}
.modal {
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
z-index: -999999;
background: rgb(0, 0, 0);
background: $modal-overlay-color;
> .content {
width: 50%;
min-height: 50%;
max-height: 65%;
position: relative;
top: 25%;
margin: 0 auto;
padding: $gutter-in-px;
background: $modal-window-color;
z-index: 2;
overflow: auto;
@include respond(portrait-tablets) {
width: 80%;
min-height: 80%;
max-height: 80%;
top: 10%;
}
@include respond(all-phones) {
width: 92.5%;
min-height: 92.5%;
max-height: 92.5%;
top: 3.75%;
}
> .close {
position: absolute;
top: 10px;
right: 10px;
cursor: pointer;
z-index: 3;
}
}
&, > .content {
@include opacity(0);
}
&.active {
z-index: 999999;
@include transition-property(opacity);
@include transition-duration(.3s);
&, > .content {
@include opacity(1);
}
}
}

View File

@@ -0,0 +1,12 @@
/* Tooltips */
.ttip {
@include tooltip($tt-min-width, $tt-bgcolor, $tt-position, $tt-align);
cursor: pointer;
}
.ttip:after, .ttip:before {
@include respond(portrait-tablets) {
display: none;
}
}

View File

@@ -0,0 +1,22 @@
body .video {
width: 100%;
position: relative;
height: 0;
padding-bottom: 56.25%;
&.twitch, &.youtube.show_controls {
padding-top: 30px;
// Use .show_controls f you want the play/pause controls
// to show before the video plays, like on older youtube.
}
&.youtube, &.vimeo {
// Nothing goes here anymore. Both use overlay transports.
}
}
.video > video, .video > iframe, .video > object, .video > embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

View File

@@ -0,0 +1,20 @@
// Lists
// UI Coloring List
$ui-coloring:
primary $primary-color $primary-hover-color,
secondary $secondary-color $secondary-hover-color,
default $default-color $default-hover-color,
info $info-color $info-hover-color,
danger $danger-color $danger-hover-color,
warning $warning-color $warning-hover-color,
success $success-color $success-hover-color;
// UI Styling List
$styling: metro $metro-radius, pretty $button-radius;
// Form field types
$field-types: text, email, password, numeric, search, combined, prepend, append, double;
$field-sizes: xnarrow, narrow, normal, wide, xwide, xxwide;

View File

@@ -0,0 +1,169 @@
// Welcome to Gumby 2.0 Settings.
// Happy Tinkering!
// Grid Settings
$row-max-width: 940px !default; // 940px
$gutter-in-px: 20px !default; // 20px
$cols: 12 !default; // 12 Column Default Grid
$hybrid: 16 !default; // 16 Column Default Hybrid Grid
// Responsiveness Settings
$min-device-width: 320px; // iPhone Portrait
$tablet-device-width: 768px; // iPad Portrait
$document-width: $row-max-width; // Default Document
$max-device-width: 2880px; // Max Document Size
// Spacing
$nav-distance: 0; // Navigation distance from the top of the viewport
// Typography
$font-family: "Open Sans";
$font-style-italic: italic;
$icons: entypo;
$font-smoothing: antialiased;
// Font Weights
$font-weight-bold: 700;
$font-weight-semibold: 600;
$font-weight-medium: 400;
$font-weight-regular: 400;
$font-weight-light: 300;
$font-weight-thin: 300;
$header-font-weight: $font-weight-thin;
$body-font-weight: $font-weight-regular;
$type-font-weight: $font-weight-regular;
$link-font-weight: $font-weight-regular;
$button-font-weight: $font-weight-semibold;
$tabs-font-weight: $font-weight-semibold;
// Vertical Rhythm Spacing
$base-line-height: ms(1) !default;
$rhythm-spacing: .168;
$rhythm-height: .711;
// Modular Scale Settings
// http://www.modularscale.com by Tim Brown
// https://github.com/scottkellum/modular-scale
$ratio: golden(); // Ratio for Modular Scale
$base-font-size: 16px !default;
$importantNum: 78px !default;
$base-size: $base-font-size $importantNum;
// Gumby Default Scale Values: 16, 18, 26, 30, 42, 48, 68, 78, 110, 126;
// Sizing
$xsmall: ms(-2);
$small: ms(-1);
$norm: ms(0); // $base-font-size (16px == default)
$med: ms(1);
$large: ms(2);
$larger: ms(3);
$xlarge: ms(4);
$xxlarge: ms(5);
$xxxlarge: ms(6);
$reallybig: ms(8);
$tremendous: ms(9);
$absurd: ms(10);
// Typography Colors
$header-font-color: #444444 !default;
$header-link-color: #d04526 !default;
$header-link-hover-color: #c03d20 !default;
$body-font-color: #555555 !default;
$body-link-color: #d04526 !default;
$body-link-hover-color: #c03d20 !default;
// User Interface Colors
$global-bg-color: #fff;
$navbar-color: #4a4d50;
$navbar-link-color: #fff;
$primary-color: #3085d6;
$secondary-color: #42a35a;
$default-color: #f2f2f2;
$info-color: #4a4d50;
$danger-color: #ca3838;
$warning-color: #f6b83f;
$success-color: #58c026;
$primary-hover-color: #58b2fa;
$secondary-hover-color: #6dbb80;
$default-hover-color: #ffffff;
$info-hover-color: #868d92;
$danger-hover-color: #f14f4f;
$warning-hover-color: #fdd27f;
$success-hover-color: #66d92f;
$horizontal-rule-color: #ccc !default;
$black: #000;
$white: #fff;
// Borders
$button-radius: 4px !default;
$metro-radius: 0 !default;
$bigger-radius: 8px;
// Buttons
// Font Sizing
$xlarge-button-font-size: $larger;
$large-button-font-size: $large;
$medium-button-font-size: $norm;
$small-button-font-size: $small;
// Padding
$default-button-padding: $med;
// Height
$default-button-height: 36px;
// Form Elements
$form-text-input-stroke: #ccc;
$form-text-input-background: $white;
$form-text-input-placeholder-color: $default-color;
$form-text-input-color: #555;
$form-select-stroke: #ccc;
$form-select-background: $white;
$form-select-color: #555;
// Tabs
$tab-height: 42px;
// Navigation
$navcontain-height: 80px; // makes space at the top of a document for when using a fixed nav
// Drawers & Modals
$modal-overlay-color: rgba(0, 0, 0, 0.8);
$modal-window-color: $white;
$drawer-background-color: #3e4144;
$drawer-inner-shadow-x-offset: 0;
$drawer-inner-shadow-y-offset: 2px;
$drawer-inner-shadow-blur: 5px;
$drawer-inner-shadow-color: #313436;
// Tables
$table-bgcolor: #fff;
$table-thead-bgcolor: $primary-color;
$table-row-first-cell-font-weight: bold;
$table-border-size: 1px;
$table-border-style: solid;
$table-border-color: #e5e5e5;
$table-cell-border-size: 1px;
$table-cell-border-color: #e5e5e5;
$table-cell-border-style: solid;
// .rounded
$table-border-radius: 4px;
// .striped
$table-stripe-bgcolor: #e5e5e5;
// Tooltips
$tt-min-width: 130px;
$tt-bgcolor: $primary-color;
$tt-position: top; // position: top / bottom / left / right
$tt-align: left; // text and caret alignment: left / right
$tt-pretty: yes; // yes = pretty / no = flat
// Floats
$default-float: left;
$switch-float: right;

View File

@@ -0,0 +1,286 @@
$entypo-icons:
icon-note $entypo-icon-note,
icon-note-beamed $entypo-icon-note-beamed,
icon-music $entypo-icon-music,
icon-search $entypo-icon-search,
icon-flashlight $entypo-icon-flashlight,
icon-mail $entypo-icon-mail,
icon-heart $entypo-icon-heart,
icon-heart-empty $entypo-icon-heart-empty,
icon-star $entypo-icon-star,
icon-star-empty $entypo-icon-star-empty,
icon-user $entypo-icon-user,
icon-users $entypo-icon-users,
icon-user-add $entypo-icon-user-add,
icon-video $entypo-icon-video,
icon-picture $entypo-icon-picture,
icon-camera $entypo-icon-camera,
icon-layout $entypo-icon-layout,
icon-menu $entypo-icon-menu,
icon-check $entypo-icon-check,
icon-cancel $entypo-icon-cancel,
icon-cancel-circled $entypo-icon-cancel-circled,
icon-cancel-squared $entypo-icon-cancel-squared,
icon-plus $entypo-icon-plus,
icon-plus-circled $entypo-icon-plus-circled,
icon-plus-squared $entypo-icon-plus-squared,
icon-minus $entypo-icon-minus,
icon-minus-circled $entypo-icon-minus-circled,
icon-minus-squared $entypo-icon-minus-squared,
icon-help $entypo-icon-help,
icon-help-circled $entypo-icon-help-circled,
icon-info $entypo-icon-info,
icon-info-circled $entypo-icon-info-circled,
icon-back $entypo-icon-back,
icon-home $entypo-icon-home,
icon-link $entypo-icon-link,
icon-attach $entypo-icon-attach,
icon-lock $entypo-icon-lock,
icon-lock-open $entypo-icon-lock-open,
icon-eye $entypo-icon-eye,
icon-tag $entypo-icon-tag,
icon-bookmark $entypo-icon-bookmark,
icon-bookmarks $entypo-icon-bookmarks,
icon-flag $entypo-icon-flag,
icon-thumbs-up $entypo-icon-thumbs-up,
icon-thumbs-down $entypo-icon-thumbs-down,
icon-download $entypo-icon-download,
icon-upload $entypo-icon-upload,
icon-upload-cloud $entypo-icon-upload-cloud,
icon-reply $entypo-icon-reply,
icon-reply-all $entypo-icon-reply-all,
icon-forward $entypo-icon-forward,
icon-quote $entypo-icon-quote,
icon-code $entypo-icon-code,
icon-export $entypo-icon-export,
icon-pencil $entypo-icon-pencil,
icon-feather $entypo-icon-feather,
icon-print $entypo-icon-print,
icon-retweet $entypo-icon-retweet,
icon-keyboard $entypo-icon-keyboard,
icon-comment $entypo-icon-comment,
icon-chat $entypo-icon-chat,
icon-bell $entypo-icon-bell,
icon-attention $entypo-icon-attention,
icon-alert $entypo-icon-alert,
icon-vcard $entypo-icon-vcard,
icon-address $entypo-icon-address,
icon-location $entypo-icon-location,
icon-map $entypo-icon-map,
icon-direction $entypo-icon-direction,
icon-compass $entypo-icon-compass,
icon-cup $entypo-icon-cup,
icon-trash $entypo-icon-trash,
icon-doc $entypo-icon-doc,
icon-docs $entypo-icon-docs,
icon-doc-landscape $entypo-icon-doc-landscape,
icon-doc-text $entypo-icon-doc-text,
icon-doc-text-inv $entypo-icon-doc-text-inv,
icon-newspaper $entypo-icon-newspaper,
icon-book-open $entypo-icon-book-open,
icon-book $entypo-icon-book,
icon-folder $entypo-icon-folder,
icon-archive $entypo-icon-archive,
icon-box $entypo-icon-box,
icon-rss $entypo-icon-rss,
icon-phone $entypo-icon-phone,
icon-cog $entypo-icon-cog,
icon-tools $entypo-icon-tools,
icon-share $entypo-icon-share,
icon-shareable $entypo-icon-shareable,
icon-basket $entypo-icon-basket,
icon-bag $entypo-icon-bag,
icon-calendar $entypo-icon-calendar,
icon-login $entypo-icon-login,
icon-logout $entypo-icon-logout,
icon-mic $entypo-icon-mic,
icon-mute $entypo-icon-mute,
icon-sound $entypo-icon-sound,
icon-volume $entypo-icon-volume,
icon-clock $entypo-icon-clock,
icon-hourglass $entypo-icon-hourglass,
icon-lamp $entypo-icon-lamp,
icon-light-down $entypo-icon-light-down,
icon-light-up $entypo-icon-light-up,
icon-adjust $entypo-icon-adjust,
icon-block $entypo-icon-block,
icon-resize-full $entypo-icon-resize-full,
icon-resize-small $entypo-icon-resize-small,
icon-popup $entypo-icon-popup,
icon-publish $entypo-icon-publish,
icon-window $entypo-icon-window,
icon-arrow-combo $entypo-icon-arrow-combo,
icon-down-circled $entypo-icon-down-circled,
icon-left-circled $entypo-icon-left-circled,
icon-right-circled $entypo-icon-right-circled,
icon-up-circled $entypo-icon-up-circled,
icon-down-open $entypo-icon-down-open,
icon-left-open $entypo-icon-left-open,
icon-right-open $entypo-icon-right-open,
icon-up-open $entypo-icon-up-open,
icon-down-open-mini $entypo-icon-down-open-mini,
icon-left-open-mini $entypo-icon-left-open-mini,
icon-right-open-mini $entypo-icon-right-open-mini,
icon-up-open-mini $entypo-icon-up-open-mini,
icon-down-open-big $entypo-icon-down-open-big,
icon-left-open-big $entypo-icon-left-open-big,
icon-right-open-big $entypo-icon-right-open-big,
icon-up-open-big $entypo-icon-up-open-big,
icon-down $entypo-icon-down,
icon-arrow-left $entypo-icon-left,
icon-arrow-right $entypo-icon-right,
icon-up $entypo-icon-up,
icon-down-dir $entypo-icon-down-dir,
icon-left-dir $entypo-icon-left-dir,
icon-right-dir $entypo-icon-right-dir,
icon-up-dir $entypo-icon-up-dir,
icon-down-bold $entypo-icon-down-bold,
icon-left-bold $entypo-icon-left-bold,
icon-right-bold $entypo-icon-right-bold,
icon-up-bold $entypo-icon-up-bold,
icon-down-thin $entypo-icon-down-thin,
icon-left-thin $entypo-icon-left-thin,
icon-right-thin $entypo-icon-right-thin,
icon-up-thin $entypo-icon-up-thin,
icon-ccw $entypo-icon-ccw,
icon-cw $entypo-icon-cw,
icon-arrows-ccw $entypo-icon-arrows-ccw,
icon-level-down $entypo-icon-level-down,
icon-level-up $entypo-icon-level-up,
icon-shuffle $entypo-icon-shuffle,
icon-loop $entypo-icon-loop,
icon-switch $entypo-icon-switch,
icon-play $entypo-icon-play,
icon-stop $entypo-icon-stop,
icon-pause $entypo-icon-pause,
icon-record $entypo-icon-record,
icon-to-end $entypo-icon-to-end,
icon-to-start $entypo-icon-to-start,
icon-fast-forward $entypo-icon-fast-forward,
icon-fast-backward $entypo-icon-fast-backward,
icon-progress-0 $entypo-icon-progress-0,
icon-progress-1 $entypo-icon-progress-1,
icon-progress-2 $entypo-icon-progress-2,
icon-progress-3 $entypo-icon-progress-3,
icon-target $entypo-icon-target,
icon-palette $entypo-icon-palette,
icon-list $entypo-icon-list,
icon-list-add $entypo-icon-list-add,
icon-signal $entypo-icon-signal,
icon-trophy $entypo-icon-trophy,
icon-battery $entypo-icon-battery,
icon-back-in-time $entypo-icon-back-in-time,
icon-monitor $entypo-icon-monitor,
icon-mobile $entypo-icon-mobile,
icon-network $entypo-icon-network,
icon-cd $entypo-icon-cd,
icon-inbox $entypo-icon-inbox,
icon-install $entypo-icon-install,
icon-globe $entypo-icon-globe,
icon-cloud $entypo-icon-cloud,
icon-cloud-thunder $entypo-icon-cloud-thunder,
icon-flash $entypo-icon-flash,
icon-moon $entypo-icon-moon,
icon-flight $entypo-icon-flight,
icon-paper-plane $entypo-icon-paper-plane,
icon-leaf $entypo-icon-leaf,
icon-lifebuoy $entypo-icon-lifebuoy,
icon-mouse $entypo-icon-mouse,
icon-briefcase $entypo-icon-briefcase,
icon-suitcase $entypo-icon-suitcase,
icon-dot $entypo-icon-dot,
icon-dot-2 $entypo-icon-dot-2,
icon-dot-3 $entypo-icon-dot-3,
icon-brush $entypo-icon-brush,
icon-magnet $entypo-icon-magnet,
icon-infinity $entypo-icon-infinity,
icon-erase $entypo-icon-erase,
icon-chart-pie $entypo-icon-chart-pie,
icon-chart-line $entypo-icon-chart-line,
icon-chart-bar $entypo-icon-chart-bar,
icon-chart-area $entypo-icon-chart-area,
icon-tape $entypo-icon-tape,
icon-graduation-cap $entypo-icon-graduation-cap,
icon-language $entypo-icon-language,
icon-ticket $entypo-icon-ticket,
icon-water $entypo-icon-water,
icon-droplet $entypo-icon-droplet,
icon-air $entypo-icon-air,
icon-credit-card $entypo-icon-credit-card,
icon-floppy $entypo-icon-floppy,
icon-clipboard $entypo-icon-clipboard,
icon-megaphone $entypo-icon-megaphone,
icon-database $entypo-icon-database,
icon-drive $entypo-icon-drive,
icon-bucket $entypo-icon-bucket,
icon-thermometer $entypo-icon-thermometer,
icon-key $entypo-icon-key,
icon-flow-cascade $entypo-icon-flow-cascade,
icon-flow-branch $entypo-icon-flow-branch,
icon-flow-tree $entypo-icon-flow-tree,
icon-flow-line $entypo-icon-flow-line,
icon-flow-parallel $entypo-icon-flow-parallel,
icon-rocket $entypo-icon-rocket,
icon-gauge $entypo-icon-gauge,
icon-traffic-cone $entypo-icon-traffic-cone,
icon-cc $entypo-icon-cc,
icon-cc-by $entypo-icon-cc-by,
icon-cc-nc $entypo-icon-cc-nc,
icon-cc-nc-eu $entypo-icon-cc-nc-eu,
icon-cc-nc-jp $entypo-icon-cc-nc-jp,
icon-cc-sa $entypo-icon-cc-sa,
icon-cc-nd $entypo-icon-cc-nd,
icon-cc-pd $entypo-icon-cc-pd,
icon-cc-zero $entypo-icon-cc-zero,
icon-cc-share $entypo-icon-cc-share,
icon-cc-remix $entypo-icon-cc-remix,
icon-github $entypo-icon-github,
icon-github-circled $entypo-icon-github-circled,
icon-flickr $entypo-icon-flickr,
icon-flickr-circled $entypo-icon-flickr-circled,
icon-vimeo $entypo-icon-vimeo,
icon-vimeo-circled $entypo-icon-vimeo-circled,
icon-twitter $entypo-icon-twitter,
icon-twitter-circled $entypo-icon-twitter-circled,
icon-facebook $entypo-icon-facebook,
icon-facebook-circled $entypo-icon-facebook-circled,
icon-facebook-squared $entypo-icon-facebook-squared,
icon-gplus $entypo-icon-gplus,
icon-gplus-circled $entypo-icon-gplus-circled,
icon-pinterest $entypo-icon-pinterest,
icon-pinterest-circled $entypo-icon-pinterest-circled,
icon-tumblr $entypo-icon-tumblr,
icon-tumblr-circled $entypo-icon-tumblr-circled,
icon-linkedin $entypo-icon-linkedin,
icon-linkedin-circled $entypo-icon-linkedin-circled,
icon-dribbble $entypo-icon-dribbble,
icon-dribbble-circled $entypo-icon-dribbble-circled,
icon-stumbleupon $entypo-icon-stumbleupon,
icon-stumbleupon-circled $entypo-icon-stumbleupon-circled,
icon-lastfm $entypo-icon-lastfm,
icon-lastfm-circled $entypo-icon-lastfm-circled,
icon-rdio $entypo-icon-rdio,
icon-rdio-circled $entypo-icon-rdio-circled,
icon-spotify $entypo-icon-spotify,
icon-spotify-circled $entypo-icon-spotify-circled,
icon-qq $entypo-icon-qq,
icon-instagram $entypo-icon-instagram,
icon-dropbox $entypo-icon-dropbox,
icon-evernote $entypo-icon-evernote,
icon-flattr $entypo-icon-flattr,
icon-skype $entypo-icon-skype,
icon-skype-circled $entypo-icon-skype-circled,
icon-renren $entypo-icon-renren,
icon-sina-weibo $entypo-icon-sina-weibo,
icon-paypal $entypo-icon-paypal,
icon-picasa $entypo-icon-picasa,
icon-soundcloud $entypo-icon-soundcloud,
icon-mixi $entypo-icon-mixi,
icon-behance $entypo-icon-behance,
icon-google-circles $entypo-icon-google-circles,
icon-vkontakte $entypo-icon-vkontakte,
icon-smashing $entypo-icon-smashing,
icon-sweden $entypo-icon-sweden,
icon-db-shape $entypo-icon-db-shape,
icon-logo-db $entypo-icon-logo-db
;

View File

@@ -0,0 +1,294 @@
// Entypo Icon Charset
$entypo-icon-note: \266a; // \266a
$entypo-icon-note-beamed: \266b; // \266b
$entypo-icon-music: 🎵; // \1f3b5
$entypo-icon-search: 🔍; // \1f50d
$entypo-icon-flashlight: 🔦; // \1f526
$entypo-icon-mail: \2709; // \2709
$entypo-icon-heart: \2665; // \2665
$entypo-icon-heart-empty: \2661; // \2661
$entypo-icon-star: \2605; // \2605
$entypo-icon-star-empty: \2606; // \2606
$entypo-icon-user: 👤; // \1f464
$entypo-icon-users: 👥; // \1f465
$entypo-icon-user-add: \e700; // \e700
$entypo-icon-video: 🎬; // \1f3ac
$entypo-icon-picture: 🌄; // \1f304
$entypo-icon-camera: 📷; // \1f4f7
$entypo-icon-layout: \268f; // \268f
$entypo-icon-menu: \2630; // \2630
$entypo-icon-check: \2713; // \2713
$entypo-icon-cancel: \2715; // \2715
$entypo-icon-cancel-circled: \2716; // \2716
$entypo-icon-cancel-squared: \274e; // \274e
$entypo-icon-plus: \2b; // \2b
$entypo-icon-plus-circled: \2795; // \2795
$entypo-icon-plus-squared: \229e; // \229e
$entypo-icon-minus: \2d; // \2d
$entypo-icon-minus-circled: \2796; // \2796
$entypo-icon-minus-squared: \229f; // \229f
$entypo-icon-help: \2753; // \2753
$entypo-icon-help-circled: \e704; // \e704
$entypo-icon-info: \2139; // \2139
$entypo-icon-info-circled: \e705; // \e705
$entypo-icon-back: 🔙; // \1f519
$entypo-icon-home: \2302; // \2302
$entypo-icon-link: 🔗; // \1f517
$entypo-icon-attach: 📎; // \1f4ce
$entypo-icon-lock: 🔒; // \1f512
$entypo-icon-lock-open: 🔓; // \1f513
$entypo-icon-eye: \e70a; // \e70a
$entypo-icon-tag: \e70c; // \e70c
$entypo-icon-bookmark: 🔖; // \1f516
$entypo-icon-bookmarks: 📑; // \1f4d1
$entypo-icon-flag: \2691; // \2691
$entypo-icon-thumbs-up: 👍; // \1f44d
$entypo-icon-thumbs-down: 👎; // \1f44e
$entypo-icon-download: 📥; // \1f4e5
$entypo-icon-upload: 📤; // \1f4e4
$entypo-icon-upload-cloud: \e711; // \e711
$entypo-icon-reply: \e712; // \e712
$entypo-icon-reply-all: \e713; // \e713
$entypo-icon-forward: \27a6; // \27a6
$entypo-icon-quote: \275e; // \275e
$entypo-icon-code: \e714; // \e714
$entypo-icon-export: \e715; // \e715
$entypo-icon-pencil: \270e; // \270e
$entypo-icon-feather: \2712; // \2712
$entypo-icon-print: \e716; // \e716
$entypo-icon-retweet: \e717; // \e717
$entypo-icon-keyboard: \2328; // \2328
$entypo-icon-comment: \e718; // \e718
$entypo-icon-chat: \e720; // \e720
$entypo-icon-bell: 🔔; // \1f514
$entypo-icon-attention: \26a0; // \26a0
$entypo-icon-alert: 💥; // \1f4a5
$entypo-icon-vcard: \e722; // \e722
$entypo-icon-address: \e723; // \e723
$entypo-icon-location: \e724; // \e724
$entypo-icon-map: \e727; // \e727
$entypo-icon-direction: \27a2; // \27a2
$entypo-icon-compass: \e728; // \e728
$entypo-icon-cup: \2615; // \2615
$entypo-icon-trash: \e729; // \e729
$entypo-icon-doc: \e730; // \e730
$entypo-icon-docs: \e736; // \e736
$entypo-icon-doc-landscape: \e737; // \e737
$entypo-icon-doc-text: 📄; // \1f4c4
$entypo-icon-doc-text-inv: \e731; // \e731
$entypo-icon-newspaper: 📰; // \1f4f0
$entypo-icon-book-open: 📖; // \1f4d6
$entypo-icon-book: 📕; // \1f4d5
$entypo-icon-folder: 📁; // \1f4c1
$entypo-icon-archive: \e738; // \e738
$entypo-icon-box: 📦; // \1f4e6
$entypo-icon-rss: \e73a; // \e73a
$entypo-icon-phone: 📞; // \1f4de
$entypo-icon-cog: \2699; // \2699
$entypo-icon-tools: \2692; // \2692
$entypo-icon-share: \e73c; // \e73c
$entypo-icon-shareable: \e73e; // \e73e
$entypo-icon-basket: \e73d; // \e73d
$entypo-icon-bag: 👜; // \1f45c
$entypo-icon-calendar: 📅; // \1f4c5
$entypo-icon-login: \e740; // \e740
$entypo-icon-logout: \e741; // \e741
$entypo-icon-mic: 🎤; // \1f3a4
$entypo-icon-mute: 🔇; // \1f507
$entypo-icon-sound: 🔊; // \1f50a
$entypo-icon-volume: \e742; // \e742
$entypo-icon-clock: 🕔; // \1f554
$entypo-icon-hourglass: \23f3; // \23f3
$entypo-icon-lamp: 💡; // \1f4a1
$entypo-icon-light-down: 🔅; // \1f505
$entypo-icon-light-up: 🔆; // \1f506
$entypo-icon-adjust: \25d1; // \25d1
$entypo-icon-block: 🚫; // \1f6ab
$entypo-icon-resize-full: \e744; // \e744
$entypo-icon-resize-small: \e746; // \e746
$entypo-icon-popup: \e74c; // \e74c
$entypo-icon-publish: \e74d; // \e74d
$entypo-icon-window: \e74e; // \e74e
$entypo-icon-arrow-combo: \e74f; // \e74f
$entypo-icon-down-circled: \e758; // \e758
$entypo-icon-left-circled: \e759; // \e759
$entypo-icon-right-circled: \e75a; // \e75a
$entypo-icon-up-circled: \e75b; // \e75b
$entypo-icon-down-open: \e75c; // \e75c
$entypo-icon-left-open: \e75d; // \e75d
$entypo-icon-right-open: \e75e; // \e75e
$entypo-icon-up-open: \e75f; // \e75f
$entypo-icon-down-open-mini: \e760; // \e760
$entypo-icon-left-open-mini: \e761; // \e761
$entypo-icon-right-open-mini: \e762; // \e762
$entypo-icon-up-open-mini: \e763; // \e763
$entypo-icon-down-open-big: \e764; // \e764
$entypo-icon-left-open-big: \e765; // \e765
$entypo-icon-right-open-big: \e766; // \e766
$entypo-icon-up-open-big: \e767; // \e767
$entypo-icon-down: \2b07; // \2b07
$entypo-icon-left: \2b05; // \2b05
$entypo-icon-right: \27a1; // \27a1
$entypo-icon-up: \2b06; // \2b06
$entypo-icon-down-dir: \25be; // \25be
$entypo-icon-left-dir: \25c2; // \25c2
$entypo-icon-right-dir: \25b8; // \25b8
$entypo-icon-up-dir: \25b4; // \25b4
$entypo-icon-down-bold: \e4b0; // \e4b0
$entypo-icon-left-bold: \e4ad; // \e4ad
$entypo-icon-right-bold: \e4ae; // \e4ae
$entypo-icon-up-bold: \e4af; // \e4af
$entypo-icon-down-thin: \2193; // \2193
$entypo-icon-left-thin: \2190; // \2190
$entypo-icon-right-thin: \2192; // \2192
$entypo-icon-up-thin: \2191; // \2191
$entypo-icon-ccw: \27f2; // \27f2
$entypo-icon-cw: \27f3; // \27f3
$entypo-icon-arrows-ccw: 🔄; // \1f504
$entypo-icon-level-down: \21b3; // \21b3
$entypo-icon-level-up: \21b0; // \21b0
$entypo-icon-shuffle: 🔀; // \1f500
$entypo-icon-loop: 🔁; // \1f501
$entypo-icon-switch: \21c6; // \21c6
$entypo-icon-play: \25b6; // \25b6
$entypo-icon-stop: \25a0; // \25a0
$entypo-icon-pause: \2389; // \2389
$entypo-icon-record: \26ab; // \26ab
$entypo-icon-to-end: \23ed; // \23ed
$entypo-icon-to-start: \23ee; // \23ee
$entypo-icon-fast-forward: \23e9; // \23e9
$entypo-icon-fast-backward: \23ea; // \23ea
$entypo-icon-progress-0: \e768; // \e768
$entypo-icon-progress-1: \e769; // \e769
$entypo-icon-progress-2: \e76a; // \e76a
$entypo-icon-progress-3: \e76b; // \e76b
$entypo-icon-target: 🎯; // \1f3af
$entypo-icon-palette: 🎨; // \1f3a8
$entypo-icon-list: \e005; // \e005
$entypo-icon-list-add: \e003; // \e003
$entypo-icon-signal: 📶; // \1f4f6
$entypo-icon-trophy: 🏆; // \1f3c6
$entypo-icon-battery: 🔋; // \1f50b
$entypo-icon-back-in-time: \e771; // \e771
$entypo-icon-monitor: 💻; // \1f4bb
$entypo-icon-mobile: 📱; // \1f4f1
$entypo-icon-network: \e776; // \e776
$entypo-icon-cd: 💿; // \1f4bf
$entypo-icon-inbox: \e777; // \e777
$entypo-icon-install: \e778; // \e778
$entypo-icon-globe: 🌎; // \1f30e
$entypo-icon-cloud: \2601; // \2601
$entypo-icon-cloud-thunder: \26c8; // \26c8
$entypo-icon-flash: \26a1; // \26a1
$entypo-icon-moon: \263d; // \263d
$entypo-icon-flight: \2708; // \2708
$entypo-icon-paper-plane: \e79b; // \e79b
$entypo-icon-leaf: 🍂; // \1f342
$entypo-icon-lifebuoy: \e788; // \e788
$entypo-icon-mouse: \e789; // \e789
$entypo-icon-briefcase: 💼; // \1f4bc
$entypo-icon-suitcase: \e78e; // \e78e
$entypo-icon-dot: \e78b; // \e78b
$entypo-icon-dot-2: \e78c; // \e78c
$entypo-icon-dot-3: \e78d; // \e78d
$entypo-icon-brush: \e79a; // \e79a
$entypo-icon-magnet: \e7a1; // \e7a1
$entypo-icon-infinity: \221e; // \221e
$entypo-icon-erase: \232b; // \232b
$entypo-icon-chart-pie: \e751; // \e751
$entypo-icon-chart-line: 📈; // \1f4c8
$entypo-icon-chart-bar: 📊; // \1f4ca
$entypo-icon-chart-area: 🔾; // \1f53e
$entypo-icon-tape: \2707; // \2707
$entypo-icon-graduation-cap: 🎓; // \1f393
$entypo-icon-language: \e752; // \e752
$entypo-icon-ticket: 🎫; // \1f3ab
$entypo-icon-water: 💦; // \1f4a6
$entypo-icon-droplet: 💧; // \1f4a7
$entypo-icon-air: \e753; // \e753
$entypo-icon-credit-card: 💳; // \1f4b3
$entypo-icon-floppy: 💾; // \1f4be
$entypo-icon-clipboard: 📋; // \1f4cb
$entypo-icon-megaphone: 📣; // \1f4e3
$entypo-icon-database: \e754; // \e754
$entypo-icon-drive: \e755; // \e755
$entypo-icon-bucket: \e756; // \e756
$entypo-icon-thermometer: \e757; // \e757
$entypo-icon-key: 🔑; // \1f511
$entypo-icon-flow-cascade: \e790; // \e790
$entypo-icon-flow-branch: \e791; // \e791
$entypo-icon-flow-tree: \e792; // \e792
$entypo-icon-flow-line: \e793; // \e793
$entypo-icon-flow-parallel: \e794; // \e794
$entypo-icon-rocket: 🚀; // \1f680
$entypo-icon-gauge: \e7a2; // \e7a2
$entypo-icon-traffic-cone: \e7a3; // \e7a3
$entypo-icon-cc: \e7a5; // \e7a5
$entypo-icon-cc-by: \e7a6; // \e7a6
$entypo-icon-cc-nc: \e7a7; // \e7a7
$entypo-icon-cc-nc-eu: \e7a8; // \e7a8
$entypo-icon-cc-nc-jp: \e7a9; // \e7a9
$entypo-icon-cc-sa: \e7aa; // \e7aa
$entypo-icon-cc-nd: \e7ab; // \e7ab
$entypo-icon-cc-pd: \e7ac; // \e7ac
$entypo-icon-cc-zero: \e7ad; // \e7ad
$entypo-icon-cc-share: \e7ae; // \e7ae
$entypo-icon-cc-remix: \e7af; // \e7af
$entypo-icon-github: \f300; // \f300
$entypo-icon-github-circled: \f301; // \f301
$entypo-icon-flickr: \f303; // \f303
$entypo-icon-flickr-circled: \f304; // \f304
$entypo-icon-vimeo: \f306; // \f306
$entypo-icon-vimeo-circled: \f307; // \f307
$entypo-icon-twitter: \f309; // \f309
$entypo-icon-twitter-circled: \f30a; // \f30a
$entypo-icon-facebook: \f30c; // \f30c
$entypo-icon-facebook-circled: \f30d; // \f30d
$entypo-icon-facebook-squared: \f30e; // \f30e
$entypo-icon-gplus: \f30f; // \f30f
$entypo-icon-gplus-circled: \f310; // \f310
$entypo-icon-pinterest: \f312; // \f312
$entypo-icon-pinterest-circled: \f313; // \f313
$entypo-icon-tumblr: \f315; // \f315
$entypo-icon-tumblr-circled: \f316; // \f316
$entypo-icon-linkedin: \f318; // \f318
$entypo-icon-linkedin-circled: \f319; // \f319
$entypo-icon-dribbble: \f31b; // \f31b
$entypo-icon-dribbble-circled: \f31c; // \f31c
$entypo-icon-stumbleupon: \f31e; // \f31e
$entypo-icon-stumbleupon-circled: \f31f; // \f31f
$entypo-icon-lastfm: \f321; // \f321
$entypo-icon-lastfm-circled: \f322; // \f322
$entypo-icon-rdio: \f324; // \f324
$entypo-icon-rdio-circled: \f325; // \f325
$entypo-icon-spotify: \f327; // \f327
$entypo-icon-spotify-circled: \f328; // \f328
$entypo-icon-qq: \f32a; // \f32a
$entypo-icon-instagram: \f32d; // \f32d
$entypo-icon-dropbox: \f330; // \f330
$entypo-icon-evernote: \f333; // \f333
$entypo-icon-flattr: \f336; // \f336
$entypo-icon-skype: \f339; // \f339
$entypo-icon-skype-circled: \f33a; // \f33a
$entypo-icon-renren: \f33c; // \f33c
$entypo-icon-sina-weibo: \f33f; // \f33f
$entypo-icon-paypal: \f342; // \f342
$entypo-icon-picasa: \f345; // \f345
$entypo-icon-soundcloud: \f348; // \f348
$entypo-icon-mixi: \f34b; // \f34b
$entypo-icon-behance: \f34e; // \f34e
$entypo-icon-google-circles: \f351; // \f351
$entypo-icon-vkontakte: \f354; // \f354
$entypo-icon-smashing: \f357; // \f357
$entypo-icon-sweden: \f601; // \f601
$entypo-icon-db-shape: \f600; // \f600
$entypo-icon-logo-db: \f603; // \f603
// Grab the list of icons
@import "entypo-icon-list";