/* Shared maintenance master-detail layout. Keep all list-based administration
   screens on these primitives so page templates only provide their data. */
.admin-user-layout { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: stretch; }
.admin-user-list-column { display: flex; min-width: 0; flex-direction: column; }
.admin-user-list, .admin-user-layout > form { min-width: 0; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 10px 24px rgba(18, 52, 71, .06); overflow: hidden; }
.admin-user-list { display: flex; flex-direction: column; height: min(440px, calc(100vh - 320px)); min-height: 260px; max-height: calc(100vh - 320px); }
.admin-user-list__header { display: flex; align-items: flex-start; justify-content: center; gap: 10px; min-height: 82px; margin-bottom: 8px; padding: 14px 16px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #f4faf7; box-shadow: 0 6px 16px rgba(18, 52, 71, .04); text-align: center; }
.admin-user-list__eyebrow { margin: 0 0 3px; color: var(--enterprise-muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.admin-user-list__header h2 { margin: 0; color: var(--enterprise-ink); font-size: 17px; line-height: 1.25; }
.admin-user-list__count { margin: 4px 0 0; color: var(--enterprise-muted); font-size: 12px; }
.admin-user-list__items { flex: 1 1 auto; min-height: 0; padding: 4px 8px; }
.users-scroll { height: 100%; overflow-y: scroll; scrollbar-width: auto; scrollbar-color: #78a995 #edf5f1; }
.admin-user-list__item { display: flex; align-items: center; gap: 6px; min-height: 30px; margin: 0; padding: 3px 8px; border-bottom: 1px solid #d8e5df; color: var(--enterprise-ink); font-weight: 600; line-height: 1.2; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.admin-user-list__label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-list__item:hover, .admin-user-list__item:focus-visible { background: #e6f2ec; color: var(--enterprise-green); text-decoration: none; }
.admin-user-list__item.is-selected { color: #075f3b; background: #d9eee3; box-shadow: inset 4px 0 0 var(--enterprise-green-bright); }
.admin-user-list__new { display: flex; box-sizing: border-box; width: 100%; min-height: 23px; flex: 0 0 23px; align-items: center; align-self: stretch; justify-content: center; gap: 6px; margin-top: 8px; padding: 2px 12px; border: 1px solid #087b4c; border-radius: 7px; color: #fff !important; background: var(--enterprise-green-bright); box-shadow: 0 4px 10px rgba(6, 126, 78, .18); font-size: 12px; font-weight: 800; text-align: center; text-decoration: none; white-space: nowrap; transition: background-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.admin-user-list__new:hover, .admin-user-list__new:focus-visible { color: #fff !important; background: #087b4c; box-shadow: 0 7px 16px rgba(6, 126, 78, .25); text-decoration: none; transform: translateY(-1px); }
.admin-user-history { margin-top: 8px; min-width: 0; overflow: hidden; border: 1px solid var(--enterprise-green); border-radius: 7px; background: #fffef0; box-shadow: 0 4px 12px rgba(18, 52, 71, .04); }
@media (min-width: 801px) { .admin-user-history { position: sticky; top: 96px; z-index: 10; align-self: start; } }
.admin-user-layout .admin-user-list__header { display: none; }
.admin-user-history .formsectionheader { margin: 0; padding: 5px 8px; color: #fff; background: var(--enterprise-green); font-size: 12px; line-height: 1.2; text-align: center; }
.admin-user-history__results { box-sizing: border-box; height: 230px; min-height: 230px; max-height: 230px; overflow-y: auto; padding: 4px; border-bottom: 1px solid var(--enterprise-line); }
.admin-user-history__table { width: 100%; border-collapse: collapse; color: var(--enterprise-ink); font-size: 12px; }
.admin-user-history__table, .admin-user-history__table tbody, .admin-user-history__table tr, .admin-user-history__table td { height: auto !important; }
.admin-user-history__table th, .admin-user-history__table td { padding: 3px 6px; border-bottom: 1px solid var(--enterprise-line); text-align: left; vertical-align: middle; }
.admin-user-history__table th { color: var(--enterprise-muted); font-weight: 800; }
.admin-user-history__table td:first-child { font-weight: 700; }
.admin-user-history__table td:nth-child(2) { white-space: nowrap; text-align: right; }
.admin-user-history__table td:nth-child(3) { width: 1%; white-space: nowrap; text-align: center; }
.admin-user-history__table tbody tr:nth-child(odd) { background: rgba(232, 242, 252, .72); }
.admin-user-history__table tr:last-child td { border-bottom: 0; }
.admin-user-history__table button { display: inline-grid; width: 24px; height: 24px; padding: 0; place-items: center; border: 1px solid #e1a8a3; border-radius: 50%; color: #b42318; background: #fff1f0; cursor: pointer; font-size: 0; line-height: 1; }
.admin-user-history__table button::after { content: '×'; font-size: 18px; font-weight: 800; }
.admin-user-history__table button:hover { border-color: #b42318; color: #fff; background: #b42318; }
.admin-user-history__table form { margin: 0; padding: 0 !important; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.app-shell .admin-user-history__table button { box-sizing: border-box; width: 24px !important; min-width: 24px !important; max-width: 24px !important; height: 24px !important; min-height: 24px !important; max-height: 24px !important; margin: 0; padding: 0 !important; font-size: 0 !important; }
body.app-shell .admin-user-history__table button::after { font-size: 18px !important; }
.admin-user-list:has(.admin-user-list__empty) { display: none; }
.admin-access-points { width: 100%; border-collapse: collapse; }
.admin-access-points td { padding: 5px 8px; text-align: left !important; vertical-align: middle; }
.admin-access-points__checkbox { width: 30px; }
.admin-access-points__checkbox label { display: inline-flex; align-items: center; }
.admin-access-points__label { color: var(--enterprise-ink); }
.admin-access-points__main { font-weight: 800; }
form[name="user_details"] > table:nth-of-type(3) { width: 100%; border-collapse: collapse; }
form[name="user_details"] > table:nth-of-type(3) td { padding: 5px 8px; text-align: left !important; vertical-align: middle; }
form[name="user_details"] > table:nth-of-type(3) td:first-child { width: 30px; }
form[name="user_details"] > table:nth-of-type(3) td:first-child input[type="checkbox"] { margin: 0; }
form[name="user_details"] > table:nth-of-type(3) td:last-child { width: auto; }
#user_details table:has(input[name^="prod_subcat_enabled"]), #user_details table:has(input[name^="res_subcat_enabled"]) { width: 100%; }
#user_details table:has(input[name^="prod_subcat_enabled"]) td, #user_details table:has(input[name^="res_subcat_enabled"]) td { padding: 5px 8px; text-align: left !important; vertical-align: middle; }
#user_details table:has(input[name^="prod_subcat_enabled"]) td:first-child, #user_details table:has(input[name^="res_subcat_enabled"]) td:first-child { width: 30px; }
#user_details table:has(input[name^="prod_subcat_enabled"]) td:first-child label, #user_details table:has(input[name^="res_subcat_enabled"]) td:first-child label { display: inline-flex; align-items: center; }
#user_details table:has(input[name^="prod_subcat_enabled"]) td:last-child, #user_details table:has(input[name^="res_subcat_enabled"]) td:last-child { width: auto; }
#user_details table:has(input[name^="prod_subcat_enabled"]) .formlabel, #user_details table:has(input[name^="res_subcat_enabled"]) .formlabel { color: var(--enterprise-ink); }
.admin-selection-count { float: right; color: var(--enterprise-muted); font-size: 12px; font-weight: 700; }
.admin-collapsible-header { display: flex; align-items: center; justify-content: space-between; cursor: pointer; user-select: none; }
.admin-collapsible-header::after { content: '⌄'; margin-left: 12px; color: var(--enterprise-green); font-size: 16px; line-height: 1; transition: transform .15s ease; }
.admin-collapsible-header[aria-expanded="false"]::after { transform: rotate(-90deg); }
.admin-collapsible-header:focus-visible { outline: 2px solid var(--enterprise-green); outline-offset: 2px; }
#user_details td:has(input[name^="prod_subcat_"], input[name^="res_subcat_"]) { padding: 5px 8px; text-align: left !important; vertical-align: middle; }
#user_details td:first-child:has(input[name^="prod_subcat_"], input[name^="res_subcat_"]) { width: 30px; }
#user_details td.formlabel:has(input[name^="prod_subcat_"], input[name^="res_subcat_"]) { width: auto !important; color: var(--enterprise-ink); }
.admin-user-history__controls { display: grid; grid-template-columns: 1fr; gap: 6px; padding: 10px; }
.admin-user-history__controls label { color: var(--enterprise-muted); font-size: 12px; font-weight: 700; }
.admin-user-history__controls input, .admin-user-history__controls select { box-sizing: border-box; width: 100%; min-height: 32px; }
.admin-user-history__controls .formbutton { width: 100%; }
.new-user-btn__icon { display: inline-grid; width: 16px; height: 16px; place-items: center; border: 1px solid rgba(255, 255, 255, .72); border-radius: 50%; font-size: 13px; font-weight: 500; line-height: 1; }
.user-status-icon { display: inline-grid; width: 16px; height: 16px; flex: 0 0 16px; place-items: center; border-radius: 50%; font-size: 11px; font-weight: 800; line-height: 1; }
.admin-user-list__item .user-status-icon { order: -1; }
.user-status-icon.is-enabled { color: #fff; background: var(--enterprise-green); }
.user-status-icon.is-disabled { color: #7a3b3b; background: #f4dede; }
.admin-user-list__empty { margin: 12px 8px; color: var(--enterprise-muted); font-size: 13px; }
.admin-user-layout > form { padding: 18px; }
.admin-user-layout__form { min-width: 0; padding: 18px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 10px 24px rgba(18, 52, 71, .06); }
@media (min-width: 801px) {
  .admin-product-layout > .admin-user-list-column {
    position: sticky;
    top: 78px;
    align-self: start;
    max-height: calc(100vh - 92px);
  }
  .app-main:has(> form[name="price_profile_details"] + .admin-user-list-column) > .admin-user-list-column {
    position: sticky;
    top: 78px;
    align-self: start;
    max-height: calc(100vh - 92px);
  }
  .app-main:has(> form[name="mm_details"] + .admin-user-list-column) > .admin-user-list-column {
    position: sticky;
    top: 78px;
    align-self: start;
    max-height: calc(100vh - 92px);
  }
}
.admin-user-layout.branch-user-layout { grid-template-columns: minmax(360px, 400px) minmax(0, 1fr); }
.admin-user-layout.branch-user-layout .admin-user-history { width: 100%; }
.app-main > form[name="user_details"], .app-main > form[name="price_profile_details"], .app-main > form[name="prod_cat_details"], .app-main > form[name="preprint_details"], .app-main > form[name="region_details"], .app-main > form[name="invoice_message_detail"], .app-main > form[name="mm_details"], .app-main > form[name="prod_details"], .app-main > form[name="cust_details"] { box-sizing: border-box; width: 100%; margin: 0; padding: 20px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 8px 20px rgba(18, 52, 71, .05); }
.app-main:has(> form[name="mm_details"] + .admin-user-list-column) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: start; }
.app-main:has(> form[name="mm_details"] + .admin-user-list-column) > form { grid-column: 2; grid-row: 1; }
.app-main:has(> form[name="mm_details"] + .admin-user-list-column) > .admin-user-list-column { grid-column: 1; grid-row: 1; }
.app-main:has(> form[name="region_details"] + .admin-user-list-column) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: start; }
.app-main:has(> form[name="region_details"] + .admin-user-list-column) > form { grid-column: 2; grid-row: 1; }
.app-main:has(> form[name="region_details"] + .admin-user-list-column) > .admin-user-list-column { grid-column: 1; grid-row: 1; }
.app-main:has(> form[name="price_profile_details"] + .admin-user-list-column), .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column), .app-main:has(> form[name="preprint_details"] + .admin-user-list-column), .app-main:has(> form[name="user_details"] + .admin-user-list-column) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: start; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: start; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); gap: 18px; align-items: start; }
.app-main:has(> form[name="price_profile_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="preprint_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="user_details"] + .admin-user-list-column) > form { grid-column: 2; grid-row: 1; }
.app-main:has(> form[name="price_profile_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="preprint_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="user_details"] + .admin-user-list-column) > .admin-user-list-column { grid-column: 1; grid-row: 1; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > form { grid-column: 2; grid-row: 1; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > .admin-user-list-column { grid-column: 1; grid-row: 1; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > form { grid-column: 2; grid-row: 1; }
.app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > .admin-user-list-column { grid-column: 1; grid-row: 1; }
.app-main:has(> form[name="user_details"] + .formsectionheader), .app-main:has(> form[name="price_profile_details"] + .formsectionheader), .app-main:has(> form[name="prod_cat_details"] + .formsectionheader), .app-main:has(> form[name="preprint_details"] + .formsectionheader), .app-main:has(> form[name="region_details"] + .formsectionheader) { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); grid-template-rows: 82px minmax(260px, calc(100vh - 380px)); gap: 18px; align-items: start; }
.app-main:has(> form[name="user_details"] + .formsectionheader) > form, .app-main:has(> form[name="price_profile_details"] + .formsectionheader) > form, .app-main:has(> form[name="prod_cat_details"] + .formsectionheader) > form, .app-main:has(> form[name="preprint_details"] + .formsectionheader) > form, .app-main:has(> form[name="region_details"] + .formsectionheader) > form { grid-column: 2; grid-row: 1 / span 2; }
.app-main:has(> form[name="user_details"] + .formsectionheader) > form + .formsectionheader, .app-main:has(> form[name="price_profile_details"] + .formsectionheader) > form + .formsectionheader, .app-main:has(> form[name="prod_cat_details"] + .formsectionheader) > form + .formsectionheader, .app-main:has(> form[name="preprint_details"] + .formsectionheader) > form + .formsectionheader, .app-main:has(> form[name="region_details"] + .formsectionheader) > form + .formsectionheader { grid-column: 1; grid-row: 1; min-height: 82px; display: flex; align-items: center; box-sizing: border-box; margin-top: 0; padding: 14px 16px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #f4faf7; color: var(--enterprise-ink); font-weight: 800; }
.app-main:has(> form[name="user_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="price_profile_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="prod_cat_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="preprint_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="region_details"] + .formsectionheader) > form + .formsectionheader + table { grid-column: 1; grid-row: 2; display: block; width: 100%; max-height: calc(100vh - 280px); overflow-y: auto; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 8px 20px rgba(18, 52, 71, .05); }
@media (max-width: 800px) { .app-main:has(> form[name="user_details"] + .formsectionheader), .app-main:has(> form[name="price_profile_details"] + .formsectionheader), .app-main:has(> form[name="prod_cat_details"] + .formsectionheader), .app-main:has(> form[name="preprint_details"] + .formsectionheader), .app-main:has(> form[name="region_details"] + .formsectionheader) { display: flex; flex-direction: column; } .app-main:has(> form[name="user_details"] + .formsectionheader) > form, .app-main:has(> form[name="price_profile_details"] + .formsectionheader) > form, .app-main:has(> form[name="prod_cat_details"] + .formsectionheader) > form, .app-main:has(> form[name="preprint_details"] + .formsectionheader) > form, .app-main:has(> form[name="region_details"] + .formsectionheader) > form { order: 2; } .app-main:has(> form[name="user_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="price_profile_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="prod_cat_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="preprint_details"] + .formsectionheader) > form + .formsectionheader + table, .app-main:has(> form[name="region_details"] + .formsectionheader) > form + .formsectionheader + table { order: 1; max-height: 300px; } }
@media (max-width: 800px) { .admin-user-layout { grid-template-columns: 1fr; } .admin-user-list { height: min(300px, calc(100svh - 390px)); min-height: 220px; max-height: calc(100svh - 390px); } }
@media (max-width: 800px) { .admin-user-layout.branch-user-layout { grid-template-columns: 1fr; } }
@media (max-width: 800px) { .app-main:has(> form[name="mm_details"] + .admin-user-list-column) { display: flex; flex-direction: column; } .app-main:has(> form[name="mm_details"] + .admin-user-list-column) > form { order: 2; } .app-main:has(> form[name="mm_details"] + .admin-user-list-column) > .admin-user-list-column { order: 1; } }
@media (max-width: 800px) { .app-main:has(> form[name="region_details"] + .admin-user-list-column) { display: flex; flex-direction: column; } .app-main:has(> form[name="region_details"] + .admin-user-list-column) > form { order: 2; } .app-main:has(> form[name="region_details"] + .admin-user-list-column) > .admin-user-list-column { order: 1; } }
@media (max-width: 800px) { .app-main:has(> form[name="price_profile_details"] + .admin-user-list-column), .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column), .app-main:has(> form[name="preprint_details"] + .admin-user-list-column), .app-main:has(> form[name="user_details"] + .admin-user-list-column) { display: flex; flex-direction: column; } .app-main:has(> form[name="price_profile_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="preprint_details"] + .admin-user-list-column) > form, .app-main:has(> form[name="user_details"] + .admin-user-list-column) > form { order: 2; } .app-main:has(> form[name="price_profile_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="prod_cat_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="preprint_details"] + .admin-user-list-column) > .admin-user-list-column, .app-main:has(> form[name="user_details"] + .admin-user-list-column) > .admin-user-list-column { order: 1; } }
@media (max-width: 800px) { .app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) { display: flex; flex-direction: column; } .app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > form { order: 2; } .app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > .standard-form-section, .app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > .access-point-assignment-list { order: 3; } .app-main:has(> form[name="user_details"] + .standard-form-section + .admin-user-list-column) > .admin-user-list-column { order: 1; } }
@media (max-width: 800px) { .app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) { display: flex; flex-direction: column; } .app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > form { order: 2; } .app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > .standard-form-section, .app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > .access-point-assignment-list { order: 3; } .app-main:has(> form[name="user_details"] + .standard-form-section + .access-point-assignment-list + .admin-user-list-column) > .admin-user-list-column { order: 1; } }
/* Statement emailer editor and isolated, non-submitting preview. */
.statement-emailer-editor-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; padding: 18px; }
.statement-emailer-editor, .statement-emailer-preview { min-width: 0; padding: 16px; border: 1px solid #d5e2dc; border-radius: 10px; background: #fff; }
.statement-emailer-editor h2, .statement-emailer-preview h2 { margin: 0 0 12px; color: #17352b; font-size: 1rem; }
.statement-emailer-editor label { display: block; margin-bottom: 7px; color: #21483a; font-weight: 600; }
.statement-emailer-editor textarea { display: block; box-sizing: border-box; width: 100%; min-height: 360px; resize: vertical; padding: 10px; border: 1px solid #a9c3b7; border-radius: 7px; font: 0.9rem/1.4 Consolas, monospace; }
.statement-emailer-preview iframe { display: block; width: 100%; min-height: 360px; border: 1px solid #d5e2dc; border-radius: 7px; background: #fff; }
.statement-emailer-actions { display: flex; justify-content: center; gap: 12px; padding: 0 18px 18px; }
@media (max-width: 900px) { .statement-emailer-editor-grid { grid-template-columns: 1fr; } }

/* User profile form and table container. */
.user-profile-container { box-sizing: border-box; width: 100%; margin: 0; padding: 20px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 8px 20px rgba(18, 52, 71, .05); }
.user-profile-table { width: 100%; border-collapse: separate; border-spacing: 0 6px; }
.user-profile-table td { padding: 5px 8px; vertical-align: middle; }
.user-profile-table .formsectionheader { padding: 10px 12px; border-bottom: 1px solid var(--enterprise-line); border-radius: 7px; background: #f4faf7; color: var(--enterprise-ink); font-weight: 800; }
.user-profile-table input:not([type="hidden"]) { box-sizing: border-box; min-height: 38px; width: min(100%, 420px); padding: 8px 10px; border: 1px solid #a9c3b7; border-radius: 7px; }
.user-profile-table .formlabel, .user-profile-table .formlabelrequired { color: #21483a; font-weight: 600; text-align: right; }
.user-profile-table .profile-readonly { color: #60756b; background: #f7faf8; }
.user-profile-container > .formbutton { margin-top: 12px; }
.content-manager-panel { box-sizing: border-box; padding: 18px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 10px 24px rgba(18, 52, 71, .06); }
.content-manager-panel__header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid var(--enterprise-line); }
.content-manager-panel__eyebrow { margin: 0 0 3px; color: var(--enterprise-muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.content-manager-panel h2 { margin: 0; color: var(--enterprise-ink); font-size: 20px; }
.content-manager-panel__count { margin: 3px 0 0; color: var(--enterprise-muted); font-size: 12px; }
.content-manager-panel__new { flex: 0 0 auto; padding: 9px 16px; text-decoration: none; }
.content-manager-table-wrap { overflow-x: auto; border: 1px solid var(--enterprise-line); border-radius: 9px; }
.content-manager-table { min-width: 760px; border-collapse: separate; border-spacing: 0; color: var(--enterprise-ink); font-size: 13px; }
.content-manager-table th { padding: 11px 12px; border-right: 1px solid rgba(255,255,255,.45); border-bottom: 0; color: #fff; background: #087d4f; font-size: 12px; font-weight: 700; text-align: left; white-space: nowrap; }
.content-manager-table th:first-child { border-radius: 7px 0 0 0; }
.content-manager-table th:last-child { border-right: 0; border-radius: 0 7px 0 0; }
.content-manager-table th a { color: inherit; text-decoration: none; }
.content-manager-table th a:hover, .content-manager-table th a:focus-visible { color: #fff; text-decoration: underline; }
.content-manager-table td { padding: 11px 12px; border-bottom: 1px solid #e2ebe6; text-align: left; vertical-align: middle; }
.content-manager-table tbody tr:last-child td { border-bottom: 0; }
.content-manager-table tbody tr:nth-child(even) { background: #f8fbf9; }
.content-manager-table tbody tr:hover { background: #edf7f2; box-shadow: inset 3px 0 0 #0b945c; }
.content-manager-table__title { min-width: 260px; text-align: left !important; }
.content-manager-table__title a { color: #075fbd; text-decoration: none; }
.content-manager-table__title a:hover, .content-manager-table__title a:focus-visible { text-decoration: underline; }
.content-manager-table td img { width: 14px; height: 14px; vertical-align: middle; }
.content-manager-empty { padding: 22px !important; color: var(--enterprise-muted); text-align: center !important; }
.content-manager-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; color: var(--enterprise-muted); font-size: 13px; }
.content-manager-toolbar__group { display: inline-flex; align-items: center; gap: 8px; }
.content-manager-toolbar a, .content-manager-toolbar .contentpagelinksbold { min-width: 24px; padding: 5px 6px; border-radius: 5px; text-align: center; }
.content-manager-toolbar a { color: #075fbd; text-decoration: none; }
.content-manager-toolbar a:hover, .content-manager-toolbar a:focus-visible { background: #e6f2ec; text-decoration: underline; }
.content-manager-toolbar .contentpagelinksbold { color: #fff; background: var(--enterprise-green); font-weight: 700; }
.content-manager-toolbar select { min-height: 38px; padding: 6px 10px; border: 1px solid #a9c3b7; border-radius: 7px; background: #fff; }
@media (max-width: 700px) { .content-manager-panel { padding: 12px; } .content-manager-panel__header { align-items: flex-start; flex-direction: column; } .content-manager-panel__new { width: 100%; text-align: center; } .content-manager-toolbar { align-items: stretch; flex-direction: column; } }

/* Content editor */
.content-editor { box-sizing: border-box; max-width: 1180px; margin: 0 auto; padding: 20px; border: 1px solid var(--enterprise-line); border-radius: 14px; background: #fff; box-shadow: 0 10px 24px rgba(18, 52, 71, .06); color: var(--enterprise-ink); }
.content-editor__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin: -20px -20px 18px; padding: 18px 20px; border-radius: 13px 13px 0 0; color: #fff; background: var(--enterprise-green); }
.content-editor__header h1 { margin: 0; font-size: 22px; line-height: 1.2; }
.content-editor__eyebrow { margin: 0 0 4px; color: rgba(255,255,255,.76); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.content-editor__hint { margin: 6px 0 0; color: rgba(255,255,255,.86); font-size: 13px; }
.content-editor__back { flex: 0 0 auto; padding: 8px 12px; border: 1px solid rgba(255,255,255,.6); border-radius: 7px; color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; }
.content-editor__back:hover, .content-editor__back:focus-visible { background: rgba(255,255,255,.14); text-decoration: underline; }
.content-editor__section { margin-top: 16px; padding: 16px; border: 1px solid var(--enterprise-line); border-radius: 10px; background: #fbfdfc; }
.content-editor__section h2 { margin: 0 0 12px; color: var(--enterprise-ink); font-size: 17px; }
.content-editor__section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.content-editor__section-heading p { margin: -6px 0 12px; color: var(--enterprise-muted); font-size: 12px; }
.content-editor__fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .35fr); gap: 14px 18px; }
.content-editor__field { display: flex; min-width: 0; flex-direction: column; gap: 5px; color: var(--enterprise-ink); font-size: 12px; font-weight: 700; }
.content-editor__field--wide { grid-column: 1 / -1; }
.content-editor__field input, .content-editor__field select, .content-editor__field textarea { box-sizing: border-box; width: 100%; min-height: 38px; padding: 8px 10px; border: 1px solid #b8cec3; border-radius: 7px; color: var(--enterprise-ink); background: #fff; font: inherit; font-weight: 400; }
.content-editor__field textarea { min-height: 100px; resize: vertical; line-height: 1.45; }
.content-editor__field input:focus, .content-editor__field select:focus, .content-editor__field textarea:focus { border-color: var(--enterprise-green); outline: 2px solid rgba(11,148,92,.2); outline-offset: 1px; }
.content-editor__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.content-editor__secondary { min-height: 32px; padding: 6px 10px; border: 1px solid #9bbdad; border-radius: 6px; color: var(--enterprise-green); background: #fff; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.content-editor__secondary:hover, .content-editor__secondary:focus-visible { color: #fff; background: var(--enterprise-green); }
.content-editor__target-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 2px 12px; overflow: auto; max-height: 250px; padding: 6px; border: 1px solid var(--enterprise-line); border-radius: 7px; background: #fff; }
.content-editor__target { display: flex; align-items: center; gap: 8px; min-height: 30px; padding: 3px 7px; border-radius: 4px; color: var(--enterprise-ink); font-size: 13px; font-weight: 500; }
.content-editor__target:nth-child(even) { background: #f4faf7; }
.content-editor__target:hover { background: #e7f4ed; }
.content-editor__target input[type="checkbox"], .content-editor__option-grid input[type="checkbox"], .content-editor__inline-check input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: var(--enterprise-green); }
.content-editor__option-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px 18px; }
.content-editor__option-grid label, .content-editor__inline-check { display: flex; align-items: center; gap: 8px; min-height: 30px; color: var(--enterprise-ink); font-size: 13px; }
.content-editor__elements { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 12px; }
.content-editor__element { display: grid; gap: 10px; padding: 12px; border: 1px solid var(--enterprise-line); border-radius: 8px; background: #fff; }
.content-editor__element-preview { display: flex; align-items: center; justify-content: center; min-height: 74px; padding: 8px; border-radius: 6px; color: var(--enterprise-muted); background: #f1f7f3; font-size: 12px; text-align: center; }
.content-editor__element-preview img { max-width: 100%; max-height: 110px; object-fit: contain; }
.content-editor__footer { display: flex; align-items: center; justify-content: center; gap: 12px; padding-top: 18px; }
.content-editor__footer .formbutton { min-width: 130px; }
.content-editor__cancel { color: #075fbd; font-size: 13px; text-decoration: none; }
.content-editor__cancel:hover, .content-editor__cancel:focus-visible { text-decoration: underline; }
.content-editor__empty { grid-column: 1 / -1; margin: 8px; color: var(--enterprise-muted); font-size: 13px; }
.branch-owner-details__actions { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--enterprise-line); }
.branch-owner-details__actions--top { justify-content: flex-start; margin: 0 0 14px; padding: 0 0 12px; border-top: 0; border-bottom: 1px solid var(--enterprise-line); }
.branch-owner-details__actions .formbutton { min-width: 150px; }
.branch-owner-details__cancel { color: #075fbd; font-size: 13px; text-decoration: none; }
.branch-owner-details__cancel:hover, .branch-owner-details__cancel:focus-visible { text-decoration: underline; }
@media (max-width: 700px) { .content-editor { padding: 12px; border-radius: 10px; } .content-editor__header { align-items: stretch; flex-direction: column; margin: -12px -12px 14px; padding: 14px 12px; } .content-editor__back { text-align: center; } .content-editor__section { padding: 12px; } .content-editor__section-heading { align-items: stretch; flex-direction: column; } .content-editor__fields { display: block; } .content-editor__field { margin-bottom: 12px; } .content-editor__footer { align-items: stretch; flex-direction: column; } .content-editor__footer .formbutton, .content-editor__cancel { text-align: center; } }

/* Customer Relations Manager is only available on Branch Owner users. */
form[name="user_details"] tr:has(input[name="cust_relations_man"]) { display: none !important; }
.admin-profile-search { display: grid; gap: 5px; margin: 0 0 8px; }
.admin-profile-search label { color: var(--enterprise-muted); font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.admin-profile-search input { box-sizing: border-box; width: 100%; min-height: 36px; padding: 8px 10px; border: 1px solid var(--enterprise-line); border-radius: 7px; background: #fff; color: var(--enterprise-ink); }
.admin-list-search { display: grid; gap: 5px; margin: 0 0 8px; }
.admin-list-search label { color: var(--enterprise-muted); font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.admin-list-search input { box-sizing: border-box; width: 100%; min-height: 36px; padding: 8px 10px; border: 1px solid var(--enterprise-line); border-radius: 7px; background: #fff; color: var(--enterprise-ink); }
.admin-list-search-empty { margin: 12px 8px; color: var(--enterprise-muted); font-size: 13px; }
.customer-additional-information { margin-top: 18px; border: 1px solid var(--enterprise-line); border-radius: 10px; overflow: hidden; background: #fff; }
.customer-additional-information h2 { margin: 0; padding: 9px 14px; border-bottom: 1px solid var(--enterprise-line); color: var(--enterprise-ink); background: #edf6f2; font-size: 14px; }
.customer-additional-information__links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--enterprise-line); }
.customer-additional-information__links a { padding: 9px 12px; color: var(--enterprise-link, #006b45); background: #f7fbf9; text-align: center; text-decoration: none; font-weight: 700; }
.customer-additional-information__links a:hover, .customer-additional-information__links a:focus-visible { background: #dcefe6; text-decoration: underline; }
.customer-additional-information__message { margin: 0; padding: 12px 14px; color: var(--enterprise-muted, #52645c); }
@media (max-width: 800px) { .customer-additional-information__links { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
