/* ========= 순수 CSS + 1줄 강제 + 다크바 최적화 ========= */

/* wrapper: 바깥에서 max-width/정렬을 컨트롤 */
.ol1-wrap {width:100%; box-sizing:border-box;}
.ol1-box {width:100%; box-sizing:border-box;}

/* 핵심: 절대 줄바꿈 금지 + 1줄 고정 */
.ol1-row {width:100%; display:flex; align-items:center; gap:8px; padding:10px 0; box-sizing:border-box; flex-wrap:nowrap; /* 줄바꿈 금지 */ white-space:nowrap; /* 텍스트 줄바꿈 금지 */ overflow:hidden; /* 넘치면 숨김 */ /* 다크바 대응 */ background: transparent; /* 검정바와 합쳐짐 */ border: none; border-radius: 0; color:#f3f4f6;}

/* 입력은 줄바꿈 없이 유동폭 (한 줄 유지 핵심) */
.ol1-inp {width:auto !important; min-width:0; flex:1 1 0; /* 좁아지면 자동 축소 */ max-width:240px; width: 120px; height:38px !important; padding:5px 10px 10px !important; box-sizing:border-box; outline:none; /* 다크바 */ background:#111827; border:1px solid #374151; color:#f9fafb; border-radius:8px !important; font-size:16px !important;}

.ol1-inp::placeholder {color:#9ca3af;}
.ol1-inp:focus {background:#020617; border-color:#e5e7eb;}

/* 공통 버튼 */
.ol1-btn {flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; width: 120px; height:38px; padding:0 12px; box-sizing:border-box; border-radius:8px; font-size:16px; text-decoration:none; cursor:pointer; /* 다크바 */ background:transparent; border:1px solid #4b5563; color:#e5e7eb;}
.ol1-btn:hover {background:#111827; border-color:#9ca3af; color:#fff;}

/* 메인 버튼 (로그인 / 회원가입 / ID·PW 찾기 전부 동일) */
.ol1-btn-primary {background:#fff; border:1px solid #fff; color:#000; font-weight:600;}
.ol1-btn-primary:hover {background:#e5e7eb; border-color:#e5e7eb; color:#000;}

/* 버튼 그룹 */
.ol1-sub-actions {flex:0 0 auto; display:flex; gap:6px; align-items:center;}

/* 모바일: 1줄 유지 */
@media (max-width: 640px) {
	.ol1-sub-actions {display:none;}
}

/* 메인 버튼 (로그인/로그아웃) */
.ol1-btn-primary {background:#fff; border-color:#fff; color:#000; font-weight:600;}
.ol1-btn-primary:hover {background:#e5e7eb; border-color:#e5e7eb; color:#000;}

/* 링크 영역(PC만) */
.ol1-links {flex:0 0 auto; font-size:12px; color:#9ca3af;}
.ol1-links a {color:#9ca3af; text-decoration:none;}
.ol1-links a:hover {color:#fff; text-decoration:underline;}
.ol1-dot {padding:0 4px; color:#6b7280;}

/* 로그인 후 텍스트 */
.ol1-membertext {flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.ol1-nick {font-weight:700; font-size:16px; color:#fff;}
.ol1-meta {font-size:12px; color:#9ca3af; margin-left:8px;}
.ol1-sep {padding:0 6px; color:#475569;}

.ol1-actions {flex:0 0 auto; display:flex; gap:8px; align-items:center;}

/* 접근성 */
.ol1-sr {position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}

@media (max-width: 767px){
	.ol1-row {padding: 6px 0;}
	.ol1-inp {padding: 6px 10px 8px !important;}
	.ol1-sub-actions.mo_none {display: none;}
	.ol1-row-member {padding: 12px 0;}
}

/* 모바일: 1줄 유지 위해 불필요 텍스트 제거 */
@media (max-width: 640px){
	.ol1-links {display:none;}
	.ol1-meta {display:none;}
	.ol1-inp {max-width: 100px;} /* 더 유연 */
}

/* 모바일: 1줄 유지가 최우선 → 서브 버튼 제거 */
@media (max-width: 640px){
	.ol1-sub-actions {display:none;}
}

/* 로그인 전/후 공통 1줄 고정(이미 있으면 유지) */
.ol1-row {width:100%; display:flex; align-items:center; flex-wrap:nowrap; white-space:nowrap; overflow:hidden;}

/* 왼쪽 텍스트는 남은 폭을 먹고, 말줄임 */
.ol1-membertext {flex:1 1 auto; min-width:0; /* ★ 이게 없으면 말줄임이 안되고 폭이 깨짐 */ overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* 오른쪽 버튼은 줄어들지 않게 */
.ol1-actions {flex:0 0 auto; display:flex; gap:6px; align-items:center;}

/* 로그인 후 텍스트 스타일 */
.ol1-user {color:#fff; font-size: 16px;}
.ol1-ico {margin-right:6px; opacity:.9;}
.ol1-id {color:#fff; font-weight:600; font-size: 16px;}
.ol1-nick {color:#cbd5e1; margin-left:4px;}
.ol1-sir {color:#cbd5e1; margin-left: 0;}

/* 뱃지(검정바에서 잘 보이게) */
.ol1-badge {margin-left:8px; font-size:16px; font-weight:400; color:#b7ff4a; /* 기존 색 유지 */}

/* 로그인 후: 회원정보 영역은 필요한 만큼만(버튼이 바로 옆에 붙도록) */
.ol1-membertext-compact {flex:0 0 auto;  /* 기존 flex:1 제거 */ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* 버튼은 회원정보 바로 옆, 간격만 살짝 */
.ol1-actions-near {flex:0 0 auto; margin: 2px 10px; /* "약간 간격" */ gap:10px;}

/* 오른쪽 남는 공간 확보 */
.ol1-spacer {flex:1 1 auto; min-width:0;}

/* 모바일에서는 뱃지 숨기고(1줄 유지), 버튼은 그대로 */
/*
@media (max-width: 640px){
	.ol1-badge {display:none;}
}
*/
@media (max-width: 767px) {
	.ins_visual_black_bar {height: 50px !important;}
	.mo_none {display: none !important;}
	.ol1-box {text-align: center;}
	.ol1-row {display: inline-block;}
}
@media (max-width: 575px) {
	.ol1-inp {font-size:15px;}	
	.ol1-user {font-size: 15px; letter-spacing: -1.5px;}
	.ol1-id {font-size: 15px;}	
	.ol1-badge {font-size:15px; letter-spacing: -1.5px;}
	.ol1-btn {font-size:15px; width: 80px;}	
	.ol1-actions-near {margin: 0 3px;}
}

