.c4bb{--c4bb-yellow:#4c78a8;--c4bb-red:#d1495b;--c4bb-legal:#7fbf7b;--c4bb-threat:#edae49;--c4bb-guard:#b0b0b0;--c4bb-empty:rgba(128,128,128,0.18);border:1px solid var(--global-divider-color,rgba(128,128,128,0.35));border-radius:8px;padding:1rem;margin:1.5rem 0;background-color:var(--global-card-bg-color,transparent)}.c4bb-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.85rem}.c4bb-controls button{font-size:.85rem;padding:.25rem .7rem;border-radius:5px;border:1px solid var(--global-divider-color,rgba(128,128,128,0.4));background:transparent;color:var(--global-text-color);cursor:pointer}.c4bb-controls button:hover{border-color:var(--global-theme-color);color:var(--global-theme-color)}.c4bb-hint{font-size:.8rem;color:var(--global-text-color-light)}.c4bb-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;max-width:30rem}.c4bb-cell{aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;font-family:var(--bs-font-monospace,monospace);font-size:.72rem;border:0;border-radius:3px;background:var(--c4bb-empty);color:var(--global-text-color-light);cursor:pointer;padding:0;transition:background-color .15s ease,transform .1s ease}.c4bb-cell:not(:disabled):hover{transform:scale(1.06)}.c4bb-cell:disabled{cursor:default}.c4bb-guard{background:var(--c4bb-guard);color:#333;opacity:.55}.c4bb-yellow{background:var(--c4bb-yellow);color:#fff}.c4bb-red{background:var(--c4bb-red);color:#fff}.c4bb-legal{background:var(--c4bb-legal);color:#10321a}.c4bb-threat{background:var(--c4bb-threat);color:#3a2a00}.c4bb-legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:.85rem 0 .5rem;font-size:.78rem;color:var(--global-text-color-light)}.c4bb-sw{display:inline-block;width:.75rem;height:.75rem;border-radius:2px;margin-right:.3rem;vertical-align:-1px}.c4bb-sw.c4bb-yellow{background:var(--c4bb-yellow)}.c4bb-sw.c4bb-red{background:var(--c4bb-red)}.c4bb-sw.c4bb-legal{background:var(--c4bb-legal)}.c4bb-sw.c4bb-threat{background:var(--c4bb-threat)}.c4bb-sw.c4bb-guard{background:var(--c4bb-guard)}.c4bb-readout{display:grid;grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:.75rem 0 0;font-size:.8rem;overflow-x:auto}.c4bb-readout dt{font-family:var(--bs-font-monospace,monospace);font-weight:normal;color:var(--global-text-color-light);white-space:nowrap}.c4bb-readout dd{margin:0}.c4bb-readout code{font-size:.78rem;background:0;padding:0;color:var(--global-text-color)}.c4bb-bin{font-size:.68rem!important;color:var(--global-text-color-light)!important;letter-spacing:.02em}.c4bb-win{color:var(--global-theme-color)}@media(max-width:576px){.c4bb-cell{font-size:.6rem}.c4bb-readout{grid-template-columns:1fr;gap:.1rem}.c4bb-readout dt{margin-top:.4rem}}.c4bb-toggles{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.8rem;margin:.6rem 0 .2rem;color:var(--global-text-color-light)}.c4bb-toggles label{cursor:pointer;margin:0;font-weight:normal}.c4bb-toggles input{margin-right:.3rem;vertical-align:-1px}.c4bb-oddrow{outline:2px dashed rgba(237,174,73,0.9);outline-offset:-3px}.c4bb-oppthreat{background:var(--c4bb-red)!important;color:#fff!important;opacity:.45}.c4bb-table{width:100%;margin:.9rem 0 0;font-size:.8rem;border-collapse:collapse}.c4bb-table th,.c4bb-table td{padding:.25rem .5rem;border-bottom:1px solid var(--global-divider-color,rgba(128,128,128,0.25));text-align:left}.c4bb-table th{font-weight:600;color:var(--global-text-color-light);white-space:nowrap}.c4bb-table td.c4bb-num{font-family:var(--bs-font-monospace,monospace);text-align:right}.c4bb-table tr.c4bb-dropped{opacity:.45}.c4bb-table tr.c4bb-best td{font-weight:600}.c4bb-tag{display:inline-block;font-size:.7rem;padding:.05rem .4rem;border-radius:3px;margin-right:.25rem;white-space:nowrap}.c4bb-tag-lose{background:rgba(209,73,91,0.18);color:var(--c4bb-red)}.c4bb-tag-forced{background:rgba(237,174,73,0.22);color:#9a6b00}.c4bb-tag-win{background:rgba(127,191,123,0.25);color:#1f6b2c}.c4bb-bitstream{font-family:var(--bs-font-monospace,monospace);font-size:.82rem;line-height:1.9;word-break:break-all;margin:.85rem 0 .4rem;min-height:2.6rem}.c4bb-bit{padding:.08rem .22rem;border-radius:3px;margin-right:2px}.c4bb-bit-now{outline:2px solid var(--global-theme-color);outline-offset:1px}.c4bb-current{outline:5px solid #000;outline-offset:-5px}.c4bb-flip{background:var(--c4bb-threat);color:#3a2a00;border-radius:2px}.c4bb-slots{display:grid;grid-template-columns:repeat(32,1fr);gap:2px;max-width:30rem;margin:.9rem 0 .4rem}.c4bb-slot{display:block;aspect-ratio:1 / 1;border-radius:2px;background:var(--c4bb-empty)}.c4bb-slot-used,.c4bb-sw.c4bb-slot-used{background:var(--c4bb-yellow)}.c4bb-slot-coll,.c4bb-sw.c4bb-slot-coll{background:var(--c4bb-red)}.c4bb-slot-here{outline:2px solid var(--global-theme-color);outline-offset:1px}.c4bb-sw.c4bb-slot-here{background:var(--c4bb-empty);outline:2px solid var(--global-theme-color);outline-offset:-2px}.c4bb-hashmsg{min-height:1.4rem;font-size:.85rem;margin:.5rem 0 0}[data-c4-search] .c4bb-cell{cursor:default}[data-c4-search] .c4bb-cell:hover{transform:none}[data-c4-search] select{font-size:.85rem;padding:.15rem .3rem;border-radius:5px;border:1px solid var(--global-divider-color,rgba(128,128,128,0.4));background:transparent;color:var(--global-text-color)}.c4bb-verdict{font-size:.9rem;margin:.9rem 0 0}.c4bb-probe-title{font-size:.85rem;margin:1rem 0 .3rem;color:var(--global-text-color-light)}.c4bb-probe{display:grid;grid-template-columns:minmax(11rem,max-content) 1fr max-content;gap:.75rem;align-items:center;font-size:.78rem;margin:.15rem 0}.c4bb-probe-label{font-family:var(--bs-font-monospace,monospace);white-space:nowrap}.c4bb-probe-track{position:relative;height:.9rem;border-radius:3px;background:var(--c4bb-empty);overflow:hidden}.c4bb-probe-window{position:absolute;top:0;bottom:0;background:var(--c4bb-legal);opacity:.75}.c4bb-probe-mark{position:absolute;top:0;bottom:0;width:2px;background:var(--global-theme-color)}.c4bb-probe-nodes{font-family:var(--bs-font-monospace,monospace);color:var(--global-text-color-light);white-space:nowrap}@media(max-width:576px){.c4bb-probe{grid-template-columns:1fr max-content}.c4bb-probe-label{grid-column:1 / -1}}