/* Standalone contribution dialogs use the same palette without the site shell. */
.mz-form-page { --mz-green: #087f62; --mz-green-light: #eaf2eb; --mz-ink: #22372d; --mz-line: #d9dfd5; }
/* Shared editing forms. Search, filters, authentication and contact keep their own layouts. */
:is(.manzoom-modern, .mz-form-page) .mz-form {
    --mz-field-line: #bbc9c2;
    box-sizing: border-box;
    display: flow-root;
    min-width: 0;
    max-width: 100%;
    line-height: 1.9;
    color: var(--mz-ink);
}
:is(.manzoom-modern, .mz-form-page) #main .main-box > .mz-form {
    padding: clamp(20px, 3vw, 36px);
    margin: 0;
}
:is(.manzoom-modern, .mz-form-page) .mz-form-intro { margin: 0 0 24px; color: #56685e; font-size: 14px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .main { display: flow-root; }
:is(.manzoom-modern, .mz-form-page) .mz-form > label { display: block; margin-bottom: 8px; font-size: 14px; font-weight: bold; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field { display: grid; gap: 8px; margin-bottom: 24px; max-width: 640px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field > label,
:is(.manzoom-modern, .mz-form-page) .mz-form .form-label { color: var(--mz-ink); font-size: 14px; font-weight: bold; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input:not([type]), input[type="text"], input[type="password"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], input[type="date"], select, textarea) {
    box-sizing: border-box;
    width: 100%;
    max-width: 640px;
    min-width: 0;
    min-height: 48px;
    padding: 10px 14px;
    border: 1px solid var(--mz-field-line);
    border-radius: 10px;
    background: #fcfdfc;
    color: var(--mz-ink);
    font-family: inherit;
    font-size: 16px;
    line-height: 1.7;
    transition: border-color .18s, box-shadow .18s, background-color .18s;
}
:is(.manzoom-modern, .mz-form-page) .mz-form textarea { display: block; min-height: 156px; resize: vertical; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea)::placeholder { color: #6b7a72; opacity: 1; font-size: 14px; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea, select):hover:not(:disabled) { border-color: #859c8f; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea, select):focus {
    border-color: var(--mz-green);
    background: white;
    box-shadow: 0 0 0 3px #087f621a;
}
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea, select):focus-visible { outline-offset: 3px; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea, select):disabled { background: #edf1ee; color: #69746c; cursor: not-allowed; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input, textarea, select)[aria-invalid="true"] { border-color: #b33b3b; }
:is(.manzoom-modern, .mz-form-page) .mz-form :is(input[type="checkbox"], input[type="radio"]) { accent-color: var(--mz-green); width: 18px; height: 18px; margin: 0 0 0 8px; vertical-align: middle; }
:is(.manzoom-modern, .mz-form-page) .mz-form input[type="file"] { max-width: 100%; padding-block: 8px; }
:is(.manzoom-modern, .mz-form-page) .mz-form input[type="file"]::file-selector-button { font: inherit; padding: 8px 14px; margin-inline-end: 12px; border: 1px solid var(--mz-field-line); border-radius: 8px; background: #f0f5f1; color: var(--mz-ink); cursor: pointer; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field-help { display: block; color: #56685e; font-size: 12px; line-height: 1.9; }
:is(.manzoom-modern, .mz-form-page) .mz-form .errorlist { margin-block: 8px 16px; padding: 10px 14px; border-inline-start: 3px solid #b33b3b; border-radius: 6px; background: #fff3f1; color: #922e2e; font-size: 13px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .errorlist:empty { display: none; }
/* Space out the legacy floated field rows without changing their JS hooks. */
:is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table { box-sizing: border-box; margin-block: 0 20px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .right:not(.form-label) { max-width: 100%; }
:is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .right:has(> input:not([type="hidden"]), > select, > textarea, > .select2-container) { width: min(100%, 420px); }
:is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .right + .right { margin-inline-start: 12px; }
:is(.manzoom-modern, .mz-form-page) .mz-form > :is(input:not([type="hidden"]), textarea) { margin-block: 0 20px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 22px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.7;
    font-weight: bold;
    max-width: 100%;
    white-space: normal;
}
:is(.manzoom-modern, .mz-form-page) .mz-form .btn.green { border-color: var(--mz-green); background: var(--mz-green); color: white; }
:is(.manzoom-modern, .mz-form-page) .mz-form .btn.green:not(.disable):hover { background: #066c53; border-color: #066c53; color: white; box-shadow: 0 4px 12px #087f6220; }
:is(.manzoom-modern, .mz-form-page) .mz-form .btn.btn-outline { background: white; border: 1px solid var(--mz-field-line); color: var(--mz-green); }
:is(.manzoom-modern, .mz-form-page) .mz-form .btn.btn-outline:hover { background: var(--mz-green-light); border-color: var(--mz-green); }
:is(.manzoom-modern, .mz-form-page) .mz-form button[type="submit"] { margin-block: 12px 4px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; clear: both; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--mz-line); }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-form-actions .btn { float: none; margin: 0; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field-with-action { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; min-width: 0; }
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field-with-action > select,
:is(.manzoom-modern, .mz-form-page) .mz-form .mz-field-with-action > .select2-container { flex: 1 1 260px; min-width: 0; }
/* Select2 shares the same field size; its generated inline width is otherwise fixed. */
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-container { width: 100% !important; max-width: 640px; min-width: 0; text-align: right; }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-selection { min-height: 48px; height: auto !important; border: 1px solid var(--mz-field-line) !important; border-radius: 10px; background: #fcfdfc !important; }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-selection--single .select2-selection__rendered { height: auto !important; padding-block: 10px; padding-inline: 14px 30px; line-height: 26px; color: var(--mz-ink); }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-selection--single .select2-selection__arrow { height: 46px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-selection--multiple .select2-selection__rendered { box-sizing: border-box; padding: 5px 10px; }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-selection--multiple .select2-selection__choice { margin-block: 3px; border: 1px solid #c9dace; background: var(--mz-green-light); border-radius: 6px; color: var(--mz-ink); }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-search--inline .select2-search__field { width: auto; min-height: 30px; padding: 0; margin-top: 2px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-container--focus .select2-selection,
:is(.manzoom-modern, .mz-form-page) .mz-form .select2-container--open .select2-selection { border-color: var(--mz-green) !important; box-shadow: 0 0 0 3px #087f621a; }
@media (max-width: 600px) {
    :is(.manzoom-modern, .mz-form-page) #main .main-box > .mz-form { padding: 20px 16px; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .right { float: none; width: 100%; margin-inline: 0; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .form-label { margin: 0 0 8px; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .full-width.table:not(.rating-box):not(.movie-formset-item) > .right + .right { margin-inline-start: 0; margin-top: 8px; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .mz-form-actions .btn { width: 100%; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .mz-field-with-action > .btn { width: 100%; }
    :is(.manzoom-modern, .mz-form-page) .mz-form .btn[type="submit"] { float: none; width: 100%; }
    :is(.manzoom-modern, .mz-form-page) .mz-form table { max-width: 100%; }
    :is(.manzoom-modern, .mz-form-page) .mz-form :is(td, th) { overflow-wrap: anywhere; }
}
