button.print-button {
    width: 100px;
    height: 100px;
    float: right;
}

.print-icon,
.print-icon::before,
.print-icon::after,
button.print-button:hover .print-icon::after {
    border: solid 4px #333;
}

.print-icon::after {
    border-width: 2px;
}

button.print-button {
    position: relative;
    padding: 0;
    border: 0;
    border: none;
    background: transparent;
}

.print-icon,
.print-icon::before,
.print-icon::after,
button.print-button:hover .print-icon::after {
    box-sizing: border-box;
    background-color: #fff;
}

.print-icon {
    position: relative;
    display: inline-block;
    padding: 0;
    margin-top: 20%;
    width: 60%;
    height: 35%;
    background: #fff;
    border-radius: 20% 20% 0 0;
}

.print-icon::before {
    content: " ";
    position: absolute;
    bottom: 100%;
    left: 12%;
    right: 12%;
    height: 110%;
    transition: height .2s .15s;
}

.print-icon::after {
    content: " ";
    position: absolute;
    top: 55%;
    left: 12%;
    right: 12%;
    height: 0%;
    background: #fff;
    background-repeat: no-repeat;
    background-size: 70% 90%;
    background-position: center;
    background-image: linear-gradient( to top, #fff 0, #fff 14%, #333 14%, #333 28%, #fff 28%, #fff 42%, #333 42%, #333 56%, #fff 56%, #fff 70%, #333 70%, #333 84%, #fff 84%, #fff 100%);
    transition: height .2s, border-width 0s .2s, width 0s .2s;
}

button.print-button:hover {
    cursor: pointer;
}

button.print-button:hover .print-icon::before {
    height: 0px;
    transition: height .2s;
}

button.print-button:hover .print-icon::after {
    height: 120%;
    transition: height .2s .15s, border-width 0s .16s;
}

.print-note {
    display: none;
}

@media print {
    .container> :not(table),
    .print-hidden {
        display: none;
    }
    .container .print-shown {
        display: block;
    }
    .order-comment {
        display: block;
        width: 100%;
        max-width: 20em;
    }
    .container>table {
        display: block !important;
    }
    .container>.selected-block {
        display: grid;
        grid-template-columns: 5fr 5fr;
        border: none;
        min-height: unset;
        margin-bottom: 1em;
    }
    .container>.selected-block img,
    .container>.selected-block button,
    .container>.selected-block br {
        display: none;
    }
    .request-totals {
        display: grid !important;
    }
    .request-totals * {
        font-family: 'Courier New', monospace;
    }
    .form-check-input:checked+span {
        text-decoration: none;
        border: none;
    }
    .form-check-input:not(:checked)+span {
        display: none;
    }
    label {
        display: inline;
    }
    .js-result-str {
        display: block !important;
        border: none;
    }
    .js-result-str>.raskr {
        display: none;
    }
    .js-result-prices {
        display: block !important;
    }
    .js-result-prices>p {
        padding: 0;
        margin: 0;
    }
    .js-order-form>div {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: 12em auto;
        border-bottom: 3px dotted lightgray;
        align-items: center;
    }
    .js-order-form>div>input {
        text-align: left;
    }
    #js-dropzone,
    .js-order-submit {
        display: none !important;
    }
    th,
    tr,
    td,
    td>input {
        padding: 0px 5px !important;
        margin: 0px !important;
        border-radius: 0px !important;
        border: none !important;
        height: min-content !important;
    }
    /*hide number input buttons*/
    input::-webkit-outer-spin-button,
    inputinput::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }
    input {
        border: none !important;
        box-shadow: none !important;
        text-align: center;
    }
    input[type="number"] {
        -moz-appearance: textfield;
    }
}