.ipt-wrap { display: table; vertical-align: top; box-sizing: border-box; .ipt-first { width: 100%; display: table-cell; vertical-align: inherit; } .ipt-second { padding-left: 5px; display: table-cell; vertical-align: inherit; } } .flex-line { display: flex; flex-direction: row; div { flex: 1; &:nth-child(n+1) { padding-left: 5px; } } } div.sticky, section.sticky { position: sticky; top: 1rem; } .inline { display: inline; } .form-group { display: flex; flex-direction: row; flex-wrap: wrap; > *:not(label) { flex: 0 1 auto; } & + * { margin-top: .75rem; } label { font-size: .9rem; flex: 0 0 100%; display: inline-flex; align-items: center; &> i { margin-right: .5rem; } } span.checkbox+span.checkbox { margin-left: 1.5rem; } .input-control { flex: 1; display: flex; flex-direction: row; flex-wrap: wrap; & +.input-control { margin-left: 1rem; } } textarea, .contenteditable { height: 8rem; } } * + .form-group { margin-top: .75rem; } @media (max-width: 768px) { .form-group { flex-direction: column; } } @each $tuple in 'wf-100' 100%, 'wf-80' 80%, 'wf-20' 20%, 'wf-66' 66.66%, 'wf-50' 50%, 'wf-33' 33.33%, 'wf-25' 25%, 'wf-75' 75% { .#{nth($tuple, 1)} { width: #{nth($tuple, 2)}; } } .spacer { padding: 5px; } .resizable { resize: both; overflow: auto; }