// Colors $text: #1c1d1f; $text-muted: rgba($text, 0.7); $light_background: #f4f6f6; $light_mode_border: #F8F8F8; @mixin font-size($size) { font-size:($size/16) + 0em; } @mixin transition($time: 0.3s) { transition: $time all ease; } @mixin transform($effect) { -webkit-transform: $effect; -moz-transform: $effect; transform: $effect; } * { outline: 0; margin: 0; padding: 0; font-family: 'Nunito', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; box-sizing: border-box; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); font-size: 16px; text-decoration: none; } body { background: $light_background; } #toolbar-wrapper { max-width: 800px; margin: 30px auto; .button { background: white; margin-right: 15px; border-radius: 8px; padding: 7px 10px; cursor: pointer; border: none; @include transition(150ms); .icon { height: 14px; vertical-align: middle; path, line, polyline, rect, circle { @include transition(150ms); } } .label { @include transition(150ms); @include font-size(14); font-weight: 700; color: $text; } &:active { @include transform(scale(0.95)); } &:hover { .icon { path, line, polyline, rect, circle { color: inherit; } } } } } #invoice-wrapper { max-width: 800px; padding: 50px; margin: 0 auto; background: white; border-radius: 8px; } .table { width: 100%; .table-header { border-bottom: 1px solid $light_mode_border; td { padding-bottom: 10px; @include font-size(12); font-weight: 700; &:last-child { text-align: right; } } } .table-body { td { @include font-size(16); font-weight: 700; &:last-child { text-align: right; } } } } .list { margin-bottom: 20px; .list-item { display: block; margin-bottom: 5px; b { @include font-size(16); font-weight: 700; } span { @include font-size(16); font-weight: 500; } } } .invoice-header { display: flex; justify-content: space-between; align-items: center; .logo { img { height: 40px; width: auto; } } .title { h1 { @include font-size(30); font-weight: 300; } } } .invoice-subject { margin-top: 40px; background: hsla(0, 0%, 98%, 1); padding: 15px 20px; border-radius: 10px; .list { margin-bottom: 0; } } .invoice-partners { display: flex; justify-content: space-between; margin-top: 40px; .partner:last-child { min-width: 250px; } .partner-title { @include font-size(22); font-weight: 300; margin-bottom: 10px; } } .invoice-order { margin-top: 40px; } .invoice-summary { margin-top: 60px; text-align: right; b { font-weight: 700; @include font-size(22); } } @media print { #toolbar-wrapper { display: none; } #invoice-wrapper { padding: 0; margin: 0; } .invoice-subject { padding: 0; } @page { margin: 0; } body { margin: 1.6cm; } }