//
// Responsive display utilities
// Inspired by Bootstrap v4
// --------------------------------------------------

.responsive-display(@infix) {
  @media (min-width: ~"@{screen-@{infix}-min}") {
    .d-@{infix}-none          { .d-none; }
    .d-@{infix}-inline        { .d-inline; }
    .d-@{infix}-inline-block  { .d-inline-block; }
    .d-@{infix}-block         { .d-block; }
    .d-@{infix}-table         { .d-table; }
    .d-@{infix}-table-cell    { .d-table-cell; }
    .d-@{infix}-flex          { .d-flex; }
    .d-@{infix}-inline-flex   { .d-inline-flex; }
  }
}

.d-none         { display: none !important; }
.d-inline       { display: inline !important; }
.d-inline-block { display: inline-block !important; }
.d-block        { display: block !important; }
.d-table        { display: table !important; }
.d-table-cell   { display: table-cell !important; }
.d-flex         { display: flex !important; }
.d-inline-flex  { display: inline-flex !important; }

.responsive-display(sm);
.responsive-display(md);
.responsive-display(lg);


// Utilities for toggling `display` in print
@media print {
  .d-print-none         { display: none !important; }
  .d-print-inline       { display: inline !important; }
  .d-print-inline-block { display: inline-block !important; }
  .d-print-block        { display: block !important; }
  .d-print-table        { display: table !important; }
  .d-print-table-row    { display: table-row !important; }
  .d-print-table-cell   { display: table-cell !important; }
  .d-print-flex         { display: flex !important; }
  .d-print-inline-flex  { display: inline-flex !important; }
}
