/* Shared, token-based primitives for compact forms and consistent disclosure. */
.field-label-row { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); }
.field-label-row > label { margin: 0; }
.field-label-row > h2, .field-label-row > h3 { margin: 0; }
.field-help { position: relative; display: inline-block; flex: 0 0 auto; }
.field-help-trigger { list-style: none; display: grid; place-items: center; inline-size: 44px; block-size: 44px; cursor: pointer; color: var(--fg-muted); border-radius: var(--r-sm); }
.field-help-trigger::-webkit-details-marker { display: none; }
.field-help-trigger > span { inline-size: 18px; block-size: 18px; border: 1px solid currentColor; border-radius: var(--r-full); display: grid; place-items: center; font-size: 12px; font-weight: 600; }
.field-help-trigger:hover { background: var(--bg-hover); color: var(--fg); }
.field-help-trigger:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.field-help-content { padding: var(--sp-4); max-inline-size: min(24rem, calc(100vw - 16px)); background: var(--popover-bg, var(--bg-elev)); color: var(--popover-fg, var(--fg)); border: 1px solid var(--border); border-radius: var(--r-md); box-shadow: var(--shadow-2); line-height: var(--lh-normal); }
.field-help-content[popover] { position: fixed; inset: auto; margin: 0; max-block-size: min(24rem, calc(100dvh - 32px)); overflow: auto; }
.field-help-content > .hint { margin: 0; color: inherit; font-size: var(--fs-sm); }
.section-tab-list { display: flex; flex-wrap: wrap; gap: var(--sp-1); padding: var(--sp-1); border: 1px solid var(--border); border-radius: var(--r-md); background: var(--bg-subtle); margin-block-end: var(--sp-4); }
.form-stack > .section-tab-list { margin-block-end: 0; }
.section-tab-list > button { display: flex; flex: 1 1 auto; align-items: center; justify-content: center; gap: var(--sp-2); border: 0; border-radius: var(--r-sm); padding: var(--sp-2) var(--sp-4); min-block-size: 44px; color: var(--fg-muted); background: transparent; cursor: pointer; font: inherit; }
.section-tab-list > button[aria-selected="true"] { background: var(--bg-elev); color: var(--fg); box-shadow: var(--shadow-1); }
[role="tabpanel"][hidden] { display: none !important; }
.page-head--hero { background: var(--bg-elev); padding: var(--sp-5); box-shadow: var(--shadow-1); }
.page-head--hero::after, .dashboard-summary .metric::after { display: none; }
.page-head--hero h1 { font-size: clamp(24px, 2.5vw, 30px); }
.form-section, .premium-form-section { border-radius: var(--r-md); }
.premium-form-section, .profile-studio { box-shadow: var(--shadow-1); }
.form-actions { box-shadow: none; }
.appearance-number-settings { margin-block: var(--sp-4); }
.pool-mode-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--sp-2); border: 0; padding: 0; margin-block: var(--sp-4); }
.pool-automatic { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); padding: var(--sp-4); margin-block: var(--sp-4); border: 1px solid var(--border); background: var(--bg-subtle); border-radius: var(--r-md); }
.pool-editor > .field, .pool-picker { margin-block: var(--sp-4); }
.pool-status { color: var(--fg-muted); font-size: var(--fs-sm); margin-block-start: var(--sp-3); }
.pool-editor [hidden] { display: none !important; }
.profile-studio .profile-preset-grid { gap: var(--sp-2); }
.profile-preset { box-shadow: none; }
@media (max-width: 480px) { .section-tab-list > button { padding-inline: var(--sp-2); font-size: var(--fs-sm); } }
