workly-categories { display:block; min-width:0; }
.category-trigger { width:100%; min-height:44px; padding:10px 12px; text-align:left; white-space:normal; border:1px solid #d9e2f0; border-radius:14px; background:#fff; color:#192334; font:inherit; cursor:pointer; }
.category-trigger:focus-visible, .category-option:focus-within { outline:3px solid #2563eb; outline-offset:2px; }
.category-dialog { box-sizing:border-box; width:min(540px, calc(100vw - 24px)); max-height:calc(100dvh - 24px); padding:16px; border:0; border-radius:20px; background:#fff; color:#192334; }
.category-dialog::backdrop { background:rgba(10,20,38,.55); }
.category-dialog[open] { display:flex; flex-direction:column; gap:10px; }
.category-dialog-head, .category-dialog-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; flex:none; }
.category-dialog h2 { margin:0; font-size:20px; }
.category-close { min-height:44px; padding:8px; border:0; background:none; color:#1d4ed8; font:inherit; cursor:pointer; }
.category-search, .category-group { box-sizing:border-box; width:100%; min-height:44px; padding:10px; border:1px solid #cbd5e1; border-radius:12px; background:#fff; color:#192334; font:inherit; flex:none; }
.category-count { margin:0; font-size:13px; color:#475569; }
.category-results { overflow:auto; min-height:80px; max-height:50dvh; overscroll-behavior:contain; }
.category-results h3 { margin:14px 0 6px; font-size:14px; color:#475569; }
.category-option { display:flex; gap:10px; align-items:center; min-height:44px; padding:8px; border-bottom:1px solid #edf1f7; cursor:pointer; }
.category-option input { width:18px; height:18px; flex:none; accent-color:#2563eb; }
.category-dialog-foot { padding-bottom:env(safe-area-inset-bottom, 0px); }
.category-dialog-foot button { flex:1; min-height:44px; }
@media (max-width:360px) { .category-dialog { padding:12px; } .category-dialog h2 { font-size:18px; } }
