/*
 * =========================================================
 * INVOICE MAKER — THEME CONTRACT V2
 *
 * Application/editor UI follows global theme tokens.
 * Invoice document remains template-controlled.
 * =========================================================
 */


/* Page */
body.invoice-maker-page {
    background:
        var(--pqr-bg-page) !important;

    color:
        var(--pqr-text-primary) !important;
}


/* =========================================================
   APPLICATION SURFACES
   ========================================================= */

body.invoice-maker-page :is(
    .invoice-shell,
    .invoice-form-column,
    .invoice-preview-column,
    .invoice-section,
    .invoice-section-card,
    .invoice-card,
    .invoice-editor-card,
    .invoice-form-card,
    .invoice-template-chooser,
    .invoice-template-card,
    .invoice-payment-security,
    .invoice-signature-panel,
    .invoice-manager-shell,
    .invoice-manager-card,
    .invoice-published-panel,
    .invoice-published-item,
    .invoice-preview-toolbar
) {
    border-color:
        var(--pqr-border-default) !important;

    background:
        var(--pqr-bg-surface) !important;

    color:
        var(--pqr-text-primary) !important;
}


/* =========================================================
   HEADINGS
   ========================================================= */

body.invoice-maker-page :is(
    .invoice-section-heading h2,
    .invoice-section-heading h3,
    .invoice-card h2,
    .invoice-card h3,
    .invoice-template-copy strong,
    .invoice-template-card strong,
    .invoice-preview-toolbar strong,
    .invoice-manager-shell h2,
    .invoice-manager-shell h3,
    .invoice-published-number
) {
    color:
        var(--pqr-text-primary) !important;
}


/* =========================================================
   SECONDARY TEXT
   ========================================================= */

body.invoice-maker-page :is(
    .invoice-section-heading p,
    .invoice-template-copy small,
    .invoice-template-card small,
    .invoice-preview-toolbar span,
    .invoice-field small,
    .invoice-help,
    .invoice-muted,
    .invoice-published-header p,
    .invoice-published-customer,
    .invoice-published-meta
) {
    color:
        var(--pqr-text-secondary) !important;
}


/* =========================================================
   FORMS
   ========================================================= */

body.invoice-maker-page
.invoice-field label {
    color:
        var(--pqr-text-secondary) !important;
}


body.invoice-maker-page :is(
    .invoice-field input,
    .invoice-field select,
    .invoice-field textarea,
    .invoice-document-language-control select,
    .form-control,
    .form-select
) {
    border-color:
        var(--pqr-control-border) !important;

    background:
        var(--pqr-control-bg) !important;

    color:
        var(--pqr-control-text) !important;
}


body.invoice-maker-page :is(
    .invoice-field input,
    .invoice-field textarea,
    .form-control
)::placeholder {
    color:
        var(--pqr-control-placeholder) !important;
}


body.invoice-maker-page :is(
    .invoice-field input,
    .invoice-field select,
    .invoice-field textarea,
    .form-control,
    .form-select
):focus {
    border-color:
        var(--pqr-action) !important;

    background:
        var(--pqr-control-bg) !important;

    color:
        var(--pqr-control-text) !important;
}


/* =========================================================
   BUTTONS / TEMPLATE CONTROLS
   ========================================================= */

body.invoice-maker-page :is(
    .invoice-template-chooser button,
    .invoice-secondary-button,
    .invoice-preview-toolbar button,
    .invoice-published-actions a,
    .invoice-published-actions button
) {
    border-color:
        var(--pqr-border-default) !important;

    background:
        var(--pqr-bg-subtle) !important;

    color:
        var(--pqr-text-primary) !important;
}


body.invoice-maker-page
.invoice-template-chooser button:is(
    .active,
    [aria-pressed="true"]
),
body.invoice-maker-page
.invoice-template-card.active {
    border-color:
        var(--pqr-action) !important;

    background:
        var(--pqr-action-soft) !important;

    color:
        var(--pqr-action-hover) !important;
}


/* =========================================================
   PREVIEW CHROME
   ========================================================= */

body.invoice-maker-page
.invoice-paper-stage {
    border-color:
        var(--pqr-border-default) !important;

    background:
        var(--pqr-bg-subtle) !important;
}


/* =========================================================
   SEO / EDUCATIONAL CONTENT
   ========================================================= */

body.invoice-maker-page
.invoice-seo {
    color:
        var(--pqr-text-primary) !important;
}


body.invoice-maker-page
.invoice-seo :is(
    .invoice-seo-section,
    .invoice-seo-card,
    .invoice-seo-step,
    .invoice-seo-use-card,
    .invoice-seo-feature,
    .invoice-seo-feature-card,
    .invoice-seo-privacy,
    .invoice-seo-disclaimer,
    details,
    article,
    .invoice-related-tools a
) {
    border-color:
        var(--pqr-border-default) !important;

    background:
        var(--pqr-bg-surface) !important;

    color:
        var(--pqr-text-primary) !important;
}


body.invoice-maker-page
.invoice-seo :is(
    h2,
    h3,
    h4,
    strong,
    summary
) {
    color:
        var(--pqr-text-primary) !important;
}


body.invoice-maker-page
.invoice-seo :is(
    p,
    li,
    td,
    small
) {
    color:
        var(--pqr-text-secondary) !important;
}


body.invoice-maker-page
.invoice-seo th {
    border-color:
        var(--pqr-border-default) !important;

    background:
        var(--pqr-bg-subtle) !important;

    color:
        var(--pqr-text-primary) !important;
}


body.invoice-maker-page
.invoice-seo td {
    border-color:
        var(--pqr-border-default) !important;
}


/* =========================================================
   MIDNIGHT LEGACY COMPATIBILITY
 *
 * Only needed while old Invoice Maker styles still contain
 * hard-coded white surfaces.
   ========================================================= */

html[data-pqr-theme="midnight"]
body.invoice-maker-page
.invoice-seo :is(
    article,
    details,
    .invoice-seo-step,
    .invoice-seo-card,
    .invoice-seo-use-card,
    .invoice-seo-feature,
    .invoice-seo-feature-card
) {
    background:
        var(--pqr-bg-surface) !important;

    border-color:
        var(--pqr-border-default) !important;
}


html[data-pqr-theme="midnight"]
body.invoice-maker-page
.invoice-form-column > :is(
    section,
    article
) {
    background:
        var(--pqr-bg-surface) !important;

    border-color:
        var(--pqr-border-default) !important;
}


/* =========================================================
   DOCUMENT ISOLATION
 *
 * Actual invoice/template is deliberately not site themed.
   ========================================================= */

body.invoice-maker-page
#invoicePreview.invoice-paper {
    background: #ffffff !important;
    color-scheme: light;
}

