.dynamic-column-filter{display:inline-block;font-weight:normal;vertical-align:middle;margin-left:4px}
.dynamic-column-filter summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;border:1px solid #ccd8d0;border-radius:4px;color:#28543e}
.dynamic-column-filter summary::-webkit-details-marker{display:none}
.dynamic-column-filter summary.is-filtered{background:#28543e;color:white}
.dynamic-column-panel{position:fixed;width:min(310px,calc(100vw - 24px));box-sizing:border-box;background:white;border:1px solid #ccd8d0;border-radius:8px;padding:12px;box-shadow:0 5px 15px #0002;z-index:120;max-height:calc(100vh - 24px);overflow:auto;text-transform:none;letter-spacing:normal;font-size:14px;white-space:normal;text-align:left}
.dynamic-column-panel strong{display:block;margin-bottom:8px}
.dynamic-column-panel input[type=search]{width:100%;min-width:0;margin-bottom:6px}
.dynamic-column-values{max-height:min(260px,45vh);overflow:auto;margin:8px 0}
.dynamic-column-values label{display:flex;align-items:center;gap:7px;padding:5px;overflow-wrap:anywhere}
.dynamic-column-values input{width:auto;flex:none}.dynamic-column-values label[hidden]{display:none}
.dynamic-column-actions{display:flex;flex-wrap:wrap;gap:6px}
.dynamic-column-clear{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin:8px 0;font-size:13px}
.dynamic-column-clear button{font-size:13px;padding:6px 10px}
@media print{.dynamic-column-filter,.dynamic-column-clear{display:none!important}}
