/* Generated by scripts/build-settings-css.js; edit styles/settings/*.css. */

/* tokens.css */
/* Compatibility tokens: values come from existing Firmiss styles, not a new theme.
   Scope only the authenticated settings/account view root; never body/.content. */
.fd-system {
    --fd-space-1: .25rem;
    --fd-space-2: .5rem;
    --fd-space-3: .75rem;
    --fd-space-4: 1rem;
    --fd-space-6: 1.5rem;
    --fd-space-8: 2rem;
    --fd-settings-padding: 1.5rem;
    --fd-settings-label-width: 200px;
    --fd-settings-control-radius: .375rem;
    --fd-settings-panel-radius: .5rem;
    --fd-management-panel-radius: .7rem;
    --fd-application-panel-radius: .65rem;
    --fd-settings-shadow: 0 1px 3px rgb(9 30 66 / 6%);
    --fd-number-width: 6.5rem;
    --fd-number-unit-gap: .5rem;
    --fd-group-content-gap: .375rem;
    --fd-password-panel-width: 620px;
    --fd-password-panel-padding: var(--fd-space-6);
    --fd-profile-content-width: 540px;
    --fd-profile-panel-padding: var(--fd-space-6);
    --fd-form-action-gap: var(--fd-space-6);
    --fd-control-size: 2.5rem;
    --fd-control-font: var(--text-sm);
    --fd-control-leading: var(--leading-sm);
    --fd-control-inline-padding: 1rem;
    --fd-field-search-width: 20rem;
    --fd-field-short-width: 10rem;
    --fd-unit-width: 2em;
}
/* No global tokens, theme palette, font size, or density overrides. */

/* legacy.css */
/* Settings-only rules extracted from app.css. Shared site rules remain in app.css. */

.fd-system .profile-avatar-row { display: flex; align-items: center; gap: 1rem; }
.fd-system .profile-avatar-row > div { display: grid; justify-items: start; gap: .5rem; }
.fd-system .profile-photo-setting { display: grid; grid-template-columns: minmax(120px, .36fr) minmax(0, 1fr); gap: 1.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--line); }
.fd-system .profile-photo-setting h2 { margin: 0; font-size: var(--text-md); line-height: var(--leading-md); }
.fd-system .profile-photo-setting p { margin: .35rem 0 0; color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .profile-fields { display: grid; gap: 1rem; }
.fd-system .profile-short-field { max-width: 400px; }
.fd-system .management-filter { display: flex; align-items: end; gap: .75rem; margin-bottom: 1rem; }
.fd-system .management-filter.management-panel { width: fit-content; max-width: 100%; padding: .9rem 1rem; box-shadow: none; }
.fd-system .management-filter label { display: grid; gap: .35rem; color: var(--muted); font-size: var(--text-xs); font-weight: var(--weight-semibold); line-height: var(--leading-xs); }
.fd-system .management-filter select { min-width: 130px; }
.fd-system .list-heading { align-items: end; }
.fd-system .list-heading .management-filter { margin: 0; }
.fd-system .create-application-panel { margin-bottom: 1.5rem; }
.fd-system .create-application-panel > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; list-style: none; }
.fd-system .create-application-panel > summary::-webkit-details-marker { display: none; }
.fd-system .create-application-copy { min-width: 0; display: grid; gap: .25rem; }
.fd-system .create-application-copy strong { color: var(--accent); font-size: var(--text-md); font-weight: var(--weight-semibold); line-height: var(--leading-md); }
.fd-system .create-application-copy > span { color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .create-application-button { flex: 0 0 auto; pointer-events: none; white-space: nowrap; }
.fd-system .create-application-expanded { display: none; }
.fd-system .create-application-panel[open] .create-application-collapsed { display: none; }
.fd-system .create-application-panel[open] .create-application-expanded { display: inline; }
.fd-system .create-application-panel > summary:hover .create-application-button { background: var(--brand-surface-hover); }
.fd-system .create-application-panel[open] > summary { padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.fd-system .create-application-panel .mcp-application-form { margin: 1rem 0 0; }
.fd-system .mcp-application-form { margin-bottom: 1.5rem; background: var(--surface-subtle); border: 1px solid var(--line); border-radius: .7rem; }
.fd-system .mcp-application-form h4 { margin: .3rem 0 0; }
.fd-system .mcp-help { margin: -.55rem 0 0; color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .mcp-transfer { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: .75rem; }
.fd-system .mcp-transfer section { display: grid; grid-template-rows: auto auto 1fr; gap: .35rem; min-width: 0; padding: .8rem; background: var(--paper-strong); border: 1px solid var(--line); border-radius: .55rem; }
.fd-system .mcp-transfer h5 { margin: 0; }
.fd-system .mcp-transfer small { min-height: 2.4em; color: var(--muted); }
.fd-system .mcp-transfer select { min-height: 150px; font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .mcp-transfer-actions { display: flex; flex-direction: column; justify-content: center; gap: .4rem; }
.fd-system .mcp-transfer-actions .button { min-width: 42px; padding-inline: .6rem; }
.fd-system .mcp-applications { display: grid; gap: .8rem; }
.fd-system .mcp-application-card { padding: 1rem 1.15rem; background: var(--paper-strong); border: 1px solid var(--line); border-radius: .65rem; }
.fd-system .mcp-application-heading > div:first-child { display: grid; gap: .25rem; }
.fd-system .mcp-application-heading span, .fd-system .mcp-application-heading small { color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .mcp-application-card details { margin-top: .8rem; border-top: 1px solid var(--line); }
.fd-system .mcp-application-card summary { padding-top: .8rem; color: var(--forest-light); cursor: pointer; font-weight: var(--weight-semibold); }
.fd-system#settings-view { max-width: 1120px; padding: var(--page-padding); }
.fd-system#settings-view > .management-heading { margin-bottom: 1.5rem; }
.fd-system .settings-section-heading h2 { margin: 0; font-size: var(--text-md); font-weight: var(--weight-semibold); line-height: var(--leading-md); }
.fd-system .settings-section-heading p { margin: .5rem 0 0; color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .settings-body label { display: grid; align-content: start; min-width: 0; gap: .5rem; color: var(--ink); font-size: var(--text-sm); font-weight: var(--weight-medium); line-height: var(--leading-sm); }
.fd-system .settings-body input, .fd-system .settings-body textarea { min-width: 0; padding-inline: .625rem; font-size: var(--text-sm); line-height: var(--leading-sm); border-radius: .375rem; }
.fd-system .settings-body textarea { padding-block: .4375rem; font-family: var(--font-sans); line-height: var(--leading-md); }
.fd-system .settings-body .settings-help { margin: 0; color: var(--muted); font-size: var(--text-xs); font-weight: var(--weight-regular); line-height: 1.25rem; overflow-wrap: anywhere; }
.fd-system .settings-help p { margin: 0; }
.fd-system .settings-help p + p { margin-top: .25rem; }
.fd-system .settings-fieldset legend { width: 100%; margin-bottom: 1rem; padding: 0 0 .5rem; color: var(--ink); border-bottom: 1px solid var(--line); font-size: var(--text-sm); font-weight: var(--weight-semibold); line-height: var(--leading-sm); }
.fd-system .settings-fieldset .settings-help { margin-top: .75rem; }
.fd-system .settings-grid, .fd-system .settings-rate-grid, .fd-system .settings-link-fields { display: grid; gap: 1rem 1.5rem; }
.fd-system .settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fd-system .settings-rate-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fd-system .settings-link-fields { max-width: 560px; }
.fd-system .setting-number small { color: var(--muted); font-size: var(--text-xs); font-weight: var(--weight-regular); white-space: nowrap; }
.fd-system .settings-actions .button, .fd-system#settings-view > .management-heading > .button { border-radius: var(--fd-settings-control-radius); }
.fd-system .settings-compact-group legend { margin-bottom: 0; padding-bottom: .375rem; color: var(--accent); border-bottom-color: color-mix(in srgb, var(--accent) 28%, var(--line)); font-weight: var(--weight-bold); }
.fd-system .settings-compact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.5rem; }
.fd-system .settings-body .settings-compact-field { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 1rem; min-height: 45px; padding: .375rem 0; border-bottom: 1px solid color-mix(in srgb, var(--line) 65%, transparent); }
.fd-system .settings-body .settings-compact-field:nth-last-child(-n + 2) { border-bottom: 0; }
.fd-system .settings-compact-group .settings-help { margin-top: .375rem; }
@container (max-width: 560px) {
    .fd-system .settings-grid, .fd-system .settings-rate-grid { grid-template-columns: minmax(0, 1fr); }
}
@container (max-width: 560px) {
    .fd-system .settings-actions .button { border-radius: var(--fd-settings-control-radius); }
}
@container (max-width: 560px) {
    .fd-system .settings-body textarea { font-size: var(--text-md); }
}
@container (max-width: 560px) {
    .fd-system .settings-compact-grid { grid-template-columns: minmax(0, 1fr); }
}
@container (max-width: 560px) {
    .fd-system .settings-body .settings-compact-field { min-height: 50px; padding: .25rem 0; }
}
@container (max-width: 560px) {
    .fd-system .settings-body .settings-compact-field:nth-last-child(2) { border-bottom: 1px solid color-mix(in srgb, var(--line) 65%, transparent); }
}
@media (max-width: 640px) {
    .fd-system#settings-view { padding: var(--page-padding); }
}

@media (max-width: 600px) {
    .fd-system .list-heading .management-filter, .fd-system .management-filter { width: 100%; align-items: stretch; flex-direction: column; }
}

@media (max-width: 600px) {
    .fd-system .management-filter.management-panel { width: 100%; }
}

@media (max-width: 600px) {
    .fd-system .management-filter select { width: 100%; min-width: 0; }
}

@media (max-width: 600px) {
    .fd-system .create-application-panel > summary { align-items: stretch; flex-direction: column; gap: .75rem; }
}

@media (max-width: 600px) {
    .fd-system .create-application-button { width: 100%; }
}

@media (max-width: 600px) {
    .fd-system .profile-photo-setting { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
    .fd-system .mcp-application-heading { align-items: start; flex-direction: column; }
}

@media (max-width: 600px) {
    .fd-system .mcp-transfer { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
    .fd-system .mcp-transfer-actions { flex-direction: row; }
}
.fd-system .backup-panel, .fd-system .backup-jobs { max-width: 920px; margin-block: 1rem; padding: 1.5rem; }
.fd-system .backup-panel h2, .fd-system .backup-jobs h2 { margin: 0; font-size: var(--text-lg); line-height: var(--leading-lg); }
.fd-system .backup-panel-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.fd-system .backup-panel-heading p { margin: .35rem 0 0; color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-count { flex: none; padding: .25rem .6rem; color: var(--selected-text); background: var(--selected-surface); border-radius: 999px; font-size: var(--text-xs); font-weight: var(--weight-semibold); line-height: var(--leading-xs); }
.fd-system .backup-scope { overflow: hidden; background: var(--paper-strong); border: 1px solid var(--line); border-radius: .6rem; }
.fd-system .backup-tree-heading { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .5rem .8rem .5rem 1rem; color: var(--muted); background: var(--surface-subtle); border-bottom: 1px solid var(--line); }
.fd-system .backup-tree-heading > div:first-child { min-width: 0; display: flex; align-items: baseline; gap: .65rem; }
.fd-system .backup-tree-heading strong { color: var(--ink); font-size: var(--text-sm); font-weight: var(--weight-semibold); line-height: var(--leading-sm); }
.fd-system .backup-tree-heading span { font-size: var(--text-xs); line-height: var(--leading-xs); }
.fd-system .backup-selection-toolbar { flex: none; display: flex; align-items: center; gap: .35rem; }
.fd-system .backup-selection-toolbar label { display: inline-flex; align-items: center; gap: .4rem; color: var(--ink); font-size: var(--text-sm); font-weight: var(--weight-semibold); cursor: pointer; }
.fd-system .backup-selection-toolbar input, .fd-system .backup-tree-row input { width: 1rem; height: 1rem; flex: 0 0 1rem; margin: 0; accent-color: var(--accent); cursor: pointer; }
.fd-system .backup-selection-toolbar .text-button { min-height: 28px; padding: .2rem .45rem; color: var(--accent); font-size: var(--text-sm); }
.fd-system .backup-tree-heading [data-backup-selection-count] { color: var(--muted); font-variant-numeric: tabular-nums; }
.fd-system .backup-tree { max-height: 23rem; margin: 0; overflow: auto; padding: .55rem .7rem; list-style: none; }
.fd-system .backup-tree ul { margin: 0 0 0 .35rem; padding: 0 0 0 .65rem; list-style: none; }
.fd-system .backup-tree-row { color: var(--muted); }
.fd-system .backup-tree-row.context { color: var(--muted); }
.fd-system .backup-tree-row > label { min-width: 0; min-height: 34px; display: flex; flex: 1 1 auto; align-items: center; gap: .45rem; padding: .32rem .45rem; border-radius: .38rem; cursor: pointer; }
.fd-system .backup-tree-row.context > label { cursor: default; }
.fd-system .backup-tree-toggle-spacer { width: 24px; min-width: 24px; height: 28px; }
.fd-system .backup-tree-toggle .tree-chevron { display: block; }
.fd-system .backup-tree-toggle[aria-expanded="false"] .tree-chevron { transform: rotate(0); }
.fd-system .backup-tree-context-icon { width: 1.05rem; height: 1.05rem; flex: 0 0 1.05rem; display: grid; place-items: center; }
.fd-system .backup-tree-context-icon .node-icon { width: 15px; height: 15px; }
.fd-system .backup-node-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-tree-note { flex: 0 0 auto; color: var(--muted); font-size: .6875rem; line-height: 1rem; }
.fd-system .backup-tree-label-context { background: var(--line-strong); }
.fd-system .backup-tree-help { display: flex; justify-content: space-between; gap: .5rem 1.5rem; padding: .55rem 1rem; color: var(--muted); background: var(--surface-subtle); border-top: 1px solid var(--line); font-size: var(--text-xs); line-height: var(--leading-xs); }
.fd-system .backup-options { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 1.25rem; align-items: start; margin-top: 1rem; padding: 1rem; background: var(--surface-subtle); border: 1px solid var(--line); border-radius: .6rem; }
.fd-system .backup-type-field { min-width: 0; display: grid; gap: .4rem; }
.fd-system .backup-type-field > label { font-size: var(--text-sm); font-weight: var(--weight-semibold); line-height: var(--leading-sm); }
.fd-system .backup-type-field > select, .fd-system .backup-target > select { width: 100%; border-radius: .42rem; padding-inline: .65rem 2rem; }
.fd-system .backup-type-summary { min-width: 0; display: grid; gap: .25rem; padding-top: .05rem; }
.fd-system .backup-type-summary > strong { font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-type-summary > p { min-height: 2.5rem; margin: 0; color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-target { max-width: 230px; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .6rem; margin-top: .35rem; color: var(--muted); font-size: var(--text-xs); font-weight: var(--weight-semibold); line-height: var(--leading-xs); }
.fd-system .backup-create-bar { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.fd-system .backup-create-bar > div { min-width: 0; display: grid; gap: .3rem; }
.fd-system .backup-create-bar small { color: var(--muted); font-size: var(--text-xs); line-height: var(--leading-xs); }
.fd-system .backup-create-bar .button { min-width: 112px; flex: none; }
.fd-system .backup-preview { min-height: 1.25rem; margin: 0; color: var(--ink); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-empty { padding: 1rem; color: var(--muted); background: var(--surface-subtle); border-radius: .5rem; }
.fd-system .backup-jobs > h2 { margin-bottom: .65rem; }
.fd-system .backup-job { display: grid; gap: .85rem; padding: 1rem 0; border-top: 1px solid var(--line); }
.fd-system .backup-job-main { display: flex; align-items: center; gap: .75rem; }
.fd-system .backup-job-main > div { min-width: 0; display: grid; gap: .15rem; }
.fd-system .backup-job-main strong { min-width: 0; display: flex; align-items: baseline; flex-wrap: wrap; gap: .25rem .55rem; font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-package-md5 { color: var(--muted); font: var(--weight-regular) var(--text-xs)/var(--leading-xs) var(--font-mono); overflow-wrap: anywhere; }
.fd-system .backup-job-status { color: var(--muted); font-size: var(--text-xs); line-height: var(--leading-xs); }
.fd-system .backup-package-icon { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 38px; color: var(--selected-text); background: var(--selected-surface); border-radius: .45rem; font: var(--weight-bold) .625rem/1 var(--font-mono); letter-spacing: .04em; }
.fd-system .backup-job-progress { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .75rem; }
.fd-system .backup-job progress { width: 100%; height: .55rem; accent-color: var(--accent); }
.fd-system .backup-job-ready { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.fd-system .backup-job-ready > span { color: var(--muted); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .backup-job-ready > div { display: flex; align-items: center; gap: .75rem; }
.fd-system .backup-job-error { margin: 0; color: var(--danger); font-size: var(--text-sm); line-height: var(--leading-sm); }

@media (max-width: 640px) {
    .fd-system .backup-panel, .fd-system .backup-jobs { padding: 1rem; }
}

@media (max-width: 640px) {
    .fd-system .backup-panel-heading, .fd-system .backup-job-ready { align-items: start; flex-direction: column; }
}

@media (max-width: 640px) {
    .fd-system .backup-tree-heading > div:first-child { align-items: start; flex-direction: column; gap: .2rem; }
}

@media (max-width: 640px) {
    .fd-system .backup-tree-help { flex-direction: column; }
}

@media (max-width: 640px) {
    .fd-system .backup-options { grid-template-columns: 1fr; gap: .8rem; }
}

@media (max-width: 640px) {
    .fd-system .backup-type-field { max-width: 280px; }
}

@media (max-width: 640px) {
    .fd-system .backup-create-bar { align-items: stretch; flex-direction: column; }
}

@media (max-width: 640px) {
    .fd-system .backup-create-bar .button { width: 100%; }
}

@media (max-width: 640px) {
    .fd-system .backup-job-ready > div { width: 100%; flex-wrap: wrap; }
}

/* layout.css */
/* Page padding remains owned by the existing .management-view/#settings-view.
   This adapter deliberately adds no second page wrapper or centering. */
.fd-system .settings-stack {
    display: grid; gap: var(--fd-space-4); container-type: inline-size;
}
.fd-system .settings-section {
    display: grid; grid-template-columns: var(--fd-settings-label-width) minmax(0, 1fr);
    align-items: start; gap: var(--fd-space-8); min-width: 0; margin: 0;
    padding: var(--fd-settings-padding); background: var(--paper-strong);
    border: 1px solid var(--line); border-radius: var(--fd-settings-panel-radius);
    box-shadow: var(--fd-settings-shadow);
}
.fd-system .settings-body { display: grid; min-width: 0; gap: var(--fd-space-4); }
/* A paired filter moves as a unit when the list title consumes its row. */
.fd-system .list-heading { flex-wrap: wrap; }
.fd-system .management-filter {
    flex-wrap: wrap; min-width: 0; max-width: 100%;
}
.fd-system .management-filter label { grid-template-columns: minmax(0, 1fr); min-width: 0; max-width: 100%; }
.fd-system .management-filter input { width: var(--fd-field-search-width); min-width: 0; max-width: 100%; }
.fd-system .management-filter select { width: var(--fd-field-short-width); max-width: 100%; }
/* Actual available content width, not viewport width, controls header wrapping. */
.fd-system .management-heading { flex-wrap: wrap; }
.fd-system .management-heading > div { min-width: 0; overflow-wrap: anywhere; }
.fd-system .management-heading > .button { max-width: 100%; }
.fd-system#settings-view > .management-heading { margin-bottom: var(--fd-space-4); }
/* The card owns outer padding; embedded MCP forms must not add a second inset. */
.fd-system .mcp-config-form { padding-inline: 0; }
@container main-content (max-width: 40rem) {
    .fd-system .backup-options { grid-template-columns: minmax(0, 1fr); }
    .fd-system .backup-job-ready { align-items: start; flex-direction: column; }
    .fd-system .backup-job-ready > div { width: 100%; flex-wrap: wrap; }
}
/* Fix: sibling spacing belongs to the parent gap, not fieldset's legend box. */
.fd-system .settings-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.fd-system .settings-fieldset + .settings-fieldset { padding-top: 0; }
.fd-system .settings-footer-group > .settings-grid,
.fd-system .settings-footer-group > .settings-link-fields {
    row-gap: var(--fd-space-3); padding-top: var(--fd-group-content-gap);
}
@container (max-width: 800px) {
    .fd-system .settings-section { grid-template-columns: minmax(0, 1fr); gap: var(--fd-space-6); }
}
@container (max-width: 560px) {
    .fd-system .settings-section { padding: var(--fd-space-4); }
}
/* Own width at the panel, not independently at the inner form.
   This scoped selector resolves the legacy .management-panel.narrow conflict. */
.fd-system .password-panel {
    max-width: var(--fd-password-panel-width); padding: var(--fd-password-panel-padding);
}
@media (max-width: 600px) {
    .fd-system .password-panel { --fd-password-panel-padding: var(--fd-space-4); }
}
/* One profile content width; the panel adds only symmetric padding and borders. */
.fd-system .profile-settings-form {
    width: 100%; min-width: 0;
    max-width: calc(var(--fd-profile-content-width) + 2 * var(--fd-profile-panel-padding) + 2px);
    padding-inline: var(--fd-profile-panel-padding);
    container: fd-profile / inline-size;
}
.fd-system .profile-fields, .fd-system .fd-form-footer--profile { width: 100%; min-width: 0; }
@media (max-width: 600px) {
    .fd-system .profile-settings-form { --fd-profile-panel-padding: var(--fd-space-4); }
}
@container fd-profile (max-width: 28rem) {
    .fd-system .profile-photo-setting { grid-template-columns: minmax(0, 1fr); }
    .fd-system .profile-avatar-row { flex-wrap: wrap; }
    .fd-system .profile-avatar-row > div { min-width: 0; overflow-wrap: anywhere; }
}

/* forms.css */
/* Keep native number borders and spinner; height belongs to controls.css. */
.fd-system .settings-body .setting-number {
    display: inline-flex; align-items: center; justify-content: flex-end;
    flex-wrap: wrap; gap: var(--fd-space-1) var(--fd-number-unit-gap); width: auto; min-width: 0;
}
.fd-system .settings-body .setting-number input {
    flex: 0 1 var(--fd-number-width); width: var(--fd-number-width); max-width: 100%;
    text-align: right;
}
.fd-system .settings-body .setting-number small {
    width: var(--fd-unit-width); flex: 0 0 var(--fd-unit-width);
    white-space: nowrap; text-align: right;
}
/* No compound outer border, appearance reset or spinner removal.
   Disabled, readonly and validation states continue to use native/current rules.
   Gap measures border-to-unit, not text-to-unit (padding/spinner remain). */

/* A field stack and its footer share one content width. */
.fd-system .fd-form-fields { display: grid; min-width: 0; gap: var(--fd-space-4); }
.fd-system .account-password-form {
    width: 100%; max-width: none;
}
.fd-system .fd-form-with-footer { gap: var(--fd-form-action-gap); }
.fd-system .profile-upload-quota { display: grid; min-width: 0; gap: .4rem; font-size: var(--text-sm); line-height: var(--leading-sm); font-weight: var(--weight-semibold); }
.fd-system .profile-quota-value { box-sizing: border-box; width: 100%; height: calc(2 * var(--leading-sm) + 1.36rem + 2px); padding: .68rem .75rem; overflow: auto; border: 1px solid var(--line-strong); border-radius: .42rem; color: var(--ink); background: var(--paper-strong); font-family: var(--font-sans); font-size: var(--text-sm); line-height: var(--leading-sm); }
.fd-system .profile-quota-value:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.fd-system .profile-upload-quota[data-quota-tone="orange"] [data-quota-used] { color: color-mix(in srgb, #d97008 75%, var(--ink)); }
.fd-system .profile-upload-quota[data-quota-tone="red"] [data-quota-used] { color: var(--danger); }
@container fd-profile (max-width: 18rem) {
    .fd-system .profile-quota-value { font-size: var(--text-xs); padding-inline: .5rem; }
}
/* Each numeric row chooses its own layout based on available width and font size. */
.fd-system .settings-compact-grid { container: fd-numeric / inline-size; }
@container fd-numeric (max-width: 18rem) {
    .fd-system .settings-body .settings-compact-field {
        grid-template-columns: minmax(0, 1fr); gap: var(--fd-space-2);
    }
    .fd-system .settings-compact-field .setting-number { justify-self: end; max-width: 100%; }
}

/* actions.css */
/* Layout only. Control size/font/padding belong exclusively to controls.css.
   Table row links, backup create bar, pagination and dialogs retain their own rules. */
.fd-system .settings-actions {
    padding-top: var(--fd-space-2);
}
.fd-system .form-actions.form-actions--end {
    justify-content: end; flex-wrap: wrap; gap: var(--fd-space-2);
}
.fd-system .fd-form-footer {
    display: grid; min-width: 0; gap: var(--fd-space-2);
}
.fd-system .fd-form-footer--profile {
    margin-top: var(--fd-space-2);
}
.fd-system .management-filter > .button.fd-control { flex: 0 0 auto; white-space: nowrap; }
.fd-system .backup-job-ready .button.fd-control { flex-shrink: 0; white-space: nowrap; }

/* collections.css */
/* Compatibility aliases only. No column-width guesses based on :last-child. */
.fd-system .table-wrap { border-radius: var(--fd-management-panel-radius); }
.fd-system .management-card { border-radius: var(--fd-management-panel-radius); }
.fd-system .account-card-grid .management-card {
    min-height: 112px; justify-content: center; padding: var(--fd-space-4);
    box-shadow: var(--fd-settings-shadow);
}
.fd-system .mcp-application-card { min-width: 0; border-radius: var(--fd-application-panel-radius); }
.fd-system .mcp-application-heading > div { min-width: 0; overflow-wrap: anywhere; }
.fd-system .mcp-application-heading .inline-actions { flex-wrap: wrap; }
.fd-system .mcp-usage-panel { margin-top: 1.5rem; padding: 1rem 1.15rem; container: mcp-usage / inline-size; }
.fd-system .mcp-usage-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: .75rem; }
.fd-system .mcp-application-heading > div:first-child > strong,
.fd-system .mcp-usage-heading h2 { margin: 0; font-size: var(--text-lg); font-weight: var(--weight-semibold); line-height: var(--leading-lg); }
.fd-system .mcp-usage-heading a { color: var(--muted); font-size: var(--text-sm); }
.fd-system .mcp-usage-form { display: grid; grid-template-columns: minmax(0, 14rem) minmax(0, 11rem) minmax(0, 10rem) minmax(0, 1fr); align-items: end; gap: 1rem; }
.fd-system .mcp-usage-field { display: grid; min-width: 0; gap: .375rem; color: var(--ink); font-size: var(--text-sm); font-weight: var(--weight-semibold); }
.fd-system .mcp-usage-field select { width: 100%; }
.fd-system .mcp-usage-platform { min-width: 0; margin: 0; padding: 0; border: 0; }
.fd-system .mcp-usage-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; min-width: 0; }
.fd-system .mcp-platform-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .1875rem; border: 1px solid var(--line); border-radius: var(--fd-settings-control-radius); background: var(--surface-subtle); }
.fd-system .mcp-platform-choices label { position: relative; min-width: 0; cursor: pointer; }
.fd-system .mcp-platform-choices span { display: flex; align-items: center; justify-content: center; min-height: calc(var(--fd-control-size) - .375rem - 2px); padding: .25rem .5rem; border-radius: .2rem; font-size: var(--text-sm); line-height: var(--leading-sm); overflow-wrap: anywhere; }
.fd-system .mcp-platform-choices input:checked + span { color: var(--selected-text); background: var(--paper-strong); box-shadow: 0 1px 3px rgb(9 30 66 / 15%); font-weight: var(--weight-semibold); }
.fd-system .mcp-platform-choices input:focus-visible + span { outline: 2px solid var(--forest); outline-offset: 2px; }
.fd-system .mcp-copy-wrap { position: relative; width: fit-content; max-width: 100%; }
.fd-system .mcp-command-tooltip { position: absolute; bottom: calc(100% + .65rem); right: 0; z-index: 5; display: none; gap: .5rem; width: min(26rem, 100cqw); padding: .85rem; border: 1px solid var(--line); border-radius: .5rem; background: var(--paper-strong); color: var(--ink); box-shadow: 0 4px 16px rgb(9 30 66 / 16%); font-size: var(--text-sm); line-height: var(--leading-sm); pointer-events: none; }
.fd-system .mcp-command-tooltip code { white-space: pre-wrap; overflow-wrap: anywhere; font-size: var(--text-xs); }
.fd-system .mcp-command-tooltip > span { color: var(--muted); }
.fd-system .mcp-copy-wrap button:focus-visible + .mcp-command-tooltip { display: grid; }
.fd-system .mcp-usage-note { margin: 0 0 1rem; color: var(--muted); font-size: var(--text-sm); overflow-wrap: anywhere; }
@media (hover: hover) {
    .fd-system .mcp-copy-wrap button:hover + .mcp-command-tooltip { display: grid; }
}
@container mcp-usage (max-width: 46rem) {
    .fd-system .mcp-usage-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fd-system .mcp-usage-application { grid-column: 1 / -1; }
    .fd-system .mcp-usage-actions { grid-column: 1 / -1; }
}
@container mcp-usage (max-width: 16rem) {
    .fd-system .mcp-usage-form { grid-template-columns: minmax(0, 1fr); }
}
/* Tables retain their own horizontal scroll. */

/* Recycle layout; tree nodes use the shared WikiTree presentation in app.css. */
.fd-system .fd-recycle-workbench {
    display: grid; grid-template-columns: minmax(16rem, 24%) minmax(0, 1fr);
    gap: var(--fd-space-4); min-width: 0;
}
.fd-system .fd-recycle-navigation, .fd-system .fd-recycle-detail {
    min-width: 0; padding: var(--fd-space-4); background: var(--paper-strong);
    border: 1px solid var(--line); border-radius: var(--fd-management-panel-radius);
}
.fd-system .fd-recycle-navigation {
    max-height: 32rem; overflow: auto; border-color: var(--danger);
    container: recycle-navigation / inline-size;
}
.fd-system .fd-recycle-workbench h2 {
    margin: 0 0 var(--fd-space-3); font-size: var(--text-md); line-height: var(--leading-md);
}
.fd-system .fd-recycle-navigation > h2 { color: var(--danger); }
.fd-system .fd-recycle-group + .fd-recycle-group { margin-top: var(--fd-space-3); padding-top: var(--fd-space-3); border-top: 1px solid var(--line); }
.fd-system .fd-recycle-help {
    margin: 0 0 var(--fd-space-3); color: var(--muted); white-space: nowrap;
    font-size: min(var(--text-xs), calc(100cqi / 16)); line-height: 1.5;
}
.fd-system .recycle-intro { flex: 1; min-width: 0; width: 100%; container: recycle-intro / inline-size; }
.fd-system .recycle-description { white-space: nowrap; font-size: min(var(--text-sm), calc(100cqi / 18)); }
.fd-system .fd-recycle-node { touch-action: none; }
.fd-system .fd-recycle-detail-heading {
    display: flex; align-items: center; justify-content: space-between; gap: var(--fd-space-2);
    padding-bottom: .75rem; margin-bottom: .75rem; border-bottom: 1px solid var(--line);
}
.fd-system .fd-recycle-detail-heading h2 { margin: 0; }
.fd-system .recycle-purge-action { gap: .3rem; color: var(--danger); white-space: nowrap; }
.fd-system .recycle-purge-action svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.fd-system .fd-recycle-metadata { display: grid; gap: var(--fd-space-2); overflow-wrap: anywhere; }
.fd-system .fd-recycle-metadata span { color: var(--muted); font-size: var(--text-sm); }
.fd-system .fd-recycle-detail .recycle-path-hint { color: var(--forest); }
@container main-content (max-width: 48rem) {
    .fd-system .fd-recycle-workbench { grid-template-columns: minmax(0, 1fr); }
}

/* controls.css */
/* One settings-only height, derived from the existing ~40px return link.
   No page-specific density: widths describe the field's purpose. */
.fd-system .fd-control,
.fd-system .fd-control-group .fd-control,
.fd-system#settings-view > .management-heading > .button.fd-control {
    box-sizing: border-box;
    height: var(--fd-control-size); min-height: var(--fd-control-size);
    max-width: 100%;
    font-size: var(--fd-control-font); line-height: var(--fd-control-leading);
    padding-block: calc((var(--fd-control-size) - var(--fd-control-leading) - 2px) / 2);
}
.fd-system .button.fd-control,
.fd-system .fd-control-group .button.fd-control,
.fd-system#settings-view > .management-heading > .button.fd-control {
    height: auto; width: fit-content; min-width: 0; flex-grow: 0;
    padding-block: calc((var(--fd-control-size) - var(--fd-control-leading)) / 2);
    padding-inline: var(--fd-control-inline-padding);
    /* Long labels may wrap and grow; never clip them to force 40px. */
}
.fd-system .fd-control-group input.fd-control,
.fd-system .fd-control-group select.fd-control { min-width: 0; }
.fd-system .fd-control-group .fd-field--short { width: min(var(--fd-field-short-width), 100%); }
/* Multiline fields, checkboxes, text links and icon-only tools retain their semantics. */

/* feedback.css */
/* A visible focus ring is an intentional settings-only accessibility correction.
   Preserve normal/hover theme colors; don't change global focus behavior. */
.fd-system :is(button, a, input, textarea, select, summary):focus-visible {
    outline: 2px solid var(--accent); outline-offset: 2px;
}
.fd-system label.button:has(input[type="file"]:focus-visible) {
    outline: 2px solid var(--accent); outline-offset: 2px;
}
.fd-system .settings-actions .form-status:empty { display: none; }
.fd-system .fd-form-footer .form-status:empty { display: none; }
/* Existing form-status/success and native disabled/readonly styles are inherited.
   Busy/error/dirty states in the preview are layout fixtures, not new business logic. */
