@charset "utf-8";

.bottom-sheet {
	position: fixed;
	left: 0;
	bottom: -100%;
	width: 100%;
	background: #fff;
	border-top-left-radius: 16px;
	border-top-right-radius: 16px;
	box-shadow: 0 -8px 24px rgba(0, 0, 0, .15);
	transition: bottom .35s ease;
	z-index: 1001;
	padding: 20px;
	max-height: 80vh;
	display: flex;
	flex-direction: column;
}

.bottom-sheet.show {
	bottom: 0;
}

/* 헤더/바디 */

.sheet-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}

.sheet-title {
	font-size: 18px;
	font-weight: 700;
}

.sheet-body {
	overflow: auto;
}

/* 백드롭 */

.sheet-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .4);
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease;
	z-index: 1000;
}

.sheet-backdrop.show {
	opacity: 1;
	pointer-events: auto
}

/* 버튼 / 레이아웃 유틸 (Bootstrap 대체) */

.drop-btn {
	border: 1px solid #ddd;
	padding: 10px 16px;
	border-radius: 8px;
	cursor: pointer;
	background: #fff
}

.btn:active {
	transform: scale(.98)
}

.btn-primary {
	background: #0b5ed7;
	color: #fff;
	border-color: #0b5ed7
}

.btn-outline {
	background: #fff;
	color: #333;
	border-color: #ccc
}

.row {
	display: flex;
	gap: 8px
}

.flex-1 {
	flex: 1
}

*/
/* 설명/텍스트 유틸 */

.text-muted {
	color: #6b7280
}

.fw-semibold {
	font-weight: 600
}

/* 공급자 버튼 UI */

.idp-list {
	display: flex;
	flex-direction: column;
	gap: 8px
}

.idp-btn {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 12px 14px;
	display: flex;
	align-items: center;
	gap: 10px;
	background: #fff;
	transition: transform .08s ease
}

.idp-btn:active {
	transform: scale(.98)
}

.idp-btn.selected {
	border-color: #0b5ed7;
	background: #f3f7ff
}

.idp-logo {
	width: 28px;
	height: 28px;
	border-radius: 6px;
	background: #eee;
	display: inline-block
}