/* Theme.css - modernized payment page theme */
:root {
    --upp-page-bg: #f4f7fb;
    --upp-card-bg: #ffffff;
    --upp-border: #d8e0ea;
    --upp-text: #1f2937;
    --upp-radius: 12px;
    --upp-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }

.upp-body {
    margin: 0;
    background: var(--upp-page-bg);
    color: var(--upp-text);
}

.upp-page-shell {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    min-height: 100vh;
    padding: 16px;
}

.upp-layout-table {
    background: var(--upp-card-bg);
    max-width: 1100px;
    width: 100%;
    min-height: 700px;
    box-shadow: var(--upp-shadow);
}

.upp-main-content { padding: 0 12px 24px; }

.payment-page {
    width: 100%;
    max-width: 1056px;
    margin: 0 auto;
}

.payment-page-table,
.payment-section-table {
    background: var(--upp-card-bg);
}

.payment-section-table {
    border: 1px solid var(--upp-border);
    border-radius: var(--upp-radius);
    overflow: hidden;
    margin-bottom: 18px;
}

.payment-section-table .FormHeaderRow {
    padding: 12px 16px;
}

.payment-button {
    max-width: 100%;
    cursor: pointer;
}

.payment-page input[type="text"],
.payment-page select,
.payment-page textarea {
    max-width: 100%;
}

.payment-page img {
    max-width: 100%;
    height: auto;
}
