1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-10 21:22:58 +01:00
invoiceninja/resources/views/pdf-designs/playful.html
Benjamin Beganović 177eaa2ef5 playful
2020-09-11 16:45:55 +02:00

195 lines
5.8 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head id="head">
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<style id="style">
* {
font-size: '$font-size';
}
@page {
margin: 1cm;
}
p {
margin: 0;
padding: 0;
}
body {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-family: Arial, Helvetica, sans-serif;
}
.header-wrapper {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
}
.header-wrapper .company-logo {
height: 5rem;
}
.header-wrapper .entity-details-wrapper {
background-color: #009e90;
padding: 1rem;
border-radius: 10px;
}
.header-wrapper #entity-details {
width: 100%;
color: white;
text-align: left;
}
.header-wrapper #entity-details > tr,
.header-wrapper #entity-details th {
font-weight: normal;
}
.contacts-wrapper {
margin-top: 3rem;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
}
.contacts-wrapper .contact-label {
font-weight: bold;
color: #009e90;
margin-left: 1rem;
}
.contacts-wrapper #company-address,
.contacts-wrapper #company-details,
.contacts-wrapper #client-details {
display: flex;
flex-direction: column;
margin-bottom: 1rem;
}
.contacts-wrapper .company-info {
margin-top: 1rem;
padding: 1rem;
border-top: 1px solid #009e90;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
}
.contacts-wrapper #client-details {
margin-top: 1rem;
padding: 1rem;
border-top: 1px solid #009e90;
}
.contact-wrapper-left-side,
.contact-wrapper-right-side {
border-bottom: 1px solid #009e90;
}
#product-table {
margin-top: 3rem;
min-width: 100%;
table-layout: fixed;
overflow-wrap: break-word;
}
#product-table > thead {
text-align: left;
}
#product-table > thead > tr > th {
font-size: 1.2rem;
padding: 1rem;
background: #009e90;
color: white;
}
#product-table > thead tr > th:last-child {
text-align: right;
}
#product-table > thead tr > th:first-child {
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
#product-table > thead tr > th:last-child {
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
}
#product-table > tbody > tr > td {
border-bottom: 1px solid #009e90;
padding: 1rem;
}
#product-table > tbody > tr > td:first-child {
color: #bb3a24;
}
#product-table > tbody > tr > td:last-child {
text-align: right;
}
#product-table-footer {
page-break-inside: avoid;
}
#product-table-footer > * {
display: grid;
grid-template-columns: 3fr 1fr 1fr;
padding-top: 0.5rem;
padding-left: 1rem;
gap: 20px;
}
#product-table-footer
> *
[data-element='product-table-balance-due-label'],
#product-table-footer
> *
[data-element='product-table-balance-due'] {
font-weight: bold;
}
#product-table-footer
> *
[data-element='product-table-balance-due'] {
color: #009e90;
}
#product-table-footer > * > :last-child {
text-align: right;
padding-right: 1rem;
}
</style>
</head>
<div id="header"></div>
<body id="body">
<div class="header-wrapper">
<img
class="company-logo"
src="$company.logo"
alt="$company.name logo"
/>
<div>
<!-- Placeholder for empty space -->
</div>
<div class="entity-details-wrapper">
<table id="entity-details" cellspacing="0"></table>
</div>
</div>
<div class="contacts-wrapper">
<div class="contact-wrapper-left-side">
<p class="contact-label">$to_label:</p>
<div class="company-info">
<div id="company-details"></div>
<div id="company-address"></div>
</div>
</div>
<div class="contact-wrapper-right-side">
<p class="contact-label">$from_label:</p>
<div id="client-details"></div>
</div>
</div>
<table id="product-table" cellspacing="0"></table>
<div id="product-table-footer" cellspacing="0"></div>
</body>
<div id="footer"><!-- Your footer content here --></div>
</html>