.bbj-btn{font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;transition:transform var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;line-height:1;display:inline-flex}.bbj-btn:active:not(:disabled){transform:scale(.97)}.bbj-btn:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-btn:disabled{opacity:.45;cursor:not-allowed}.bbj-btn--lg{height:48px;font-size:var(--fs-body);padding:0 20px}.bbj-btn--md{height:40px;font-size:var(--fs-meta);padding:0 16px}.bbj-btn--sm{height:32px;font-size:var(--fs-caption);padding:0 12px}.bbj-btn--primary{background:var(--brand);color:var(--brand-ink)}.bbj-btn--primary:hover:not(:disabled){background:var(--brand-weak);color:var(--brand)}.bbj-btn--secondary{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.bbj-btn--secondary:hover:not(:disabled){background:var(--surface-2)}.bbj-btn--text{color:var(--brand);background:0 0}.bbj-btn--text:hover:not(:disabled){background:var(--brand-weak)}.bbj-btn--danger{background:var(--danger);color:var(--brand-ink)}.bbj-btn--danger:hover:not(:disabled){opacity:.9}.bbj-btn--ghost{color:var(--brand);background:0 0}.bbj-btn--ghost:hover:not(:disabled){background:var(--surface-2)}.bbj-btn__spinner{animation:.9s linear infinite bbj-spin;display:inline-flex}@keyframes bbj-spin{to{transform:rotate(360deg)}}.bbj-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--sh-card);padding:20px}.bbj-card.is-flat{box-shadow:none}.bbj-card.is-clickable{cursor:pointer}.bbj-card.is-clickable:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-card__head{justify-content:space-between;align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-sm);display:flex}.bbj-card__title{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--ink);margin:0;line-height:1.5}.bbj-card__extra{align-items:center;gap:8px;display:flex}.bbj-card__body{color:var(--ink-2)}.bbj-card__foot{margin-top:var(--sp-sm);padding-top:var(--sp-sm);border-top:1px solid var(--border);align-items:center;gap:8px;display:flex}.bbj-section-title{justify-content:space-between;align-items:baseline;gap:var(--sp-sm);padding:16px 0;display:flex}.bbj-section-title__text{font-size:var(--fs-h2);font-weight:var(--fw-semibold);color:var(--ink);margin:0}.bbj-section-title__more{color:var(--ink-3);align-items:center;gap:4px;font-size:13px;text-decoration:none;display:inline-flex}.bbj-section-title__more:hover{color:var(--brand)}.bbj-tag{border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface);height:24px;color:var(--ink-2);font-size:var(--fs-caption2);white-space:nowrap;align-items:center;gap:4px;padding:0 8px;line-height:1;display:inline-flex}.bbj-tag--positive{border-color:var(--success);color:var(--success);background:hsl(var(--success-hsl) / .1)}.bbj-tag--negative{border-color:var(--danger);color:var(--danger);background:hsl(var(--danger-hsl) / .08)}.bbj-tag--subj{border-color:hsl(var(--brand-hsl) / .35)}.bbj-tag__score{font-variant-numeric:tabular-nums;margin-left:2px}.bbj-tag__score.is-up{color:var(--score-up)}.bbj-tag__score.is-down{color:var(--score-down)}.bbj-tag--score{font-variant-numeric:tabular-nums;font-size:var(--fs-caption);border-color:#0000}.bbj-tag--score.is-up{background:hsl(var(--score-up-hsl) / .1);color:var(--score-up)}.bbj-tag--score.is-down{background:hsl(var(--score-down-hsl) / .1);color:var(--score-down)}.bbj-tag__close{color:inherit;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;padding:2px;display:inline-flex}.bbj-tag__close:hover{color:var(--ink)}.bbj-empty,.bbj-errorretry{text-align:center;color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.bbj-empty__art{color:var(--ink-3)}.bbj-empty__accent{stroke:var(--brand)}.bbj-empty__title{font-size:var(--fs-body);color:var(--ink);margin:0}.bbj-empty__desc{font-size:var(--fs-meta);margin:0}.bbj-empty__action,.bbj-errorretry .bbj-empty__action{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);height:40px;color:var(--brand);font-size:var(--fs-meta);cursor:pointer;align-items:center;gap:8px;margin-top:8px;padding:0 16px;display:inline-flex}.bbj-empty__action:hover{border-color:var(--brand)}.bbj-empty__action:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-errorretry__msg{font-size:var(--fs-meta);color:var(--ink-2);margin:0}.bbj-skeleton__text{border-radius:var(--r-sm);height:16px;margin-bottom:8px}.bbj-skeleton__text.is-short{width:60%}.bbj-skeleton__card{border-radius:var(--r-card);height:120px;margin-bottom:var(--sp-gap-card)}.bbj-skeleton__row{align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-sm);display:flex}.bbj-skeleton__lines{flex:1;min-width:0}.bbj-skeleton__avatar{border-radius:var(--r-pill);flex-shrink:0;width:40px;height:40px}.bbj-skeleton__trow{border-radius:var(--r-sm);height:44px;margin-bottom:4px}.bbj-table-wrap{width:100%;min-width:0;max-width:100%}.bbj-table-scroll{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);width:100%;max-width:100%;overflow:auto}.bbj-table{border-collapse:separate;border-spacing:0;width:100%;min-width:max-content;position:relative}.bbj-table thead th{z-index:5;background:var(--surface-2);border-bottom:1px solid var(--border);height:44px;font-size:13px;font-weight:var(--fw-medium);color:var(--ink-2);text-align:left;white-space:nowrap;padding:0 12px;position:sticky;top:0}.bbj-table thead th.is-numeric{text-align:right}.bbj-table th.is-first,.bbj-table td.is-first{z-index:4;background:var(--surface);box-shadow:1px 0 0 var(--border);position:sticky;left:0}.bbj-table thead th.is-first{z-index:6;background:var(--surface-2)}.bbj-table__th-inner{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.bbj-table__th-inner .bbj-icon.is-active{color:var(--brand)}.bbj-table__resizer{cursor:col-resize;width:6px;position:absolute;top:8px;bottom:8px;right:-3px}.bbj-table__resizer:hover{background:var(--border-strong)}.bbj-table tbody td{border-bottom:1px solid var(--border);font-size:var(--fs-meta);color:var(--ink);white-space:nowrap;padding:0 12px}.bbj-table tbody td.is-numeric{font-variant-numeric:tabular-nums}.bbj-table tbody tr.is-clickable{cursor:pointer}.bbj-table tbody tr.is-clickable:hover{background:var(--surface-2)}.bbj-table tbody tr.is-selected{background:var(--brand-weak)}.bbj-table tbody tr:last-child td{border-bottom:none}.bbj-table__check{text-align:center}.bbj-table__state{padding:0}.bbj-table__virtual-hint{font-size:var(--fs-caption2);color:var(--ink-3);text-align:right;padding:8px 12px}.bbj-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-sm);min-height:56px;padding:var(--sp-sm) 0;display:flex}.bbj-toolbar.with-border{border-bottom:1px solid var(--border)}.bbj-toolbar__left,.bbj-toolbar__right{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.bbj-toolbar__title{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--ink)}.bbj-toolbar__count{font-size:var(--fs-meta);color:var(--brand);font-weight:var(--fw-medium)}.bbj-toolbar__cancel{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);height:32px;color:var(--ink-3);font-size:var(--fs-caption);cursor:pointer;align-items:center;gap:4px;padding:0 12px;display:inline-flex}.bbj-toolbar__cancel:hover{color:var(--ink);border-color:var(--border-strong)}.bbj-pagination{padding:var(--sp-sm) 0;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bbj-pagination__btn,.bbj-pagination__page{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);min-width:32px;height:32px;color:var(--ink-2);font-size:var(--fs-caption);cursor:pointer;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.bbj-pagination__btn:disabled{opacity:.45;cursor:not-allowed}.bbj-pagination__btn:focus-visible,.bbj-pagination__page:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-pagination__page.is-active{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.bbj-pagination__pages{align-items:center;gap:4px;display:flex}.bbj-pagination__ellipsis{color:var(--ink-3);padding:0 2px}.bbj-pagination__size{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);height:32px;color:var(--ink-2);font-size:var(--fs-caption);padding:0 8px}.bbj-pagination__total{font-size:var(--fs-caption);color:var(--ink-3)}.bbj-pagination__jump{font-size:var(--fs-caption);color:var(--ink-3);align-items:center;gap:4px;display:inline-flex}.bbj-pagination__jump input{text-align:center;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);width:48px;height:32px;color:var(--ink);padding:0 8px}.bbj-drawer{z-index:150;position:fixed;inset:0}.bbj-drawer__mask{background:#0f121673;position:absolute;inset:0}.bbj-drawer__panel{background:var(--surface);border-left:1px solid var(--border);animation:bbj-drawer-slide .24s var(--ease);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0}.bbj-drawer__panel--480{width:480px;max-width:92vw}.bbj-drawer__panel--720{width:720px;max-width:92vw}@keyframes bbj-drawer-slide{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}.bbj-drawer__head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.bbj-drawer__title{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--ink)}.bbj-drawer__body{min-height:0;padding:var(--sp-sm);flex:1;overflow-y:auto}.bbj-drawer__foot{border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.bbj-modal{z-index:160;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.bbj-modal__mask{background:#0f121673;position:absolute;inset:0}.bbj-modal__panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:560px;box-shadow:var(--sh-popover);animation:bbj-modal-in var(--dur-base) var(--ease);flex-direction:column;max-height:90vh;display:flex;position:relative}@keyframes bbj-modal-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.bbj-modal__head{justify-content:space-between;align-items:center;gap:8px;padding:16px 20px 0;display:flex}.bbj-modal__title{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--ink)}.bbj-modal__body{min-height:0;color:var(--ink-2);padding:16px 20px;overflow-y:auto}.bbj-modal__foot{justify-content:flex-end;gap:8px;padding:0 20px 16px;display:flex}.bbj-dialog__content{font-size:var(--fs-meta);line-height:1.7}.bbj-confirmsheet__warn{color:var(--danger);justify-content:center;margin-bottom:8px;display:flex}.bbj-confirmsheet__scope{font-size:var(--fs-meta);color:var(--ink);text-align:center;margin:0;line-height:1.7}.bbj-confirmsheet__hint{font-size:var(--fs-caption);color:var(--ink-3);text-align:center;margin:4px 0 0}.bbj-confirmsheet__inputrow{flex-direction:column;gap:8px;margin-top:16px;display:flex}.bbj-confirmsheet__inputrow label{font-size:var(--fs-caption);color:var(--ink-2)}.bbj-confirmsheet__inputrow input{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);height:40px;color:var(--ink);padding:0 12px}.bbj-segmented{background:var(--surface-2);border-radius:var(--r-pill);padding:3px;display:inline-flex;position:relative}.bbj-segmented__thumb{background:var(--surface);border-radius:var(--r-pill);box-shadow:var(--sh-card);transition:transform var(--dur-base) var(--ease);position:absolute;top:3px;bottom:3px;left:3px}.bbj-segmented__item{z-index:1;border-radius:var(--r-pill);height:32px;color:var(--ink-3);font-size:var(--fs-meta);cursor:pointer;transition:color var(--dur-base) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;gap:4px;padding:0 16px;display:inline-flex;position:relative}.bbj-segmented__item.is-active{color:var(--ink);font-weight:var(--fw-medium)}.bbj-segmented__item:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-segmented__badge{border-radius:var(--r-pill);background:var(--danger);min-width:16px;height:16px;color:var(--brand-ink);text-align:center;padding:0 4px;font-size:10px;line-height:16px}.bbj-tabs{align-items:center;gap:var(--sp-lg);border-bottom:1px solid var(--border);display:flex;position:relative;overflow-x:auto}.bbj-tabs.is-sticky{z-index:60;background:var(--surface);position:sticky;top:56px}.bbj-tabs__item{height:40px;color:var(--ink-3);font-size:var(--fs-meta);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;display:inline-flex;position:relative}.bbj-tabs__item.is-active{color:var(--brand);font-weight:var(--fw-medium)}.bbj-tabs__item:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-tabs__bar{background:var(--brand);border-radius:var(--r-pill);height:2px;transition:width var(--dur-base) var(--ease), transform var(--dur-base) var(--ease);position:absolute;bottom:0;left:0}.bbj-tabs__badge{border-radius:var(--r-pill);background:var(--danger);min-width:16px;height:16px;color:var(--brand-ink);text-align:center;padding:0 4px;font-size:10px;line-height:16px}.bbj-toast-host{z-index:190;flex-direction:column;gap:8px;max-width:360px;display:flex;position:fixed;top:72px;right:16px}.bbj-toast{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-popover);font-size:var(--fs-meta);color:var(--ink);animation:bbj-modal-in var(--dur-base) var(--ease);align-items:center;gap:8px;padding:12px 16px;display:flex}.bbj-toast--success .bbj-icon{color:var(--success)}.bbj-toast--error .bbj-icon{color:var(--danger)}.bbj-toast--info .bbj-icon{color:var(--brand)}.bbj-toast--warning .bbj-icon{color:var(--warn)}.bbj-toast__msg{flex:1;min-width:0}.bbj-toast__retry{color:var(--brand);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:none}.bbj-toast__close{color:var(--ink-3);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;padding:2px;display:inline-flex}.bbj-toast__close:hover{color:var(--ink)}.bbj-form__item{margin-bottom:var(--sp-sm);flex-direction:column;gap:8px;display:flex}.bbj-form__label{font-size:var(--fs-meta);color:var(--ink-2)}.bbj-form__star{color:var(--danger);margin-right:4px}.bbj-form__error{color:var(--danger);margin:0;font-size:13px}.bbj-input{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);height:40px;color:var(--ink);font-size:var(--fs-meta);padding:0 12px}.bbj-input:focus{border-color:var(--brand);box-shadow:var(--sh-focus);outline:none}.bbj-input.is-error{border-color:var(--danger)}.bbj-select{position:relative}.bbj-select__trigger{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);width:100%;height:40px;color:var(--ink);font-size:var(--fs-meta);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.bbj-select__trigger:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-select__label.is-placeholder{color:var(--ink-3)}.bbj-select__chev{transition:transform var(--dur-fast) var(--ease);color:var(--ink-3)}.bbj-select.is-open .bbj-select__chev{transform:rotate(180deg)}.bbj-select__dropdown{z-index:90;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-popover);padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0}.bbj-select__search{width:100%;margin-bottom:4px}.bbj-select__list{max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.bbj-select__empty{font-size:var(--fs-caption);color:var(--ink-3);text-align:center;padding:12px}.bbj-select__option{border-radius:var(--r-sm);width:100%;height:36px;color:var(--ink-2);font-size:var(--fs-meta);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0 8px;display:flex}.bbj-select__option.is-hover{background:var(--surface-2)}.bbj-select__option.is-selected{color:var(--brand);font-weight:var(--fw-medium)}.bbj-select__check{visibility:hidden;color:var(--brand);display:inline-flex}.bbj-select__check.is-on{visibility:visible}.bbj-daterange{align-items:center;gap:var(--sp-sm);flex-wrap:wrap;display:flex}.bbj-daterange__quick{background:var(--surface-2);border-radius:var(--r-pill);gap:4px;padding:3px;display:inline-flex}.bbj-daterange__chip{border-radius:var(--r-pill);height:28px;color:var(--ink-3);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:none;padding:0 12px}.bbj-daterange__chip.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--sh-card)}.bbj-daterange__custom{align-items:center;gap:8px;display:inline-flex}.bbj-daterange__sep{font-size:var(--fs-caption);color:var(--ink-3)}.bbj-statcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--sh-card);flex-direction:column;gap:8px;padding:20px;display:flex}.bbj-statcard.is-clickable{cursor:pointer}.bbj-statcard.is-clickable:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-statcard__label{font-size:var(--fs-meta);color:var(--ink-3)}.bbj-statcard__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.bbj-statcard__value{font-size:var(--fs-display);font-weight:var(--fw-semibold);color:var(--ink);line-height:1.2}.bbj-statcard__icon{color:var(--ink-3)}.bbj-statcard__delta{font-size:var(--fs-caption);align-items:center;gap:4px;display:inline-flex}.bbj-statcard__delta.is-up{color:var(--score-up)}.bbj-statcard__delta.is-down{color:var(--score-down)}.bbj-timeline__day{margin-bottom:var(--sp-sm)}.bbj-timeline__daylabel{font-size:var(--fs-caption);color:var(--ink-3);margin-bottom:8px;padding-left:20px}.bbj-timeline__item{gap:var(--sp-sm);padding-bottom:var(--sp-sm);display:flex;position:relative}.bbj-timeline__item:before{content:"";background:var(--border);width:1px;position:absolute;top:16px;bottom:0;left:5px}.bbj-timeline__item:last-child:before{display:none}.bbj-timeline__dot{z-index:1;border-radius:var(--r-pill);border:2px solid var(--brand);background:var(--surface);flex-shrink:0;width:11px;height:11px;margin-top:4px;position:relative}.bbj-timeline__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);flex:1;min-width:0;padding:12px 16px}.bbj-timeline__title{font-size:var(--fs-meta);color:var(--ink);margin:0}.bbj-timeline__content{font-size:var(--fs-caption);color:var(--ink-2);margin-top:4px}.bbj-progress{align-items:center;gap:8px;display:flex}.bbj-progress__label{font-size:var(--fs-caption);color:var(--ink-2);white-space:nowrap}.bbj-progress__track{border-radius:var(--r-pill);background:var(--surface-2);flex:1;height:6px;overflow:hidden}.bbj-progress__fill{border-radius:var(--r-pill);background:var(--brand);height:100%;transition:width var(--dur-base) var(--ease)}.bbj-progress__num{font-size:var(--fs-caption);color:var(--ink-2)}.bbj-progressring{justify-content:center;align-items:center;display:inline-flex;position:relative}.bbj-progressring__num{font-size:var(--fs-caption2);color:var(--ink-2);position:absolute}.bbj-avatar{border-radius:var(--r-pill);background:var(--surface-2);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.bbj-avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.bbj-avatar__fallback{font-size:var(--fs-caption);color:var(--ink-3)}.bbj-cmdpalette__group{margin-bottom:var(--sp-sm)}.bbj-cmdpalette__groupname{font-size:var(--fs-caption2);color:var(--ink-3);margin:0 0 4px;padding:0 8px}.bbj-cmdpalette__item{border-radius:var(--r-sm);width:100%;height:40px;color:var(--ink-2);font-size:var(--fs-meta);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:0 8px;display:flex}.bbj-cmdpalette__item.is-hover{background:var(--surface-2);color:var(--ink)}.bbj-cmdpalette__kbd{border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-caption2);color:var(--ink-3);padding:2px 6px}.bbj-chart{width:100%;min-width:0;position:relative}.bbj-chart__title{font-size:var(--fs-meta);font-weight:var(--fw-medium);color:var(--ink);margin:0 0 8px}.bbj-chart__download{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);height:28px;color:var(--ink-3);font-size:var(--fs-caption2);cursor:pointer;align-items:center;gap:4px;padding:0 8px;display:inline-flex;position:absolute;top:0;right:0}.bbj-chart__download:hover{color:var(--brand);border-color:var(--border-strong)}.bbj-fab{z-index:120;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.bbj-fab__main{border-radius:var(--r-pill);background:var(--brand);width:56px;height:56px;color:var(--brand-ink);box-shadow:var(--sh-popover);cursor:pointer;border:none;justify-content:center;align-items:center;display:inline-flex}.bbj-fab__main:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-fab__action{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);height:40px;color:var(--ink);font-size:var(--fs-caption);box-shadow:var(--sh-card);cursor:pointer;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.bbj-tooltip-host{display:inline-flex;position:relative}.bbj-tooltip{z-index:130;background:var(--ink);color:var(--bg);border-radius:var(--r-sm);box-shadow:var(--sh-popover);font-size:var(--fs-caption2);white-space:nowrap;pointer-events:none;padding:6px 10px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.bbj-popconfirm{display:inline-flex;position:relative}.bbj-popconfirm__panel{z-index:130;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-popover);font-size:var(--fs-caption);color:var(--ink-2);flex-direction:column;gap:8px;padding:12px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0}.bbj-popconfirm__text{max-width:200px}.bbj-popconfirm__actions{justify-content:flex-end;gap:8px;display:flex}.bbj-upload__zone{border:1.5px dashed var(--border-strong);border-radius:var(--r-card);background:var(--surface);color:var(--ink-3);font-size:var(--fs-meta);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px;display:flex}.bbj-upload__zone:focus-visible{box-shadow:var(--sh-focus);outline:none}.bbj-upload__zone.is-dragging{border-color:var(--brand);color:var(--brand);background:var(--brand-weak)}.bbj-upload__grid{gap:var(--sp-sm);margin-top:var(--sp-sm);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));display:grid}.bbj-upload__item{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex}.bbj-upload__item img{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-radius:var(--r-sm);width:100%}.bbj-upload__placeholder{aspect-ratio:1;background:var(--surface-2);border-radius:var(--r-sm);justify-content:center;align-items:center;width:100%;display:flex}.bbj-upload__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:var(--fs-caption2);color:var(--ink-3);overflow:hidden}.bbj-upload__retry{color:var(--danger);font-size:var(--fs-caption2);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;display:inline-flex}.tnum{font-variant-numeric:tabular-nums}.ellipsis-1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bbj-copyable{align-items:center;gap:4px;min-width:0;display:inline-flex}.bbj-copyable__btn{color:var(--ink-3);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;padding:4px;display:inline-flex}.bbj-copyable__btn:hover{color:var(--brand)}.bbj-copyable__btn .is-ok{color:var(--success)}.bbj-copyable__ok{font-size:var(--fs-caption2);color:var(--success)}.bbj-scoretext{font-weight:var(--fw-medium)}.bbj-scoretext.is-up{color:var(--score-up)}.bbj-scoretext.is-down{color:var(--score-down)}.bbj-scoretext.is-zero{color:var(--ink-3)}@media (max-width:767.98px){.bbj-drawer__panel--480,.bbj-drawer__panel--720{width:100%;max-width:100%;height:100%}.bbj-modal__panel{max-width:100%}.bbj-table tbody{display:block}.bbj-table thead{display:none}.bbj-table tbody tr{border-bottom:1px solid var(--border);flex-direction:column;padding:12px;display:flex}.bbj-table tbody td{white-space:normal;border:none;padding:2px 0}.bbj-table tbody td.is-first{box-shadow:none;font-weight:var(--fw-medium);position:static}.bbj-table__state{display:block}.bbj-toolbar__right{width:100%}.bbj-pagination__total,.bbj-pagination__jump,.bbj-pagination__size{display:none}.bbj-fab__main{width:48px;height:48px}.bbj-toast-host{max-width:none;left:16px}}
