.fb-ui.fb-ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--fb-space-2);max-width:100%;height:var(--fb-button-height-md);margin:0;padding:0 var(--fb-space-4);border:1px solid transparent;border-radius:var(--fb-radius-button);background:transparent;color:var(--fb-color-text-primary);font:inherit;font-size:var(--fb-font-size-nav);font-weight:var(--fb-font-weight-medium);line-height:1;letter-spacing:0;white-space:nowrap;text-decoration:none;cursor:pointer;user-select:none;transition:background-color var(--fb-motion-feedback),border-color var(--fb-motion-feedback),color var(--fb-motion-feedback)}.fb-ui.fb-ui-btn[data-size=xs]{height:var(--fb-button-height-xs)}.fb-ui.fb-ui-btn[data-size=sm],.fb-ui.fb-ui-btn[data-size=xs]{padding:0 var(--fb-space-3);font-size:var(--fb-font-size-body-sm)}.fb-ui.fb-ui-btn[data-size=sm]{height:var(--fb-button-height-sm)}.fb-ui.fb-ui-btn[data-size=lg]{height:var(--fb-button-height-lg);padding:0 var(--fb-space-5)}.fb-ui.fb-ui-btn[data-size=xl]{height:var(--fb-button-height-xl);padding:0 var(--fb-space-6);font-size:var(--fb-font-size-body)}.fb-ui.fb-ui-btn[data-icon-only]{width:var(--fb-button-height-md);padding:0;border-radius:999px}.fb-ui.fb-ui-btn[data-icon-only][data-size=xs]{width:var(--fb-button-height-xs)}.fb-ui.fb-ui-btn[data-icon-only][data-size=sm]{width:var(--fb-button-height-sm)}.fb-ui.fb-ui-btn[data-icon-only][data-size=lg]{width:var(--fb-button-height-lg)}.fb-ui.fb-ui-btn[data-variant=primary]{border-color:var(--fb-action-primary-bg);background:var(--fb-action-primary-bg);color:var(--fb-action-primary-text)}.fb-ui.fb-ui-btn[data-variant=primary]:hover{border-color:var(--fb-action-primary-hover);background:var(--fb-action-primary-hover)}.fb-ui.fb-ui-btn[data-variant=secondary]{border-color:var(--fb-action-secondary-border);background:var(--fb-action-secondary-bg);color:var(--fb-action-secondary-text)}.fb-ui.fb-ui-btn[data-variant=secondary]:hover{background:var(--fb-action-secondary-hover)}.fb-ui.fb-ui-btn[data-variant=ghost]{color:var(--fb-color-text-secondary)}.fb-ui.fb-ui-btn[data-variant=ghost]:hover{background:var(--fb-tint-hover);color:var(--fb-color-text-primary)}.fb-ui.fb-ui-btn[data-variant=danger]{border-color:var(--fb-color-status-error-solid);background:var(--fb-color-status-error-solid);color:var(--fb-color-status-error-solid-text)}.fb-ui.fb-ui-btn[data-variant=danger]:hover{border-color:var(--fb-color-status-error-hover);background:var(--fb-color-status-error-hover)}.fb-ui.fb-ui-btn:focus-visible{outline:2px solid var(--fb-color-focus-ring);outline-offset:2px}.fb-ui.fb-ui-btn:active:not(:disabled,[aria-disabled=true],[data-disabled]){scale:var(--fb-press-scale)}.fb-ui.fb-ui-btn:is(:disabled,[aria-disabled=true],[data-disabled]){border-color:var(--fb-color-control-disabled-bg);background:var(--fb-color-control-disabled-bg);color:var(--fb-color-control-disabled-text);cursor:not-allowed}.fb-ui.fb-ui-btn[data-variant=ghost]:is(:disabled,[aria-disabled=true],[data-disabled]){border-color:transparent;background:transparent}.fb-ui.fb-ui-btn[aria-busy=true]{cursor:wait}.fb-ui .fb-ui-btn-spinner{animation:fb-ui-spin .9s linear infinite}@keyframes fb-ui-spin{to{rotate:1turn}}.fb-ui.fb-ui-arrow{display:inline-block;flex:none;font-style:normal;line-height:1;transition:translate var(--fb-motion-move)}:is(a,button,[data-fb-ui-host]):is(:hover,:focus-visible) .fb-ui.fb-ui-arrow[data-dir=forward]{translate:2px 0}:is(a,button,[data-fb-ui-host]):is(:hover,:focus-visible) .fb-ui.fb-ui-arrow[data-dir=back]{translate:-2px 0}:is(a,button,[data-fb-ui-host]):is(:hover,:focus-visible) .fb-ui.fb-ui-arrow[data-dir=external]{translate:2px -2px}.fb-ui.fb-ui-link{display:inline-flex;align-items:center;gap:var(--fb-space-1);color:var(--fb-color-text-primary);font-size:var(--fb-font-size-body-sm);font-weight:var(--fb-font-weight-medium);text-decoration:underline;text-decoration-color:var(--fb-color-border-strong);text-underline-offset:.25em;transition:text-decoration-color var(--fb-motion-feedback)}.fb-ui.fb-ui-link:hover{text-decoration-color:var(--fb-action-theme-bg)}.fb-ui.fb-ui-link:focus-visible{outline:2px solid var(--fb-color-focus-ring);outline-offset:2px;border-radius:var(--fb-radius-control-sm)}.fb-ui.fb-ui-badge{display:inline-flex;flex:none;align-items:center;gap:var(--fb-space-2);width:fit-content;min-height:1.5rem;margin:0;padding:0 var(--fb-space-2);border:1px solid var(--fb-cmp-badge-neutral-line);border-radius:999px;background:var(--fb-cmp-badge-neutral-bg);color:var(--fb-cmp-badge-neutral-text);font-family:var(--fb-font-family-body);font-size:var(--fb-font-size-caption);font-weight:var(--fb-font-weight-medium);line-height:1;letter-spacing:0;white-space:nowrap}.fb-ui.fb-ui-badge[data-size=md]{min-height:1.75rem;padding:0 var(--fb-space-3)}.fb-ui.fb-ui-badge[data-tone=muted]{border-color:transparent;background:var(--fb-tint-tile);color:var(--fb-color-text-muted)}.fb-ui.fb-ui-badge[data-tone=outline]{border-color:var(--fb-color-border-default);background:transparent;color:var(--fb-color-text-muted);font-weight:var(--fb-font-weight-normal)}.fb-ui.fb-ui-badge[data-tone=brand]{border-color:var(--fb-action-theme-bg);background:transparent;color:var(--fb-action-theme-bg)}.fb-ui.fb-ui-badge[data-tone=success]{border-color:var(--fb-color-status-success-border);background:var(--fb-color-status-success-surface);color:var(--fb-color-status-success-text)}.fb-ui.fb-ui-badge[data-tone=warning]{border-color:var(--fb-color-status-warning-border);background:var(--fb-color-status-warning-surface);color:var(--fb-color-status-warning-text)}.fb-ui.fb-ui-badge[data-tone=error]{border-color:var(--fb-color-status-error-border);background:var(--fb-color-status-error-surface);color:var(--fb-color-status-error-text)}.fb-ui.fb-ui-badge[data-tone=info]{border-color:var(--fb-color-status-info-border);background:var(--fb-color-status-info-surface);color:var(--fb-color-status-info-text)}.fb-ui.fb-ui-badge[data-tone=evidence]{border-color:var(--fb-color-evidence-border);background:var(--fb-color-evidence-surface);color:var(--fb-color-evidence-text)}.fb-ui.fb-ui-badge[data-dot]:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--fb-color-border-strong)}.fb-ui.fb-ui-badge[data-dot][data-tone=success]:before{background:var(--fb-color-status-success-solid)}.fb-ui.fb-ui-badge[data-dot][data-tone=warning]:before{background:var(--fb-color-status-warning-solid)}.fb-ui.fb-ui-badge[data-dot][data-tone=error]:before{background:var(--fb-color-status-error-solid)}.fb-ui.fb-ui-badge[data-dot][data-tone=info]:before{background:var(--fb-color-status-info-solid)}.fb-ui.fb-ui-tile{display:grid;flex:none;place-items:center;width:var(--fb-button-height-xs);height:var(--fb-button-height-xs);border-radius:var(--fb-radius-control);background:var(--fb-tint-tile);color:var(--fb-color-text-secondary);transition:color var(--fb-motion-feedback)}.fb-ui.fb-ui-tile[data-size=md]{width:var(--fb-button-height-md);height:var(--fb-button-height-md)}.fb-ui.fb-ui-tile[data-on-tint]{background:var(--fb-color-bg-surface);box-shadow:inset 0 0 0 1px var(--fb-color-border-default)}:is(a,button,[data-fb-ui-host]):is(:hover,:focus-visible) .fb-ui.fb-ui-tile{color:var(--fb-color-text-primary)}.fb-ui.fb-ui-page-title,.fb-ui.fb-ui-section-title{display:flex;align-items:center;gap:var(--fb-space-3);margin:0;font-family:var(--fb-font-family-heading);font-weight:var(--fb-font-weight-medium);line-height:var(--fb-line-height-display);letter-spacing:var(--fb-track-heading);color:var(--fb-color-text-primary);text-wrap:balance}.fb-ui.fb-ui-page-title{font-size:var(--fb-font-size-heading-1)}.fb-ui.fb-ui-section-title{font-size:var(--fb-font-size-section-heading)}.fb-ui.fb-ui-page-title[data-size=sm]{font-size:var(--fb-font-size-heading-2);gap:var(--fb-space-2);letter-spacing:var(--fb-track-sub)}.fb-ui .fb-ui-title-mark{width:.82em;-webkit-mask:var(--fb-logo-mark) center /contain no-repeat;mask:var(--fb-logo-mark) center /contain no-repeat}.fb-ui .fb-ui-title-mark,.fb-ui .fb-ui-title-rule{flex:none;height:.82em;background:var(--fb-action-theme-bg)}.fb-ui .fb-ui-title-rule{width:var(--fb-space-1);border-radius:2px}.fb-ui.fb-ui-block-label{margin:0;color:var(--fb-color-text-muted);font-family:var(--fb-font-family-body);font-size:var(--fb-font-size-caption);font-weight:var(--fb-font-weight-normal);line-height:var(--fb-line-height-meta);letter-spacing:0}.fb-ui.fb-ui-card{min-width:0;margin:0;padding:var(--fb-space-5);border:1px solid var(--fb-color-border-default);border-radius:var(--fb-radius-surface);background:var(--fb-color-bg-surface);color:var(--fb-color-text-primary);box-shadow:var(--fb-sheen)}.fb-ui.fb-ui-card[data-interactive]{transition:border-color var(--fb-motion-feedback)}.fb-ui.fb-ui-card[data-interactive]:hover{border-color:var(--fb-color-border-strong)}.fb-ui .fb-ui-card-header{display:grid;gap:var(--fb-space-1);margin:0 0 var(--fb-space-4)}.fb-ui .fb-ui-card-title{margin:0;font-size:var(--fb-font-size-subheading);font-weight:var(--fb-font-weight-medium);line-height:var(--fb-line-height-meta);letter-spacing:var(--fb-track-sub);color:var(--fb-color-text-primary)}.fb-ui .fb-ui-card-description{margin:0;font-size:var(--fb-font-size-body-sm);line-height:var(--fb-line-height-body-sm);color:var(--fb-color-text-muted)}.fb-ui .fb-ui-card-content{min-width:0}.fb-ui.fb-ui-cells{--fb-ui-cols:2;display:grid;grid-template-columns:repeat(var(--fb-ui-cols),minmax(0,1fr));gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid var(--fb-color-border-default);border-radius:var(--fb-radius-surface);background:var(--fb-color-border-default);box-shadow:var(--fb-sheen);list-style:none}.fb-ui.fb-ui-cells[data-cols="1"]{--fb-ui-cols:1}.fb-ui.fb-ui-cells[data-cols="3"]{--fb-ui-cols:3}.fb-ui.fb-ui-cells[data-cols="4"]{--fb-ui-cols:4}.fb-ui.fb-ui-cells[data-cols="2"]>:last-child:nth-child(odd){grid-column:1/-1}.fb-ui.fb-ui-cell{display:flex;flex-direction:column;gap:var(--fb-space-2);min-width:0;margin:0;padding:var(--fb-space-5);background:var(--fb-color-bg-surface);color:var(--fb-color-text-primary);text-decoration:none}.fb-ui.fb-ui-cell[data-interactive]{transition:background-color var(--fb-motion-feedback)}.fb-ui.fb-ui-cell[data-interactive]:hover{background:var(--fb-tint-quiet)}.fb-ui.fb-ui-cell:focus-visible{outline:2px solid var(--fb-color-focus-ring);outline-offset:-2px}.fb-ui .fb-ui-cell-head{display:flex;align-items:center;gap:var(--fb-space-3);min-width:0}.fb-ui .fb-ui-cell-label{flex:1;font-size:var(--fb-font-size-caption);color:var(--fb-color-text-muted)}.fb-ui .fb-ui-cell-label,.fb-ui .fb-ui-cell-title{min-width:0;font-weight:var(--fb-font-weight-medium);line-height:var(--fb-line-height-meta)}.fb-ui .fb-ui-cell-title{margin:0;font-size:var(--fb-font-size-subheading);letter-spacing:var(--fb-track-sub);color:var(--fb-color-text-primary)}.fb-ui .fb-ui-cell-text{margin:0;font-size:var(--fb-font-size-body-sm);line-height:var(--fb-line-height-body-sm);color:var(--fb-color-text-secondary);text-wrap:pretty}.fb-ui .fb-ui-cell-corner{margin-left:auto;color:var(--fb-color-text-muted);font-size:var(--fb-font-size-body-sm);transition:color var(--fb-motion-feedback),translate var(--fb-motion-move)}.fb-ui.fb-ui-cell[data-interactive]:is(:hover,:focus-visible) .fb-ui-cell-corner{color:var(--fb-color-text-primary)}.fb-ui.fb-ui-empty{display:flex;align-items:flex-start;gap:var(--fb-space-3);margin:0;padding:var(--fb-space-4) var(--fb-space-5);border-radius:var(--fb-radius-control);background:var(--fb-tint-quiet);color:var(--fb-color-text-secondary);font-size:var(--fb-font-size-body-sm);line-height:var(--fb-type-body-leading);text-align:start}.fb-ui.fb-ui-empty[data-tone=status]{border:1px solid var(--fb-color-border-default);border-radius:var(--fb-radius-surface);background:var(--fb-color-bg-surface);box-shadow:var(--fb-sheen)}.fb-ui.fb-ui-empty[data-align=center]{flex-direction:column;align-items:center;padding-block:var(--fb-space-6);text-align:center}.fb-ui .fb-ui-empty-body{display:grid;gap:var(--fb-space-1);min-width:0}.fb-ui.fb-ui-empty[data-align=center] .fb-ui-empty-body{justify-items:center}.fb-ui .fb-ui-empty-title{display:flex;align-items:center;gap:var(--fb-space-2);margin:0;font-size:var(--fb-font-size-nav);font-weight:var(--fb-font-weight-medium);line-height:var(--fb-line-height-body);color:var(--fb-color-text-primary)}.fb-ui .fb-ui-empty-text{margin:0}.fb-ui .fb-ui-empty-action{margin-top:var(--fb-space-2);justify-self:start}.fb-ui.fb-ui-empty[data-tone=status] .fb-ui-empty-title:before{content:"";flex:none;width:var(--fb-space-2);height:var(--fb-space-2);border-radius:50%;background:var(--fb-color-border-strong)}.fb-ui.fb-ui-empty[data-tone=status] :is(.fb-ui-empty-text,.fb-ui-empty-action){margin-left:var(--fb-space-4)}.fb-ui.fb-ui-dialog-backdrop{position:fixed;inset:0;z-index:var(--fb-z-modal);background:color-mix(in srgb,var(--fb-surface-dark) 48%,transparent);transition:opacity .2s ease-out}.fb-ui.fb-ui-dialog-backdrop:is([data-starting-style],[data-ending-style]){opacity:0}.fb-ui.fb-ui-dialog{--fb-ui-dialog-width:32rem;position:fixed;z-index:var(--fb-z-modal);top:50%;left:50%;display:flex;flex-direction:column;width:min(var(--fb-ui-dialog-width),calc(100vw - 2 * var(--fb-space-4)));max-height:calc(100dvh - 2 * var(--fb-space-4) - var(--fb-safe-area-top) - var(--fb-safe-area-bottom));margin:0;padding:0;overflow:hidden;border:1px solid var(--fb-color-border-default);border-radius:var(--fb-radius-overlay);background:var(--fb-color-bg-elevated);color:var(--fb-color-text-primary);box-shadow:var(--fb-sheen),var(--fb-shadow-overlay);translate:-50% -50%;outline:0;transition:opacity .24s var(--fb-motion-easing-enter),transform .24s var(--fb-motion-easing-enter)}.fb-ui.fb-ui-dialog[data-size=sm]{--fb-ui-dialog-width:26rem}.fb-ui.fb-ui-dialog[data-size=lg]{--fb-ui-dialog-width:44rem}.fb-ui.fb-ui-dialog:is([data-starting-style],[data-ending-style]){opacity:0;transform:translateY(var(--fb-space-2)) scale(.98)}.fb-ui .fb-ui-dialog-close{position:absolute;z-index:1;top:var(--fb-space-3);right:var(--fb-space-3)}.fb-ui .fb-ui-dialog-header{display:grid;gap:var(--fb-space-2);padding:var(--fb-space-6) calc(var(--fb-space-6) + var(--fb-space-5)) 0 var(--fb-space-6)}.fb-ui .fb-ui-dialog-title{margin:0;font-family:var(--fb-font-family-heading);font-size:var(--fb-font-size-heading-2);font-weight:var(--fb-font-weight-medium);line-height:var(--fb-line-height-display);letter-spacing:var(--fb-track-sub);color:var(--fb-color-text-primary);text-wrap:balance}.fb-ui .fb-ui-dialog-description{margin:0;font-size:var(--fb-font-size-nav);line-height:var(--fb-type-body-leading);color:var(--fb-color-text-secondary)}.fb-ui .fb-ui-dialog-body{flex:1;min-height:0;padding:var(--fb-space-5) var(--fb-space-6);overflow-y:auto;overscroll-behavior:contain}.fb-ui .fb-ui-dialog-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--fb-space-2);padding:var(--fb-space-3) var(--fb-space-6);border-top:1px solid var(--fb-color-border-subtle)}@media (pointer:coarse){.fb-ui.fb-ui-btn:not([data-size=xl]){min-height:var(--fb-button-height-lg)}.fb-ui.fb-ui-btn[data-icon-only]:not([data-size=xl]){min-width:var(--fb-button-height-lg)}}@media (max-width:960px){.fb-ui.fb-ui-cells:is([data-cols="3"],[data-cols="4"]){--fb-ui-cols:2}}@media (max-width:640px){.fb-ui.fb-ui-cells{--fb-ui-cols:1}.fb-ui.fb-ui-card,.fb-ui.fb-ui-cell{padding:var(--fb-space-4)}.fb-ui.fb-ui-dialog{width:calc(100vw - 2 * var(--fb-space-3))}.fb-ui .fb-ui-dialog-header{padding:var(--fb-space-5) calc(var(--fb-space-5) + var(--fb-space-5)) 0 var(--fb-space-4)}.fb-ui .fb-ui-dialog-body{padding:var(--fb-space-4)}.fb-ui .fb-ui-dialog-footer{padding:var(--fb-space-3) var(--fb-space-4)}}@media (prefers-reduced-motion:reduce){.fb-ui .fb-ui-cell-corner,.fb-ui.fb-ui-arrow,.fb-ui.fb-ui-dialog,.fb-ui.fb-ui-dialog-backdrop{transition:none}.fb-ui.fb-ui-dialog:is([data-starting-style],[data-ending-style]){transform:none}.fb-ui .fb-ui-btn-spinner{animation-duration:2.4s}}