:root{--bnn-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--bnn-font-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Mono", "Droid Sans Mono", monospace;--bnn-fs-xs: 11px;--bnn-fs-sm: 12px;--bnn-fs-md: 13px;--bnn-fs-base: 14px;--bnn-fs-lg: 16px;--bnn-fs-xl: 20px;--bnn-fs-2xl: 26px;--bnn-bg: #f4f5f7;--bnn-surface: #ffffff;--bnn-surface-alt: #fafbfc;--bnn-surface-hover: #f6f8fa;--bnn-border: #e7e9ed;--bnn-border-strong: #d6dae0;--bnn-text: #1b1f24;--bnn-text-secondary: #5c6470;--bnn-text-tertiary: #9aa1ab;--bnn-text-inverse: #ffffff;--bnn-primary: #1f6feb;--bnn-primary-hover: #387bff;--bnn-primary-active: #1858c4;--bnn-primary-soft: #eaf2ff;--bnn-primary-soft-strong: #d4e3ff;--bnn-primary-border: #bcd5ff;--bnn-success: #1a8c46;--bnn-success-soft: #e7f6ec;--bnn-warning: #b87503;--bnn-warning-soft: #fdf3e2;--bnn-danger: #d92d3a;--bnn-danger-hover: #e23b47;--bnn-danger-active: #b3232e;--bnn-danger-soft: #fdeaec;--bnn-danger-soft-strong: #f9d5d9;--bnn-chart-1: #1f6feb;--bnn-chart-2: #16b8c4;--bnn-chart-3: #d92d3a;--bnn-chart-4: #7c5cff;--bnn-chart-grid: #eef0f3;--bnn-radius-sm: 4px;--bnn-radius: 6px;--bnn-radius-lg: 8px;--bnn-radius-pill: 999px;--bnn-shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--bnn-shadow-sm: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--bnn-shadow-md: 0 4px 12px rgba(16, 24, 40, .1);--bnn-shadow-lg: 0 12px 32px rgba(16, 24, 40, .16);--bnn-sp-1: 4px;--bnn-sp-2: 8px;--bnn-sp-3: 12px;--bnn-sp-4: 16px;--bnn-sp-5: 20px;--bnn-sp-6: 24px;--bnn-sp-8: 32px;--bnn-control-sm: 26px;--bnn-control: 34px;--bnn-control-lg: 40px;--bnn-ease: cubic-bezier(.2, 0, 0, 1);--bnn-z-overlay: 1000;--bnn-z-toast: 1100}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--bnn-font);font-size:var(--bnn-fs-base);color:var(--bnn-text);background:var(--bnn-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.bnn-stack{display:flex;flex-direction:column}.bnn-row{display:flex;align-items:center}.bnn-spacer{flex:1}.bnn-mono{font-family:var(--bnn-font-mono)}::selection{background:var(--bnn-primary);color:#fff}.bnn-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--bnn-control);padding:0 14px;font-family:inherit;font-size:var(--bnn-fs-md);font-weight:500;line-height:1;border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);background:var(--bnn-surface);color:var(--bnn-text);cursor:pointer;white-space:nowrap;transition:background .15s var(--bnn-ease),border-color .15s var(--bnn-ease),color .15s var(--bnn-ease),box-shadow .15s var(--bnn-ease)}.bnn-btn:hover:not(:disabled){color:var(--bnn-primary);border-color:var(--bnn-primary)}.bnn-btn:active:not(:disabled){background:var(--bnn-primary-soft);border-color:var(--bnn-primary-active);color:var(--bnn-primary-active)}.bnn-btn:disabled{cursor:not-allowed;opacity:.5}.bnn-btn--sm{height:var(--bnn-control-sm);padding:0 10px;font-size:var(--bnn-fs-sm)}.bnn-btn--lg{height:var(--bnn-control-lg);padding:0 18px;font-size:var(--bnn-fs-base)}.bnn-btn--block{width:100%}.bnn-btn--primary{background:var(--bnn-primary);border-color:var(--bnn-primary);color:var(--bnn-text-inverse)}.bnn-btn--primary:hover:not(:disabled){background:var(--bnn-primary-hover);border-color:var(--bnn-primary-hover);color:var(--bnn-text-inverse)}.bnn-btn--primary:active:not(:disabled){background:var(--bnn-primary-active);border-color:var(--bnn-primary-active);color:var(--bnn-text-inverse)}.bnn-btn--danger{background:var(--bnn-danger);border-color:var(--bnn-danger);color:#fff}.bnn-btn--danger:hover:not(:disabled){background:var(--bnn-danger-hover);border-color:var(--bnn-danger-hover);color:#fff}.bnn-btn--danger:active:not(:disabled){background:var(--bnn-danger-active);border-color:var(--bnn-danger-active);color:#fff}.bnn-btn--text{border-color:transparent;background:transparent}.bnn-btn--text:hover:not(:disabled){background:var(--bnn-surface-hover);border-color:transparent;color:var(--bnn-primary)}.bnn-btn--text:active:not(:disabled){background:var(--bnn-primary-soft);border-color:transparent;color:var(--bnn-primary-active)}.bnn-btn--ghost{background:transparent;border-color:var(--bnn-primary);color:var(--bnn-primary)}.bnn-btn--ghost:hover:not(:disabled){background:var(--bnn-primary-soft)}.bnn-btn--ghost:active:not(:disabled){background:var(--bnn-primary-soft-strong);border-color:var(--bnn-primary-active);color:var(--bnn-primary-active)}.bnn-btn__icon{display:inline-flex}.bnn-btn__spinner{width:13px;height:13px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:bnn-spin .7s linear infinite;opacity:.85}.bnn-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--bnn-radius);background:transparent;color:var(--bnn-text-secondary);cursor:pointer;transition:background .15s,color .15s}.bnn-iconbtn:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.bnn-tag{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;font-size:var(--bnn-fs-sm);font-weight:500;line-height:1;border-radius:var(--bnn-radius-sm);border:1px solid transparent;white-space:nowrap}.bnn-tag--neutral{background:#f1f2f4;color:var(--bnn-text-secondary);border-color:#e7e9ed}.bnn-tag--primary{background:var(--bnn-primary-soft);color:var(--bnn-primary);border-color:var(--bnn-primary-border)}.bnn-tag--success{background:var(--bnn-success-soft);color:var(--bnn-success);border-color:#bfe6cd}.bnn-tag--warning{background:var(--bnn-warning-soft);color:var(--bnn-warning);border-color:#f3dcb0}.bnn-tag--danger{background:var(--bnn-danger-soft);color:var(--bnn-danger);border-color:#f5c9cd}.bnn-tag--purple{background:#f1edff;color:var(--bnn-chart-4);border-color:#ddd2ff}.bnn-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:var(--bnn-fs-xs);font-weight:600;line-height:1;border-radius:var(--bnn-radius-pill);color:#fff}.bnn-badge--danger{background:var(--bnn-danger)}.bnn-badge--primary{background:var(--bnn-primary)}.bnn-badge--success{background:var(--bnn-success)}.bnn-badge--warning{background:var(--bnn-warning)}.bnn-badge--neutral{background:#98a1ad}.bnn-badge--purple{background:var(--bnn-chart-4)}.bnn-divider--h{display:flex;align-items:center;width:100%;margin:var(--bnn-sp-4) 0;border-top:1px solid var(--bnn-border)}.bnn-divider--text{border-top:none;gap:12px}.bnn-divider--text:before,.bnn-divider--text:after{content:"";flex:1;border-top:1px solid var(--bnn-border)}.bnn-divider__label{font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary);white-space:nowrap}.bnn-divider--v{display:inline-block;width:1px;height:1em;margin:0 8px;background:var(--bnn-border-strong);vertical-align:middle}.bnn-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bnn-primary);color:#fff;font-weight:600;overflow:hidden;flex-shrink:0}.bnn-spinner{display:inline-block;border:2px solid var(--bnn-primary);border-top-color:transparent;border-radius:50%;animation:bnn-spin .7s linear infinite}.bnn-spinner--sm{width:14px;height:14px}.bnn-spinner--md{width:20px;height:20px}.bnn-spinner--lg{width:30px;height:30px;border-width:3px}@keyframes bnn-spin{to{transform:rotate(360deg)}}.bnn-spin-center{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px}.bnn-spin-tip{font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary)}.bnn-spin-wrap{position:relative}.bnn-spin-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#fff9;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:5}.bnn-skeleton__title,.bnn-skeleton__line,.bnn-skeleton__block{background:#eef0f3;border-radius:4px}.bnn-skeleton__title{height:16px;width:38%;margin-bottom:14px}.bnn-skeleton__line{height:13px;margin-bottom:10px}.bnn-skeleton__block{display:inline-block}.bnn-skeleton.is-active .bnn-skeleton__title,.bnn-skeleton.is-active .bnn-skeleton__line,.bnn-skeleton__block.is-active{background:linear-gradient(90deg,#eef0f3 25%,#f6f7f9 37%,#eef0f3 63%);background-size:400% 100%;animation:bnn-shimmer 1.4s ease infinite}@keyframes bnn-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.bnn-stat__title{font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary);margin-bottom:4px}.bnn-stat__value{font-size:var(--bnn-fs-2xl);font-weight:600;color:var(--bnn-text);line-height:1.15}.bnn-stat__affix{font-size:var(--bnn-fs-lg);color:var(--bnn-text-secondary);margin:0 2px}.bnn-stat__trend{margin-top:4px;font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.bnn-stat__trend.is-up{color:var(--bnn-success)}.bnn-stat__trend.is-down{color:var(--bnn-danger)}.bnn-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;color:var(--bnn-text-tertiary)}.bnn-empty__text{font-size:var(--bnn-fs-md)}.bnn-alert{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--bnn-radius);border:1px solid transparent;font-size:var(--bnn-fs-md)}.bnn-alert__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:12px;font-weight:700;line-height:1;color:#fff;flex-shrink:0}.bnn-alert__body{flex:1;min-width:0}.bnn-alert__message{font-weight:500;line-height:18px}.bnn-alert__desc{margin-top:2px;color:var(--bnn-text-secondary);font-size:var(--bnn-fs-sm)}.bnn-alert--info{background:var(--bnn-primary-soft);border-color:var(--bnn-primary-border);color:#114a9e}.bnn-alert--info .bnn-alert__icon{background:var(--bnn-primary)}.bnn-alert--success{background:var(--bnn-success-soft);border-color:#bfe6cd;color:#136b35}.bnn-alert--success .bnn-alert__icon{background:var(--bnn-success)}.bnn-alert--warning{background:var(--bnn-warning-soft);border-color:#f3dcb0;color:#8a5a00}.bnn-alert--warning .bnn-alert__icon{background:var(--bnn-warning)}.bnn-alert--error{background:var(--bnn-danger-soft);border-color:#f5c9cd;color:#a31b26}.bnn-alert--error .bnn-alert__icon{background:var(--bnn-danger)}.bnn-title{margin:0;color:var(--bnn-text);font-weight:600;line-height:1.3}.bnn-title--1{font-size:28px}.bnn-title--2{font-size:23px}.bnn-title--3{font-size:var(--bnn-fs-xl)}.bnn-title--4{font-size:var(--bnn-fs-lg)}.bnn-title--5{font-size:var(--bnn-fs-base)}.bnn-text{color:var(--bnn-text)}.bnn-text--secondary{color:var(--bnn-text-secondary)}.bnn-text--tertiary{color:var(--bnn-text-tertiary)}.bnn-text--success{color:var(--bnn-success)}.bnn-text--warning{color:var(--bnn-warning)}.bnn-text--danger{color:var(--bnn-danger)}.bnn-text--strong{font-weight:600}.bnn-text--sm{font-size:var(--bnn-fs-sm)}.bnn-text--md{font-size:var(--bnn-fs-md)}.bnn-text--base{font-size:var(--bnn-fs-base)}.bnn-text--lg{font-size:var(--bnn-fs-lg)}.bnn-timeline{display:flex;flex-direction:column}.bnn-timeline__item{position:relative;display:flex;gap:12px;padding-bottom:16px}.bnn-timeline__item:last-child{padding-bottom:0}.bnn-timeline__item:not(:last-child):before{content:"";position:absolute;left:4px;top:14px;bottom:2px;width:1px;background:var(--bnn-border-strong)}.bnn-timeline__dot{flex-shrink:0;width:9px;height:9px;margin-top:4px;border-radius:50%;border:2px solid var(--bnn-primary);background:var(--bnn-surface)}.bnn-timeline__body{min-width:0}.bnn-timeline__content{font-size:var(--bnn-fs-md);color:var(--bnn-text);word-break:break-word}.bnn-timeline__meta{margin-top:1px;font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.bnn-card{background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius-lg);box-shadow:var(--bnn-shadow-xs)}.bnn-card--hover{transition:box-shadow .18s var(--bnn-ease),border-color .18s var(--bnn-ease),transform .18s var(--bnn-ease);cursor:pointer}.bnn-card--hover:hover{box-shadow:var(--bnn-shadow-md);border-color:var(--bnn-border-strong)}.bnn-card__head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--bnn-border)}.bnn-card__head-main{flex:1;min-width:0}.bnn-card__title{font-size:var(--bnn-fs-base);font-weight:600;color:var(--bnn-text)}.bnn-card__subtitle{margin-top:2px;font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary)}.bnn-card__extra{flex-shrink:0}.bnn-card__body{padding:18px}.bnn-card__body--flush{padding:0}.bnn-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;font-size:var(--bnn-fs-md);color:var(--bnn-text-tertiary)}.bnn-breadcrumb__item{display:inline-flex;align-items:center}.bnn-breadcrumb__link{color:var(--bnn-text-secondary);text-decoration:none;transition:color .15s}.bnn-breadcrumb__link:hover{color:var(--bnn-primary)}.bnn-breadcrumb__text.is-current{color:var(--bnn-text);font-weight:500}.bnn-breadcrumb__sep{margin:0 8px;color:var(--bnn-text-tertiary)}.bnn-pageheader{margin-bottom:var(--bnn-sp-4)}.bnn-pageheader__crumb{margin-bottom:8px}.bnn-pageheader__row{display:flex;align-items:center;gap:16px}.bnn-pageheader__main{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.bnn-pageheader__back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);background:var(--bnn-surface);color:var(--bnn-text-secondary);cursor:pointer}.bnn-pageheader__back:hover{color:var(--bnn-primary);border-color:var(--bnn-primary)}.bnn-pageheader__title{margin:0;font-size:var(--bnn-fs-xl);font-weight:600}.bnn-pageheader__subtitle{margin-top:2px;font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary)}.bnn-pageheader__extra{display:flex;align-items:center;gap:8px}.bnn-navmenu{display:flex;align-items:center;gap:2px}.bnn-navmenu__item{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border:none;background:transparent;border-radius:var(--bnn-radius);font-family:inherit;font-size:var(--bnn-fs-md);font-weight:500;color:var(--bnn-text-secondary);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.bnn-navmenu--sm .bnn-navmenu__item{height:28px;padding:0 10px;font-size:var(--bnn-fs-sm)}.bnn-navmenu__item:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.bnn-navmenu__item:active{background:var(--bnn-primary-soft-strong);color:var(--bnn-primary-active)}.bnn-navmenu__item.is-active,.bnn-navmenu__item.is-active:hover{background:var(--bnn-primary-soft);color:var(--bnn-primary)}.bnn-navmenu__item.is-active:active{background:var(--bnn-primary-soft-strong);color:var(--bnn-primary-active)}.bnn-navmenu__item.is-disabled{color:var(--bnn-text-tertiary);cursor:not-allowed}.bnn-navmenu__item.is-disabled:hover{background:transparent;color:var(--bnn-text-tertiary)}.bnn-navmenu__icon{display:inline-flex}.bnn-tabs__nav{display:flex;gap:4px;border-bottom:1px solid var(--bnn-border)}.bnn-tabs__tab{position:relative;padding:9px 14px;border:none;background:transparent;font-family:inherit;font-size:var(--bnn-fs-md);font-weight:500;color:var(--bnn-text-secondary);cursor:pointer;transition:color .15s}.bnn-tabs__tab:hover{color:var(--bnn-text)}.bnn-tabs__tab.is-active{color:var(--bnn-primary)}.bnn-tabs__tab.is-active:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;background:var(--bnn-primary);border-radius:2px}.bnn-tabs__panel{padding-top:16px}.bnn-segmented{display:inline-flex;padding:2px;background:#eceef1;border-radius:var(--bnn-radius);gap:2px}.bnn-segmented__item{padding:5px 12px;border:none;background:transparent;border-radius:4px;font-family:inherit;font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary);cursor:pointer;transition:background .15s,color .15s}.bnn-segmented--sm .bnn-segmented__item{padding:3px 9px;font-size:var(--bnn-fs-sm)}.bnn-segmented__item:hover{color:var(--bnn-text)}.bnn-segmented__item.is-active{background:var(--bnn-surface);color:var(--bnn-text);box-shadow:var(--bnn-shadow-xs)}.bnn-table-wrap{width:100%}.bnn-table-scroll{overflow-x:auto}.bnn-table{width:100%;border-collapse:collapse;font-size:var(--bnn-fs-md)}.bnn-table thead th{position:sticky;top:0;text-align:left;padding:10px 14px;font-weight:600;font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary);background:var(--bnn-surface-alt);border-bottom:1px solid var(--bnn-border);white-space:nowrap}.bnn-table--sm thead th{padding:7px 12px}.bnn-table th.is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.bnn-table th.is-sortable:hover{color:var(--bnn-text)}.bnn-table__th{display:inline-flex;align-items:center;gap:5px}.bnn-table__sort{display:inline-flex;flex-direction:column;gap:2px}.bnn-table__sort i{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent}.bnn-table__sort i.up{border-bottom:5px solid #c2c8d0}.bnn-table__sort i.down{border-top:5px solid #c2c8d0}.bnn-table__sort.is-asc i.up{border-bottom-color:var(--bnn-primary)}.bnn-table__sort.is-desc i.down{border-top-color:var(--bnn-primary)}.bnn-table tbody td{padding:11px 14px;border-bottom:1px solid var(--bnn-border);color:var(--bnn-text);vertical-align:middle}.bnn-table--sm tbody td{padding:8px 12px}.bnn-table tbody tr:last-child td{border-bottom:none}.bnn-table tbody tr.is-clickable{cursor:pointer}.bnn-table tbody tr.is-clickable:hover td{background:var(--bnn-surface-hover)}.bnn-table__empty{padding:0!important}.bnn-table__pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-top:1px solid var(--bnn-border)}.bnn-table__page-info{font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary)}.bnn-pagination{display:flex;align-items:center;gap:8px}.bnn-pagination__btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);background:var(--bnn-surface);color:var(--bnn-text-secondary);cursor:pointer}.bnn-pagination__btn:hover:not(:disabled){color:var(--bnn-primary);border-color:var(--bnn-primary)}.bnn-pagination__btn:disabled{opacity:.4;cursor:not-allowed}.bnn-pagination__current{font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary)}.bnn-desc{display:grid;gap:0}.bnn-desc--bordered{border:1px solid var(--bnn-border);border-radius:var(--bnn-radius);overflow:hidden}.bnn-desc__cell{display:flex;flex-direction:column;gap:3px;padding:10px 14px}.bnn-desc--sm .bnn-desc__cell{padding:7px 12px}.bnn-desc--bordered .bnn-desc__cell{border-bottom:1px solid var(--bnn-border);border-right:1px solid var(--bnn-border)}.bnn-desc__label{font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.bnn-desc__value{font-size:var(--bnn-fs-md);color:var(--bnn-text);word-break:break-word}.bnn-barlist{display:flex;flex-direction:column}.bnn-barlist__row{display:flex;align-items:center;gap:14px;padding:9px 0;border-bottom:1px solid var(--bnn-border)}.bnn-barlist__row:last-child{border-bottom:none}.bnn-barlist__label{flex-shrink:0;width:132px;font-size:var(--bnn-fs-md);color:var(--bnn-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bnn-barlist__track{flex:1;min-width:32px;height:6px;background:var(--bnn-surface-alt);border-radius:var(--bnn-radius-pill);overflow:hidden}.bnn-barlist__fill{display:block;height:100%;background:var(--bnn-primary-soft-strong);border-radius:var(--bnn-radius-pill)}.bnn-barlist__value{flex-shrink:0;min-width:52px;text-align:right;font-size:var(--bnn-fs-md);font-weight:600;color:var(--bnn-text);font-variant-numeric:tabular-nums}.bnn-barlist__secondary{flex-shrink:0;min-width:48px;text-align:right;font-size:var(--bnn-fs-md);color:var(--bnn-text-tertiary);font-variant-numeric:tabular-nums}.bnn-input{display:inline-flex;align-items:center;gap:7px;width:100%;height:var(--bnn-control);padding:0 11px;background:var(--bnn-surface);border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);transition:border-color .15s,box-shadow .15s}.bnn-input--sm{height:var(--bnn-control-sm);padding:0 9px}.bnn-input--lg{height:var(--bnn-control-lg);padding:0 13px}.bnn-input:hover{border-color:var(--bnn-primary)}.bnn-input:focus-within{border-color:var(--bnn-primary);box-shadow:0 0 0 3px var(--bnn-primary-soft)}.bnn-input.is-error{border-color:var(--bnn-danger)}.bnn-input.is-error:focus-within{box-shadow:0 0 0 3px var(--bnn-danger-soft)}.bnn-input__el{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--bnn-fs-base);color:var(--bnn-text)}.bnn-input--sm .bnn-input__el{font-size:var(--bnn-fs-md)}.bnn-input__el::placeholder{color:var(--bnn-text-tertiary)}.bnn-input__prefix,.bnn-input__suffix{display:inline-flex;align-items:center;color:var(--bnn-text-tertiary);flex-shrink:0}.bnn-input__clear{display:inline-flex;border:none;background:transparent;color:var(--bnn-text-tertiary);cursor:pointer;padding:0}.bnn-input__clear:hover{color:var(--bnn-text-secondary)}.bnn-input__toggle{border:none;background:transparent;color:var(--bnn-primary);font-size:var(--bnn-fs-sm);cursor:pointer;padding:0}.bnn-datepicker{cursor:pointer}.bnn-textarea{display:block;width:100%;padding:8px 11px;background:var(--bnn-surface);border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);font-family:inherit;font-size:var(--bnn-fs-base);color:var(--bnn-text);resize:vertical;outline:none;transition:border-color .15s,box-shadow .15s}.bnn-textarea:hover{border-color:var(--bnn-primary)}.bnn-textarea:focus{border-color:var(--bnn-primary);box-shadow:0 0 0 3px var(--bnn-primary-soft)}.bnn-textarea.is-error{border-color:var(--bnn-danger)}.bnn-select{position:relative;display:inline-block;width:100%}.bnn-select__control{display:flex;align-items:center;gap:7px;width:100%;height:var(--bnn-control);padding:0 11px;background:var(--bnn-surface);border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);font-family:inherit;font-size:var(--bnn-fs-base);color:var(--bnn-text);cursor:pointer;transition:border-color .15s,box-shadow .15s}.bnn-select--sm .bnn-select__control{height:var(--bnn-control-sm);padding:0 9px;font-size:var(--bnn-fs-md)}.bnn-select--lg .bnn-select__control{height:var(--bnn-control-lg)}.bnn-select__control:hover{border-color:var(--bnn-primary)}.bnn-select.is-open .bnn-select__control{border-color:var(--bnn-primary);box-shadow:0 0 0 3px var(--bnn-primary-soft)}.bnn-select.is-error .bnn-select__control{border-color:var(--bnn-danger)}.bnn-select.is-disabled{opacity:.6;pointer-events:none}.bnn-select__value{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bnn-select__value.is-placeholder{color:var(--bnn-text-tertiary)}.bnn-select__arrow{color:var(--bnn-text-tertiary);transition:transform .18s;flex-shrink:0}.bnn-select.is-open .bnn-select__arrow{transform:rotate(180deg)}.bnn-select__clear{display:inline-flex;color:var(--bnn-text-tertiary)}.bnn-select__clear:hover{color:var(--bnn-text-secondary)}.bnn-select__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:var(--bnn-z-overlay);max-height:260px;overflow-y:auto;padding:4px;background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius);box-shadow:var(--bnn-shadow-md);animation:bnn-pop .12s var(--bnn-ease)}.bnn-select__option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:var(--bnn-radius-sm);font-family:inherit;font-size:var(--bnn-fs-md);color:var(--bnn-text);text-align:left;cursor:pointer}.bnn-select__option:hover{background:var(--bnn-surface-hover)}.bnn-select__option.is-selected{color:var(--bnn-primary);font-weight:500;background:var(--bnn-primary-soft)}.bnn-select__option.is-disabled{color:var(--bnn-text-tertiary);cursor:not-allowed}.bnn-select__empty{padding:12px;text-align:center;color:var(--bnn-text-tertiary);font-size:var(--bnn-fs-sm)}.bnn-checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--bnn-fs-base);-webkit-user-select:none;user-select:none}.bnn-checkbox input{position:absolute;opacity:0;width:0;height:0}.bnn-checkbox__box{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border:1.5px solid var(--bnn-border-strong);border-radius:4px;background:var(--bnn-surface);color:#fff;transition:background .15s,border-color .15s}.bnn-checkbox__box svg{opacity:0;transform:scale(.6);transition:opacity .12s,transform .12s}.bnn-checkbox input:checked+.bnn-checkbox__box{background:var(--bnn-primary);border-color:var(--bnn-primary)}.bnn-checkbox input:checked+.bnn-checkbox__box svg{opacity:1;transform:scale(1)}.bnn-checkbox.is-disabled{opacity:.5;cursor:not-allowed}.bnn-switch{position:relative;display:inline-flex;align-items:center;width:38px;height:20px;padding:0;border:none;border-radius:var(--bnn-radius-pill);background:#c4cad2;cursor:pointer;transition:background .18s}.bnn-switch--sm{width:30px;height:16px}.bnn-switch.is-on{background:var(--bnn-primary)}.bnn-switch:disabled{opacity:.5;cursor:not-allowed}.bnn-switch__handle{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .18s var(--bnn-ease)}.bnn-switch--sm .bnn-switch__handle{width:12px;height:12px}.bnn-switch.is-on .bnn-switch__handle{transform:translate(18px)}.bnn-switch--sm.is-on .bnn-switch__handle{transform:translate(14px)}.bnn-radio-group{display:inline-flex;flex-wrap:wrap;gap:16px}.bnn-radio{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--bnn-fs-base);-webkit-user-select:none;user-select:none}.bnn-radio input{position:absolute;opacity:0;width:0;height:0}.bnn-radio__dot{position:relative;display:inline-block;width:17px;height:17px;border:1.5px solid var(--bnn-border-strong);border-radius:50%;background:var(--bnn-surface);transition:border-color .15s}.bnn-radio__dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:8px;height:8px;border-radius:50%;background:var(--bnn-primary);transform:scale(0);transition:transform .15s var(--bnn-ease)}.bnn-radio input:checked+.bnn-radio__dot{border-color:var(--bnn-primary)}.bnn-radio input:checked+.bnn-radio__dot:after{transform:scale(1)}.bnn-radio.is-disabled{opacity:.5;cursor:not-allowed}.bnn-form--vertical .bnn-form-item{margin-bottom:18px}.bnn-form-item--vertical{display:flex;flex-direction:column;gap:6px}.bnn-form-item--horizontal{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:start;margin-bottom:16px}.bnn-form-item__label{font-size:var(--bnn-fs-md);font-weight:500;color:var(--bnn-text)}.bnn-form-item--horizontal .bnn-form-item__label{padding-top:8px;text-align:right}.bnn-form-item__req{color:var(--bnn-danger);margin-right:4px}.bnn-form-item__error{margin-top:5px;font-size:var(--bnn-fs-sm);color:var(--bnn-danger)}.bnn-form-item__help{margin-top:5px;font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.bnn-upload-dragger{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 16px;background:var(--bnn-surface-alt);border:1.5px dashed var(--bnn-border-strong);border-radius:var(--bnn-radius);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.bnn-upload-dragger:hover,.bnn-upload-dragger.is-drag{border-color:var(--bnn-primary);background:var(--bnn-primary-soft)}.bnn-upload-dragger.is-disabled{opacity:.5;cursor:not-allowed}.bnn-upload-dragger__icon{color:var(--bnn-primary)}.bnn-upload-dragger__title{font-size:var(--bnn-fs-md);color:var(--bnn-text)}.bnn-upload-dragger__hint{font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.bnn-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--bnn-z-overlay);display:flex;align-items:flex-start;justify-content:center;background:#0f141c73;animation:bnn-fade .15s var(--bnn-ease)}@keyframes bnn-fade{0%{opacity:0}}@keyframes bnn-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}}.bnn-modal{margin-top:8vh;max-width:calc(100vw - 32px);max-height:84vh;display:flex;flex-direction:column;background:var(--bnn-surface);border-radius:var(--bnn-radius-lg);box-shadow:var(--bnn-shadow-lg);animation:bnn-modal-in .18s var(--bnn-ease)}@keyframes bnn-modal-in{0%{opacity:0;transform:translateY(-12px) scale(.97)}}.bnn-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--bnn-border)}.bnn-modal__title{font-size:var(--bnn-fs-lg);font-weight:600}.bnn-modal__body{padding:20px;overflow-y:auto}.bnn-modal__foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--bnn-border)}.bnn-overlay:has(.bnn-drawer){align-items:stretch}.bnn-drawer{position:fixed;top:0;bottom:0;max-width:100vw;display:flex;flex-direction:column;background:var(--bnn-surface);box-shadow:var(--bnn-shadow-lg)}.bnn-drawer--right{right:0;animation:bnn-slide-r .2s var(--bnn-ease)}.bnn-drawer--left{left:0;animation:bnn-slide-l .2s var(--bnn-ease)}@keyframes bnn-slide-r{0%{transform:translate(100%)}}@keyframes bnn-slide-l{0%{transform:translate(-100%)}}.bnn-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--bnn-border)}.bnn-drawer__title{font-size:var(--bnn-fs-lg);font-weight:600}.bnn-drawer__body{flex:1;padding:20px;overflow-y:auto}.bnn-drawer__foot{padding:14px 20px;border-top:1px solid var(--bnn-border)}.bnn-tooltip-wrap{position:relative;display:inline-flex}.bnn-tooltip{position:absolute;z-index:var(--bnn-z-toast);padding:5px 9px;background:#20262e;color:#fff;font-size:var(--bnn-fs-sm);line-height:1.4;border-radius:var(--bnn-radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;box-shadow:var(--bnn-shadow-md)}.bnn-tooltip-wrap:hover .bnn-tooltip{opacity:1}.bnn-tooltip--top{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.bnn-tooltip--bottom{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.bnn-tooltip--left{right:calc(100% + 6px);top:50%;transform:translateY(-50%)}.bnn-tooltip--right{left:calc(100% + 6px);top:50%;transform:translateY(-50%)}.bnn-dropdown{position:relative;display:inline-flex}.bnn-dropdown__trigger{display:inline-flex;cursor:pointer}.bnn-menu{position:absolute;top:calc(100% + 6px);z-index:var(--bnn-z-overlay);min-width:160px;padding:4px;background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius);box-shadow:var(--bnn-shadow-md);animation:bnn-pop .12s var(--bnn-ease)}.bnn-menu--bottomRight{right:0}.bnn-menu--bottomLeft{left:0}.bnn-menu__item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:var(--bnn-radius-sm);font-family:inherit;font-size:var(--bnn-fs-md);color:var(--bnn-text);text-align:left;cursor:pointer}.bnn-menu__item:hover{background:var(--bnn-surface-hover)}.bnn-menu__item.is-danger{color:var(--bnn-danger)}.bnn-menu__item.is-danger:hover{background:var(--bnn-danger-soft);color:var(--bnn-danger-active)}.bnn-menu__item.is-danger:active{background:var(--bnn-danger-soft-strong)}.bnn-menu__item.is-disabled{color:var(--bnn-text-tertiary);cursor:not-allowed}.bnn-menu__icon{display:inline-flex;color:var(--bnn-text-secondary)}.bnn-menu__item.is-danger .bnn-menu__icon,.bnn-menu__item:hover .bnn-menu__icon{color:inherit}.bnn-popconfirm{position:relative;display:inline-flex}.bnn-popconfirm__pop{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:var(--bnn-z-overlay);width:240px;padding:14px;background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius);box-shadow:var(--bnn-shadow-md);animation:bnn-pop .12s var(--bnn-ease)}.bnn-popconfirm__title{font-size:var(--bnn-fs-md);font-weight:600;margin-bottom:4px}.bnn-popconfirm__desc{font-size:var(--bnn-fs-sm);color:var(--bnn-text-secondary);margin-bottom:12px}.bnn-popconfirm__actions{display:flex;justify-content:flex-end;gap:8px}.bnn-toast-viewport{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:var(--bnn-z-toast);display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.bnn-toast{display:inline-flex;align-items:center;gap:9px;padding:10px 16px;background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius);box-shadow:var(--bnn-shadow-md);font-size:var(--bnn-fs-md);color:var(--bnn-text);animation:bnn-toast-in .2s var(--bnn-ease)}@keyframes bnn-toast-in{0%{opacity:0;transform:translateY(-10px)}}.bnn-toast__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.bnn-toast--success .bnn-toast__icon{background:var(--bnn-success)}.bnn-toast--error .bnn-toast__icon{background:var(--bnn-danger)}.bnn-toast--info .bnn-toast__icon{background:var(--bnn-primary)}.bnn-toast--warning .bnn-toast__icon{background:var(--bnn-warning)}.bnn-toast--loading .bnn-toast__icon{background:transparent}.bnn-chart-box{width:100%;overflow:hidden}.bnn-chart{display:block;overflow:visible}.bnn-chart__grid{stroke:var(--bnn-chart-grid);stroke-width:1;vector-effect:non-scaling-stroke}.bnn-chart__axis{fill:var(--bnn-text-tertiary);font-size:10px;font-family:var(--bnn-font)}.bnn-chart__cursor{stroke:var(--bnn-border-strong);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.bnn-chart__bar{transition:opacity .15s}.bnn-chart__bar:hover{opacity:.82}.bnn-chart__tip{display:flex;flex-direction:column;align-items:center;padding:4px 8px;background:#20262e;border-radius:var(--bnn-radius-sm);color:#fff;line-height:1.3}.bnn-chart__tip-label{font-size:9px;opacity:.7}.bnn-chart__tip-value{font-size:12px;font-weight:600}.bnn-chart-legend{display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-end;margin-bottom:4px}.bnn-chart-legend__item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--bnn-text-secondary)}.bnn-chart-legend__swatch{width:10px;height:10px;border-radius:2px}.bnn-chart__tip--multi{align-items:stretch;gap:2px}.bnn-chart__tip-row{display:flex;align-items:center;gap:6px}.bnn-chart__tip-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.bnn-chart__tip-name{font-size:10px;opacity:.75;margin-right:auto}.bnn-chart__tip-row .bnn-chart__tip-value{font-size:11px}.kit{min-height:100vh;background:var(--bnn-bg)}.kit-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 20px;background:var(--bnn-surface);border-bottom:1px solid var(--bnn-border)}.kit-topbar__left{display:flex;align-items:center;gap:20px;min-width:0;flex:1}.kit-topbar__left .bnn-navmenu{min-width:0;overflow-x:auto;scrollbar-width:none}.kit-topbar__left .bnn-navmenu::-webkit-scrollbar{display:none}.kit-topbar__brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:var(--bnn-fs-base)}.kit-logo{font-size:20px}.kit-topbar__divider{width:1px;height:18px;background:var(--bnn-border-strong);margin:0 2px}.kit-topbar__right{display:flex;align-items:center;gap:14px}.kit-user{display:inline-flex;align-items:center;gap:7px;padding:4px 8px;border-radius:var(--bnn-radius);cursor:pointer;color:var(--bnn-text-secondary);transition:background .15s,color .15s}.kit-user:hover,.bnn-dropdown__trigger.is-open .kit-user{background:#1018280f;color:var(--bnn-text)}.kit-user:active{background:#1018281a;color:var(--bnn-text)}.kit-body{display:flex;align-items:flex-start;max-width:1200px;margin:0 auto;padding:0 20px}.kit-nav{position:sticky;top:72px;display:flex;flex-direction:column;gap:2px;width:170px;flex-shrink:0;padding:24px 8px 24px 0}.kit-nav__link{padding:7px 12px;border-radius:var(--bnn-radius);font-size:var(--bnn-fs-md);font-weight:500;color:var(--bnn-text-secondary);text-decoration:none;transition:background .15s,color .15s}.kit-nav__link:hover{background:var(--bnn-primary-soft);color:var(--bnn-primary)}.kit-nav__link:active{background:var(--bnn-primary-soft-strong);color:var(--bnn-primary-active)}.kit-main{flex:1;min-width:0;padding:24px 0 80px 24px}.kit-intro{margin-bottom:32px}.kit-intro .bnn-title{margin:10px 0 6px}.kit-section{margin-bottom:40px;scroll-margin-top:70px}.kit-section__head{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.kit-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:12px}.kit-section>.bnn-card{margin-bottom:12px}.kit-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}.kit-swatch{display:flex;align-items:center;gap:8px}.kit-swatch__box{width:26px;height:26px;border-radius:var(--bnn-radius);box-shadow:inset 0 0 0 1px #0000000f}.kit-footer{margin-top:24px}@media(max-width:860px){.kit-nav{display:none}.kit-main{padding-left:0}}@media(max-width:720px){.kit-username{display:none}}@media(max-width:560px){.kit-topbar{padding:0 12px}.kit-topbar__left{gap:10px}.kit-topbar__name,.kit-topbar__right .bnn-tag,.bnn-navmenu__label{display:none}.bnn-navmenu__item{padding:0 9px;gap:0}}.ac{min-height:100vh;background:var(--bnn-bg)}.ac-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 16px;background:var(--bnn-surface);border-bottom:1px solid var(--bnn-border)}.ac-top__left{display:flex;align-items:center;gap:12px;min-width:0}.ac-brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--bnn-primary);font-weight:700;font-size:var(--bnn-fs-base);white-space:nowrap}.ac-brand__logo{display:block}.ac-top__sep{width:1px;height:18px;background:var(--bnn-border-strong);flex-shrink:0}.ac-top__left .bnn-breadcrumb{min-width:0;overflow:hidden;white-space:nowrap}.ac-top__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.ac-top__docs{display:inline-flex;align-items:center;gap:6px;font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary);text-decoration:none;transition:color .15s}.ac-top__docs:hover{color:var(--bnn-primary)}.ac-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--bnn-radius);background:transparent;color:var(--bnn-text-secondary);cursor:pointer;transition:background .15s,color .15s}.ac-iconbtn:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.ac-burger{display:none;align-items:center;justify-content:center;width:32px;height:32px;margin-right:2px;border:none;border-radius:var(--bnn-radius);background:transparent;color:var(--bnn-text);cursor:pointer}.ac-burger:hover{background:var(--bnn-surface-hover)}.ac-drawer-nav .ac-nav__top{margin-top:0}.ac-user{display:inline-flex;align-items:center;gap:6px;padding:4px 6px;border-radius:var(--bnn-radius);cursor:pointer;color:var(--bnn-text-secondary);transition:background .15s,color .15s}.ac-user:hover,.bnn-dropdown__trigger.is-open .ac-user{background:var(--bnn-surface-hover);color:var(--bnn-text)}.ac-body{display:flex;align-items:flex-start}.ac-side{position:sticky;top:52px;flex-shrink:0;width:224px;height:calc(100vh - 52px);overflow-y:auto;background:var(--bnn-surface);border-right:1px solid var(--bnn-border);padding:8px 8px 24px}.ac-app{display:flex;align-items:center;gap:10px;padding:10px 8px 14px;margin-bottom:8px;border-bottom:1px solid var(--bnn-border)}.ac-app__icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--bnn-radius-lg);color:#fff;font-weight:700;font-size:15px;flex-shrink:0}.ac-app__meta{min-width:0}.ac-app__name{font-size:var(--bnn-fs-base);font-weight:600;color:var(--bnn-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ac-app{text-decoration:none}.ac-app:hover .ac-app__name{color:var(--bnn-primary)}.ac-app__platform{font-size:var(--bnn-fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--bnn-text-tertiary)}.ac-nav__top{margin-bottom:6px;padding-bottom:8px;border-bottom:1px solid var(--bnn-border)}.ac-nav__solo{position:relative;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--bnn-radius);font-size:var(--bnn-fs-md);font-weight:500;color:var(--bnn-text-secondary);text-decoration:none;transition:background .15s,color .15s}.ac-nav__solo:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.ac-nav__solo.is-active{background:var(--bnn-primary-soft);color:var(--bnn-primary)}.ac-nav__solo.is-active .ac-nav__group-icon{color:var(--bnn-primary)}.ac-nav__solo.is-active:before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:3px;border-radius:var(--bnn-radius-pill);background:var(--bnn-primary)}.ac-nav__group{margin-bottom:4px}.ac-nav__group-head{display:flex;align-items:center;gap:10px;padding:8px 10px 4px;color:var(--bnn-text-secondary)}.ac-nav__group-icon{display:inline-flex;color:var(--bnn-text-tertiary)}.ac-nav__group-label{font-size:var(--bnn-fs-sm);font-weight:600}.ac-nav__items{display:flex;flex-direction:column}.ac-nav__item{position:relative;display:block;padding:7px 10px 7px 36px;border-radius:var(--bnn-radius);font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary);text-decoration:none;transition:background .15s,color .15s}.ac-nav__item:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.ac-nav__item.is-active{background:var(--bnn-primary-soft);color:var(--bnn-primary);font-weight:500}.ac-nav__item.is-active:before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:3px;border-radius:var(--bnn-radius-pill);background:var(--bnn-primary)}.ac-main{flex:1;min-width:0;padding:22px 28px 64px}@media(max-width:760px){.ac-burger{display:inline-flex}.ac-top__sep,.ac-top__left .bnn-breadcrumb,.ac-side{display:none}.ac-main{padding:18px 16px 48px}.ac-brand__name{display:none}}.ov{display:flex;flex-direction:column;gap:16px}.ov-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px}.ov-card-extra{display:inline-flex;align-items:center;gap:10px}.ov-toolbar__select{width:168px}.ov-split{display:flex;align-items:stretch}.ov-split__chart{flex:1;min-width:0}.ov-rail{display:flex;flex-direction:column;justify-content:center;gap:18px;width:150px;flex-shrink:0;padding-left:24px;margin-left:24px;border-left:1px solid var(--bnn-border)}.ov-rail .bnn-stat__title,.ov-substats .bnn-stat__title{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--bnn-text-tertiary)}.ov-rail .bnn-stat__value{font-size:var(--bnn-fs-2xl);font-weight:600;line-height:1.1;color:var(--bnn-primary)}.ov-rail .bnn-stat__trend{color:var(--bnn-text-tertiary)}.ov-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.ov-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.ov-substats{display:flex;flex-wrap:wrap;gap:28px;margin-top:14px;padding-top:14px;border-top:1px solid var(--bnn-border)}.ov-substats .bnn-stat__value{font-size:var(--bnn-fs-xl);font-weight:600;color:var(--bnn-text)}.ov-pct{color:var(--bnn-primary)}.ov-stacked{margin-top:4px}.ov-stacked__head{margin-bottom:8px}.ov-stacked__bar{display:flex;gap:2px;height:8px}.ov-stacked__seg{height:100%;border-radius:2px}.ov-stacked__legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.ov-stacked__legend-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--bnn-fs-xs);color:var(--bnn-text-tertiary)}.ov-dot{width:8px;height:8px;border-radius:2px}.ov-help{display:inline-flex;color:var(--bnn-text-tertiary);cursor:help;transition:color .15s}.ov-help:hover{color:var(--bnn-primary)}@media(max-width:640px){.ov-split{flex-direction:column}.ov-rail{width:auto;flex-direction:row;flex-wrap:wrap;gap:24px;border-left:none;padding-left:0;margin-left:0;margin-top:12px;padding-top:12px;border-top:1px solid var(--bnn-border)}}.pg{display:flex;flex-direction:column;gap:16px}.pg>.bnn-segmented{align-self:flex-start}.pg-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px}.pg-filter{display:inline-flex;align-items:center;gap:8px}.pg-filter__label{font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary)}.pg-searchinput{display:flex;width:100%}.pg-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.pg-affected{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.pg-charttotal{display:inline-flex;align-items:baseline;gap:6px}.pg-charttotal__num{font-size:var(--bnn-fs-lg);font-weight:700}.pg-charttotal__num--crash{color:var(--bnn-danger)}.pg-charttotal__num--error{color:var(--bnn-warning)}.pg-charttotal__label{font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary)}.pg-titlecell{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:540px}.pg-titlecell__main{font-weight:600;color:var(--bnn-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pg-titlecell__sub{font-size:var(--bnn-fs-sm);color:var(--bnn-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pg-split{display:flex;align-items:stretch}.pg-split__chart{flex:1;min-width:0}.pg-rail{display:flex;flex-direction:column;justify-content:center;gap:16px;width:140px;flex-shrink:0;padding-left:22px;margin-left:22px;border-left:1px solid var(--bnn-border)}.pg-rail .bnn-stat__title{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--bnn-text-tertiary)}.pg-rail .bnn-stat__value{font-size:var(--bnn-fs-xl);font-weight:600;line-height:1.1;color:var(--bnn-primary)}.pg-substats{display:flex;flex-wrap:wrap;gap:28px;margin-top:14px;padding-top:14px;border-top:1px solid var(--bnn-border)}.pg-substats .bnn-stat__title{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--bnn-text-tertiary)}.pg-substats .bnn-stat__value{font-size:var(--bnn-fs-xl);font-weight:600;color:var(--bnn-text)}.pg-detailhead{display:flex;align-items:flex-start;gap:16px}.pg-detailhead__main{flex:1;min-width:0}.pg-detailhead__titlerow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pg-detailhead__title{font-size:var(--bnn-fs-lg);font-weight:600;word-break:break-word}.pg-detailhead__msg{margin-top:4px;color:var(--bnn-text-secondary);font-size:var(--bnn-fs-md)}.pg-detailhead__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pg-meta{display:flex;flex-wrap:wrap;gap:26px}.pg-meta__item{display:flex;flex-direction:column;gap:2px}.pg-meta__label{font-size:var(--bnn-fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--bnn-text-tertiary)}.pg-meta__value{font-size:var(--bnn-fs-md);color:var(--bnn-text)}.pg-apikey{display:flex;align-items:center;gap:8px}.pg-apikey .bnn-input{flex:1}.pg-danger{border-color:var(--bnn-danger-soft-strong)}.pg-danger__row{display:flex;align-items:center;justify-content:space-between;gap:16px}.pg-person{display:flex;align-items:center;gap:10px}.pg-person__name{font-weight:600;color:var(--bnn-text)}@media(max-width:640px){.pg-split{flex-direction:column}.pg-rail{width:auto;flex-direction:row;flex-wrap:wrap;border-left:none;padding-left:0;margin-left:0;margin-top:12px;padding-top:12px;border-top:1px solid var(--bnn-border)}}.rel-drawer{display:flex;flex-direction:column;gap:12px}.rel-toggles{display:flex;flex-direction:column;gap:14px}.rel-toggles__row{display:flex;align-items:center;justify-content:space-between;gap:16px}.rel-actions{display:flex;flex-wrap:wrap;gap:8px}.rel-link .bnn-input{width:100%}.rel-notify{display:flex;flex-direction:column;gap:12px}.rel-notify__bulk{display:flex;align-items:center;gap:8px}.rel-notify__list{max-height:280px;overflow:auto;border:1px solid var(--bnn-border);border-radius:var(--bnn-radius)}.rel-notify__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px}.rel-notify__row+.rel-notify__row{border-top:1px solid var(--bnn-border)}.rel-notify__who{display:inline-flex;align-items:baseline;gap:8px}.rel-install{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.rel-install__info{flex:1;min-width:0}.rel-install__title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rel-install__notes{margin-top:10px}.rel-install__notes-body{margin-top:4px;white-space:pre-wrap;color:var(--bnn-text-secondary);font-size:var(--bnn-fs-md)}.rel-install__action{flex-shrink:0}@media(max-width:576px){.rel-install{flex-direction:column}.rel-install__action,.rel-install__action .bnn-btn{width:100%}}.pg-rowactions{display:inline-flex;align-items:center;gap:6px}.pg-person__tag{margin-left:8px}.pg-charttotal__num--ok{color:var(--bnn-success)}.iss-stack{display:flex;flex-direction:column;gap:10px}.iss-stack__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.iss-picker{display:inline-flex;align-items:center;gap:6px}.pg-tablesearch{padding:12px 16px;border-bottom:1px solid var(--bnn-border)}.pg-tablesearch .bnn-input{display:flex;width:100%}.evd-tags{display:inline-flex;flex-wrap:wrap;gap:4px}.set-maint{display:flex;flex-direction:column;gap:16px}.set-maint__row{display:flex;align-items:center;justify-content:space-between;gap:16px}.set-maint__row+.set-maint__row{border-top:1px solid var(--bnn-border);padding-top:16px}.set-maint__stats{display:flex;flex-wrap:wrap;gap:28px;padding:10px 12px;background:var(--bnn-surface-alt);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius)}.home{min-height:100vh;background:var(--bnn-bg)}.home-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 20px;background:var(--bnn-surface);border-bottom:1px solid var(--bnn-border)}.home-brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--bnn-primary);font-weight:700;font-size:var(--bnn-fs-base)}.home-brand img{display:block}.home-top__right{display:flex;align-items:center;gap:12px}.home-docs{display:inline-flex;align-items:center;gap:6px;font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary);text-decoration:none}.home-docs:hover{color:var(--bnn-primary)}.home-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--bnn-radius);background:transparent;color:var(--bnn-text-secondary);cursor:pointer}.home-iconbtn:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.home-user{display:inline-flex;align-items:center;gap:7px;padding:4px 8px;border-radius:var(--bnn-radius);cursor:pointer;color:var(--bnn-text-secondary)}.home-user:hover,.bnn-dropdown__trigger.is-open .home-user{background:var(--bnn-surface-hover);color:var(--bnn-text)}.home-main{max-width:1080px;margin:0 auto;padding:28px 20px 64px}.home-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.home-head .bnn-title{margin:0}.home-head__actions{display:flex;align-items:center;gap:10px}.home-search{width:240px}.home-search .bnn-input{display:flex;width:100%}.home-owner{display:flex;align-items:center;gap:8px;padding:6px 0 14px;margin-bottom:16px;border-bottom:1px solid var(--bnn-border)}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.home-card{display:flex;align-items:center;gap:14px;padding:16px;background:var(--bnn-surface);border:1px solid var(--bnn-border);border-radius:var(--bnn-radius-lg);box-shadow:var(--bnn-shadow-xs);text-decoration:none;transition:box-shadow .18s var(--bnn-ease),border-color .18s var(--bnn-ease),transform .18s var(--bnn-ease)}.home-card:hover{box-shadow:var(--bnn-shadow-md);border-color:var(--bnn-border-strong);transform:translateY(-1px)}.home-card__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--bnn-radius-lg);color:#fff;font-weight:700;font-size:18px}.home-card__meta{flex:1;min-width:0}.home-card__name{font-size:var(--bnn-fs-base);font-weight:600;color:var(--bnn-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-card__sub{display:flex;align-items:center;gap:8px;margin-top:5px}.home-card__arrow{flex-shrink:0;color:var(--bnn-text-tertiary)}.acct{max-width:560px;margin:0 auto;padding:24px 20px 64px;display:flex;flex-direction:column;gap:16px}.acct-back{display:inline-flex;align-items:center;gap:4px;width:fit-content;color:var(--bnn-text-secondary);text-decoration:none;font-size:var(--bnn-fs-md)}.acct-back:hover{color:var(--bnn-primary)}.acct-title{margin:2px 0;font-size:var(--bnn-fs-2xl);font-weight:600}.acct-signout{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.cb{position:relative;margin:10px 0}.cb pre.stacktrace{margin:0;padding-right:84px}.cb__copy{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid var(--bnn-border-strong);border-radius:var(--bnn-radius);background:var(--bnn-surface);color:var(--bnn-text-secondary);font-size:var(--bnn-fs-sm);cursor:pointer;transition:color .15s,border-color .15s}.cb__copy:hover{color:var(--bnn-primary);border-color:var(--bnn-primary)}.docs-body{display:flex;align-items:flex-start;max-width:1080px;margin:0 auto;padding:0 20px}.docs-toc{position:sticky;top:72px;flex-shrink:0;width:200px;display:flex;flex-direction:column;gap:2px;padding:28px 8px 24px 0}.docs-toc a{position:relative;padding:6px 10px;border-radius:var(--bnn-radius);font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary);text-decoration:none;transition:background .15s,color .15s}.docs-toc a:hover{background:var(--bnn-surface-hover);color:var(--bnn-text)}.docs-toc a.is-active{background:var(--bnn-primary-soft);color:var(--bnn-primary);font-weight:500}.docs-toc a.is-active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:var(--bnn-radius-pill);background:var(--bnn-primary)}.docs-main{flex:1;min-width:0;padding:28px 0 85vh 24px}.docs-intro{margin-bottom:28px}.docs-intro .bnn-title{margin:0 0 8px}.docs-section{margin-bottom:36px;scroll-margin-top:70px}.docs-section h2{margin:0 0 10px;font-size:var(--bnn-fs-xl);font-weight:600}.docs-section p{margin:0 0 10px;font-size:var(--bnn-fs-base);line-height:1.6;color:var(--bnn-text-secondary)}.docs-section ul{margin:8px 0;padding-left:18px;color:var(--bnn-text-secondary);line-height:1.7}.docs-section strong{color:var(--bnn-text);font-weight:600}.docs-section code{font-family:var(--bnn-font-mono);font-size:12px;background:var(--bnn-surface-alt);border:1px solid var(--bnn-border);padding:1px 5px;border-radius:4px;color:var(--bnn-text)}@media(max-width:860px){.docs-toc{display:none}.docs-main{padding-left:0}}.gs{display:flex;flex-direction:column;gap:16px}.gs-intro .bnn-title{margin:0 0 6px}.gs-link{display:inline-flex;align-items:center;gap:4px;color:var(--bnn-primary);text-decoration:none}.gs-link:hover{text-decoration:underline}.gs-steps{display:flex;flex-direction:column;gap:24px;margin-top:22px}.gs-step{display:flex;gap:14px}.gs-step__num{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--bnn-radius-pill);background:var(--bnn-primary-soft);color:var(--bnn-primary);font-weight:700;font-size:var(--bnn-fs-sm)}.gs-step__body{flex:1;min-width:0}.gs-step__title{font-size:var(--bnn-fs-base);font-weight:600;margin-bottom:8px}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bnn-bg)}.auth-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:18px}.auth-head{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:6px}.auth-head__logo{width:44px;height:44px}.auth-head__name{font-size:var(--bnn-fs-xl);font-weight:700}.auth-head__sub{color:var(--bnn-text-secondary);font-size:var(--bnn-fs-md)}.auth-form{display:flex;flex-direction:column;gap:4px}.auth-foot{text-align:center;font-size:var(--bnn-fs-md);color:var(--bnn-text-secondary)}.auth-foot a{color:var(--bnn-primary);text-decoration:none}.auth-foot a:hover{text-decoration:underline}*{margin:0;padding:0;box-sizing:border-box}#root{min-height:100vh}.stacktrace{margin:0;font-family:var(--bnn-font-mono);font-size:12px;line-height:1.55;white-space:pre-wrap;word-break:break-all;background:var(--bnn-surface-alt);border:1px solid var(--bnn-border);padding:14px 16px;border-radius:var(--bnn-radius);overflow-x:auto}
