/**
Theme Name: Astra Child
Author: Apexaces Pte Ltd
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*//* Set container width */

h1.h1-gold {
    color: #9c6c02;
    padding-top: 12px;
    padding-bottom:6px;
    font-size: 36px;
}

h2.h2-gold {
    color: darkgoldenrod;
    padding-top: 12px;
    padding-bottom:8px;
    font-size: 30px;
}

h3.h3-gold {
    padding-top:10px;
    padding-bottom:6px;
    font-size: 24px; 
    color: goldenrod;
}

h4.h4-gold {
    color: #b3940c;    
    padding-top: 8px;
    padding-bottom:6px;
    font-size: 18px;
}

h4 {
    padding-top: 8px;
}

.hr2 {
    height: 2px; /* Sets the thickness of the horizontal line */
    border: none; /* Removes the default border */
    background-color: #333; /* Sets the color of the line */
    margin: 6px 0; /* Adds some space above and below the line */
}

.hr5 {
    height: 4px; /* Sets the thickness of the horizontal line */
    border: none; /* Removes the default border */
    background-color: #333; /* Sets the color of the line */
    margin: 10px 0; /* Adds some space above and below the line */
}

table.pgr_company_header {
  border: 0px solid black;
}

tr.pgr_company_header {
  border: 0px solid darkred;
}

td.pgr_company_header {
  border: 0px solid green;
}

* {
  box-sizing: border-box;
}

/* Create two equal columns that floats next to each other */
/*.flex_column {
  float: left;
  width: 50%;
  padding: 10px;
}
*/
/* Clear floats after the columns */
/*.row:after {
  content: "";
  display: table;
  clear: both;
}
*/

/* Set container width */
.sbo-results-table {
    width: 1240px;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse; /* Ensures there's no spacing between borders */
    font-family: 'Helvetica', sans-serif; /* Body font */
}

/* Set container width */
.sbo-results-table {
    width: 1240px;
    border-collapse: collapse; /* Ensures there's no spacing between borders */
    font-family: 'Helvetica', sans-serif; /* Body font */
}

/* Table headings font */
.sbo-results-table th {
    font-weight: bold;
    text-align: center;
    border-bottom: 1px solid #333; /* Horizontal border */
    font-family: 'Montserrat', sans-serif; /* Heading font */
}

/* Content font */
.sbo-results-table td {
    font-size: inherit; /* Inherit font size from site CSS */
	  text-align: center;
    border-bottom: 1px solid #e5e5e5; /* Light horizontal border for rows */
    padding: 8px 12px; /* Padding inside each cell */
}

/* Adjust column sizes (Modify these based on your preference) */
.sbo-results-table th:nth-child(1),
.sbo-results-table td:nth-child(1) {
    width: 200px; /* Adjust as needed */
}
/* Repeat similar rules for other columns */
.sbo-results-table th:nth-child(2),
.sbo-results-table td:nth-child(2) {
    width: 200px; /* Adjust as needed */
}

.sbo-results-table th:nth-child(3),
.sbo-results-table td:nth-child(3) {
    width: 100px; /* Adjust as needed */
}

.sbo-results-table th:nth-child(4),
.sbo-results-table td:nth-child(4) {
    width: 100px; /* Adjust as needed */
}


.sbo-results-table th:nth-child(5),
.sbo-results-table td:nth-child(5) {
    width: 100px; /* Adjust as needed */
}
.sbo-results-table th:nth-child(6),
.sbo-results-table td:nth-child(6) {
    width: 100px; /* Adjust as needed */
}
.sbo-results-table th:nth-child(7),
.sbo-results-table td:nth-child(7) {
    width: 100px; /* Adjust as needed */
}
.sbo-results-table th:nth-child(8),
.sbo-results-table td:nth-child(8) {
    width: 100px; /* Adjust as needed */
}

/* responsive table with X axis overflow */

.table-responsive {
    overflow-x: auto;
}

/* to center text */
.center-text {
    text-align: center;
}

/* css for ValueEZ DCF Form */

.valuation-form .dcf_form-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr); /* Creates a 6-column layout for flexibility */
    gap: 20px; /* Space between grid items */
    max-width: 100%; /* Full width */
    margin: 0 auto; /* Center the grid if desired */
}

/* Company Name and Business Description should span all 6 columns */
.valuation-form .dcf_form-grid > .full-width {
    grid-column: span 12;
}

/* Industry and Sector should each take up half of the space, so 3 columns each */
.valuation-form .dcf_form-grid > .half-width {
    grid-column: span 6;
}

/* Primary Country/Territory, Currency, and Year End should each take up two columns each */
.valuation-form .dcf_form-grid > .one-third-width {
    grid-column: span 4;
}

/* Two Thirds Width */
.valuation-form .dcf_form-grid > .two-third-width {
    grid-column: span 8;
}

/* Primary Country/Territory, Currency, and Year End should each take up two columns each */
.valuation-form .dcf_form-grid > .one-quarter-width {
    grid-column: span 3;
}


/* Label styling */
.valuation-form .dcf_form-grid > .grid-item > label {
    display: block;
    margin-bottom: 0.5em;
}

.valuation-form .dcf_form-grid > .grid-item > input[type="text"],
.valuation-form .dcf_form-grid > .grid-item > input[type="email"],
.valuation-form .dcf_form-grid > .grid-item > input[type="number"],
.valuation-form .dcf_form-grid > .grid-item > input[type="date"],
.valuation-form .dcf_form-grid > .grid-item > select,
.valuation-form .dcf_form-grid > .grid-item > textarea {
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
    background-color: #f2f2f2 !important; /* Or the hex code for the darker gray color you wish to use */
}

/* Specific styles for the textarea with class "textarea-max6" */
.textarea-max3 {
    height: calc(2em * 3); /* Fixed height for 6 rows */
    max-height: calc(2em * 3); /* Ensure it does not exceed 6 rows */
    overflow: auto; /* Hides overflow content */
    resize: none; /* Prevents manual resizing */
}

.textarea-max6 {
    height: calc(2em * 6); /* Fixed height for 6 rows */
    max-height: calc(2em * 6); /* Ensure it does not exceed 6 rows */
    overflow: auto; /* Hides overflow content */
    resize: none; /* Prevents manual resizing */
}

/* Specific styles for the textarea with class "textarea-max8" */
.textarea-max8 {
    height: calc(2em * 8); /* Fixed height for 8 rows */
    max-height: calc(2em * 8); /* Ensure it does not exceed 8 rows */
    overflow: auto; /* Hides overflow content */
}

.radio-buttons-container {
    display: flex;
    flex-wrap: wrap; /* Allows items to wrap to the next line */
    gap: 10px; /* Optional: Adds space between radio buttons */
}

.radio-buttons-container label {
    display: flex;
    align-items: center; /* Aligns label text with the radio button */
}

.valuation-first-column {
    width: 150px; /* Adjust the width as needed */
    white-space: nowrap; /* Prevents the text from wrapping */
    overflow: hidden; /* Keeps the content from spilling out */
    text-overflow: ellipsis; /* Adds an ellipsis if the text is too long to fit */
}

input[type="text"].numeric {
    text-align: right;
}

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

.valuation-table {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.finalResult {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    color: darkorange;
}

table th {
    background-color: #e9e9e9; /* Light gray background */
    padding: 10px; /* Adds some spacing inside the header cells */
    text-align: center; /* Aligns the text to the left; change as needed */
}

#cashflowTable input[type='text'].numeric,
#cashflowTable input[type='number'] {
    background-color: #f2f2f2 !important; /* Replace with the darker gray color you want */
}

.table-buttons {
    text-align: center;
    vertical-align: middle;
}

.duplicate-table-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    flex-direction: row; /* Ensures that children are laid out horizontally */
}

.valuation_button {
    text-decoration: none !important;
    margin: 0 5px;
    padding: 5px 15px;
    color: #ffffff;
    background-color: goldenrod;
    border: none;
    display: inline-block; /* Allows you to set width and height */
    width: 120px; /* Set a fixed width */
    height: 40px; /* Set a fixed height */
    line-height: 30px; /* Adjusts the line height to vertically center the text */
    text-align: center; /* Horizontally centers the text */
    border-radius: 5px; /* Optional: rounds the corners */
    box-sizing: border-box; /* Makes sure padding is included in the width and height */
}

.valuation_button:hover {
    color: rgb(168, 121, 1); /* This sets the text color */
    background-color: gold; /* This changes the background color on hover */
}  

.valueEZ_button {
    text-decoration: none !important;
    margin: 0 5px;
    color: #ffffff;
    background-color: goldenrod;
    border: none;
    display: inline-block; /* Allows you to set width and height */
    width: auto; /* Adjust the width to fit content */
    min-width: 180px; /* Set a minimum width */
    height: 50px; /* Set a fixed height */
    padding: 0px 15px; /* Remove top and bottom padding */
    text-align: center; /* Horizontally centers the text */
    border-radius: 25px; /* Optional: rounds the corners */
    box-sizing: border-box; /* Makes sure padding is included in the width and height */
    vertical-align: middle; /* Aligns buttons horizontally when they have display: inline-block */
    line-height: 30px; /* Set the line-height to match the button height for vertical centering */
}

.valueEZ_button:hover {
    color: rgb(168, 121, 1); /* This sets the text color */
    background-color: gold; /* This changes the background color on hover */
}  

.download_button {
    text-decoration: none !important;
    margin: 0 5px;
    padding: 5px 15px;
    color: #fff;
    background-color: goldenrod;
    border: none;
    display: inline-block; /* Allows you to set width and height */
    height: 40px; /* Set a fixed height */
    line-height: 30px; /* Adjusts the line height to vertically center the text */
    text-align: center; /* Horizontally centers the text */
    border-radius: 5px; /* Optional: rounds the corners */
    box-sizing: border-box; /* Makes sure padding is included in the width and height */
}

.download_button:hover {
    color: rgb(168, 121, 1); /* This sets the text color */
    background-color: gold; /* This changes the background color on hover */
}  

.submit_button-container {
    margin-top: 10px;
    margin-bottom: 30px !important;
  }


/* Responsive adjustments */
@media (max-width: 600px) {
    
    .valuation-form .dcf_form-grid {
        grid-template-columns: 1fr; 
        padding: 20px;
        margin-bottom: 30px; /* Adds space between fields */
    }
    .valuation-form .dcf_form-grid > .grid-item {
        grid-column: span 1;  /* All items take full width on smaller screens */
        padding: 20px;
        margin-bottom: 30px; /* Adds space between fields */
    }
}

.error-message {
    color: red; /* Example: red text */
    border: 1px solid red; /* Example: red border */
    padding: 10px;
    margin: 10px 0;
    border-radius: 5px;
}

.report-title {
    display: None;
}

.print-only-visible {
    display: None;
}

/*footer - don't show */
.footer-center-print {
    display: None;
}

@media print {

    @page {
        size: A4 landscape;
        margin: 1cm;
    }

    body {
        width: 100%;
        margin: 0;
        padding: 0;
        font-size: smaller; /* Adjust the base font size as needed */
    }
    .page-break-before {
        page-break-before: always;
    }
    .page-break-after {
        page-break-after: always;
    }

    .conditional-page-break {
        /* Try to avoid breaking if this element is at the top of the page */
        page-break-before: avoid;

        page-break-after: avoid; /* Try to avoid breaking if this element is at the bottom of the page */
    }

    .conditional-page-break:after {
        content: "";
        display: block;
        page-break-after: always; /* This will enforce a page break after the pseudo-element */
    }

    .no-page-break {
        page-break-before: avoid;
        page-break-after: avoid;
    }

    #cashflowTable {
        display: table;
        width: 100%;
        table-layout: fixed;
        word-wrap: break-word;
        overflow: visible; /* Adjust this as needed to prevent scrollbars */
        /*width: auto; /* Allow the table to expand as much as needed */
        max-height: none; /* Remove any max height restrictions */

    }

    #cashflowTable .valuation-first-column {
        min-width: 60px; /* Adjust as needed for your content */
        width: 16%;
        white-space: normal; /* Allow text to wrap within cell */
        word-wrap: break-word;
        text-align: left;
        display: table-cell;
        height: 24px;
        padding: 2px;
    }
    
    /* Adjust the table row height and padding */
    #cashflowTable tr,
    #cashflowTable th,
    #cashflowTable td {
        height: 24px; /* Example fixed height, adjust as needed */
        padding: 2px; /* Reduced padding */
        overflow: hidden; /* Hide overflow to remove the scrollbar */
        vertical-align: middle; /* This will vertically align the content in the middle of the cell */
    }
    
    /* Add any other styling as needed */
    #cashflowTable th:not(.valuation-first-column),
    #cashflowTable td:not(.valuation-first-column) {
        page-break-inside: avoid;
        word-wrap: break-word; /* Allows long words to be able to break and wrap onto the next line */
        white-space: normal; /* Ensures whitespace is handled normally and not as preformatted */    
        display: table-cell; /* Allow cells to shrink to content */
        text-align: right;
        /*overflow: visible; /* Prevent content clipping */
        width: calc(84% / 7); /* Adjust the 7 to the number of these columns */
        /* min-width: 50px; /* Set a min-width to prevent too much shrinkage */
        /* max-width: none; /* Set a max-width to fit content within print margins */
        padding: 2px; /* Reduce padding */
        height: 24px;
        vertical-align: middle; /* This will vertically align the content in the middle of the cell */

    }

    #cashflowTable tr {
        /*display: flex; /* Allows row items to wrap onto the next line if needed */
        flex-wrap: wrap;
    }

    /* Hide non-print elements */
    .hide-on-print {
        display: none;
    }

    .ast-footer-copyright{
        display: none;
    }

    /* Replace input fields with plain text for printing */
    .input-print-replacement {
        display: inline-block;
    }

    #secondStageChart {
        width: 100% !important; /* This will make the chart responsive to the page width */
        height: auto !important; /* Adjust the height proportionally */
        max-width: 1000px; /* Or any maximum width you prefer */
        max-height: 333px; /* Or any maximum height you prefer */
    }

    .textarea-max3,
    .textarea-max6,
    .textarea-max8 {
        height: auto !important; /* Allows the textarea to expand to fit all content */
        max-height: none !important; /* Removes the max-height restriction */
        overflow: visible !important; /* Ensures all content is shown */
        white-space: pre-wrap; /* Preserves formatting and line breaks */
        border: none !important; /* Removes border when printing */
        background-color: transparent !important; /* Removes background color when printing */

    }

    /* Ensure that replaced input fields are visible */
    .print-only-visible {
        display: block;
    }

    /* Hide submit and button inputs */
    input[type="submit"], input[type="button"] {
        display: none !important;
    }

    input, textarea, select {
        display: initial; /* Make sure inputs are not set to display:none */
      }

    /*show report title on print */
    .report-title {
        font-size: 36pt;
        display: block;
    }
    
    /* Hide the chatbot avatar */
    .mwai-chatbot-container, 
    .no-lightbox {
        display: none !important;
    }

      /* Hide the menu */
    .main-navigation {
        display: none !important;
    }  

    /*hide when printing */
    .form-print-hide {
        display: none;
    }

    .footer-center-print {
        display: block;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        text-align: center;
        font-size: 8pt; /* Reduced font size */
        line-height: 1; /* Reduced line height */
        padding: 2pt; /* Reduced padding */
        margin: 0; /* Reset margins */
        border-top: 0.2pt solid #666; /* Optional border for styling */
        overflow: hidden;
    }    
}

/* Style for the search box and dropdown container */
.search-container {
    position: relative;
    width: 600px; /* Adjusted width for wider input field */
    max-width: 100%; /* Ensure it doesn't overflow on smaller screens */
}

/* Style for the input field */
.stock-search-input { /* Class used for styling */
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
}

/* Style for the dropdown list */
.search-results { /* Class used for styling */
    position: absolute;
    top: 100%; /* Position it directly below the input field */
    left: 0;
    width: 100%;
    background-color: white;
    border: 1px solid #ccc;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    z-index: 1000; /* Ensure it appears above other elements */
}

/* Style for individual items in the dropdown */
.result-item {
    padding: 8px;
    cursor: pointer;
}

.result-item:hover {
    background-color: #f0f0f0;
}

/* Style for the no-results and error messages */
.no-results, .error {
    padding: 8px;
    color: #999;
}

/* Adjust width on mobile devices */
@media only screen and (max-width: 600px) {
    .search-container {
        width: 100%; /* Take full width of the container on mobile */
    }
    .stock-search-input { /* Adjust for responsive width */
        width: 100%;
        max-width: 600px; /* Ensure the input field doesn't exceed 600px */
    }
}

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 2; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content - centered using transform */
.modal-content {
    background-color: #fefefe;
    padding: 20px;
    border: 1px solid #888;
    border-radius: 5px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    width: 30%; /* Smaller width */
    max-width: 400px; /* Maximum width to handle small screens */
    position: absolute; /* Absolute position */
    top: 50%; /* Center vertically */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%); /* Adjust position to be truly centered */
    text-align: center; /* Center the text inside the modal */
}

/* Responsive adjustments */
@media (max-width: 600px) {
    .modal-content {
        width: 70%; /* Full width on small screens */
        padding: 10px; /* Less padding on small screens */
    }
}

/* The Close Button (hidden since the modal cannot be closed) */
.close {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.close:hover,
.close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
