/* KT3M UI v2 — standalone, authentication and public pages */
body.kt3m-public-v2 {
    --kt3m-font: var(--kt2-font);
    --kt3m-page: var(--kt2-page);
    --kt3m-card: var(--kt2-surface);
    --kt3m-surface: var(--kt2-surface);
    --kt3m-surface-raised: var(--kt2-surface-raised);
    --kt3m-surface-subtle: var(--kt2-surface-soft);
    --kt3m-field: var(--kt2-field);
    --kt3m-text: var(--kt2-text);
    --kt3m-heading: var(--kt2-text);
    --kt3m-muted: var(--kt2-text-muted);
    --kt3m-text-muted: var(--kt2-text-muted);
    --kt3m-border: var(--kt2-border);
    --kt3m-border-strong: var(--kt2-border-strong);
    --kt3m-primary: var(--kt2-primary);
    --kt3m-primary-strong: var(--kt2-primary-hover);
    --kt3m-primary-soft: var(--kt2-primary-soft);
    --kt3m-on-primary: var(--kt2-text-inverse);
    --kt3m-success: var(--kt2-success);
    --kt3m-success-soft: var(--kt2-success-soft);
    --kt3m-warning: var(--kt2-warning);
    --kt3m-warning-soft: var(--kt2-warning-soft);
    --kt3m-danger: var(--kt2-danger);
    --kt3m-danger-soft: var(--kt2-danger-soft);
    --kt3m-radius-sm: var(--kt2-radius-sm);
    --kt3m-radius-md: var(--kt2-radius-md);
    --kt3m-radius-lg: var(--kt2-radius-lg);
    --kt3m-shadow-xs: var(--kt2-shadow-xs);
    --kt3m-shadow-sm: var(--kt2-shadow-sm);
    min-height: 100vh;
    margin: 0;
    padding: 32px;
    color: var(--kt3m-text);
    background:
        radial-gradient(circle at 12% 8%, rgba(79, 107, 255, .08), transparent 30rem),
        radial-gradient(circle at 92% 92%, rgba(139, 92, 246, .06), transparent 28rem),
        var(--kt3m-page);
    font-family: var(--kt3m-font);
    font-size: 14px;
    line-height: 1.5;
}

/* Public legal pages and receipts use the same shell without inheriting legacy colors. */
body.kt3m-public-v2.kt3m-policy-page {
    padding-block: 36px 72px;
}

body.kt3m-public-v2.kt3m-policy-page main {
    width: min(880px, 100%);
    margin-inline: auto;
}

body.kt3m-public-v2.kt3m-policy-page main > h1 {
    margin: 24px 0 8px;
}

body.kt3m-public-v2.kt3m-policy-page main > p {
    margin-bottom: 24px;
    font-size: 15px;
}

body.kt3m-public-v2.kt3m-policy-page section,
body.kt3m-public-v2.kt3m-policy-page .card {
    margin-block: 14px;
    padding: 22px;
    color: var(--kt3m-text);
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-card);
    box-shadow: var(--kt3m-shadow-sm);
}

body.kt3m-public-v2.kt3m-policy-page section h2 {
    margin-bottom: 8px;
    font-size: 19px;
}

body.kt3m-public-v2.kt3m-policy-page li + li {
    margin-top: 10px;
}

body.kt3m-public-v2.kt3m-policy-page .notice {
    border-left: 4px solid var(--kt3m-warning);
    background: color-mix(in srgb, var(--kt3m-warning) 8%, var(--kt3m-card));
}

body.kt3m-public-v2.kt3m-receipt-page {
    display: grid;
    place-items: start center;
}

body.kt3m-public-v2.kt3m-receipt-page .receipt {
    width: min(720px, 100%);
    padding: 30px;
    color: var(--kt3m-text);
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-card);
    box-shadow: var(--kt3m-shadow-sm);
}

body.kt3m-public-v2.kt3m-receipt-page .head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 2px solid var(--kt3m-primary);
}

body.kt3m-public-v2.kt3m-receipt-page .mark {
    color: var(--kt3m-primary);
    font-size: 27px;
    font-weight: 850;
}

body.kt3m-public-v2.kt3m-receipt-page .paid {
    padding: 7px 11px;
    color: var(--kt3m-success);
    border-radius: 999px;
    background: color-mix(in srgb, var(--kt3m-success) 10%, var(--kt3m-card));
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

body.kt3m-public-v2.kt3m-receipt-page .grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-block: 22px;
}

body.kt3m-public-v2.kt3m-receipt-page .row {
    padding: 14px;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-md);
    background: var(--kt3m-surface-subtle);
}

body.kt3m-public-v2.kt3m-receipt-page .row span {
    display: block;
    color: var(--kt3m-muted);
    font-size: 12px;
}

body.kt3m-public-v2.kt3m-receipt-page .row strong {
    display: block;
    margin-top: 4px;
    overflow-wrap: anywhere;
}

body.kt3m-public-v2.kt3m-receipt-page .note {
    padding: 14px 16px;
    color: var(--kt3m-text);
    border-left: 4px solid var(--kt3m-primary);
    border-radius: var(--kt3m-radius-sm);
    background: var(--kt3m-primary-soft);
}

body.kt3m-public-v2.kt3m-receipt-page .actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 20px;
}

@media (max-width: 600px) {
    body.kt3m-public-v2.kt3m-policy-page,
    body.kt3m-public-v2.kt3m-receipt-page {
        padding: 12px;
    }

    body.kt3m-public-v2.kt3m-receipt-page .receipt {
        padding: 20px;
    }

    body.kt3m-public-v2.kt3m-receipt-page .head {
        flex-direction: column;
    }

    body.kt3m-public-v2.kt3m-receipt-page .grid {
        grid-template-columns: 1fr;
    }

    body.kt3m-public-v2.kt3m-receipt-page .actions {
        display: grid;
    }
}

@media print {
    body.kt3m-public-v2.kt3m-receipt-page {
        display: block;
        padding: 0;
        background: #fff;
    }

    body.kt3m-public-v2.kt3m-receipt-page .receipt {
        border: 0;
        box-shadow: none;
    }

    body.kt3m-public-v2.kt3m-receipt-page .actions {
        display: none;
    }
}

.kt3m-public-v2 *,
.kt3m-public-v2 *::before,
.kt3m-public-v2 *::after {
    box-sizing: border-box;
}

.kt3m-public-v2 h1,
.kt3m-public-v2 h2,
.kt3m-public-v2 h3,
.kt3m-public-v2 h4 {
    margin-top: 0;
    color: var(--kt3m-heading);
    font-weight: 750;
    letter-spacing: -.025em;
}

.kt3m-public-v2 h1 { font-size: clamp(30px, 4vw, 38px); }
.kt3m-public-v2 h2 { font-size: clamp(24px, 3vw, 30px); }
.kt3m-public-v2 h3 { font-size: 20px; }
.kt3m-public-v2 h4 { font-size: 17px; }

.kt3m-public-v2 p,
.kt3m-public-v2 small {
    color: var(--kt3m-muted);
}

.kt3m-public-v2 a {
    color: var(--kt3m-primary);
    font-weight: 650;
    text-decoration: none;
}

.kt3m-public-v2 a:hover {
    color: var(--kt3m-primary-strong);
    text-decoration: underline;
}

.kt3m-public-v2 .container,
.kt3m-public-v2 .box,
.kt3m-public-v2 .login-card,
.kt3m-public-v2 .renew-card,
.kt3m-public-v2 .download-card,
.kt3m-public-v2 .ios-guide,
.kt3m-public-v2 .feedback,
.kt3m-public-v2 .section,
.kt3m-public-v2 .form-panel,
.kt3m-public-v2 .history-panel,
.kt3m-public-v2 .card {
    color: var(--kt3m-text);
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-card);
    box-shadow: var(--kt3m-shadow-sm);
}

.kt3m-public-v2 .container {
    width: min(1180px, 100%);
    max-width: 1180px;
    margin-inline: auto;
    padding: 24px;
}

.kt3m-public-v2 .section,
.kt3m-public-v2 .form-panel,
.kt3m-public-v2 .history-panel {
    padding: 20px;
}

.kt3m-public-v2 .header,
.kt3m-public-v2 .section-header {
    color: var(--kt3m-heading);
    border-color: var(--kt3m-border);
    background: transparent;
}

.kt3m-public-v2 .section-header {
    padding: 18px 20px;
}

.kt3m-public-v2 .section-body {
    padding: 20px;
}

.kt3m-public-v2 .summary-list,
.kt3m-public-v2 .summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.kt3m-public-v2 .summary-card,
.kt3m-public-v2 .invite-panel,
.kt3m-public-v2 .notice,
.kt3m-public-v2 .plan {
    color: var(--kt3m-text);
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-md);
    background: var(--kt3m-surface-subtle);
    box-shadow: none;
}

.kt3m-public-v2 .summary-card {
    min-height: 112px;
    padding: 18px;
}

.kt3m-public-v2 .notice {
    margin-block: 16px;
    padding: 14px 16px;
}

.kt3m-public-v2 .notice.error,
.kt3m-public-v2 .error {
    color: #b4233f;
    border-color: rgba(239, 71, 111, .28);
    background: rgba(239, 71, 111, .08);
}

.kt3m-public-v2 .tag,
.kt3m-public-v2 .badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 9px;
    color: var(--kt3m-primary-strong);
    border: 1px solid rgba(79, 107, 255, .16);
    border-radius: 999px;
    background: var(--kt3m-primary-soft);
    font-size: 12px;
    font-weight: 750;
}

.kt3m-public-v2 label {
    display: block;
    margin-bottom: 6px;
    color: var(--kt3m-text);
    font-size: 13px;
    font-weight: 700;
}

.kt3m-public-v2 input:not([type="checkbox"]):not([type="radio"]),
.kt3m-public-v2 select,
.kt3m-public-v2 textarea {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--kt3m-text);
    border: 1px solid var(--kt3m-border-strong);
    border-radius: var(--kt3m-radius-sm);
    outline: 0;
    background: var(--kt3m-field);
    font: inherit;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.kt3m-public-v2 textarea {
    min-height: 104px;
    resize: vertical;
}

.kt3m-public-v2 input:focus,
.kt3m-public-v2 select:focus,
.kt3m-public-v2 textarea:focus {
    border-color: var(--kt3m-primary);
    background: var(--kt3m-card);
    box-shadow: 0 0 0 3px rgba(79, 107, 255, .14);
}

.kt3m-public-v2 input::placeholder,
.kt3m-public-v2 textarea::placeholder {
    color: var(--kt3m-muted);
    opacity: .9;
}

.kt3m-public-v2 button,
.kt3m-public-v2 .btn,
.kt3m-public-v2 .btn-login,
.kt3m-public-v2 .btn-create,
.kt3m-public-v2 .btn-approve,
.kt3m-public-v2 .btn-out,
.kt3m-public-v2 .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    gap: 8px;
    padding: 10px 16px;
    color: #fff;
    border: 1px solid var(--kt3m-primary);
    border-radius: var(--kt3m-radius-sm);
    background: var(--kt3m-primary);
    box-shadow: 0 5px 14px rgba(79, 107, 255, .16);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.kt3m-public-v2 button:hover:not(:disabled),
.kt3m-public-v2 .btn:hover:not(:disabled),
.kt3m-public-v2 .btn-login:hover:not(:disabled),
.kt3m-public-v2 .btn-create:hover:not(:disabled),
.kt3m-public-v2 .btn-approve:hover:not(:disabled),
.kt3m-public-v2 .btn-out:hover:not(:disabled) {
    color: #fff;
    filter: brightness(.96);
    text-decoration: none;
    transform: translateY(-1px);
}

.kt3m-public-v2 button:disabled,
.kt3m-public-v2 .btn:disabled {
    color: #94a3b8;
    border-color: var(--kt3m-border);
    background: #e8edf5;
    box-shadow: none;
    cursor: not-allowed;
    opacity: 1;
}

.kt3m-public-v2 .btn-reject,
.kt3m-public-v2 .btn-danger,
.kt3m-public-v2 .btn-out {
    color: #fff;
    border-color: var(--kt3m-danger);
    background: var(--kt3m-danger);
    box-shadow: 0 5px 14px rgba(239, 71, 111, .14);
}

.kt3m-public-v2 table {
    width: 100%;
    margin-top: 12px;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-md);
    background: var(--kt3m-card);
}

.kt3m-public-v2 th,
.kt3m-public-v2 td {
    padding: 12px 14px;
    color: var(--kt3m-text);
    border: 0;
    border-bottom: 1px solid var(--kt3m-border);
    background: transparent;
    text-align: left;
}

.kt3m-public-v2 th {
    color: var(--kt3m-muted);
    background: var(--kt3m-surface-subtle);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.kt3m-public-v2 tr:last-child td {
    border-bottom: 0;
}

.kt3m-public-v2 tbody tr:hover td {
    background: var(--kt3m-primary-soft);
}

/* Authentication */
.kt3m-login-page,
.kt3m-register-page,
.kt3m-renew-page,
.kt3m-first-run-page {
    display: grid;
    place-items: center;
    padding: 24px;
}

.kt3m-login-page .login-shell,
.kt3m-login-page .login-card,
.kt3m-register-page .login-container,
.kt3m-register-page .login-card,
.kt3m-renew-page .renew-card,
.kt3m-first-run-page .box {
    width: min(470px, 100%);
    max-width: 470px;
}

.kt3m-login-page .login-card,
.kt3m-register-page .login-card,
.kt3m-renew-page .renew-card,
.kt3m-first-run-page .box {
    padding: 30px;
    overflow: hidden;
}

.kt3m-login-page .brand,
.kt3m-register-page .logo,
.kt3m-first-run-page .logo {
    text-align: center;
}

.kt3m-login-page .brand-logo,
.kt3m-register-page .logo img {
    border-radius: 18px;
    box-shadow: 0 12px 28px rgba(79, 107, 255, .18);
}

.kt3m-login-page .btn-login,
.kt3m-register-page .btn-login,
.kt3m-renew-page button,
.kt3m-first-run-page button {
    width: 100%;
}

.kt3m-register-page .account-type-option,
.kt3m-renew-page .plan {
    border-color: var(--kt3m-border);
    background: var(--kt3m-surface-subtle);
}

.kt3m-register-page .account-type-option.selected,
.kt3m-renew-page .plan.selected {
    border-color: var(--kt3m-primary);
    background: var(--kt3m-primary-soft);
}

/* Operational standalone pages */
.kt3m-project-cost-page,
.kt3m-warehouse-issue-page {
    min-height: 100vh;
    padding: 24px;
    background:
        radial-gradient(circle at 90% 0%, rgba(79, 107, 255, .08), transparent 28%),
        var(--kt3m-page);
    color: var(--kt3m-text);
}

.kt3m-project-cost-page .page {
    width: min(1180px, 100%);
    max-width: 1180px;
    margin-inline: auto;
}

.kt3m-project-cost-page .header {
    margin-bottom: 20px;
    padding: 24px;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-surface);
    box-shadow: var(--kt3m-shadow-sm);
}

.kt3m-project-cost-page .header h2,
.kt3m-warehouse-issue-page h2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: var(--kt3m-text);
}

.kt3m-project-cost-page .header h2 i,
.kt3m-warehouse-issue-page h2 i {
    color: var(--kt3m-primary);
}

.kt3m-project-cost-page .header p {
    margin: 6px 0 0;
    color: var(--kt3m-text-muted);
}

.kt3m-project-cost-page .summary-list {
    gap: 14px;
}

.kt3m-project-cost-page .summary-card {
    min-height: 118px;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-md);
    background: var(--kt3m-surface);
    box-shadow: var(--kt3m-shadow-xs);
}

.kt3m-project-cost-page .summary-card.contract {
    background: linear-gradient(135deg, var(--kt3m-surface), var(--kt3m-primary-soft));
}

.kt3m-project-cost-page .summary-card.cost {
    background: linear-gradient(135deg, var(--kt3m-surface), var(--kt3m-danger-soft));
}

.kt3m-project-cost-page .summary-card.expense {
    background: linear-gradient(135deg, var(--kt3m-surface), var(--kt3m-warning-soft));
}

.kt3m-project-cost-page .summary-card.lucrative {
    background: linear-gradient(135deg, var(--kt3m-surface), var(--kt3m-success-soft));
}

.kt3m-project-cost-page .summary-card span {
    color: var(--kt3m-text-muted);
}

.kt3m-project-cost-page .summary-card strong {
    color: var(--kt3m-text);
}

.kt3m-project-cost-page .section {
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-surface);
    box-shadow: var(--kt3m-shadow-xs);
}

.kt3m-project-cost-page .section-header {
    min-height: 72px;
    padding: 18px 20px;
}

.kt3m-project-cost-page .section-header p,
.kt3m-project-cost-page .text-small {
    color: var(--kt3m-text-muted);
}

.kt3m-project-cost-page .section-summary .pill,
.kt3m-project-cost-page .badge {
    color: var(--kt3m-primary);
    background: var(--kt3m-primary-soft);
}

.kt3m-project-cost-page .field,
.kt3m-warehouse-issue-page .form-group {
    margin-bottom: 14px;
}

.kt3m-project-cost-page .btn,
.kt3m-warehouse-issue-page .btn-out {
    width: auto;
}

.kt3m-warehouse-issue-page .container {
    max-width: 1040px;
    padding: 24px;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-lg);
    background: var(--kt3m-surface);
    box-shadow: var(--kt3m-shadow-sm);
}

.kt3m-warehouse-issue-page .container > h2 {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--kt3m-border);
}

.kt3m-warehouse-issue-page .container > h2 span {
    color: var(--kt3m-primary);
}

.kt3m-warehouse-issue-page .flex-box {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
    gap: 20px;
}

.kt3m-warehouse-issue-page .form-panel,
.kt3m-warehouse-issue-page .history-panel {
    margin: 0;
    padding: 20px;
    border: 1px solid var(--kt3m-border);
    border-radius: var(--kt3m-radius-md);
    background: var(--kt3m-surface-subtle);
}

.kt3m-warehouse-issue-page .form-panel h4,
.kt3m-warehouse-issue-page .history-panel h4 {
    margin: 0 0 16px;
    color: var(--kt3m-text);
}

.kt3m-warehouse-issue-page .btn-out {
    width: 100%;
    color: var(--kt3m-on-primary);
    background: var(--kt3m-primary);
}

.kt3m-warehouse-issue-page table {
    overflow: hidden;
    border: 1px solid var(--kt3m-border);
    border-radius: 12px;
    background: var(--kt3m-surface);
}

.kt3m-warehouse-issue-page th {
    color: var(--kt3m-text);
    background: var(--kt3m-surface-raised);
}

.kt3m-warehouse-issue-page th,
.kt3m-warehouse-issue-page td {
    border-color: var(--kt3m-border);
}

.kt3m-warehouse-issue-page .container > a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    margin-top: 18px;
    color: var(--kt3m-text-muted) !important;
    font-weight: 700;
}

.kt3m-approval-page .container {
    overflow-x: auto;
}

.kt3m-approval-page table {
    min-width: 880px;
}

.kt3m-approval-page .form-inline {
    gap: 10px;
}

.kt3m-approval-page .invite-code,
.kt3m-approval-page strong[style*="color"] {
    color: var(--kt3m-primary) !important;
}

/* Public download and support */
.kt3m-download-page .download-card,
.kt3m-download-page .ios-guide,
.kt3m-download-page .feedback,
.kt3m-support-page .box {
    color: var(--kt3m-text);
    background: var(--kt3m-card);
}

.kt3m-download-page .hero,
.kt3m-download-page .head,
.kt3m-support-page .head {
    color: var(--kt3m-heading);
}

.kt3m-download-page .eyebrow,
.kt3m-download-page .meta,
.kt3m-download-page .version,
.kt3m-download-page .download-card p {
    color: var(--kt3m-muted);
}

/* Commercial pricing and checkout */
.kt3m-commerce-page {
    display: block;
    padding: 0;
}

.kt3m-commerce-page .wrap {
    width: min(1180px, calc(100% - 40px));
}

.kt3m-commerce-page .top {
    border-color: var(--kt3m-border);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 1px 0 var(--kt3m-border);
    backdrop-filter: blur(16px);
}

.kt3m-commerce-page .brand {
    color: var(--kt3m-heading);
}

.kt3m-commerce-page .navlinks a,
.kt3m-commerce-page .btn {
    color: var(--kt3m-text);
    border-color: var(--kt3m-border-strong);
    background: var(--kt3m-card);
}

.kt3m-commerce-page .navlinks a:hover,
.kt3m-commerce-page .btn:hover {
    border-color: var(--kt3m-primary);
    background: var(--kt3m-primary-soft);
    text-decoration: none;
}

.kt3m-commerce-page .navlinks .primary,
.kt3m-commerce-page .btn.primary {
    color: #fff;
    border-color: var(--kt3m-primary);
    background: var(--kt3m-primary);
}

.kt3m-commerce-page .hero {
    padding: 84px 0 52px;
    background:
        radial-gradient(circle at 50% 0, rgba(79, 107, 255, .16), transparent 48%),
        linear-gradient(180deg, #fff, transparent);
}

.kt3m-commerce-page .eyebrow {
    color: var(--kt3m-primary);
}

.kt3m-commerce-page .hero p,
.kt3m-commerce-page .muted,
.kt3m-commerce-page .section-title p,
.kt3m-commerce-page .faq p,
.kt3m-commerce-page .footer,
.kt3m-commerce-page .secure-item small {
    color: var(--kt3m-muted);
}

.kt3m-commerce-page .trust span,
.kt3m-commerce-page .faq article,
.kt3m-commerce-page .secure-item {
    color: var(--kt3m-text);
    border-color: var(--kt3m-border);
    background: var(--kt3m-surface-subtle);
}

.kt3m-commerce-page .plans {
    align-items: stretch;
}

.kt3m-commerce-page .plan,
.kt3m-commerce-page .panel {
    color: var(--kt3m-text);
    border-color: var(--kt3m-border);
    background: var(--kt3m-card);
    box-shadow: var(--kt3m-shadow-sm);
}

.kt3m-commerce-page .plan.recommended {
    border-color: var(--kt3m-primary);
    box-shadow: 0 0 0 1px rgba(79, 107, 255, .12), var(--kt3m-shadow-md);
}

.kt3m-commerce-page .badge {
    color: var(--kt3m-primary-strong);
    background: var(--kt3m-primary-soft);
}

.kt3m-commerce-page .plan li,
.kt3m-commerce-page .terms {
    color: var(--kt3m-muted);
}

.kt3m-commerce-page .plan li::before,
.kt3m-commerce-page .terms a {
    color: var(--kt3m-primary);
}

.kt3m-commerce-page .field input,
.kt3m-commerce-page .field select {
    color: var(--kt3m-text);
    border-color: var(--kt3m-border-strong);
    background: var(--kt3m-field);
}

.kt3m-commerce-page .field input:focus,
.kt3m-commerce-page .field select:focus {
    border-color: var(--kt3m-primary);
    box-shadow: 0 0 0 3px rgba(79, 107, 255, .14);
}

.kt3m-commerce-page .secure-icon {
    color: #fff;
    background: var(--kt3m-primary);
}

.kt3m-commerce-page .payment {
    color: var(--kt3m-text);
    border-color: var(--kt3m-primary);
    background: var(--kt3m-primary-soft);
}

.kt3m-commerce-page .payment-row {
    color: var(--kt3m-muted);
    border-color: var(--kt3m-border);
}

.kt3m-commerce-page .payment-row strong {
    color: var(--kt3m-text);
}

.kt3m-commerce-page .footer {
    border-color: var(--kt3m-border);
}

@media (max-width: 900px) {
    body.kt3m-public-v2 {
        padding: 18px;
    }

    .kt3m-public-v2 .summary-list,
    .kt3m-public-v2 .summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kt3m-warehouse-issue-page .flex-box {
        grid-template-columns: 1fr;
    }

    .kt3m-commerce-page .wrap {
        width: min(100% - 28px, 1180px);
    }
}

@media (max-width: 600px) {
    body.kt3m-public-v2 {
        padding: 10px;
    }

    .kt3m-public-v2 .container,
    .kt3m-public-v2 .login-card,
    .kt3m-public-v2 .renew-card,
    .kt3m-public-v2 .box {
        padding: 18px;
        border-radius: 14px;
    }

    .kt3m-public-v2 .summary-list,
    .kt3m-public-v2 .summary-grid {
        grid-template-columns: 1fr;
    }

    .kt3m-public-v2 .form-inline {
        align-items: stretch;
        flex-direction: column;
    }

    .kt3m-public-v2 .form-inline > * {
        width: 100% !important;
    }

    .kt3m-public-v2 h2 {
        font-size: 24px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kt3m-public-v2 *,
    .kt3m-public-v2 *::before,
    .kt3m-public-v2 *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
