//
// Responsive: Utility classes
// --------------------------------------------------


// IE10 in Windows (Phone) 8
//
// Support for responsive views via media queries is kind of borked in IE10, for
// Surface/desktop in split view and for Windows Phone 8. This particular fix
// must be accompanied by a snippet of JavaScript to sniff the user agent and
// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at
// our Getting Started page for more information on this bug.
//
// For more information, see the following:
//
// Issue: https://github.com/twbs/bootstrap/issues/10497
// Docs: http://getbootstrap.com/getting-started/#browsers
// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/

@-ms-viewport {
  width: device-width;
}


// Visibility utilities

@include responsive-invisibility('.visible-xs');
@media (max-width: $screen-xs-max) {
  @include responsive-visibility('.visible-xs');
}

@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-visibility('.visible-xs.visible-sm');
}


@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-visibility('.visible-xs.visible-md');
}


@media (min-width: $screen-lg-min) {
  @include responsive-visibility('.visible-xs.visible-lg');
}


@include responsive-invisibility('.visible-sm');

@media (max-width: $screen-xs-max) {
  @include responsive-visibility('.visible-sm.visible-xs');
}

@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-visibility('.visible-sm');
}

@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-visibility('.visible-sm.visible-md');
}


@media (min-width: $screen-lg-min) {
  @include responsive-visibility('.visible-sm.visible-lg');
}


@include responsive-invisibility('.visible-md');

@media (max-width: $screen-xs-max) {
  @include responsive-visibility('.visible-md.visible-xs');
}


@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-visibility('.visible-md.visible-sm');
}

@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-visibility('.visible-md');
}

@media (min-width: $screen-lg-min) {
  @include responsive-visibility('.visible-md.visible-lg');
}


@include responsive-invisibility('.visible-lg');

@media (max-width: $screen-xs-max) {
  @include responsive-visibility('.visible-lg.visible-xs');
}


@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-visibility('.visible-lg.visible-sm');
}


@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-visibility('.visible-lg.visible-md');
}

@media (min-width: $screen-lg-min) {
  @include responsive-visibility('.visible-lg');
}

@include responsive-visibility('.hidden-xs');
@media (max-width: $screen-xs-max) {
  @include responsive-invisibility('.hidden-xs');
}

@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-invisibility('.hidden-xs.hidden-sm');
}


@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-invisibility('.hidden-xs.hidden-md');
}


@media (min-width: $screen-lg-min) {
  @include responsive-invisibility('.hidden-xs.hidden-lg');
}


@include responsive-visibility('.hidden-sm');

@media (max-width: $screen-xs-max) {
  @include responsive-invisibility('.hidden-sm.hidden-xs');
}

@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-invisibility('.hidden-sm');
}

@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-invisibility('.hidden-sm.hidden-md');
}


@media (min-width: $screen-lg-min) {
  @include responsive-invisibility('.hidden-sm.hidden-lg');
}


@include responsive-visibility('.hidden-md');

@media (max-width: $screen-xs-max) {
  @include responsive-invisibility('.hidden-md.hidden-xs');
}


@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-invisibility('.hidden-md.hidden-sm');
}

@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-invisibility('.hidden-md');
}

@media (min-width: $screen-lg-min) {
  @include responsive-invisibility('.hidden-md.hidden-lg');
}


@include responsive-visibility('.hidden-lg');

@media (max-width: $screen-xs-max) {
  @include responsive-invisibility('.hidden-lg.hidden-xs');
}


@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) {
  @include responsive-invisibility('.hidden-lg.hidden-sm');
}


@media (min-width: $screen-md-min) and (max-width: $screen-md-max) {
  @include responsive-invisibility('.hidden-lg.hidden-md');
}

@media (min-width: $screen-lg-min) {
  @include responsive-invisibility('.hidden-lg');
}

// Print utilities

@include responsive-invisibility('.visible-print');

@media print {

  @include responsive-visibility('.visible-print');


  @include responsive-invisibility('.hidden-print');

}
