/* dB Live Sound: reusable category chooser, scoped to the shortcode. */
.db-hire-category-selector { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; width:100%; }
.db-hire-category-selector--columns-1 { grid-template-columns:minmax(0,1fr); }
.db-hire-category-selector--columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.db-hire-category-selector--columns-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.db-hire-category-selector--columns-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.db-hire-category-selector__card { display:flex;flex-direction:column;min-width:0; overflow:hidden; background:#F8F8F8; border:1px solid #E5E5E5; border-radius:8px; color:#202020; text-decoration:none!important; transition:border-color .15s ease, transform .15s ease; }
.db-hire-category-selector__card:hover, .db-hire-category-selector__card:focus-visible { border-color:#E00012; transform:translateY(-2px); }
.db-hire-category-selector__media { display:block; width:100%;aspect-ratio:16/10; overflow:hidden;background:#EEE; }
.db-hire-category-selector__image { display:block!important;width:100%!important;height:100%!important;object-fit:cover!important; }
.db-hire-category-selector__placeholder {display:block;width:100%;height:100%;background:linear-gradient(135deg,#eee,#ddd);}
.db-hire-category-selector__title {display:block;padding:14px 16px;color:#202020;font-size:16px;line-height:1.4;font-weight:600;}
.db-hire-category-selector__description {display:block;padding:0 16px 16px;color:#555;font-size:14px;line-height:1.55;}
@media(max-width:900px){.db-hire-category-selector--columns-3,.db-hire-category-selector--columns-4 {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.db-hire-category-selector {grid-template-columns:minmax(0,1fr)!important;gap:16px;}}
@media(prefers-reduced-motion:reduce){.db-hire-category-selector__card{transition:none;}}

/* Per-instance themes. Theme is applied to the selector, never to the surrounding page. */
.db-hire-category-selector--light .db-hire-category-selector__card { background:#F8F8F8; border-color:#E5E5E5; color:#202020; }
.db-hire-category-selector--light .db-hire-category-selector__media { background:#EEEEEE; }
.db-hire-category-selector--light .db-hire-category-selector__placeholder { background:linear-gradient(135deg,#EEEEEE,#DDDDDD); }
.db-hire-category-selector--light .db-hire-category-selector__title { color:#202020; }
.db-hire-category-selector--light .db-hire-category-selector__description { color:#555555; }
.db-hire-category-selector--dark .db-hire-category-selector__card { background:#202020; border-color:#414141; color:#FFFFFF; }
.db-hire-category-selector--dark .db-hire-category-selector__media { background:#303030; }
.db-hire-category-selector--dark .db-hire-category-selector__placeholder { background:linear-gradient(135deg,#333333,#242424); }
.db-hire-category-selector--dark .db-hire-category-selector__title { color:#FFFFFF; }
.db-hire-category-selector--dark .db-hire-category-selector__description { color:#CCCCCC; }
.db-hire-category-selector--light .db-hire-category-selector__card:hover,
.db-hire-category-selector--light .db-hire-category-selector__card:focus-visible,
.db-hire-category-selector--dark .db-hire-category-selector__card:hover,
.db-hire-category-selector--dark .db-hire-category-selector__card:focus-visible { border-color:#E00012; }
.db-hire-category-selector--dark .db-hire-category-selector__card:focus-visible,
.db-hire-category-selector--light .db-hire-category-selector__card:focus-visible { outline:2px solid #E00012; outline-offset:3px; }
