@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500&display=swap');

html, body {
    width: 21cm;
    /*height: 29.7cm;*/
    height: 32cm;
    font-family: 'Rubik', sans-serif;
    color: #1C1C1C;
    font-size: 14px;
    font-weight: 400;
    position: relative;
}

html#distribution-fee-invoice,
html#distribution-fee-invoice body {
    height: 28cm !important;
}

html#self-billing-invoice,
html#self-billing-invoice body {
    height: 27cm !important;
}

p {
    line-height: 150%;
    font-weight: lighter;
}

table {
    width: 100%;
}

table, tr, td, th {
    /*border: 1px solid black;*/
    vertical-align: top;
    white-space: nowrap;
}

h1, h2, h3 {
    font-weight: 400;
}

.align-left {
    text-align: left;
}

.align-right {
    text-align: right;
}

table.header h1 {
    margin-top: 0;
}

table.header .header-brand {
    text-align: right;
}

table.header .header-brand img {
    height: 30px;
    margin: 5px 0 15px;
    max-width: 100%;
}

table.header .header-title {
    min-width: 260px;
}

table.header .header-account {
    text-align: right;
    white-space: normal;
}

table.header .header-account h3 {
    height: 2.5em;
    margin-top: 5px;
    overflow: hidden;
}

table.invoice-info {
    text-align: right;
    border-spacing: 8px;
}

table.invoice-info th {
    font-weight: normal;
    color: #6D6565;
    width: 100%;
}

table.invoice-info td {
    font-weight: bolder;
}

.invoice-summary {
    page-break-inside: avoid !important;
}

.signing-entity-info-subheader {
    margin-top: 15px;
    padding: 15px 0;
    border-top: 1px solid #A8A0A0;
    border-bottom: 1px solid #A8A0A0;
    color: #6D6565;
}

.signing-entity-info-subheader-item {
    margin-top: 12px;
}

.signing-entity-info-label {
    display: inline-block;
    width: 90px;
    margin-right: 15px;
    color: #6D6565;
}

.signing-entity-info-value {
    color: black;
    font-weight: normal;
}

.transactions, .payments, .advances, .revenue, .expenses, .adjustments, .physical_reserves, .vat-total{
    margin-top: 15px;
}

.transactions h2 {
    font-weight: bolder;
}

.transactions table, .tax-info table, .payments table, .advances table, .revenue table, .expenses table, .adjustments table, .physical_reserves table, .vat-total table{
    border-collapse: collapse;
    text-align: left;
}

.transactions tr, .tax-info tr, .payments tr, .advances tr, .revenue tr, .expenses tr, .adjustments tr, .physical_reserves tr, .vat-total tr{
    border-bottom: 1px solid #A8A0A0;
}

.transactions td, .tax-info td {
    padding: 10px;
}

 .payments td, .advances td, .revenue td, .expenses td, .adjustments td, .physical_reserves td, .vat-total td{
     padding: 10px;
}

.transactions .description {
    white-space: normal;
}

table .totals {
     text-align: right;
 }

table .totals-main {
    font-weight: bold;
}

.transactions th, .tax-info th {
    text-transform: uppercase;
    font-weight: bolder;
    font-size: 12px;
    color: #6D6565;
    width: 100%;
    padding: 10px;
}
.payments th, .advances th, .revenue th, .expenses th, .adjustments th, .physical_reserves th, .vat-total th{
    font-weight: bolder;
    font-size: 12px;
    width: 100%;
    padding: 10px;
}

.statement-period-name {
    font-weight: bolder;
}

.subtotal {
    font-weight: bolder;
}

.tax-info {
    margin-top: 45px;
}

.tax-info table {
    width: auto;
    margin-right: 0;
    margin-left: auto;
}

.tax-info th {
    width: auto;
}

.total-payable {
    margin-top: 60px;
    font-size: 20px;
    font-weight: bolder;
    border-bottom: 1px solid #A8A0A0;
}

.footer {
    color: #6D6565;
    position: absolute;
    overflow: hidden;
    bottom: 0;
    width: 100%;
}

.info-section {
    color: #6D6565;
    font-style: italic;
    font-weight: 200;
    border-bottom: 1px solid #A8A0A0;
}

.info-panel-label {
    color: #666;
    margin-right: 7px;
    font-size: 12px;
}

.info-panel-value {
    font-size: 12px;
    max-width: 350px;
}

.balance-label {
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #999;
    text-align: right;
}

.balance-value {
    font-size: 14px;
    margin-top: 2.5px;
    text-align: right;
}

.collection-summary{
    font-size: 12px;
    color: #1C1C1C;
}

.collection-summary-container {
    padding: 25px 0;
}

.collection-summary-container-grey {
    background-color: #FAFAFA;
    padding: 20px 25px;

}

.collection-summary-subheader-title {
    margin-bottom: 25px;
}

.collection-summary-subheader-item {
    margin-top: 12px;
}

.collection-summary-subheader-item:first-child {
    margin-top: 0;
}

.collection-summary-label {
    display: inline-block;
    width: 53px;
    margin-right: 15px;
    color: #6D6565;
}

.collection-summary-table, .collection-summary-cell, .collection-summary-header {
    border: solid 1px #F3F0F0;
}

.collection-summary-table {
    border-collapse: collapse;
    table-layout: auto;
}

.collection-summary-container-table {
    padding-left: 0;
    padding-right: 0;
}

.collection-summary-last-row {
    background-color: #FAFAFA;
    font-weight: bold;
}

.collection-summary-cell {
    padding: 8px;
    font-size: 12px;
    vertical-align: middle;
}

.collection-summary-header {
    color: #847C7C;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.vertical-center {
  display: flex;
  align-items: center;
}

.collection-summary-subheader-title {
    font-size: 20px;
}

.collection-summary-subheader-title-bold {
    font-weight: 500;
}

.collection-summary-header-name {
     font-weight: 500;
    display: block;
    margin-bottom: 6px;
}

.collection-summary-header-address {
    display: block;
    line-height: 1.6;
}

.collection-summary-cell-client-share {
    width: 40px;
}

.collection-summary-cell-country {
    width: 160px;
    word-wrap: break-word;
    white-space: normal;
}

.collection-summary-cell-collection-society {
    width: 135px;
    word-wrap: break-word;
    white-space: normal;
}

.collection-summary-zero-disclaimer {
    color: #847C7C;
    display: flex;
    font-size: 9px;
    margin-top: 10px;
}

.collection-summary-disclaimer-text {
    vertical-align: middle;
}

.InfoGlyph {
    fill: #A8A0A0;
    height: 10px;
    margin-right: 4px;
    vertical-align: middle;
    width: 10px;
}

.page-number {
    font-size: 12px;
    text-align: center;
}

table.invoice-recipient {
    border-spacing: 0 8px;
    border-top: 1px solid #A8A0A0;
    border-bottom: 1px solid #A8A0A0;
    padding: 10px 0;
    margin: 15px 0 50px;
}

table.invoice-recipient th {
    display: inline-block;
    font-weight: normal;
    width: 90px;
    margin-right: 15px;
    color: #6D6565;
    text-align: left;
}

table.invoice-recipient td {
    text-align: left;
    width: 99%;
}

.invoice-sender {
    white-space: nowrap;
}

.invoice-box {
    overflow: hidden;
}

#fee-invoice table.invoice-recipient th {
    width: 110px;
}

.brand {
     max-width: 300px;
}
