@charset "UTF-8"; /*------------------------------------*\ #PATTERN LAB STYLES \*------------------------------------*/ /** * NOTES: * 1) These styles are specific to Pattern Lab and should not be modified. * All project styles should be modified in /source/css/ * * 2) Any !important declarations are to prevent brand styles from overriding * style guide styles */ /*------------------------------------*\ #TABLE OF CONTENTS \*------------------------------------*/ /** * PATTERN LAB VARIABLES * Fonts....................... * Colors...................... * Typography.................. * Spacing & Padding........... * Breakpoints................. * Animation................... * Borders..................... * * RESET.......................CSS reset * * UTILITY CLASSES.............Establish global styles * * GLOBAL ELEMENTS.............Establish global styles * -----Main * -----Headings * -----Text-related elements (p, blockquote, lists) * -----Defaults * -----Breakpoints * STYLE GUIDE INTERFACE------------------CSS for the Pattern Lab Container. * -----Header * -----Navigation * -----Controls * -----Main Container * -----Viewport * -----Section Headers * -----Code View */ /*------------------------------------*\ #VARIABLES \*------------------------------------*/ /** * These variables are specific to the Pattern Lab shell and exist * indepenedently of any project-specific styles */ /*------------------------------------*\ #RESET \*------------------------------------*/ /** * Apply border-box to all elements * * 1) This is a broadly-applied style that affects every * element on the screen. This can bleed into user's styles * but since it's been a best practice for years now we're * going to default to this. */ * { -webkit-box-sizing: border-box; box-sizing: border-box; } /*------------------------------------*\ #UTILITIES \*------------------------------------*/ /** * Visibilly hidden but still accessible to screen readers */ .is-vishidden { position: absolute !important; overflow: hidden; width: 1px; height: 1px; padding: 0; border: 0; clip: rect(1px, 1px, 1px, 1px); } /*------------------------------------*\ #PATTERN LAB INTERFACE \*------------------------------------*/ /** * html & body tag */ #patternlab-html, #patternlab-body { margin: 0; padding: 0; background: #ddd; -webkit-text-size-adjust: 100%; } /*------------------------------------*\ #HEADER \*------------------------------------*/ /** * Pattern Lab's header is fixed across the top of the viewport and * contains the primary pattern navigation, viewport resizing items, * and tools. */ .sg-header { background: #000; color: #fff; font-family: "HelveticaNeue", "Helvetica", "Arial", sans-serif; text-transform: uppercase; position: fixed; top: 0; left: 0; z-index: 4; width: 100%; /** * All lists appearing in the header */ /** * All links appearing in the header */ } .sg-header ul { padding: 0; margin: 0; list-style: none; } .sg-header a { font-size: 70%; color: #808080; text-decoration: none; line-height: 1; padding: 1em 0.7em; -webkit-transition: background 0.1s ease-out; transition: background 0.1s ease-out; -webkit-transition: color 0.1s ease-out; transition: color 0.1s ease-out; } .sg-header a:hover, .sg-header a:focus, .sg-header a.active { color: #fff; background: #222; } /*------------------------------------*\ #NAVIGATION \*------------------------------------*/ /** * Nav toggle expands and collapses .sg-nav * 1) On larger viewports, the toggle gets hidden and * the full nav is displayed across the top. */ .sg-nav-toggle { display: inline-block; position: relative; text-transform: uppercase; z-index: 2; } @media all and (min-width: 42em) { .sg-nav-toggle { display: none; } } /** * Navigation container */ @media all and (max-width: 42em) { .sg-nav-container { overflow: hidden; max-height: 0; -webkit-transition: max-height 0.1s ease-out; transition: max-height 0.1s ease-out; } .sg-nav-container.active { max-height: 50em; } } /** * Nav list * 1) appears as an
    */ .sg-nav { z-index: 1; margin: 0; padding: 0; list-style: none; /** * Nav
      list */ /** * Links within the nav */ } .sg-nav > li { cursor: pointer; } @media all and (min-width: 42em) { .sg-nav > li { border-bottom: 0; float: left; position: relative; } .sg-nav > li > ol { position: absolute; top: 2em; left: 0; } } .sg-nav a { display: block; } /*------------------------------------*\ #ACCORDION \*------------------------------------*/ /** * Accordions are dropdowns used for the primary nav and * tools dropdowns. */ .sg-acc-handle { /** * Dropdown caret after accordion handle */ } .sg-acc-handle:after { content: 'Ôû╝'; color: rgba(255, 255, 255, 0.25); display: inline-block; font-size: 7px; position: relative; top: -1px; right: -2px; -webkit-transition: all 0.1s ease-out; transition: all 0.1s ease-out; } @media all and (min-width: 42em) { .sg-acc-handle:after { float: none; } } .sg-acc-handle:hover:after, .sg-acc-handle:focus:after { color: #808080; } .sg-acc-handle.active { color: #fff; background: #222; } .sg-acc-handle.active:after { top: -2px; color: #808080; -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } /** * Accordion panel */ .sg-acc-panel { overflow: hidden; max-height: 0; margin: 0; padding: 0; list-style: none; min-width: 10em; -webkit-transition: max-height 0.1s ease-out; transition: max-height 0.1s ease-out; /** * List items appearing in each accordion panel */ /** * Links appearing in each accordion panel */ /** * Active is when accordion panel is open */ /** * Right align accordion dropdown */ } .sg-acc-panel li { background: #222; } .sg-acc-panel li:last-child { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; } .sg-acc-panel li:last-child a { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; } .sg-acc-panel a { display: block; } .sg-acc-panel.active { max-height: 120em; overflow: auto; } .sg-acc-panel.sg-right { position: absolute; left: auto; right: 0; } /** * Sub-navigation * 1) Third-level links are stylistically different * than first and second nav links. */ .sg-sub-nav { list-style: none; } .sg-sub-nav a { text-transform: none; padding-left: 1rem; } /*------------------------------------*\ #CONTROLS \*------------------------------------*/ /** * Controls contains viewport resizer and tools dropdown */ .sg-controls { border: 0; position: absolute; top: 0; right: 0; z-index: 2; } /** * Control list */ .sg-control > li { float: left; } /*------------------------------------*\ #ISH STYLES \*------------------------------------*/ /** * 1) ish. (http://bradfrost.com/demo/ish/) is a viewport-resizing tool * that's built into Pattern Lab. */ /** * Size Container */ .sg-size { width: 135px; } @media all and (min-width: 42em) { .sg-size { width: auto; } } /** * Current size * 1) This is the wrapper for the form that houses the current * viewport size in px and em */ .sg-current-size { font-size: 70%; color: #808080; padding: 0.85em 0.7em; } @media all and (min-width: 53em) { .sg-current-size { float: left; } } /** * The
      for the current size */ #sg-form { margin: 0; border: 0; padding: 0; } /** * Size input fields */ .sg-input { margin: -2px 0 0 0; padding: 0.1em; border: 0; border-radius: 3px; background: #000; color: #808080; width: 25px; text-align: right; -webkit-transition: all 0.1s ease-out; transition: all 0.1s ease-out; } .sg-input:hover { color: #fff; background: #222; } .sg-input:active, .sg-input:focus { outline: 0; background: #808080; color: #fff; } @media all and (min-width: 42em) { .sg-input { width: 35px; } .sg-input.sg-size-px { width: 30px; } } /** * Size options * 1) This holds the S, M, L, Rand, Disco links * 2) Depending on the config, these number of options may be * larger or smaller. */ .sg-size-options { display: none; } .sg-size-options a { display: block; } @media all and (min-width: 53em) { .sg-size-options { display: block; float: left; position: static; } .sg-size-options > li { float: left; } } /*------------------------------------*\ #TOOLS DROPDOWN \*------------------------------------*/ /** * The tools dropdown contains more utilities such as show/hide * pattern info and pattern search, and also links to open in a * new window and view the documentation */ /** * Tools dropdown button */ .sg-tools-toggle { font-size: 70%; background: #000; color: #808080; text-decoration: none; line-height: 1; border: 0; cursor: pointer; padding: 0.9em 0.7em 0.6em; } .sg-tools-toggle:after { display: none; content: ""; } /** * Pattern Finder * 1) This is the container for pattern search, which * is handled by Typeahead (see below styles) */ .sg-find { position: relative; } /*------------------------------------*\ #TYPEAHEAD \*------------------------------------*/ /** * We're using Twitter Typeahead to autocomplete pattern * searches. https://twitter.github.io/typeahead.js/ */ .twitter-typeahead { width: 100%; } .typeahead { border: 0; background: #222; color: #808080; width: 100%; right: 0; padding: 0.8em; text-transform: lowercase; } .typeahead:focus { background: #808080; color: #fff; } .tt-input { background: #808080; color: #fff; text-transform: uppercase; } .tt-input:focus { text-transform: lowercase; } .tt-hint { text-transform: lowercase; border-bottom-right-radius: 6px; border-bottom-left-radius: 6px; } .tt-dropdown-menu { text-transform: lowercase; background-color: #808080; width: 100%; border-bottom-right-radius: 6px; border-bottom-left-radius: 6px; } .tt-suggestion { color: #eee; font-size: 75%; padding: 0.8em; } .tt-suggestion.tt-cursor { color: #fff; background: rgba(255, 255, 255, 0.25); } .tt-suggestion p { margin: 0; } /*------------------------------------*\ #PATTERN STATES \*------------------------------------*/ /** * Pattern states add color-coded dots next to patterns * in the dropdown navigation. */ .sg-pattern-state { text-transform: none !important; } /** * Pattern State bullet */ .sg-pattern-state:before { content: "\2022"; margin-right: 4px; font-size: 18px; vertical-align: bottom; display: inline-block; text-decoration: none; } /** * when part of a lineage muck with the size */ .sg-pattern-lineage .sg-pattern-state:before { font-size: 12px; } /** * when part of a view all view muck with the size */ #sg-patterns .sg-pattern-state:before { font-size: 14px; } #sg-patterns .sg-pattern-state { color: #666; } /** * Pattern States that appear in the dropdown nav */ .sg-nav .sg-pattern-state:before { margin-top: -4px; margin-bottom: 0; margin-left: -4px; height: 20px; display: block; float: left; } /** * In Progress state */ .inprogress:before { color: #FF4136 !important; } /** * In Review state */ .inreview:before { color: #FFCC00 !important; } /** * Complete state */ .complete:before { color: #2ECC40 !important; } /*------------------------------------*\ #PATTERN LAB VIEWPORT \*------------------------------------*/ /** * To keep user code and PL code separate, and to make * resizing the viewport possible, PL contains an iframe * that houses all user code. */ /** * Viewport wrapper div * 1) This wrapper div occupies all remaining viewport space after PL's header */ #sg-vp-wrap { text-align: center; width: 100%; position: fixed; top: 2em; bottom: 0; left: 0; right: 0; z-index: 0; } /** * Cover * 1) This is an invisible div that sits above the iframe and is * used in JS for manual viewport resizing purposes. */ #sg-cover { width: 100%; height: 100%; display: none; position: absolute; z-index: 20; cursor: col-resize; } /** * Gen Cover * 1) This is */ #sg-gen-container { height: 100%; position: relative; text-align: center; margin: 0 auto; -webkit-overflow-scrolling: touch; overflow-y: auto; overflow-x: hidden; } #sg-gen-container.hay-mode { -webkit-transition: all 40s linear; transition: all 40s linear; } /** * Viewport iframe * 1) this is the actual