/**
 * Pizza Profit Calculator Frontend Styles
 */

.pizza-profit-calculator-wrapper {
    max-width: 100%;
    margin: var(--wp--preset--spacing--40) auto;
    font-family: var(--wp--preset--font-family--montserrat);
}

.ppc-container {
    background: var(--wp--preset--color--white);
    border: 1px solid var(--wp--preset--color--light-grey);
    border-radius: 8px;
    padding: var(--wp--preset--spacing--50);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    position: relative;
}

.ppc-title {
    margin: 0 0 var(--wp--preset--spacing--40) 0;
    font-size: var(--wp--preset--font-size--large);
    font-weight: 600;
    color: var(--wp--preset--color--soft-grey);
    text-align: center;
    border-bottom: 2px solid var(--wp--preset--color--light-grey);
    padding-bottom: var(--wp--preset--spacing--30);
}

.ppc-form {
    margin-bottom: var(--wp--preset--spacing--50);
}

.ppc-input-group {
    margin-bottom: var(--wp--preset--spacing--40);
}

.ppc-input-group label {
    display: block;
    margin-bottom: var(--wp--preset--spacing--20);
    font-weight: 500;
    color: var(--wp--preset--color--soft-grey);
    font-size: var(--wp--preset--font-size--small);
}

.ppc-tooltip {
    display: inline-block;
    margin-left: 5px;
    width: 16px;
    height: 16px;
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    border-radius: 50%;
    text-align: center;
    font-size: 11px;
    line-height: 16px;
    cursor: help;
    font-style: normal;
}

.ppc-input {
    width: 100%;
    padding: var(--wp--preset--spacing--30);
    border: 2px solid var(--wp--preset--color--light-grey);
    border-radius: 4px;
    font-size: var(--wp--preset--font-size--medium);
    transition: border-color 0.3s ease;
    box-sizing: border-box;
}

.ppc-input:focus {
    outline: none;
    border-color: var(--wp--preset--color--primary);
    box-shadow: 0 0 0 1px var(--wp--preset--color--primary);
}

.ppc-currency-input {
    position: relative;
    display: flex;
    align-items: center;
}

.ppc-currency-symbol {
    position: absolute;
    left: var(--wp--preset--spacing--30);
    font-weight: bold;
    color: var(--wp--preset--color--soft-grey);
    z-index: 1;
    pointer-events: none;
}

.ppc-currency-input .ppc-input {
    padding-left: var(--wp--preset--spacing--50);
}

.ppc-results {
    margin-bottom: var(--wp--preset--spacing--40);
}

.ppc-results-title {
    margin: 0 0 var(--wp--preset--spacing--40) 0;
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 600;
    color: var(--wp--preset--color--soft-grey);
    text-align: center;
}

.ppc-results-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--wp--preset--spacing--30);
}

@media (min-width: 600px) {
    .ppc-results-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 900px) {
    .ppc-results-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.ppc-result-item {
    background: var(--wp--preset--color--light-grey);
    border: 1px solid var(--wp--preset--color--light-grey);
    border-radius: 6px;
    padding: var(--wp--preset--spacing--30);
    text-align: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ppc-result-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.ppc-result-item label {
    display: block;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 500;
    color: var(--wp--preset--color--soft-grey);
    margin-bottom: var(--wp--preset--spacing--20);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.ppc-result-item .ppc-value {
    font-size: var(--wp--preset--font-size--medium);
    font-weight: bold;
    color: var(--wp--preset--color--soft-grey);
}

.ppc-revenue {
    background: #e8f5e8;
    border-color: var(--wp--preset--color--secondary);
}

.ppc-revenue .ppc-value {
    color: var(--wp--preset--color--secondary);
}

.ppc-cost {
    background: #fff3e0;
    border-color: var(--wp--preset--color--accent);
}

.ppc-cost .ppc-value {
    color: var(--wp--preset--color--accent);
}

.ppc-total-cost {
    background: #ffebee;
    border-color: var(--wp--preset--color--accent);
}

.ppc-total-cost .ppc-value {
    color: var(--wp--preset--color--accent);
}

.ppc-profit {
    background: #e3f2fd;
    border-color: var(--wp--preset--color--primary);
}

.ppc-profit .ppc-value {
    color: var(--wp--preset--color--primary);
}

.ppc-monthly-profit {
    background: #f3e5f5;
    border-color: var(--wp--preset--color--star-yellow);
    grid-column: 1 / -1;
}

.ppc-monthly-profit .ppc-value {
    color: var(--wp--preset--color--star-yellow);
    font-size: var(--wp--preset--font-size--large);
}

.ppc-positive-profit {
    background: #e8f5e8 !important;
    border-color: var(--wp--preset--color--secondary) !important;
}

.ppc-positive-profit .ppc-value {
    color: var(--wp--preset--color--secondary) !important;
}

.ppc-negative-profit {
    background: #ffebee !important;
    border-color: var(--wp--preset--color--accent) !important;
}

.ppc-negative-profit .ppc-value {
    color: var(--wp--preset--color--accent) !important;
}

.ppc-disclaimer {
    background: var(--wp--preset--color--light-grey);
    border-left: 4px solid var(--wp--preset--color--primary);
    padding: var(--wp--preset--spacing--30);
    border-radius: 0 4px 4px 0;
    margin-bottom: var(--wp--preset--spacing--40);
}

.ppc-disclaimer p {
    margin: 0;
    font-size: var(--wp--preset--font-size--small);
    line-height: 1.5;
    color: var(--wp--preset--color--soft-grey);
}

.ppc-errors {
    background: #ffebee;
    border: 1px solid var(--wp--preset--color--accent);
    border-radius: 4px;
    padding: var(--wp--preset--spacing--30);
    margin-bottom: var(--wp--preset--spacing--40);
}

.ppc-errors ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ppc-errors li {
    color: var(--wp--preset--color--accent);
    font-size: var(--wp--preset--font-size--small);
    margin-bottom: 5px;
    position: relative;
    padding-left: var(--wp--preset--spacing--40);
}

.ppc-errors li:before {
    content: "⚠";
    position: absolute;
    left: 0;
    color: var(--wp--preset--color--accent);
}

.ppc-errors li:last-child {
    margin-bottom: 0;
}

@media (max-width: 599px) {
    .ppc-container {
        padding: var(--wp--preset--spacing--40);
        margin: var(--wp--preset--spacing--30);
    }
    
    .ppc-title {
        font-size: var(--wp--preset--font-size--medium);
    }
    
    .ppc-input {
        font-size: var(--wp--preset--font-size--medium);
    }
    
    .ppc-result-item .ppc-value {
        font-size: var(--wp--preset--font-size--medium);
    }
    
    .ppc-monthly-profit .ppc-value {
        font-size: var(--wp--preset--font-size--medium);
    }
}

@media (max-width: 480px) {
    .ppc-container {
        border-radius: 0;
        box-shadow: none;
        border-left: none;
        border-right: none;
    }
    
    .ppc-results-grid {
        gap: var(--wp--preset--spacing--20);
    }
    
    .ppc-result-item {
        padding: var(--wp--preset--spacing--30);
    }
}

[data-theme="dark"] .ppc-container {
    background: #2c2c2c;
    border-color: #444;
    color: var(--wp--preset--color--white);
}

[data-theme="dark"] .ppc-title {
    color: var(--wp--preset--color--white);
    border-bottom-color: #444;
}

[data-theme="dark"] .ppc-input-group label {
    color: #ccc;
}

[data-theme="dark"] .ppc-input {
    background: #444;
    border-color: #666;
    color: var(--wp--preset--color--white);
}

[data-theme="dark"] .ppc-input:focus {
    border-color: var(--wp--preset--color--primary);
    box-shadow: 0 0 0 1px var(--wp--preset--color--primary);
}

[data-theme="dark"] .ppc-result-item {
    background: #3c3c3c;
    border-color: #555;
}

[data-theme="dark"] .ppc-disclaimer {
    background: #3c3c3c;
    border-left-color: var(--wp--preset--color--primary);
}

[data-theme="dark"] .ppc-disclaimer p {
    color: #ccc;
}

body.wp-admin .pizza-profit-calculator-wrapper {
    margin: var(--wp--preset--spacing--40) 0;
}

.wp-block .pizza-profit-calculator-wrapper {
    margin: 0;
}