:root{--background:0 0% 96%;--foreground:158 24% 22%;--card:0 0% 100%;--card-foreground:0 0% 15%;--primary:158 24% 22%;--primary-foreground:0 0% 100%;--secondary:60 6% 90%;--secondary-foreground:60 4% 27%;--muted:60 6% 91%;--muted-foreground:60 4% 43%;--accent:60 6% 90%;--accent-foreground:158 24% 22%;--destructive:5 75% 40%;--destructive-foreground:0 0% 100%;--border:60 4% 31%/0.18;--input:60 4% 31%/0.18;--ring:158 24% 22%/0.35;--radius:0.625rem;--ff-bg:#f5f5f5;--ff-surface:#ffffff;--ff-surface-elev:#ffffff;--ff-surface-soft:color-mix(in srgb,#4f4f46 6%,#f5f5f5);--ff-sidebar:#ffffff;--ff-sidebar-top:#ffffff;--ff-sidebar-bottom:#ffffff;--ff-border:color-mix(in srgb,#4f4f46 18%,transparent);--ff-border-strong:color-mix(in srgb,#4f4f46 28%,transparent);--ff-foreground:#2b463c;--ff-muted:color-mix(in srgb,#4f4f46 68%,white);--ff-muted-strong:#4f4f46;--ff-accent:#2b463c;--ff-accent-strong:#21382f;--ff-accent-border:color-mix(in srgb,#2b463c 35%,transparent);--ff-accent-foreground:#ffffff;--ff-overlay:rgba(0,0,0,0.72);--ff-shadow:none;--ff-table-divider:rgba(17,17,17,0.08);--ff-table-header:rgba(17,17,17,0.025);--ff-skeleton-base:rgba(120,120,120,0.12);--ff-skeleton-shimmer:rgba(120,120,120,0.18);--ff-selection-control:hsl(var(--primary));--ff-selection-foreground:hsl(var(--primary-foreground));--ff-selection-border:color-mix(in srgb,#4f4f46 34%,transparent);--ff-selection-surface:#ffffff;--ff-control-row:color-mix(in srgb,var(--ff-selection-control) 3%,transparent);--ff-control-hover:color-mix(in srgb,var(--ff-selection-control) 10%,var(--ff-surface-elev));--ff-control-selected:color-mix(in srgb,var(--ff-selection-control) 14%,var(--ff-surface-elev));--ff-control-selected-hover:color-mix(in srgb,var(--ff-selection-control) 20%,var(--ff-surface-elev));--ff-action-pending:#8a5b12;--ff-action-pending-foreground:#ffffff;--ff-action-saved:#15803d;--ff-action-saved-foreground:#ffffff;--ff-action-denied:#a33d43;--ff-action-denied-foreground:#ffffff;--ff-status-success-border:color-mix(in srgb,#27835a 28%,transparent);--ff-status-success-bg:color-mix(in srgb,#27835a 9%,var(--ff-surface));--ff-status-success-text:#256548;--ff-status-pending-border:color-mix(in srgb,#9a6b20 30%,transparent);--ff-status-pending-bg:color-mix(in srgb,#b8822a 10%,var(--ff-surface));--ff-status-pending-text:#795216;--ff-status-info-border:color-mix(in srgb,#4f7188 28%,transparent);--ff-status-info-bg:color-mix(in srgb,#5d8299 9%,var(--ff-surface));--ff-status-info-text:#3f6278;--ff-status-neutral-border:var(--ff-border);--ff-status-neutral-bg:var(--ff-surface-soft);--ff-status-neutral-text:var(--ff-muted-strong);--ff-status-critical-border:color-mix(in srgb,#b44b50 28%,transparent);--ff-status-critical-bg:color-mix(in srgb,#b44b50 8%,var(--ff-surface));--ff-status-critical-text:#953f44;color-scheme:light}.dark,:root.dark{--background:0 0% 11%;--foreground:0 0% 94%;--card:0 0% 15%;--card-foreground:0 0% 94%;--primary:156 9% 45%;--primary-foreground:0 0% 96%;--secondary:0 0% 18%;--secondary-foreground:0 0% 94%;--muted:0 0% 17%;--muted-foreground:0 0% 70%;--accent:0 0% 21%;--accent-foreground:0 0% 96%;--destructive:0 63% 45%;--destructive-foreground:0 0% 100%;--border:0 0% 100%/0.14;--input:0 0% 100%/0.18;--ring:156 9% 45%/0.55;--ff-bg:#1b1b1b;--ff-surface:rgba(37,37,37,0.96);--ff-surface-elev:#2b2b2b;--ff-surface-soft:#202020;--ff-sidebar:#252525;--ff-sidebar-top:#2a2a2a;--ff-sidebar-bottom:#212121;--ff-border:rgba(240,240,240,0.14);--ff-border-strong:rgba(240,240,240,0.24);--ff-foreground:#f0f0f0;--ff-muted:#bababa;--ff-muted-strong:#e5e5e5;--ff-accent:#303030;--ff-accent-strong:#252525;--ff-accent-border:rgba(240,240,240,0.25);--ff-accent-foreground:#fafafa;--ff-overlay:rgba(0,0,0,0.78);--ff-shadow:none;--ff-table-divider:rgba(240,240,240,0.075);--ff-table-header:rgba(240,240,240,0.025);--ff-skeleton-base:rgba(160,160,160,0.12);--ff-skeleton-shimmer:rgba(160,160,160,0.2);--ff-selection-control:hsl(var(--primary));--ff-selection-foreground:hsl(var(--primary-foreground));--ff-selection-border:rgba(240,240,240,0.24);--ff-selection-surface:#202020;--ff-control-row:rgba(255,255,255,0.025);--ff-control-hover:color-mix(in srgb,var(--ff-selection-control) 17%,var(--ff-surface-elev));--ff-control-selected:color-mix(in srgb,var(--ff-selection-control) 23%,var(--ff-surface-elev));--ff-control-selected-hover:color-mix(in srgb,var(--ff-selection-control) 31%,var(--ff-surface-elev));--ff-action-pending:#806743;--ff-action-pending-foreground:#f7f4ef;--ff-action-saved:#22c55e;--ff-action-saved-foreground:#052e16;--ff-action-denied:#a84b50;--ff-action-denied-foreground:#fff7f7;--ff-status-success-border:rgba(92,176,137,0.28);--ff-status-success-bg:rgba(63,126,96,0.14);--ff-status-success-text:#a9d5be;--ff-status-pending-border:rgba(190,151,86,0.28);--ff-status-pending-bg:rgba(145,106,44,0.14);--ff-status-pending-text:#ddc18f;--ff-status-info-border:rgba(112,151,174,0.28);--ff-status-info-bg:rgba(72,107,126,0.15);--ff-status-info-text:#b6cfdd;--ff-status-neutral-border:var(--ff-border);--ff-status-neutral-bg:var(--ff-surface-soft);--ff-status-neutral-text:var(--ff-muted-strong);--ff-status-critical-border:rgba(194,100,104,0.28);--ff-status-critical-bg:rgba(139,65,69,0.14);--ff-status-critical-text:#e2b1b4;color-scheme:dark}.ff-request-state-button[data-request-state=pending]{background:var(--ff-action-pending);color:var(--ff-action-pending-foreground);opacity:1!important}.ff-request-state-button[data-request-state=saved]{background:var(--ff-action-saved);color:var(--ff-action-saved-foreground);opacity:1!important}.ff-request-state-button[data-request-state=denied]{background:var(--ff-action-denied);color:var(--ff-action-denied-foreground);opacity:1!important}.ff-dialog-overlay,.ff-modal-stack-overlay{background:var(--ff-overlay);backdrop-filter:blur(2px)}.ff-modal-stack-overlay{animation:ff-overlay-in .15s ease-out both}.ff-dialog-content{color:var(--ff-foreground);box-shadow:0 28px 84px -42px rgba(0,0,0,.8)}.ff-dialog-close-btn,.ff-dialog-content{border:1px solid var(--ff-border-strong);background:var(--ff-surface-elev)}.ff-dialog-close-btn{color:var(--ff-muted-strong);box-shadow:0 10px 24px -14px rgba(0,0,0,.65)}.ff-dialog-overlay[data-state=open]{animation:ff-overlay-in .15s ease-out both}.ff-dialog-overlay[data-state=closed]{animation:ff-overlay-out .15s ease-out both}.ff-dialog-content:not(.ff-dialog-sheet)[data-state=open]{animation:ff-dialog-in .15s ease-out both}.ff-dialog-content:not(.ff-dialog-sheet)[data-state=closed]{animation:ff-dialog-out .15s ease-out both}.ff-dialog-sheet[data-state=open]:not([data-drag-motion-settled]){animation:ff-sheet-in .26s cubic-bezier(.16,1,.3,1) both}.ff-dialog-sheet[data-state=closed]{animation:ff-sheet-out .19s ease-in both}.ff-dialog-content.ff-dialog-sheet{border:0!important;border-radius:2rem 2rem 0 0}.ff-dialog-drag-handle{background:color-mix(in srgb,var(--ff-foreground) 24%,transparent)}.ff-status-badge,.ff-status-notice{border-color:var(--ff-status-neutral-border);background:var(--ff-status-neutral-bg);color:var(--ff-status-neutral-text)}.ff-status-badge[data-tone=success],.ff-status-notice[data-tone=success]{border-color:var(--ff-status-success-border);background:var(--ff-status-success-bg);color:var(--ff-status-success-text)}.ff-status-badge[data-tone=pending],.ff-status-notice[data-tone=pending]{border-color:var(--ff-status-pending-border);background:var(--ff-status-pending-bg);color:var(--ff-status-pending-text)}.ff-status-badge[data-tone=info],.ff-status-notice[data-tone=info]{border-color:var(--ff-status-info-border);background:var(--ff-status-info-bg);color:var(--ff-status-info-text)}.ff-status-badge[data-tone=critical],.ff-status-notice[data-tone=critical]{border-color:var(--ff-status-critical-border);background:var(--ff-status-critical-bg);color:var(--ff-status-critical-text)}.ff-dialog-sheet[data-drag-closing],.ff-dialog-sheet[data-dragging]{animation:none!important}.ff-mobile-side-panel-overlay[data-state=open]{animation:ff-overlay-in .3s ease-out both}.ff-mobile-side-panel-overlay[data-state=closed]{animation:ff-overlay-out .2s ease-in both}.ff-mobile-side-panel[data-state=open]:not([data-drag-motion-settled]){animation:ff-side-panel-in .3s cubic-bezier(.16,1,.3,1) both}.ff-mobile-side-panel[data-state=closed]{animation:ff-side-panel-out .2s ease-in both}.ff-mobile-side-panel[data-drag-closing],.ff-mobile-side-panel[data-dragging]{animation:none!important}.ff-panel-card,.ff-panel-card-soft{border:0;box-shadow:none;backdrop-filter:none}.ff-admin-table-frame{border:0;background:var(--ff-surface);color:var(--ff-foreground);box-shadow:none}.ff-admin-table-filter-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.5rem}@media (min-width:768px){.ff-admin-table-filter-row{grid-template-columns:minmax(220px,1fr) 150px 170px}.ff-admin-table-filter-row[data-compact]{grid-template-columns:minmax(220px,576px);grid-auto-flow:column;grid-auto-columns:max-content;justify-content:start}}.ff-admin-table{border-collapse:separate;border-spacing:0}.ff-admin-table-header{background:var(--ff-table-header)}.ff-admin-table-header th,.ff-admin-table-header th button{text-transform:uppercase;letter-spacing:.04em}.ff-admin-search-input::-webkit-search-cancel-button,.ff-admin-search-input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}.ff-admin-table-row>*{border-bottom:1px solid var(--ff-table-divider)}.ff-admin-table-body .ff-admin-table-row:last-child>*,.ff-admin-table-footer .ff-admin-table-row:last-child>*{border-bottom:0}.ff-skeleton-shimmer,.skeleton{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--ff-skeleton-base) 0,var(--ff-skeleton-shimmer) 20%,var(--ff-skeleton-base) 40%);background-size:400% 100%;animation:ff-skeleton-shimmer 1.75s linear infinite}@keyframes ff-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes ff-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes ff-dialog-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ff-dialog-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes ff-sheet-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes ff-sheet-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes ff-side-panel-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes ff-side-panel-out{0%{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes ff-skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){.ff-dialog-content,.ff-dialog-overlay,.ff-mobile-side-panel,.ff-mobile-side-panel-overlay,.ff-modal-stack-overlay{animation-duration:.01ms!important;transition-duration:.01ms!important}.ff-skeleton-shimmer,.skeleton{animation:none}}