:root,:root[data-theme=dark-green]{color-scheme:dark;--color-bg: #07120d;--color-surface: #0d1f15;--color-surface-2: #10261a;--color-surface-muted: #132b1d;--color-surface-hover: #173524;--color-primary: #34d399;--color-primary-hover: #10b981;--color-primary-soft: #d1fae5;--color-primary-soft-border: #6ee7b7;--color-text: #ecfdf5;--color-text-muted: #9db8a8;--color-text-inverse: #052e1b;--color-success: #86efac;--color-success-soft: #0d2b18;--color-warning: #fcd34d;--color-warning-soft: #2a2108;--color-danger: #fca5a5;--color-danger-soft: #2b1210;--color-info: #5eead4;--color-info-soft: #0c2a26;--color-accent: #34d399;--color-accent-soft: #0d2b18;--color-border: #1c3a2b;--color-border-strong: #2c5240;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 2px 4px rgba(0, 0, 0, .4), 0 8px 20px rgba(0, 0, 0, .28);--shadow-lg: 0 6px 12px rgba(0, 0, 0, .45), 0 16px 32px rgba(0, 0, 0, .35);--grad-emerald: linear-gradient(135deg, #0e7a54 0%, #0b5c40 100%);--grad-teal: linear-gradient(135deg, #0f766e 0%, #115e59 100%);--grad-green: linear-gradient(135deg, #15803d 0%, #166534 100%);--grad-amber: linear-gradient(135deg, #b45309 0%, #92400e 100%)}:root[data-theme=bright]{color-scheme:light;--color-bg: #f2f5f3;--color-surface: #ffffff;--color-surface-2: #f7faf8;--color-surface-muted: #eef2ef;--color-surface-hover: #e6ede8;--color-primary: #0f9d6e;--color-primary-hover: #0b7f58;--color-primary-soft: #d9f2e7;--color-primary-soft-border: #7fd4b2;--color-text: #17211b;--color-text-muted: #5c6b62;--color-text-inverse: #052e1b;--color-success: #0f9d6e;--color-success-soft: #d9f2e7;--color-warning: #b45309;--color-warning-soft: #fef3c7;--color-danger: #b91c1c;--color-danger-soft: #fee2e2;--color-info: #0e7490;--color-info-soft: #cffafe;--color-accent: #0e7490;--color-accent-soft: #cffafe;--color-border: #dde5df;--color-border-strong: #b9c7be;--shadow-sm: 0 1px 2px rgba(16, 32, 24, .08);--shadow-md: 0 2px 4px rgba(16, 32, 24, .1), 0 8px 20px rgba(16, 32, 24, .08);--shadow-lg: 0 6px 12px rgba(16, 32, 24, .12), 0 16px 32px rgba(16, 32, 24, .1);--grad-emerald: linear-gradient(135deg, #0e7a54 0%, #0b5c40 100%);--grad-teal: linear-gradient(135deg, #0f766e 0%, #115e59 100%);--grad-green: linear-gradient(135deg, #15803d 0%, #166534 100%);--grad-amber: linear-gradient(135deg, #b45309 0%, #92400e 100%)}:root[data-theme=warm-beige]{color-scheme:light;--color-bg: #efe8db;--color-surface: #faf6ee;--color-surface-2: #f5efe2;--color-surface-muted: #ece3d2;--color-surface-hover: #e4d8c2;--color-primary: #5f7436;--color-primary-hover: #4c5d2b;--color-primary-soft: #e4ecd2;--color-primary-soft-border: #b6c98f;--color-text: #33291d;--color-text-muted: #7a6a55;--color-text-inverse: #2a2015;--color-success: #4d6b2f;--color-success-soft: #e4ecd2;--color-warning: #9a6b1f;--color-warning-soft: #f6e7c8;--color-danger: #a13d2d;--color-danger-soft: #f6ddd6;--color-info: #4a6a7a;--color-info-soft: #dce8ec;--color-accent: #a67c2e;--color-accent-soft: #f3e6c8;--color-border: #ddd2bd;--color-border-strong: #c3b498;--shadow-sm: 0 1px 2px rgba(60, 45, 25, .08);--shadow-md: 0 2px 4px rgba(60, 45, 25, .1), 0 8px 20px rgba(60, 45, 25, .08);--shadow-lg: 0 6px 12px rgba(60, 45, 25, .12), 0 16px 32px rgba(60, 45, 25, .1);--grad-emerald: linear-gradient(135deg, #4d6b2f 0%, #3d5524 100%);--grad-teal: linear-gradient(135deg, #3d6b63 0%, #2f554e 100%);--grad-green: linear-gradient(135deg, #55703a 0%, #44602e 100%);--grad-amber: linear-gradient(135deg, #9a6b1f 0%, #7c5518 100%)}:root{--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 24px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:var(--weight-semibold);letter-spacing:-.01em}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono);font-size:.9em;background:var(--color-primary-soft);padding:.1em .35em;border-radius:var(--radius-sm)}.bf-btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.bf-btn-secondary:hover:not(:disabled){background:var(--color-surface-hover)}.bf-btn-danger:hover:not(:disabled){background:#b91c1c}.bf-btn-ghost:hover:not(:disabled){background:var(--color-primary-soft)}button,select,input,a.bf-btn{transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}table tbody tr{transition:background-color var(--transition-fast)}table tbody tr:hover{background:var(--color-surface-hover)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:#94a3b8;background-clip:content-box}*::-webkit-scrollbar-track{background:transparent}@media(max-width:979px){.login-brand-panel{display:none!important}}@media(min-width:980px){.login-brand-panel{display:flex!important}}@media print{aside,header{display:none!important}body{background:#fff}.print-area{padding:0!important}}.bs-hub{display:flex;flex-direction:column;gap:var(--space-5, 24px);max-width:1280px}.bs-intro{display:flex;flex-direction:column;gap:4px}.bs-title{margin:0;font-size:24px;font-weight:700;color:var(--color-text)}.bs-sub{margin:0;color:var(--color-text-muted);font-size:var(--text-sm, 13px)}.bs-error{display:flex;align-items:center;padding:10px 12px;border-radius:10px;background:var(--color-danger-soft);color:var(--color-danger);border:1px solid var(--color-danger);font-size:var(--text-sm, 13px)}.bs-notice{padding:10px 12px;border-radius:10px;background:var(--color-warning-soft);color:var(--color-warning);border:1px solid var(--color-warning);font-size:var(--text-sm, 13px)}.bs-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bs-action{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:18px;border-radius:14px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.bs-action:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.bs-action-icon{display:inline-flex;padding:10px;border-radius:12px;background:var(--color-primary-soft);color:var(--color-primary)}.bs-action-title{display:block;font-size:16px;font-weight:700}.bs-action-sub{display:block;font-size:var(--text-xs, 12px);color:var(--color-text-muted);margin-top:2px}.bs-action-arrow{margin-left:auto;color:var(--color-text-muted);flex:0 0 auto}.bs-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.bs-tile{padding:14px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-surface)}.bs-tile-label{font-size:var(--text-xs, 12px);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.bs-tile-value{font-size:20px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums}.bs-tile-hint{font-size:var(--text-xs, 12px);color:var(--color-text-muted);margin-top:2px}.bs-section{display:flex;flex-direction:column;gap:12px}.bs-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.bs-h2{margin:0;font-size:17px;font-weight:700;color:var(--color-text)}.bs-section-note{font-size:var(--text-xs, 12px);color:var(--color-text-muted)}.bs-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.bs-search{position:relative;flex:1 1 260px;min-width:200px}.bs-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none;z-index:1}.bs-filters{display:inline-flex;gap:6px;flex-wrap:wrap}.bs-filter{padding:7px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;font-size:var(--text-sm, 13px)}.bs-filter.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-text-inverse)}.bs-cell-sub{display:block;color:var(--color-text-muted);font-size:var(--text-xs, 12px)}.bs-warn{color:var(--color-danger)}.bs-blocked{display:inline-block;max-width:280px;color:var(--color-danger);font-size:var(--text-xs, 12px);text-align:left}.bs-activity{list-style:none;margin:0;padding:0}.bs-activity-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;border-top:1px solid var(--color-border);background:transparent;color:var(--color-text);cursor:pointer;text-align:left}.bs-activity li:first-child .bs-activity-row{border-top:0}.bs-activity-row:hover{background:var(--color-surface-hover)}.bs-activity-icon{display:inline-flex;color:var(--color-text-muted);flex:0 0 auto}.bs-activity-main{display:flex;flex-direction:column;min-width:130px}.bs-activity-amount{margin-left:auto;font-variant-numeric:tabular-nums}.bs-activity-date{min-width:88px;text-align:right;color:var(--color-text-muted);font-size:var(--text-xs, 12px)}.bs-empty{padding:var(--space-6, 32px);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm, 13px)}.bs-preselected{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:6px}@media(max-width:979px){.bs-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.bs-actions{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.bs-hub{gap:var(--space-4, 16px)}.bs-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.bs-title{font-size:20px}.bs-activity-row{flex-wrap:wrap;gap:8px}.bs-activity-main{min-width:0}.bs-activity-amount{margin-left:0}.bs-activity-date{min-width:0;text-align:left}.bs-blocked{max-width:none}.bs-controls{gap:8px}.bs-filters{width:100%}}
