UNPKG

marching

Version:

Marching.js is a JavaScript library that compiles GLSL ray marchers.

661 lines (516 loc) 12.6 kB
support-for-ie = true @import 'nib' // Fonts $body-font = Helvetica Neue, Open Sans, sans-serif $mono-font = Menlo, monospace // Margins $pad = 40px // Space between things $sidepad = 30px // Padding to the left of the sidebar $minipad = 20px // Space for mobile $vmargin = 10px // Margin between blocks // Colors $offblack = rgba(46,50,53,1) //#f3f6fb $grey = rgba(173,173,173,1)// rgb( 153 )// 9090aa $txt = rgba(173,173,173,1) //#505050 $accent =rgba(89, 151, 198, 1) //#3cc * 0.85 $line = #e4e7ec * 0.98 h1:before, h2:before, h3:before, h4:before background:grey !important // Misc $shadow-str = 0.1 // Dimensions $sidebar-width = 230px $content-width = 550px $pre-width = 380px /* ---------------------------------------------------------------------------- * Fonts */ // @import url('//fonts.googleapis.com/css?family=Montserrat:700|Open+Sans:300') // ---------------------------------------------------------------------------- // Mixins scrollbar($bg=$offblack) & -webkit-overflow-scrolling: touch &::-webkit-scrollbar width: 15px height: 15px &::-webkit-scrollbar-thumb background: $offblack// #ddd border-radius: 8px border: solid 4px $bg &:hover::-webkit-scrollbar-thumb background: $offblack*1.5 box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2) antialias() -webkit-font-smoothing: antialiased text-rendering: optimizeLegibility /* ---------------------------------------------------------------------------- * Base */ global-reset() html, body height: 100% background:$offblack html overflow-x: hidden body, td, textarea, input font-family: $body-font line-height: 1.6 font-size: 13px color:$txt @media (max-width: 480px) /* Mobile */ font-size: 12px a color: $accent text-decoration: none &:hover color: $accent * 0.8 /* ---------------------------------------------------------------------------- * Content styling */ .content p, ul, ol, h1, h2, h3, h4, h5, h6, pre, blockquote padding: $vmargin 0 box-sizing: border-box h1, h2, h3, h4, h5, h6 font-weight: bold antialias() pre font-family: $mono-font ul > li list-style-type: disc ol > li list-style-type: decimal ul, ol margin-left: 20px ul > li list-style-type: none position: relative &:before content: '' display: block absolute: left -17px top 7px width: 5px height: 5px border-radius: 4px box-sizing: border-box background: black border: solid 1px $grey li > :first-child padding-top: 0 strong, b font-weight: bold i, em font-style: italic color: $grey code font-family: $mono-font background: $offblack padding: 1px 3px font-size: 0.95em pre > code display: block background: transparent font-size: 0.85em //letter-spacing: -1px blockquote :first-child padding-top: 0 :last-child padding-bottom: 0 table margin-top: $vmargin margin-bottom: $vmargin padding: 0 border-collapse: collapse clear: both float: left tr border-top: 1px solid #cccccc background-color: black margin: 0 padding: 0 :nth-child(2n) background-color: #f8f8f8 th text-align: auto; font-weight: bold border: 1px solid #cccccc margin: 0 padding: 6px 13px td text-align: auto; border: 1px solid #cccccc margin: 0 padding: 6px 13px th, td :first-child margin-top: 0; :last-child margin-bottom: 0; /* ---------------------------------------------------------------------------- * Content */ .content-root min-height: 90% position: relative .content padding-top: $pad - $vmargin padding-bottom: $pad padding-left: $pad padding-right: $pad clearfix() max-width: 700px blockquote color: $grey text-shadow: 0 1px 0 rgba(black, 0.5) h1, h2, h3 antialias() font-family: $body-font//montserrat padding-bottom: 0 + p, ul, ol padding-top: 10px h1, h2 text-transform: uppercase letter-spacing: 1px font-size: 1.5em h3 font-size: 1.2em // Lines h1, h2, .big-heading padding-top: $pad * 2 &:before display: block content: '' background: white//linear-gradient(left, rgba($line, 1.0) 80%, rgba($line, 0.0)) box-shadow: 0 1px 0 rgba(black, 0.4) height: 1px position: relative top: $pad * -1 left: $pad * -1 width: 100% @media (max-width: 768px) /* Mobile and tablet */ padding-top: $minipad * 2 &:before background: $line left: $pad * -1 top: $minipad * -1 width: 120% // Small headings h4, h5, .small-heading border-bottom: solid 1px grey//rgba(black, 0.07) color: $grey padding-top: $vmargin * 3 padding-bottom: 10px body:not(.big-h3) & h3 @extends .content .small-heading font-size: 0.9em body.big-h3 & h3 @extends .content .big-heading h1:first-child padding-top: 0 &, a, a:visited color: $txt &:before display: none @media (max-width: 768px) /* Tablet */ .content h4, h5, .small-heading, body:not(.big-h3) & h3 padding-top: $vmargin * 2 @media (max-width: 480px) /* Mobile */ .content padding: $minipad padding-top: $minipad * 2 h4, h5, .small-heading, body:not(.big-h3) & h3 padding-top: $vmargin // ---------------------------------------------------------------------------- // Code blocks inset-box() background: $offblack border: solid 1px $offblack*0.95 border-top: solid 1px $offblack*0.9 border-left: solid 1px $offblack*0.93 display: block padding: 10px border-radius: 2px overflow: auto scrollbar($offblack) body.no-literate .content pre > code inset-box() @media (max-width: 1180px) /* Small desktop */ .content pre > code inset-box() // ---------------------------------------------------------------------------- // Buttons .button antialias() font-family: montserrat, sans-serif letter-spacing: -1px font-weight: bold display: inline-block padding: 3px 25px border: solid 2px $accent border-radius: 20px margin-right: 15px &, &:visited background: $accent color: black text-shadow: none &:hover border-color: #111 background: #111 color: black &.light &, &:visited background: transparent color: $grey border-color: $grey text-shadow: none &:hover border-color: $grey background: $grey color: black .content .button + em color: $grey // ---------------------------------------------------------------------------- // Literate mode content @media (min-width: 1180px) /* Big desktop */ body:not(.no-literate) .content-root background-color: $offblack $w = ($sidebar-width + $content-width) box-shadow: inset $w 0 black, inset ($w + 1) 0 $line, inset ($w + 10) 0 5px -10px rgba(black, $shadow-str) // Literate mode @media (min-width: 1180px) /* Big desktop */ small-heading() margin-left: $pad width: $content-width - $pad * 2 margin-bottom: 3px padding-left: 0 padding-right: 0 body:not(.no-literate) .content padding-left: 0 padding-right: 0 width: $content-width + $pre-width max-width: none > p, ul, ol, h1, h2, h3, h4, h5, h6, pre, blockquote width: $content-width box-sizing: border-box padding-right: $pad padding-left: $pad h1, h2, h3 clear: both width: 100% pre, blockquote width: $pre-width padding-left: ($pad/2) padding-right: ($pad/2) float: right clear: right + p, ul, ol, h4, h5, h6 clear: both p, ul, ol, h4, h5, h6 float: left clear: left h4, h5, .small-heading, body:not(.big-h3) & h3 small-heading() table margin-left: $pad margin-right: $pad max-width: $content-width - $pad*2 body:not(.no-literate):not(.big-h3) .content > h3 small-heading() // ---------------------------------------------------------------------------- // Header .header background: $offblack text-shadow: 0 1px 0 rgba(black, 0.5) border-bottom: solid 1px $line padding: 15px 15px 15px $sidepad clearfix() line-height: 20px position: relative .left float: left .right text-align: right position: absolute right: 15px top: 15px iframe display: inline-block vertical-align: middle h1 antialias() font-weight: bold font-family: montserrat, sans-serif font-size: 13px &, a, a:visited color: $grey a:hover color: $txt li a font-size: 0.88em color: $grey display: block &:hover color: $grey*0.4 @media (min-width: 480px) /* Tablet & Desktop */ h1 float: left ul, li display: block float: left ul margin-left: -15px h1 + ul border-left: solid 1px $line margin-left: 15px li border-left: solid 1px rgba(black, 0.5) border-right: solid 1px $line &:last-child border-right: 0 li a padding: 0 15px @media (max-width: 480px) /* Mobile */ // Hide extra stuff on mobile .right display: none // ---------------------------------------------------------------------------- // Sidebar .menubar antialias() .section padding: $sidepad $sidepad box-sizing: border-box .section + .section border-top: solid 1px $line .section.no-line border-top: 0 padding-top: 0 a.big.button display: block box-sizing: border-box width: 100% padding: 10px 20px text-align: center font-weight: bold font-size: 1.1em background: transparent border: solid 3px $accent border-radius: 30px font-family: montserrat, sans-serif &, &:visited color: $accent text-decoration: none &:hover background: $accent &, &:visited color: black @media (max-width: 480px) /* Mobile */ .menubar padding: $minipad border-bottom: solid 1px $line @media (max-width: 768px) /* Mobile and tablet */ .menubar display: none @media (min-width: 768px) /* Desktop */ .content-root padding-left: $sidebar-width .menubar position: absolute left: 0 top: 0 bottom: 0 width: $sidebar-width border-right: solid 1px $line .menubar.fixed position: fixed scrollbar() overflow-y: auto .menubar font-size: 0.9em // Menu items .menu ul.level-1 > li + li margin-top: 20px a box-sizing: border-box position: relative display: block padding-top: 1px padding-bottom: 1px margin-right: ($sidepad * -1) &, &:visited color: $accent &:hover color: $accent*0.8 a.level-1 font-family: montserrat, sans-serif text-transform: uppercase font-size: 0.9em font-weight: bold &, &:visited color: $grey &:hover color: $grey*0.6 a.level-2 font-weight: normal a.level-3 font-weight: normal font-size: 0.9em padding-left: 10px a.active &, &:visited, &:hover color: $txt !important font-weight: bold !important // Indicator &:after content: '' display: block box-sizing: border-box absolute: top 10px right $sidepad width: 9px height: 3px border-radius: 2px background: $accent // ---------------------------------------------------------------------------- // Syntax highlighting code .string, .number color: $accent//#3ac .init color: #383 .keyword font-weight: bold .comment color: $grey * 1.2 // ---------------------------------------------------------------------------- .content .large-brief & > h1:first-child + p, > p.brief font-size: 1.3em font-family: Open Sans, sans-serif font-weight: 300 // ---------------------------------------------------------------------------- .title-area min-height: 100px box-sizing: border-box antialias() text-align: center border-bottom: solid 1px $line overflow: hidden > img.bg z-index: 0 // Start it off screen position: absolute left: -9999px > div position: relative z-index: 1