.bs-directory{
	max-width:420px;
	width:100%;
	font-family:inherit;
	box-sizing:border-box;
}
.bs-directory *{box-sizing:border-box;}

.bsd-title{
	margin:0 0 14px;
	font-size:18px;
	font-weight:800;
	display:flex;
	align-items:center;
	gap:6px;
}

.bsd-card{
	border:1px solid #ececec;
	border-radius:16px;
	overflow:hidden;
	background:#fff;
	box-shadow:0 4px 16px rgba(0,0,0,.06);
}

.bsd-form{padding:14px;background:#fbfdff;}
.bsd-row{margin-bottom:10px;}
.bsd-row:last-child{margin-bottom:0;}
.bsd-label{display:block;font-size:12px;font-weight:700;color:#444;margin-bottom:4px;}
.bsd-optional{font-weight:400;color:#999;}

.bsd-select, .bsd-input{
	width:100%;
	padding:9px 11px;
	border:1.5px solid #e4e4ee;
	border-radius:10px;
	font-size:13px;
	font-family:inherit;
	background:#fbfbfd;
	color:#222;
}
.bsd-select:focus, .bsd-input:focus{outline:none;border-color:var(--bsd-grad1,#0ea5e9);background:#fff;}

.bsd-submit-row{margin-top:12px;}
.bs-directory .bsd-search-btn{
	width:100%;
	padding:11px;
	border:none;
	border-radius:24px;
	background:linear-gradient(135deg,var(--bsd-grad1,#0ea5e9),var(--bsd-grad2,#22c55e));
	color:#fff;
	font-size:13.5px;
	font-weight:700;
	cursor:pointer;
	transition:opacity .15s ease, transform .1s ease;
}
.bs-directory .bsd-search-btn:hover{opacity:.92;}
.bs-directory .bsd-search-btn:disabled{opacity:.6;cursor:not-allowed;}

.bsd-status{
	padding:8px 14px;
	font-size:12px;
	color:#888;
	background:#fafafa;
	border-top:1px solid #eee;
	border-bottom:1px solid #eee;
	min-height:14px;
}

.bsd-results{
	list-style:none;
	margin:0;
	padding:6px;
	max-height:420px;
	overflow-y:auto;
}
.bsd-empty{padding:20px 12px;text-align:center;color:#999;font-size:13px;}

.bsd-item{
	display:flex;
	align-items:center;
	gap:10px;
	padding:9px 8px;
	border-radius:10px;
	transition:background .15s ease;
}
.bsd-item:hover{background:#f8fafc;}

.bsd-logo{
	flex:0 0 auto;
	width:38px;height:38px;
	border-radius:8px;
	background:#f1f1f5;
	display:flex;align-items:center;justify-content:center;
	overflow:hidden;
	font-size:16px;
}
.bsd-logo img{width:100%;height:100%;object-fit:cover;}

.bsd-info{flex:1 1 auto;min-width:0;}
.bsd-name{
	font-size:13px;font-weight:700;color:#22222e;
	white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.bsd-meta{font-size:11px;color:#8a8a9a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bsd-tags{font-size:10.5px;color:var(--bsd-grad1,#0ea5e9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}

.bs-directory .bsd-play-btn{
	flex:0 0 auto;
	width:34px;height:34px;
	border-radius:50%;
	border:none;
	background:linear-gradient(135deg,var(--bsd-grad1,#0ea5e9),var(--bsd-grad2,#22c55e));
	color:#fff;
	font-size:13px;
	display:flex;align-items:center;justify-content:center;
	cursor:pointer;
	padding:0;
	transition:transform .1s ease;
}
.bs-directory .bsd-play-btn:hover{transform:scale(1.06);}
.bs-directory .bsd-play-btn.bsd-playing{box-shadow:0 0 0 3px rgba(34,197,94,.25);}

.bsd-credit{
	margin:8px 2px 0;
	font-size:10.5px;
	color:#aaa;
	text-align:center;
}
.bsd-credit a{color:#aaa;text-decoration:underline;}
