// // Base styles // -------------------------------------------------- // Use box sizing on all the things! * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } body { position: fixed; top: 0; right: 0; bottom: 0; left: 0; font-family: $font-family-default; font-size: $font-size-default; line-height: $line-height-default; color: #000; background-color: #fff; } // Universal link styling a { color: $primary-color; text-decoration: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); // Removes the dark touch outlines on links } strong { font-weight: $font-weight; } // Wrapper to be used around all content not in .bar-title and .bar-tab .content { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: auto; background-color: #efeff4; -webkit-transition-property: top, bottom; transition-property: top, bottom; -webkit-transition-duration: .2s, .2s; transition-duration: .2s, .2s; -webkit-transition-timing-function: linear, linear; transition-timing-function: linear, linear; -webkit-overflow-scrolling: touch; } // Hack to force all relatively and absolutely positioned elements still render while scrolling // Note: This is a bug for "-webkit-overflow-scrolling: touch" .content > * { -webkit-transform: translateZ(0px); transform: translateZ(0px); } // Utility wrapper to pad in components like forms, block buttons and segmented-controllers so they're not full-bleed .content-padded { padding: 10px; } // Pad top/bottom of content so it doesn't hide behind .bar-title and .bar-tab. // Note: For these to work, content must come after both bars in the markup .bar-title ~ .content { padding-top: 44px; } .bar-tab ~ .content { padding-bottom: 51px; } .bar-header-secondary ~ .content { padding-top: 88px; }