/* Padrão único dos formulários: superfície estável, conteúdo rolável e ações fixas. */
body.workspace-editor-open::before {
    content: '';
    inset: 0;
    background: rgb(22 30 42 / 20%);
    backdrop-filter: blur(7px);
    pointer-events: auto;
}
html:has(body.workspace-editor-open) { overflow: hidden; }
body.workspace-editor-open .toast:is(.toast-success, .toast-info) { display: none; }
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) {
    position: fixed;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    width: min(680px, calc(100% - 32px));
    height: min(620px, calc(100dvh - 32px));
    max-height: calc(100dvh - 32px);
    margin: 0;
    border: 1px solid rgb(110 125 145 / 18%);
    border-radius: 14px;
    background: var(--c-surface);
    box-shadow: 0 24px 90px rgb(16 24 40 / 18%);
    --calc-form-content-max: 100%;
}
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) > .form-view-header {
    flex: 0 0 auto;
    min-height: 52px;
    padding: 12px 20px;
    border-bottom: 1px solid var(--c-border);
}
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) > .form-view-body {
    flex: 1;
    min-height: 0;
    max-height: none;
    padding: 0;
    overflow: hidden;
}
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) > .form-view-body > form {
    height: 100%;
    max-height: none;
}
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) form .form-scroll-region {
    display: block;
    flex: 1;
    min-height: 0;
    padding: 20px;
    overflow-y: auto;
}
:is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) .form-actions {
    flex: 0 0 auto;
    padding: 12px 20px;
    background: var(--c-surface);
}
.parcel-add-menu > #btnAddParcel {
    display: flex;
    gap: 6px;
    width: auto;
    padding: 0 12px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    border: 1px solid var(--c-border);
    background: var(--c-surface);
}
#workspaceMore > summary { border: 1px solid var(--c-border); border-radius: 10px; }
#workspaceMore .workspace-more-panel { min-width: 210px; }
#workspaceMore [hidden] { display: none !important; }
#workspaceMore .account-save-state { padding: 6px 10px; overflow-wrap: anywhere; }
.main-header-meta .calc-date-block { border-left: 0; padding-left: 0; }
.main-header-copy h1 { font-size: 15px; font-weight: 600; letter-spacing: -.02em; }
.product-mark { box-shadow: none; }
.calc-view .calc-panel { border-radius: 12px; box-shadow: 0 2px 8px rgb(16 24 40 / 2%); }
.calc-view .calc-panel-toolbar { background: var(--c-surface); }
#btnAddCharge { font-size: 12px; font-weight: 500; }
#processSummaryPanel .calc-panel-toolbar { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; min-height: 54px; border-bottom: 0; }
#processSummaryPanel .section-index { position: static; margin: 0; }
#processSummaryPanel .list-toolbar-start { flex: 1; min-width: 0; }
#processSummaryPanel .list-toolbar-end { width: auto; flex: 0 1 auto; }
#emptyParcels::before { content: none; }
#btnOpenProcessInfo { font-size: 12px; font-weight: 500; white-space: nowrap; }
#view-process-info.is-active {
    /* A animação das páginas altera transform e desfaz a centralização do modal. */
    animation: none;
    position: fixed;
    display: flex;
    flex-direction: column;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    width: min(680px, calc(100% - 32px));
    height: min(620px, calc(100dvh - 32px));
    max-height: calc(100dvh - 32px);
    margin: 0;
    border: 1px solid rgb(110 125 145 / 18%);
    border-radius: 14px;
    background: var(--c-surface);
    box-shadow: 0 24px 90px rgb(16 24 40 / 18%);
    overflow: hidden;
    z-index: calc(var(--z-dialog) - 2);
}
#view-process-info > .form-view-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 0 0 auto;
    min-height: 52px;
    padding: 12px 20px;
    border-bottom: 1px solid var(--c-border);
}
#view-process-info .form-view-title { font-size: 13px; font-weight: 600; }
#closeProcessInfo { position: static; width: auto; height: auto; padding: 6px 10px; }
#view-process-info > .calc-view-body { flex: 1; min-height: 0; max-height: none; padding: 0; overflow-y: auto; }
#view-process-info .process-form { display: flex; flex-direction: column; width: 100%; margin: 0; padding: 20px; gap: 20px; }
#view-process-info .process-form-section { width: 100%; }
#view-process-info > .workspace-window-footer { position: static; display: flex; flex: 0 0 auto; align-items: center; padding: 12px 20px; border-top: 1px solid var(--c-border); }
#saveProcessInfoBtn { margin-left: auto; }
.workspace-more-panel { border-radius: 10px; }
@media (max-width: 640px) {
    #view-process-info.is-active { width: calc(100% - 24px); height: calc(100dvh - 24px); max-height: calc(100dvh - 24px); }
    #processSummaryPanel .calc-panel-toolbar { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; padding: 10px; gap: 8px; }
    #processSummaryPanel .section-index { position: static; margin: 0; }
    #processSummaryPanel .list-toolbar-start { flex: 1; min-width: 0; }
    #processSummaryPanel .page-title { font-size: 10px; }
    #processSummaryPanel .list-toolbar-end { flex: 0 1 auto; width: auto; max-width: 175px; }
    #btnOpenProcessInfo { font-size: 11px; padding-inline: 8px; white-space: normal; }
    :is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) { width: calc(100% - 24px); height: calc(100dvh - 24px); max-height: calc(100dvh - 24px); }
    :is(#parcelFormView, #batchAddView, #batchEditView, #chargeFormView) form .form-scroll-region { padding: 16px; }
    .main-header .main-header-meta { display: flex; flex-wrap: nowrap; width: 100%; justify-content: space-between; gap: 10px; }
    .main-header-meta .calc-date-block { order: 0; flex-direction: row; align-items: center; gap: 6px; }
    .main-header-meta #workspaceMore { order: 1; margin-left: auto; }
    .calc-view #chargesListPanel > .calc-panel-toolbar { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; }
    #chargesListPanel .list-toolbar-end { width: auto; flex-basis: auto; }
    #chargesListPanel #btnAddCharge { width: auto; }
    #chargesListPanel .toolbar-primary-actions { width: auto; }
}
