compass-golden-grid-system 0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ pkg/*
2
+ *.gem
3
+ .bundle
4
+ .DS_Store
5
+ .sass-cache
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in compass-golden-grid-system.gemspec
4
+ gemspec
@@ -0,0 +1,78 @@
1
+ #Golden Grid System Compass Plugin
2
+
3
+ This plugin adds the Golden Grid System to [Compass](http://compass-style.org).
4
+
5
+ [Golden Grid System](http://goldengridsystem.com) is a fluid grid created by [Joni Korpi](http://jonikorpi.com) with
6
+ [four features](http://goldengridsystem.com/#features): columns, gutters, a baseline and a script.
7
+
8
+ ##Install the gem
9
+
10
+ `gem install compass-golden-grid-system`
11
+
12
+ ##Create a Compass project using Golden Grid System
13
+
14
+ `compass create -r ggs my_project --using ggs`
15
+
16
+ This will create a Compass project with the default directory structure
17
+ and use scss syntax.
18
+
19
+ See the Compass [Install](http://compass-style.org/install) page for
20
+ options.
21
+
22
+ ###Sans Compass
23
+
24
+ Download the source and use it in your sass project.
25
+
26
+ ##Usage
27
+
28
+ In the `sass` directory you will find the bootstrap file `GGS.scss`
29
+ which imports all of the component files.
30
+
31
+ ###Partials
32
+
33
+ There are partials for each grid size:
34
+
35
+ - `_mobile.scss` the default layout of 4 columns
36
+ - `_tablet.scss` 8 column grid
37
+ - `_large.scss` 16 column grid
38
+
39
+ `_type.scss` contains the type presets.
40
+
41
+ _I left the classes to remain consistent with the original `GGS.css` file but they aren't necessary._
42
+
43
+ `_global.scss` is for styles shared by all layouts.
44
+
45
+ ##Configuration Variables
46
+
47
+ From the GGS.scss file
48
+
49
+ `$line: 24` - Line height
50
+ `$column: 100% / 18` - Column width
51
+ `$font-size: 16` - Base font size
52
+ `$em: $font-size * 1` EM conversion
53
+
54
+ I've added:
55
+
56
+ `$layout: 8 !default` - This variable is overridden in each layout.
57
+ `$page: 100% !default` - You probably wouldn't change this and it
58
+ probably didn't need to be a variable.
59
+
60
+ ###Mixins
61
+
62
+ - `column($columns, $side)` - Considers the `$layout` and sets the width of an element to span the number of given columns, and optionally set a float direction.
63
+ - `outer($columns)` - Sets the outer margin width.
64
+ - `wrapper` - Elastic gutters, applies `padding: 0 .075em` and `box-sizing:
65
+ border-box`.
66
+ - There are mixins for each of the type presets as well.
67
+
68
+ ##Credit
69
+
70
+ Thanks to Joni Korpi for creating rad minimal tools. I started with the [GGS.scss](http://github.com/jonikorpi/Golden-Grid-System/blob/master/GGS.scss)
71
+ file which was contributed by [mikker](http://github.com/mikker)
72
+
73
+ Thanks to [willhw's](http://github.com/willhw) [compass-less-plugin](http://github.com/willhw/compass-less-plugin) which I used as a reference point.
74
+
75
+ ##Notes
76
+
77
+ I'm no sass/compass expert. This is my first Compass extension and Ruby Gem and I'm sure there art things that could
78
+ be improved. Feel free to make it better. Cheers.
@@ -0,0 +1,22 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "compass-golden-grid-system"
6
+ s.version = "0.1"
7
+ s.platform = Gem::Platform::RUBY
8
+ s.authors = ["Tal Williams"]
9
+ s.email = ["contact.me@talwilliams.com"]
10
+ s.homepage = "http://github.com/xtalx/compass-golden-grid-system"
11
+ s.summary = %q{Compass compatible port of Golden Grid System}
12
+ s.description = %q{A folding grid for responsive design.}
13
+
14
+ s.rubyforge_project = "compass-golden-grid-system"
15
+
16
+ s.add_dependency "compass", ">= 0.10"
17
+
18
+ s.files = `git ls-files`.split("\n")
19
+
20
+ s.has_rdoc = false
21
+ s.require_paths = ["lib"]
22
+ end
@@ -0,0 +1,2 @@
1
+ require "compass"
2
+ Compass::Frameworks.register("ggs", :path => "#{File.dirname(__FILE__)}/..")
@@ -0,0 +1,69 @@
1
+ // Important Numbers
2
+ $line: 24
3
+ $column: 100% / 18
4
+ $font-size: 16
5
+ $em: $font-size * 1
6
+
7
+ // Variables that enable setting column widths, floats and outer margins
8
+ $layout: 4 !default
9
+ $page: 100% !default
10
+
11
+
12
+
13
+ =column($columns, $side:"")
14
+ width: $page / $layout * $columns
15
+ @if $side != ""
16
+ float: $side
17
+
18
+ =outer($columns)
19
+ // margin: 0 5.555555555555555%
20
+ margin: 0 $columns * $column
21
+
22
+ =wrapper
23
+ padding: 0 0.75em
24
+ -webkit-box-sizing: border-box
25
+ -moz-box-sizing: border-box
26
+ -o-box-sizing: border-box
27
+ box-sizing: border-box
28
+
29
+
30
+ //
31
+ // Zoomable baseline grid
32
+ // type size presets
33
+ //
34
+
35
+
36
+ =body
37
+ // 16px / 24px //
38
+ font-size: $font-size / 16 * 1em
39
+ line-height: #{$line / $em}em
40
+
41
+ =small
42
+ // 13px / 18px //
43
+ font-size: #{$font-size * 0.813 / $em}em
44
+ line-height: $line * 0.75 / ($font-size * 0.813) * 1em
45
+
46
+ =normal
47
+ // 16px / 24px //
48
+ font-size: #{$font-size / $em}em
49
+ line-height: #{$line / $em}em
50
+
51
+ =large
52
+ // 16px / 24px //
53
+ font-size: #{26 / $em}em
54
+ line-height: $line * 1.5 / 26 * 1em
55
+
56
+ =huge
57
+ // 42px / 48px //
58
+ font-size: #{42 / $em}em
59
+ line-height: $line * 2 / 42 * 1em
60
+
61
+ =massive
62
+ // 68px / 72px //
63
+ font-size: #{68 / $em}em
64
+ line-height: $line * 3 / 68 * 1em
65
+
66
+ =gigantic
67
+ // 110px / 120px //
68
+ font-size: #{110 / $em}em
69
+ line-height: $line * 5 / 110 * 1em
@@ -0,0 +1,104 @@
1
+ /*
2
+ **
3
+ ** Margin, padding, and border resets
4
+ ** except for form elements
5
+ **/
6
+
7
+
8
+ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, a, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, nav, section, menu, time, mark, audio, video, canvas
9
+ margin: 0
10
+ padding: 0
11
+ border: 0
12
+
13
+
14
+ /*
15
+ **
16
+ ** Consistency fixes
17
+ ** adopted from http://necolas.github.com/normalize.css/
18
+ **/
19
+
20
+
21
+ html
22
+ height: 100%
23
+ -webkit-text-size-adjust: 100%
24
+ -ms-text-size-adjust: 100%
25
+
26
+ body
27
+ min-height: 100%
28
+ font-size: 100%
29
+
30
+ article, aside, details, figcaption, figure,
31
+ footer, header, hgroup, nav, section, audio, canvas, video
32
+ display: block
33
+
34
+ sub, sup
35
+ font-size: 75%
36
+ line-height: 0
37
+ position: relative
38
+ vertical-align: baseline
39
+
40
+ li
41
+ list-style-type: none
42
+
43
+ sup
44
+ top: -0.5em
45
+
46
+ sub
47
+ bottom: -0.25em
48
+
49
+ pre
50
+ white-space: pre
51
+ white-space: pre-wrap
52
+ word-wrap: break-word
53
+
54
+ b, strong
55
+ font-weight: bold
56
+
57
+ abbr[title]
58
+ border-bottom: 1px dotted
59
+
60
+ input, textarea, button, select
61
+ margin: 0
62
+ font-size: 100%
63
+ line-height: normal
64
+ vertical-align: baseline
65
+
66
+ button,
67
+ html input[type="button"],
68
+ input[type="reset"],
69
+ input[type="submit"]
70
+ cursor: pointer
71
+ -webkit-appearance: button
72
+
73
+ input[type="checkbox"],
74
+ input[type="radio"]
75
+ -webkit-box-sizing: border-box
76
+ -moz-box-sizing: border-box
77
+ -ms-box-sizing: border-box
78
+ -o-box-sizing: border-box
79
+ box-sizing: border-box
80
+
81
+ textarea
82
+ overflow: auto
83
+
84
+ table
85
+ border-collapse: collapse
86
+ border-spacing: 0
87
+
88
+ /*
89
+ **
90
+ ** Simple fluid media
91
+ **/
92
+
93
+
94
+ figure
95
+ position: relative
96
+
97
+ figure img, figure object, figure embed, figure video
98
+ max-width: 100%
99
+ display: block
100
+
101
+ img
102
+ border: 0
103
+ -ms-interpolation-mode: bicubic
104
+
@@ -0,0 +1,65 @@
1
+ <!doctype html>
2
+ <!--[if lt IE 9]><html class="ie"><![endif]-->
3
+ <!--[if gte IE 9]><!--><html><!--<![endif]-->
4
+
5
+ <!--
6
+ The comment jumble above is handy for targeting old IE with CSS.
7
+ http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/
8
+ -->
9
+
10
+ <head>
11
+ <meta charset="utf-8"/>
12
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
13
+ <title>Golden Grid System Demo</title>
14
+
15
+ <!-- Please don't add "maximum-scale=1" here. It's bad for accessibility. -->
16
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
17
+
18
+ <!-- Feel free to split the CSS into separate files, if you like. -->
19
+ <link rel="stylesheet" href="stylesheets/GGS.css"/>
20
+
21
+ <!-- Here's Golden Gridlet, the grid overlay script. -->
22
+ <script src="javascripts/GGS.js"></script>
23
+
24
+ <!--
25
+ This script enables structural HTML5 elements in old IE.
26
+ http://code.google.com/p/html5shim/
27
+ -->
28
+ <!--[if lt IE 9]>
29
+ <script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
30
+ <![endif]-->
31
+ </head>
32
+
33
+ <body lang="en">
34
+
35
+ <!-- Demo code begins -->
36
+
37
+ <header>
38
+ <div class="wrapper">
39
+ <h1>A Golden Demonstration</h1>
40
+ <h2>
41
+ Try resizing your browser or viewing this page on different devices. Use the icon in the upper right corner to see an overlay of the grid.
42
+ </h2>
43
+ </div>
44
+ </header>
45
+
46
+ <article id="twoway">
47
+ <section class="wrapper">
48
+ <h3>A two-way split</h3>
49
+ <p>
50
+ These two blocks of text will float side by side with some empty columns on the sides on large screens. On medium-sized screens the empty columns will disappear, and on small screens the blocks will be stacked vertically.
51
+ </p>
52
+ </section>
53
+ <section class="wrapper">
54
+ <h3>By the way</h3>
55
+ <p>
56
+ If you're viewing this page on an iOS device, it might zoom in wonkily when you rotate your device. This is because of <a href="http://filamentgroup.com/examples/iosScaleBug/">a Mobile Safari bug</a>.
57
+ </p>
58
+ </section>
59
+ </article>
60
+
61
+ <!-- Demo code ends -->
62
+
63
+ </body>
64
+
65
+ </html>
@@ -0,0 +1,159 @@
1
+ /*
2
+ *
3
+ * Golden Gridlet (1.01) <http://goldengridsystem.com/>
4
+ * by Joni Korpi <http://jonikorpi.com/>
5
+ * licensed under MIT <http://opensource.org/licenses/mit-license.php>
6
+ *
7
+ */
8
+
9
+ var guideColor = 'rgb(255,195,0)';
10
+ var guideInnerColor = 'rgba(255,255,255, 0.91)';
11
+ var guideOpacity = '0.618';
12
+
13
+ var switchColor = 'rgb(0,0,0)';
14
+ var switchOpacity = '0.618';
15
+
16
+ var baseFontSize = 16;
17
+ var baselineGridHeight = (24 / baseFontSize)+'em';
18
+
19
+ var eightColBreakpoint = ((720-1) / baseFontSize)+'em';
20
+ var sixteenColBreakpoint = ((1872-1) / baseFontSize)+'em';
21
+
22
+ /*
23
+ * Note that the script might not work as expected if
24
+ * the <body> element of your page has a set width and
25
+ * position: relative;, because the guides are appended
26
+ * inside <body>, but positioned in relation to <html>.
27
+ *
28
+ * Also note that the baseline grid doesn't really align
29
+ * up anymore after zooming the baseline grid in or out,
30
+ * because of rounding errors.
31
+ */
32
+
33
+
34
+ /*!
35
+ * Ender: open module JavaScript framework
36
+ * copyright Dustin Diaz & Jacob Thornton 2011 (@ded @fat)
37
+ * https://ender.no.de
38
+ * License MIT
39
+ * Build: ender -b jeesh
40
+ */
41
+ !function(a){function d(a,b){return c(a,b)}function c(a,e,f){d._select&&(typeof a=="string"||a.nodeName||a.length&&"item"in a||a==window)?(f=d._select(a,e),f.selector=a):f=isFinite(a.length)?a:[a];return b(f,c)}function b(a,b){for(var c in b)c!="noConflict"&&c!="_VERSION"&&(a[c]=b[c]);return a}b(d,{_VERSION:"0.2.4",ender:function(a,e){b(e?c:d,a)},fn:a.$&&a.$.fn||{}}),b(c,{forEach:function(a,b,c){for(c=0,l=this.length;c<l;++c)c in this&&a.call(b||this[c],this[c],c,this);return this},$:d});var e=a.$;d.noConflict=function(){a.$=e;return this},typeof module!="undefined"&&module.exports&&(module.exports=d),a.ender=a.$=d}(this),!function(a){function F(a){var b=a.relatedTarget;if(!b)return b==null;return b!=this&&b.prefix!="xul"&&!/document/.test(this.toString())&&!p(this,b)}var b=1,c={},d={},e=/over|out/,f=/[^\.]*(?=\..*)\.|.*/,g=/\..*/,h="addEventListener",i="attachEvent",j="removeEventListener",k="detachEvent",l=a.document||{},m=l.documentElement||{},n=m[h],o=n?h:i,p=function(a,b){var c=b.parentNode;while(c!=null){if(c==a)return!0;c=c.parentNode}},q=function(a,c){return a.__uid=c||a.__uid||b++},r=function(a){var b=q(a);return c[b]=c[b]||{}},s=n?function(a,b,c,d){a[d?h:j](b,c,!1)}:function(a,b,c,d,e){e&&d&&(a["_on"+e]=a["_on"+e]||0),a[d?i:k]("on"+b,c)},t=function(b,c,d){return function(e){e=D(e||((this.ownerDocument||this.document||this).parentWindow||a).event);return c.apply(b,[e].concat(d))}},u=function(a,b,c,d,e){return function(f){(d?d.call(this,f):n?!0:f&&f.propertyName=="_on"+c||!f)&&b.apply(a,[f].concat(e))}},v=function(a,b,c,e){var h=b.replace(g,""),i=r(a),j=i[h]||(i[h]={}),k=q(c,b.replace(f,""));if(j[k])return a;var l=G[h];l&&(c=l.condition?u(a,c,h,l.condition):c,h=l.base||h);var m=E[h];c=m?t(a,c,e):u(a,c,h,!1,e),m=n||m;if(h=="unload"){var p=c;c=function(){w(a,h,c)&&p()}}a[o]&&s(a,m?h:"propertychange",c,!0,!m&&h),j[k]=c,c.__uid=k;return h=="unload"?a:d[q(a)]=a},w=function(a,b,c){var d,e,h,i,j=r(a),k=b.replace(g,"");if(!j||!j[k])return a;e=b.replace(f,""),h=e?e.split("."):[c.__uid];for(i=h.length;i--;){d=h[i],c=j[k][d],delete j[k][d];if(a[o]){k=G[k]?G[k].base:k;var l=n||E[k];s(a,l?k:"propertychange",c,!1,!l&&k)}}return a},x=function(a,b,c){return function(d){var e=typeof a=="string"?c(a,this):a;for(var f=d.target;f&&f!=this;f=f.parentNode)for(var g=e.length;g--;)if(e[g]==f)return b.apply(f,arguments)}},y=function(a,b,c,d,e){if(typeof b=="object"&&!c)for(var f in b)b.hasOwnProperty(f)&&y(a,f,b[f]);else{var g=typeof c=="string",h=(g?c:b).split(" ");c=g?x(b,d,e):c;for(var i=h.length;i--;)v(a,h[i],c,Array.prototype.slice.call(arguments,g?4:3))}return a},z=function(a,b,c){var d,e,h,i,j=typeof b=="string",k=j&&b.replace(f,""),l=w,m=r(a);if(j&&/\s/.test(b)){b=b.split(" "),i=b.length-1;while(z(a,b[i])&&i--);return a}h=j?b.replace(g,""):b;if(!m||j&&!m[h])return a;if(typeof c=="function")l(a,h,c);else if(k)l(a,b);else{l=h?l:z,e=j&&h,h=h?c||m[h]||h:m;for(d in h)h.hasOwnProperty(d)&&l(a,e||d,h[d])}return a},A=function(a,b,c){var d,e,h,i=b.split(" ");for(h=i.length;h--;){b=i[h].replace(g,"");var j=E[b],k=i[h].replace(f,""),l=r(a)[b];if(k){k=k.split(".");for(e=k.length;e--;)l[k[e]]&&l[k[e]].apply(a,c)}else if(!c&&a[o])B(j,b,a);else for(e in l)l.hasOwnProperty(e)&&l[e].apply(a,c)}return a},B=n?function(b,c,d){evt=document.createEvent(b?"HTMLEvents":"UIEvents"),evt[b?"initEvent":"initUIEvent"](c,!0,!0,a,1),d.dispatchEvent(evt)}:function(a,b,c){a?c.fireEvent("on"+b,document.createEventObject()):c["_on"+b]++},C=function(a,b,c){var d=r(b),e,f;e=c?d[c]:d;for(f in e)e.hasOwnProperty(f)&&(c?y:C)(a,c||b,c?e[f]:f);return a},D=function(a){var b={};if(!a)return b;var c=a.type,d=a.target||a.srcElement;b.preventDefault=D.preventDefault(a),b.stopPropagation=D.stopPropagation(a),b.target=d&&d.nodeType==3?d.parentNode:d;if(~c.indexOf("key"))b.keyCode=a.which||a.keyCode;else if(/click|mouse|menu/i.test(c)){b.rightClick=a.which==3||a.button==2,b.pos={x:0,y:0};if(a.pageX||a.pageY)b.clientX=a.pageX,b.clientY=a.pageY;else if(a.clientX||a.clientY)b.clientX=a.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,b.clientY=a.clientY+document.body.scrollTop+document.documentElement.scrollTop;e.test(c)&&(b.relatedTarget=a.relatedTarget||a[(c=="mouseover"?"from":"to")+"Element"])}for(var f in a)f in b||(b[f]=a[f]);return b};D.preventDefault=function(a){return function(){a.preventDefault?a.preventDefault():a.returnValue=!1}},D.stopPropagation=function(a){return function(){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0}};var E={click:1,dblclick:1,mouseup:1,mousedown:1,contextmenu:1,mousewheel:1,DOMMouseScroll:1,mouseover:1,mouseout:1,mousemove:1,selectstart:1,selectend:1,keydown:1,keypress:1,keyup:1,orientationchange:1,touchstart:1,touchmove:1,touchend:1,touchcancel:1,gesturestart:1,gesturechange:1,gestureend:1,focus:1,blur:1,change:1,reset:1,select:1,submit:1,load:1,unload:1,beforeunload:1,resize:1,move:1,DOMContentLoaded:1,readystatechange:1,error:1,abort:1,scroll:1},G={mouseenter:{base:"mouseover",condition:F},mouseleave:{base:"mouseout",condition:F},mousewheel:{base:/Firefox/.test(navigator.userAgent)?"DOMMouseScroll":"mousewheel"}},H={add:y,remove:z,clone:C,fire:A},I=function(a){var b=z(a).__uid;b&&(delete d[b],delete c[b])};a[i]&&y(a,"unload",function(){for(var b in d)d.hasOwnProperty(b)&&I(d[b]);a.CollectGarbage&&CollectGarbage()});var J=a.bean;H.noConflict=function(){a.bean=J;return this},typeof module!="undefined"&&module.exports?module.exports=H:a.bean=H}(this),!function(a){var b=bean.noConflict(),c=function(c,d,e){var f=d?[d]:[];return function(){for(var e,g=0,h=this.length;g<h;g++)e=[this[g]].concat(f,Array.prototype.slice.call(arguments,0)),e.length==4&&e.push(a),!arguments.length&&c=="add"&&d&&(c="fire"),b[c].apply(this,e);return this}},d=c("add"),e=c("remove"),f=c("fire"),g={on:d,addListener:d,bind:d,listen:d,delegate:d,unbind:e,unlisten:e,removeListener:e,undelegate:e,emit:f,trigger:f,cloneEvents:c("clone"),hover:function(a,c,d){for(d=this.length;d--;)b.add.call(this,this[d],"mouseenter",a),b.add.call(this,this[d],"mouseleave",c);return this}},h,i=["blur","change","click","dblclick","error","focus","focusin","focusout","keydown","keypress","keyup","load","mousedown","mouseenter","mouseleave","mouseout","mouseover","mouseup","mousemove","resize","scroll","select","submit","unload"];for(h=i.length;h--;)g[i[h]]=c("add",i[h]);a.ender(g,!0)}(ender),!function(a,b){function J(a,b){return new E(a,b)}function I(){return{x:b.pageXOffset||d.scrollLeft,y:b.pageYOffset||d.scrollTop}}function H(a){return a===b||/^(?:body|html)$/i.test(a.tagName)}function G(a,c,d){var e=this[0];if(a==null&&c==null)return(H(e)?I():{x:e.scrollLeft,y:e.scrollTop})[d];H(e)?b.scrollTo(a,c):(a!=null&&(e.scrollLeft=a),c!=null&&(e.scrollTop=c));return this}function F(a){return typeof a=="string"?J.create(a):z(a)?[a]:a}function E(a){this.length=0;if(a){a=typeof a!="string"&&!a.nodeType&&typeof a.length!="undefined"?a:[a],this.length=a.length;for(var b=0;b<a.length;b++)this[b]=a[b]}}function D(a,b,c){var d=J(a),e=d.css("position"),f=d.offset(),g="relative",h=e==g,i=[parseInt(d.css("left"),10),parseInt(d.css("top"),10)];e=="static"&&(d.css("position",g),e=g),isNaN(i[0])&&(i[0]=h?0:a.offsetLeft),isNaN(i[1])&&(i[1]=h?0:a.offsetTop),b!==null&&(a.style.left=b-f.left+i[0]+"px"),c!==null&&(a.style.top=c-f.top+i[1]+"px")}function C(a,b,c){var d=0,g=b||this,h=[],i=f&&typeof a=="string"&&a.charAt(0)!="<"?function(b){return(b=f(a))&&(b.selected=1)&&b}():a;w(F(i),function(a){w(g,function(b){var f=!b[e]||b[e]&&!b[e][e]?function(){var a=b.cloneNode(!0);g.$&&g.cloneEvents&&g.$(a).cloneEvents(b);return a}():b;c(a,f),h[d]=f,d++})},this),w(h,function(a,b){g[b]=a}),g.length=d;return g}function A(a,b,c){for(var d=0,e=a.length;d<e;++d)if(b.call(c,a[d],d,a))return!0;return!1}function z(a){return a&&a.nodeName&&a.nodeType==1}function y(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}function w(a,b,c){for(var d=0,e=a.length;d<e;d++)b.call(c||a[d],a[d],d,a);return a}function v(a){return new RegExp("(^|\\s+)"+a+"(\\s+|$)")}var c=a.document,d=c.documentElement,e="parentNode",f=null,g="getElementsByTagName",h=/^checked|value|selected$/,i=/select|fieldset|table|tbody|tfoot|td|tr|colgroup/i,j="table",k={thead:j,tbody:j,tfoot:j,tr:"tbody",th:"tr",td:"tr",fieldset:"form",option:"select"},l=/^checked|selected$/,m=/msie/i.test(navigator.userAgent),n=[],o=0,p=/^-?[\d\.]+$/,q="px",r="setAttribute",s="getAttribute",t=/(^\s*|\s*$)/g,u={lineHeight:1,zoom:1,zIndex:1,opacity:1},x=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(t,"")},B=c.defaultView&&c.defaultView.getComputedStyle?function(a,b){var d=null;b=="float"&&(b="cssFloat");var e=c.defaultView.getComputedStyle(a,"");e&&(d=e[y(b)]);return a.style[b]||d}:m&&d.currentStyle?function(a,b){b=y(b),b=b=="float"?"styleFloat":b;if(b=="opacity"){var c=100;try{c=a.filters["DXImageTransform.Microsoft.Alpha"].opacity}catch(d){try{c=a.filters("alpha").opacity}catch(e){}}return c/100}var f=a.currentStyle?a.currentStyle[b]:null;return a.style[b]||f}:function(a,b){return a.style[y(b)]};E.prototype={each:function(a,b){return w(this,a,b)},map:function(a,b){var c=[],d,e;for(e=0;e<this.length;e++)d=a.call(this,this[e]),b?b(d)&&c.push(d):c.push(d);return c},first:function(){return J(this[0])},last:function(){return J(this[this.length-1])},html:function(a,b){function f(b){while(b.firstChild)b.removeChild(b.firstChild);w(F(a),function(a){b.appendChild(a)})}var c=b?d.textContent==null?"innerText":"textContent":"innerHTML",e;return typeof a!="undefined"?this.each(function(b){(e=b.tagName.match(i))?f(b,e[0]):b[c]=a}):this[0]?this[0][c]:""},text:function(a){return this.html(a,1)},addClass:function(a){return this.each(function(b){this.hasClass(b,a)||(b.className=x(b.className+" "+a))},this)},removeClass:function(a){return this.each(function(b){this.hasClass(b,a)&&(b.className=x(b.className.replace(v(a)," ")))},this)},hasClass:function(a,b){return typeof b=="undefined"?A(this,function(b){return v(a).test(b.className)}):v(b).test(a.className)},toggleClass:function(a,b){if(typeof b!="undefined"&&!b)return this;return this.each(function(b){this.hasClass(b,a)?b.className=x(b.className.replace(v(a)," ")):b.className=x(b.className+" "+a)},this)},show:function(a){return this.each(function(b){b.style.display=a||""})},hide:function(a){return this.each(function(a){a.style.display="none"})},append:function(a){return this.each(function(b){w(F(a),function(a){b.appendChild(a)})})},prepend:function(a){return this.each(function(b){var c=b.firstChild;w(F(a),function(a){b.insertBefore(a,c)})})},appendTo:function(a,b){return C.call(this,a,b,function(a,b){a.appendChild(b)})},prependTo:function(a,b){return C.call(this,a,b,function(a,b){a.insertBefore(b,a.firstChild)})},next:function(){return this.related("nextSibling")},previous:function(){return this.related("previousSibling")},related:function(a){return this.map(function(b){b=b[a];while(b&&b.nodeType!==1)b=b[a];return b||0},function(a){return a})},before:function(a){return this.each(function(b){w(J.create(a),function(a){b[e].insertBefore(a,b)})})},after:function(a){return this.each(function(b){w(J.create(a),function(a){b[e].insertBefore(a,b.nextSibling)})})},insertBefore:function(a,b){return C.call(this,a,b,function(a,b){a[e].insertBefore(b,a)})},insertAfter:function(a,b){return C.call(this,a,b,function(a,b){var c=a.nextSibling;c?a[e].insertBefore(b,c):a[e].appendChild(b)})},css:function(a,d,e){if(d===undefined&&typeof a=="string"){d=this[0];if(!d)return null;if(d==c||d==b){e=d==c?J.doc():J.viewport();return a=="width"?e.width:a=="height"?e.height:""}return B(d,a)}var f=a;typeof a=="string"&&(f={},f[a]=d),m&&f.opacity&&(f.filter="alpha(opacity="+f.opacity*100+")",f.zoom=a.zoom||1,delete f.opacity);if(d=f["float"])m?f.styleFloat=d:f.cssFloat=d,delete f["float"];var g=function(a,b,c){for(var d in f)f.hasOwnProperty(d)&&(c=f[d],(b=y(d))&&p.test(c)&&!(b in u)&&(c+=q),a.style[b]=c)};return this.each(g)},offset:function(a,b){if(a||b)return this.each(function(c){D(c,a,b)});var c=this[0],d=c.offsetWidth,e=c.offsetHeight,f=c.offsetTop,g=c.offsetLeft;while(c=c.offsetParent)f=f+c.offsetTop,g=g+c.offsetLeft;return{top:f,left:g,height:e,width:d}},attr:function(a,b){var c=this[0];return typeof b=="undefined"?h.test(a)?l.test(a)&&typeof c[a]=="string"?!0:c[a]:c[s](a):this.each(function(c){a=="value"?c.value=b:c[r](a,b)})},val:function(a){return typeof a=="string"?this.attr("value",a):this[0].value},removeAttr:function(a){return this.each(function(b){b.removeAttribute(a)})},data:function(a,b){var c=this[0];if(typeof b=="undefined"){c[s]("data-node-uid")||c[r]("data-node-uid",++o);var d=c[s]("data-node-uid");n[d]||(n[d]={});return n[d][a]}return this.each(function(c){c[s]("data-node-uid")||c[r]("data-node-uid",++o);var d=c[s]("data-node-uid"),e={};e[a]=b,n[d]=e})},remove:function(){return this.each(function(a){a[e]&&a[e].removeChild(a)})},empty:function(){return this.each(function(a){while(a.firstChild)a.removeChild(a.firstChild)})},detach:function(){return this.map(function(a){return a[e].removeChild(a)})},scrollTop:function(a){return G.call(this,null,a,"y")},scrollLeft:function(a){return G.call(this,a,null,"x")}},J.setQueryEngine=function(a){f=a,delete J.setQueryEngine},J.aug=function(a,b){for(var c in a)a.hasOwnProperty(c)&&((b||E.prototype)[c]=a[c])},J.create=function(a){return typeof a=="string"?function(){var b=/^<([^\s>]+)/.exec(a),d=c.createElement(b&&k[b[1].toLowerCase()]||"div"),e=[];d.innerHTML=a;var f=d.childNodes;d=d.firstChild,e.push(d);while(d=d.nextSibling)d.nodeType==1&&e.push(d);return e}():z(a)?[a.cloneNode(!0)]:[]},J.doc=function(){var a=d.scrollWidth,b=d.scrollHeight,c=this.viewport();return{width:Math.max(a,c.width),height:Math.max(b,c.height)}},J.firstChild=function(a){for(var b=a.childNodes,c=0,d=b&&b.length||0,e;c<d;c++)b[c].nodeType===1&&(e=b[d=c]);return e},J.viewport=function(){var a=self.innerHeight,b=self.innerWidth;m&&(a=d.clientHeight,b=d.clientWidth);return{width:b,height:a}},J.isAncestor="compareDocumentPosition"in d?function(a,b){return(a.compareDocumentPosition(b)&16)==16}:"contains"in d?function(a,b){return a!==b&&a.contains(b)}:function(a,b){while(b=b[e])if(b===a)return!0;return!1};var K=a.bonzo;J.noConflict=function(){a.bonzo=K;return this},a.bonzo=J}(this,window),!function(a){function d(a){var b=[],c,d;label:for(c=0;c<a.length;c++){for(d=0;d<b.length;d++)if(b[d]==a[c])continue label;b[b.length]=a[c]}return b}function c(a,b){for(var c=0;c<a.length;c++)if(a[c]===b)return c;return-1}var b=bonzo;b.setQueryEngine(a),a.ender(b),a.ender(b(),!0),a.ender({create:function(c){return a(b.create(c))}}),a.id=function(b){return a([document.getElementById(b)])},a.ender({parents:function(b,e){var f=a(b),g,h,i,j=[];for(g=0,h=this.length;g<h;g++){i=this[g];while(i=i.parentNode)if(c(f,i)!==-1){j.push(i);if(e)break}}return a(d(j))},closest:function(a){return this.parents(a,!0)},first:function(){return a(this[0])},last:function(){return a(this[this.length-1])},next:function(){return a(b(this).next())},previous:function(){return a(b(this).previous())},appendTo:function(a){return b(this.selector).appendTo(a,this)},prependTo:function(a){return b(this.selector).prependTo(a,this)},insertAfter:function(a){return b(this.selector).insertAfter(a,this)},insertBefore:function(a){return b(this.selector).insertBefore(a,this)},siblings:function(){var b,c,d,e=[];for(b=0,c=this.length;b<c;b++){d=this[b];while(d=d.previousSibling)d.nodeType==1&&e.push(d);d=this[b];while(d=d.nextSibling)d.nodeType==1&&e.push(d)}return a(e)},children:function(){var c,e=[];for(i=0,l=this.length;i<l;i++){if(!(c=b.firstChild(this[i])))continue;e.push(c);while(c=c.nextSibling)c.nodeType==1&&e.push(c)}return a(d(e))},height:function(a){return a?this.css("height",a):parseInt(this.css("height"),10)},width:function(a){return a?this.css("width",a):parseInt(this.css("width"),10)}},!0)}(ender||$),!function(a,b){function l(a){k=1;while(a=c.shift())a()}var c=[],d,e=!1,f=b.documentElement,g=f.doScroll,h="DOMContentLoaded",i="addEventListener",j="onreadystatechange",k=/^loade|c/.test(b.readyState);b[i]&&b[i](h,function a(){b.removeEventListener(h,a,e),l()},e),g&&b.attachEvent(j,d=function a(){/^c/.test(b.readyState)&&(b.detachEvent(j,a),l())}),a.domReady=g?function(a){self!=top?k?a():c.push(a):function(){try{f.doScroll("left")}catch(b){return setTimeout(function(){domReady(a)},50)}a()}()}:function(a){k?a():c.push(a)}}(this,document),!function(a){a.ender({domReady:domReady}),a.ender({ready:function(a){domReady(a);return this}},!0)}(ender),!function(a,b){function X(a,c){var d=typeof c=="string"?X(c)[0]:c||b;if(!d||!a)return[];if(h=U(a,c,X))return h;return Z(a,d)}function W(a){var b=[],c,d;label:for(c=0;c<a.length;c++){for(d=0;d<b.length;d++)if(b[d]==a[c])continue label;b[b.length]=a[c]}return b}function V(a){return a&&a.nodeType&&(a.nodeType==1||a.nodeType==9)}function U(a,c,d){var e=typeof c=="string"?d(c)[0]:c||b;if(a===window||V(a))return!c||a!==window&&V(e)&&Y(a,e)?[a]:[];if(a&&typeof a=="object"&&isFinite(a.length))return N(a);if(h=a.match(w))return(m=b.getElementById(h[1]))?[m]:[];if(h=a.match(y))return N(e.getElementsByTagName(h[1]));return!1}function T(a){var c=[],d=[],e,f=0,g,h,i,j,k,l,m,n,o,q,r=M.g(a)||M.s(a,a.split(C));r=r.slice(0);if(!r.length)return c;k=r.pop(),n=r.length&&(i=r[r.length-2].match(w))?b.getElementById(i[1]):b;if(!n)return c;o=P(k),m=/^[+~]$/.test(r[r.length-1])?function(a){a=[];while(n=n.nextSibling)n.nodeType==1&&(o[1]?o[1]==n.tagName.toLowerCase():1)&&a.push(n);return a}():n.getElementsByTagName(o[1]||"*");for(e=0,h=m.length;e<h;e++)if(q=Q.apply(m[e],o))c[f++]=q;if(!r.length)return c;for(f=0,h=c.length,g=0;f<h;f++){j=c[f];for(e=r.length-2;e>=0;e=e-2)while(j=H[r[e+1]](j,c[f]))if(p=Q.apply(j,P(r[e])))break;p&&(d[g++]=c[f])}return d}function S(a,b,c){switch(a){case"=":return b==c;case"^=":return b.match(L.g("^="+c)||L.s("^="+c,new RegExp("^"+R(c))));case"$=":return b.match(L.g("$="+c)||L.s("$="+c,new RegExp(R(c)+"$")));case"*=":return b.match(L.g(c)||L.s(c,new RegExp(R(c))));case"~=":return b.match(L.g("~="+c)||L.s("~="+c,new RegExp("(?:^|\\s+)"+R(c)+"(?:\\s+|$)")));case"|=":return b.match(L.g("|="+c)||L.s("|="+c,new RegExp("^"+R(c)+"(-|$)")))}return 0}function R(a){return K.g(a)||K.s(a,a.replace(D,"\\$1"))}function Q(a,b,c,e,f,g,h){var j,k,l;if(b&&this.tagName.toLowerCase()!==b)return!1;if(c&&(j=c.match(u))&&j[1]!==this.id)return!1;if(c&&(q=c.match(v)))for(d=q.length;d--;){k=q[d].slice(1);if(!(J.g(k)||J.s(k,new RegExp("(^|\\s+)"+k+"(\\s+|$)"))).test(this.className))return!1}if(e&&!h){i=this.attributes;for(l in i)if(Object.prototype.hasOwnProperty.call(i,l)&&(i[l].name||l)==f)return this}if(e&&!S(g,this.getAttribute(f)||"",h))return!1;return this}function P(a){return a.match(G)}function O(a){while(a=a.previousSibling)if(a.nodeType==1)break;return a}function N(a){k=[];for(d=0,o=a.length;d<o;d++)k[d]=a[d];return k}function I(){this.c={}}var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u=/#([\w\-]+)/,v=/\.[\w\-]+/g,w=/^#([\w\-]+$)/,x=/^\.([\w\-]+)$/,y=/^([\w\-]+)$/,z=/^([\w]+)?\.([\w\-]+)$/,A=b.documentElement,B=/\s*([\s\+\~>])\s*/g,C=/([\s\>\+\~])(?![\s\w\-\/\?\&\=\:\.\(\)\!,@#%<>\{\}\$\*\^'"]*\])/,D=/([.*+?\^=!:${}()|\[\]\/\\])/g,E=/^([a-z0-9]+)?(?:([\.\#]+[\w\-\.#]+)?)/,F=/\[([\w\-]+)(?:([\|\^\$\*\~]?\=)['"]?([ \w\-\/\?\&\=\:\.\(\)\!,@#%<>\{\}\$\*\^]+)["']?)?\]/,G=new RegExp(E.source+"("+F.source+")?"),H={" ":function(a){return a&&a!==A&&a.parentNode},">":function(a,b){return a&&a.parentNode==b.parentNode&&a.parentNode},"~":function(a){return a&&a.previousSibling},"+":function(a,b,c,d){if(!a)return!1;c=O(a),d=O(b);return c&&d&&c==d&&c}};I.prototype={g:function(a){return this.c[a]||undefined},s:function(a,b){this.c[a]=b;return b}};var J=new I,K=new I,L=new I,M=new I,Y="compareDocumentPosition"in A?function(a,b){return(b.compareDocumentPosition(a)&16)==16}:"contains"in A?function(a,c){c=c==b||c==window?A:c;return c!==a&&c.contains(a)}:function(a,b){while(a=a.parentNode)if(a===b)return 1;return 0},Z=b.querySelector&&b.querySelectorAll?function(a,c){if(b.getElementsByClassName&&(h=a.match(x)))return N(c.getElementsByClassName(h[1]));return N(c.querySelectorAll(a))}:function(a,c){a=a.replace(B,"$1");var d=[],f,i=[],j;if(h=a.match(z)){s=c.getElementsByTagName(h[1]||"*"),k=J.g(h[2])||J.s(h[2],new RegExp("(^|\\s+)"+h[2]+"(\\s+|$)"));for(j=0,g=s.length,e=0;j<g;j++)k.test(s[j].className)&&(d[e++]=s[j]);return d}for(j=0,s=a.split(","),g=s.length;j<g;j++)i[j]=T(s[j]);for(j=0,g=i.length;j<g&&(f=i[j]);j++){var l=f;if(c!==b){l=[];for(e=0,h=f.length;e<h&&(element=f[e]);e++)Y(element,c)&&l.push(element)}d=d.concat(l)}return W(d)};X.uniq=W;var $=a.qwery;X.noConflict=function(){a.qwery=$;return this},a.qwery=X}(this,document),!function(a){function e(b,c){var e=/^<([^\s>]+)/.exec(b)[1],f=(c||a).createElement(d[e]||"div"),g=[];f.innerHTML=b;var h=f.childNodes;f=f.firstChild,g.push(f);while(f=f.nextSibling)f.nodeType==1&&g.push(f);return g}var b=qwery.noConflict(),c="table",d={thead:c,tbody:c,tfoot:c,tr:"tbody",th:"tr",td:"tr",fieldset:"form",option:"select"};$._select=function(a,c){return/^\s*</.test(a)?e(a,c):b(a,c)},$.ender({find:function(a){var c=[],d,e,f,g,h;for(d=0,e=this.length;d<e;d++){h=b(a,this[d]);for(f=0,g=h.length;f<g;f++)c.push(h[f])}return $(b.uniq(c))},and:function(a){var b=$(a);for(var c=this.length,d=0,e=this.length+b.length;c<e;c++,d++)this[c]=b[d];return this}},!0)}(document);
42
+
43
+ var ender = $.noConflict();
44
+
45
+ function setHeights() {
46
+ if (!ender('body').hasClass('ggs-hidden')) {
47
+ /* Which one is taller, <body> or <html>? */
48
+ if (ender('body').offset().height > ender('html').offset().height) {
49
+ var largerHeight = ender('body').offset().height;
50
+ }
51
+ else {
52
+ var largerHeight = ender('html').offset().height;
53
+ }
54
+
55
+ /* Give guides the new height */
56
+ ender('.ggs-guide').each(function() {
57
+ ender(this).css('height', largerHeight);
58
+ });
59
+
60
+ /* Calculate the amount of lines needed and append them */
61
+ var lines = Math.floor(largerHeight/24);
62
+ ender('#ggs-baseline-container').empty();
63
+ for (i=0; i<=lines; i++) {
64
+ ender('#ggs-baseline-container').append('<div class="ggs-line"></div>');
65
+ }
66
+
67
+ /* Set the baseline container to the same height as the guides, so there's no overflow */
68
+ ender('#ggs-baseline-container').css('height', largerHeight);
69
+ }
70
+ }
71
+
72
+ ender.domReady(function () {
73
+
74
+ /* Add control classes and switch element */
75
+ ender('body').addClass('ggs-hidden ggs-animated').append('<div id="ggs-switch"><div class="ggs-switchBar"></div><div class="ggs-switchBar"></div><div class="ggs-switchBar"></div></div>');
76
+
77
+ /* Create CSS */
78
+ var styles = '\
79
+ html{height:100%;position:relative;}\
80
+ #ggs-switch{position:fixed;top:0;right:0;z-index:9500; cursor:pointer; width: 24px; padding: 18px 18px 14px; opacity:'+switchOpacity+'; -webkit-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); -webkit-transition: all 0.145s ease-out; -moz-transition: all 0.145s ease-out; -ms-transition: all 0.145s ease-out; transition: all 0.145s ease-out;}\
81
+ .ggs-switchBar {background: '+switchColor+'; height: 4px; margin-bottom: 4px;}\
82
+ .ggs-animated #ggs-switch {-webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); transform: rotate(0deg);}\
83
+ .ggs-guide{position:absolute;top:0;z-index:9000;height:100%;margin-left:-0.75em;border:solid '+guideColor+';border-width:0 0.75em;background:'+guideColor+';opacity:'+guideOpacity+'; -webkit-transition: all 0.235s ease-out; -moz-transition: all 0.235s ease-out; -ms-transition: all 0.235s ease-out; transition: all 0.235s ease-out;}\
84
+ .ggs-animated .ggs-guide {-webkit-transform: scale(0, 1); -moz-transform: scale(0, 1); -ms-transform: scale(0, 1); transform: scale(0, 1); opacity: 0;}\
85
+ .ggs-animated #ggs-baseline-container {opacity: 0;}\
86
+ .ggs-hidden .ggs-guide, .ggs-hidden #ggs-baseline-container {display: none;}\
87
+ .ggs-0{left:0;}\
88
+ .ggs-1{left:11.11111111111111%;}\
89
+ .ggs-2{left:16.666666666666664%;}\
90
+ .ggs-3{left:22.22222222222222%;}\
91
+ .ggs-4{left:27.77777777777778%;}\
92
+ .ggs-5{left:33.33333333333333%;}\
93
+ .ggs-6{left:38.888888888888886%;}\
94
+ .ggs-7{left:44.44444444444444%;}\
95
+ .ggs-8{left:50%;}\
96
+ .ggs-9{left:55.55555555555556%;}\
97
+ .ggs-10{left:61.11111111111111%;}\
98
+ .ggs-11{left:66.66666666666666%;}\
99
+ .ggs-12{left:72.22222222222221%;}\
100
+ .ggs-13{left:77.77777777777777%;}\
101
+ .ggs-14{left:83.33333333333333%;}\
102
+ .ggs-15{left:88.88888888888889%;}\
103
+ .ggs-16{right:0;}\
104
+ .ggs-0,.ggs-16{width:5.555555555555555%;padding-right:0.75em;border:0;margin:0;}\
105
+ .ggs-guide div{background:'+guideInnerColor+';width:2px;height:100%;position:absolute;left:-1px;top:0;}\
106
+ .ggs-0 div{left:auto;right:0.75em;}\
107
+ .ggs-16 div{left:0.75em;}\
108
+ #ggs-baseline-container {opacity: '+guideOpacity+'; position: absolute; left:0; top:0; z-index: 8000; width: 100%; height: 100%; -webkit-transition: opacity 0.235s ease-out; -moz-transition: opacity 0.235s ease-out; -ms-transition: opacity 0.235s ease-out; transition: opacity 0.235s ease-out; overflow-y: hidden;}\
109
+ .ggs-line {border-top: 1px dotted '+guideColor+'; height: '+baselineGridHeight+'; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; box-sizing: border-box;}\
110
+ @media screen and (max-width: '+(eightColBreakpoint)+'){.ggs-2,.ggs-6,.ggs-10,.ggs-14{display:none;}}\
111
+ @media screen and (max-width: '+(sixteenColBreakpoint)+'){.ggs-1,.ggs-3,.ggs-5,.ggs-7,.ggs-9,.ggs-11,.ggs-13,.ggs-15{display:none;}}\
112
+ ';
113
+
114
+ /* Create guides */
115
+ for (i=0; i<=16; i++) {
116
+ ender('body').append(ender('<div class="ggs-guide ggs-'+i+'"><div></div></div>'));
117
+ };
118
+ ender('body').append(ender('<div id="ggs-baseline-container"></div>'));
119
+
120
+ /* Append CSS */
121
+ (function(d,u) {
122
+ if(d.createStyleSheet) {
123
+ d.createStyleSheet( u );
124
+ }
125
+ else {
126
+ var css=d.createElement('style');
127
+ css.setAttribute("type","text/css");
128
+ css.appendChild(document.createTextNode(u));
129
+ d.getElementsByTagName("head")[0].appendChild(css);
130
+ }
131
+ }(document, styles))
132
+
133
+ /* Resize guides when window size changes */
134
+ ender(window).on('resize', setHeights);
135
+
136
+ /* Add listeners for switch element */
137
+ ender('#ggs-switch').click(function(){
138
+ if (ender('body').hasClass('ggs-hidden')) {
139
+ ender('body').removeClass('ggs-hidden');
140
+ setHeights();
141
+ setTimeout(
142
+ function () {
143
+ ender('body').removeClass('ggs-animated');
144
+ },
145
+ 20
146
+ );
147
+ }
148
+ else {
149
+ ender('body').addClass('ggs-animated');
150
+ setTimeout(
151
+ function () {
152
+ ender('body').addClass('ggs-hidden');
153
+ },
154
+ 300
155
+ );
156
+ }
157
+ });
158
+
159
+ });
@@ -0,0 +1,19 @@
1
+ /*
2
+ **
3
+ ** Golden Grid System (1.0) SystemSystemSystemSystem<http://goldengridsystem.com/>
4
+ ** by Joni Korpi <http://jonikorpi.com/>
5
+ ** licensed under MIT <http://opensource.org/licenses/mit-license.php>
6
+ */
7
+
8
+ // Golden Grid System Compass Plugin
9
+ // by Tal Williams
10
+ // http://github.com/xtalx/compass-golden-grid-system
11
+
12
+ @import ggs/normalize
13
+ @import ggs/mixins
14
+
15
+ @import partials/type
16
+ @import partials/global
17
+ @import partials/mobile
18
+ @import partials/tablet
19
+ @import partials/large
@@ -0,0 +1,20 @@
1
+ discover :stylesheet
2
+ discover :javascripts
3
+
4
+ html "GGS.html"
5
+
6
+ javascript "GGS.js"
7
+
8
+ description "Golden Grid System"
9
+
10
+ help %Q{
11
+ Please see the Golden Grid System website for documentation:
12
+
13
+ http://goldengridsystem.com/
14
+ }
15
+
16
+ welcome_message %Q{
17
+ Please see the Golden Grid System website for documentation:
18
+
19
+ http://goldengridsystem.com/
20
+ }
@@ -0,0 +1 @@
1
+ // Global style definitions
@@ -0,0 +1,39 @@
1
+ $layout: 16
2
+
3
+
4
+ /*
5
+ **
6
+ ** Sixteen-column grid active
7
+ ** ----------------------------------------------------------------------------------------------------------------------
8
+ ** Margin | # 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | Margin
9
+ ** 5.55555% | % 6.25 12.5 18.75 25.0 31.25 37.5 43.75 50.0 56.25 62.5 68.75 75.0 81.25 87.5 93.75 100 | 5.55555%
10
+ **/
11
+
12
+
13
+ /* @media screen and (min-width: 1872px) */
14
+ @media screen and (min-width: 117em)
15
+
16
+
17
+ header, #twoway
18
+ +outer(1)
19
+
20
+ header .wrapper
21
+ +column(6)
22
+ margin-left: 25%
23
+
24
+ #twoway .wrapper
25
+ +column(4, left)
26
+
27
+ #twoway .wrapper:first-child
28
+ margin-left: 25%
29
+
30
+
31
+ /* @media screen and (min-width: 2080px) */
32
+ @media screen and (min-width: 130em)
33
+
34
+
35
+ body
36
+ /* Zoom baseline grid to 18/16 = 1.125 */
37
+ font-size: #{($font-size + 2) / $em}em
38
+ max-width: 2560 / $em em
39
+
@@ -0,0 +1,57 @@
1
+ $layout: 4
2
+
3
+
4
+ /*
5
+ **
6
+ ** Four-column grid active
7
+ ** ----------------------------------------
8
+ ** Margin | # 1 2 3 4 | Margin
9
+ ** 5.55555% | % 25 50 75 100 | 5.55555%
10
+ **/
11
+
12
+
13
+ header,
14
+ #twoway
15
+ +outer(1)
16
+
17
+ h1, h2
18
+ margin: 24 / 26 * 1em 0 36 / 26 * 1em
19
+
20
+ h2
21
+ font-weight: normal
22
+
23
+ h3
24
+ margin: #{24 / $em}em 0 #{24 / $em}em
25
+
26
+ .wrapper
27
+ +wrapper
28
+
29
+
30
+ /*
31
+ **
32
+ ** Fixes for IE6-8
33
+ ** http://jonikorpi.com/leaving-old-IE-behind/
34
+ **/
35
+
36
+
37
+ .ie body
38
+ width: #{640 / $em}em
39
+ margin: 0 auto
40
+ font-size: #{($font-size + 1) / $em}em
41
+
42
+ .ie h1
43
+ +huge
44
+ margin: 48 / 42 * 1em 0 24 / 42 * 1em
45
+
46
+
47
+ /* @media screen and (min-width: 640px)
48
+ @media screen and (min-width: 40em)
49
+
50
+
51
+ body
52
+ /* Zoom baseline grid to 17/16 = 1.0625
53
+ font-size: #{($font-size + 1) / $em}em
54
+
55
+ h1
56
+ +huge
57
+ margin: 48 / 42 * 1em 0 24 / 42 * 1em
@@ -0,0 +1,74 @@
1
+ $layout: 8
2
+
3
+
4
+ /*
5
+ **
6
+ ** Eight-column grid active
7
+ ** ----------------------------------------------------------------------
8
+ ** Margin | # 1 2 3 4 5 6 7 8 | Margin
9
+ ** 5.55555% | % 12.5 25.0 37.5 50.0 62.5 75.0 87.5 100 | 5.55555%
10
+ **/
11
+
12
+
13
+ /* @media screen and (min-width: 720px)
14
+ @media screen and (min-width: 45em)
15
+
16
+
17
+ body
18
+ /* Reset baseline grid to 16/16 = 1
19
+ font-size: #{$font-size / $em}em
20
+
21
+ #twoway .wrapper
22
+ +column(4, left)
23
+ +wrapper
24
+
25
+
26
+ /* @media screen and (min-width: 888px)
27
+ @media screen and (min-width: 55.5em)
28
+
29
+
30
+ body
31
+ /* Zoom baseline grid to 17/16 = 1.0625
32
+ font-size: #{($font-size + 1) / $em}em
33
+
34
+
35
+ /* @media screen and (min-width: 984px)
36
+ @media screen and (min-width: 61.5em)
37
+
38
+
39
+ body
40
+ /* Reset baseline grid to 16/16 = 1.0
41
+ font-size: #{$font-size / $em}em
42
+
43
+ header, #twoway
44
+ +outer(3)
45
+
46
+
47
+ /* @media screen and (min-width: 1200px)
48
+ @media screen and (min-width: 75em)
49
+
50
+
51
+ body
52
+ /* Zoom baseline grid to 17/16 = 1.0625
53
+ font-size: #{($font-size + 1) / $em}em
54
+
55
+
56
+ /* @media screen and (min-width: 1392px)
57
+ @media screen and (min-width: 87em)
58
+
59
+
60
+ body
61
+ /* Reset baseline grid to 16/16 = 1.0
62
+ font-size: #{$font-size / $em}em
63
+
64
+ header, #twoway
65
+ +outer(5)
66
+
67
+
68
+ /* @media screen and (min-width: 1680px)
69
+ @media screen and (min-width: 105em)
70
+
71
+
72
+ body
73
+ /* Zoom baseline grid to 17/16 = 1.0625
74
+ font-size: #{($font-size + 1) / $em}em
@@ -0,0 +1,37 @@
1
+ /*
2
+ **
3
+ ** Zoomable baseline grid
4
+ ** type size presets
5
+ */
6
+
7
+
8
+ body
9
+ /* 16px / 24px */
10
+ +body
11
+
12
+ .small
13
+ /* 13px / 18px */
14
+ +small
15
+
16
+ h3,
17
+ .normal
18
+ /* 16px / 24px */
19
+ +normal
20
+
21
+ h1,
22
+ h2,
23
+ .large
24
+ /* 16px / 24px */
25
+ +large
26
+
27
+ .huge
28
+ /* 42px / 48px */
29
+ +huge
30
+
31
+ .massive
32
+ /* 68px / 72px */
33
+ +massive
34
+
35
+ .gigantic
36
+ /* 110px / 120px */
37
+ +gigantic
metadata ADDED
@@ -0,0 +1,72 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: compass-golden-grid-system
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.1'
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Tal Williams
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-10-10 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: compass
16
+ requirement: &70203615442760 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0.10'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70203615442760
25
+ description: A folding grid for responsive design.
26
+ email:
27
+ - contact.me@talwilliams.com
28
+ executables: []
29
+ extensions: []
30
+ extra_rdoc_files: []
31
+ files:
32
+ - .gitignore
33
+ - Gemfile
34
+ - README.mkdn
35
+ - compass-golden-grid-system.gemspec
36
+ - lib/ggs.rb
37
+ - stylesheets/ggs/_mixins.sass
38
+ - stylesheets/ggs/_normalize.sass
39
+ - templates/project/GGS.html
40
+ - templates/project/GGS.js
41
+ - templates/project/GGS.sass
42
+ - templates/project/manifest.rb
43
+ - templates/project/partials/_global.sass
44
+ - templates/project/partials/_large.sass
45
+ - templates/project/partials/_mobile.sass
46
+ - templates/project/partials/_tablet.sass
47
+ - templates/project/partials/_type.sass
48
+ homepage: http://github.com/xtalx/compass-golden-grid-system
49
+ licenses: []
50
+ post_install_message:
51
+ rdoc_options: []
52
+ require_paths:
53
+ - lib
54
+ required_ruby_version: !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ! '>='
58
+ - !ruby/object:Gem::Version
59
+ version: '0'
60
+ required_rubygems_version: !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ requirements: []
67
+ rubyforge_project: compass-golden-grid-system
68
+ rubygems_version: 1.8.10
69
+ signing_key:
70
+ specification_version: 3
71
+ summary: Compass compatible port of Golden Grid System
72
+ test_files: []