/* search3.php 전용 스타일 */
.storeSearchPage{width:980px;padding:0;font-family:"Malgun Gothic","맑은 고딕",Arial,sans-serif;color:#222;}
.storeSearchPage *{box-sizing:border-box;}
.storeSearchContent{width:100%;}

.storeSearchPanel{
	clear: both;
    width: 980px;
    height: auto;
    margin: 0;
    padding: 16px 16px;
    border: 1px solid #e3e7ed;
    border-radius: 7px;
    background: #ffffff;
    box-sizing: border-box;
    box-shadow: 0 5px 16px rgba(15, 23, 42, 0.07);}
.storeSearchHeading{
	display: flex;
    align-items: center;
    height: 42px;
    margin: 0 0 13px 0;
	gap: 10px;}
.storeSearchHeading h2{
	margin: 0;
    padding: 0;
    color: #111827;
    font-size: 24px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.7px;
    white-space: nowrap;}
.storeSearchHeading p{
	margin-left: 0;
    color: #7a8492;
    font-size: 15px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: -0.7px;
    white-space: nowrap;}

.storeSearchTabs{display:flex;gap:6px;margin-bottom:16px;border-bottom:1px solid #e6e9ee;}
.storeSearchTab{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 18px;margin-bottom:-1px;border:1px solid transparent;border-bottom:0;border-radius:7px 7px 0 0;font-size:15px;font-weight:600;color:#67717e;text-decoration:none;background:#f5f7f9;}
.storeSearchTab:hover{color:#dd1032;}
.storeSearchTab.is-active{color:#fff;background:#dd1032;border-color:#dd1032;}

.storeSearchForm{margin:0;}
.storeSearchGrid{display:grid;gap:14px;align-items:end;}
.storeSearchGridTop{grid-template-columns:1fr 1fr 1fr;padding-bottom:13px;border-bottom:1px solid #edf0f3;}
.storeSearchGridBottom{grid-template-columns:170px 170px 1fr auto;padding-top:13px;}
.storeField{display:block;min-width:0;}
.storeField>span{display:block;margin:0 0 6px;font-size:15px;font-weight:700;color:#303640;}
.storeField input{width:100%;height:38px;padding:0 12px;border:1px solid #d7dde6;border-radius:7px;background:#fff;font-size:14px;color:#333;outline:none;transition:border-color .2s,box-shadow .2s;}
.storeField input::placeholder{color:#a1a9b5;}
.storeField input:focus{border-color:#dd1032;box-shadow:0 0 0 3px rgba(221,16,50,.08);}

.storeSearchNotice{min-height:40px;display:flex;flex-direction:column;justify-content:center;padding:0 4px;}
.storeSearchNotice strong{font-size:13px;color:#333;}
.storeSearchNotice span{margin-top:3px;font-size:13px;color:#8b929d;line-height:1.4;}
.storeSearchActions{display:flex;align-items:center;gap:8px;white-space:nowrap;}
.storeSearchBtn,.storeResetBtn{width: 107px;height: 40px;border-radius:7px;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;}
.storeSearchBtn{
	display: flex;
    align-items: center;
    justify-content: center;
    width: 107px;
    height: 40px;
    margin: 0 8px 0 0;
    padding: 0;
    border: 1px solid #dd1032;
    border-radius: 7px;
    background: #dd1032;
    color: #ffffff;
    font-family: "Malgun Gothic", "맑은 고딕", Dotum, 돋움, sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 40px;
    letter-spacing: -0.7px;
    cursor: pointer;
    box-sizing: border-box;
    box-shadow: 0 5px 12px rgba(221, 16, 50, 0.18);
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;}
.storeSearchBtn:hover{background:#c90e2c;border-color:#c90e2c;}
.storeSearchIcon{
	position: relative;
    display: block;
    width: 14px;
    height: 14px;
    margin-right: 9px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-sizing: border-box;}
.storeSearchIcon:after{
	content: "";
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 7px;
	height: 2px;
	border-radius: 2px;
	background: #ffffff;
	transform: rotate(45deg);}
.storeResetBtn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:82px;padding:0 13px;border:1px solid #d7dde6;background:#fff;color:#4e5866;}
.storeResetBtn:hover{border-color:#b9c0ca;background:#f7f8fa;}
.storeResetBtn span{font-size:17px;font-weight:400;}
.storeResultHeader{
	margin:18px 10px 25px 10px;}

.storeResultHeader > div{
	display:flex;
	align-items:center;
	gap:10px;}

.storeResultHeader h3{
	margin:0;
	font-size:13px;
	font-weight:700;
	color:#20242b;
	letter-spacing:-0.5px;}

	.storeResultHeader h3 strong{
	display: inline-flex;
    align-items: center;
    height: 27px;
    padding: 0 10px;
    border-radius: 7px;
    background: #fcecef;
    color: #dd1032;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.7px;
    white-space: nowrap;}

.storeResultHeader p{
	margin:0;
	font-size:13px;
	color:#7f8792;}

.storeResultHeader p strong{
	color:#dd1032;
	font-weight:700;}

.storeResultList{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px;
	padding-top:8px;
}
.storeCard{
	position:relative;
	min-height:255px;
	padding:26px 16px;
	border:1px solid #dfe4eb;
	border-radius:10px;
	background:#fff;
	box-sizing:border-box;
	transition:transform .2s ease, box-shadow .2s ease;
}
.storeCard:hover{
	transform:translateY(-2px);
	box-shadow:0 8px 22px rgba(0,0,0,.07);
}

/* 첫 번째 줄 */
.storeCardTop{
	display:flex;
	align-items:flex-start;
	gap:16px;
}

/* 로고 */
.storeLogoBox{
	flex:0 0 132px;
	width:132px;
	height:100px;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	border:1px solid #e4e8ee;
	border-radius:8px;
	background:#fff;
	box-sizing:border-box;
}
.storeLogoBox a{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
}
.storeLogoBox img{
	display:block;
	max-width:100%;
	max-height:100%;
	width:auto;
	height:auto;
	object-fit:contain;
}
.storeNoLogo{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	font-size:18px;
	font-weight:700;
	color:#a0a7b1;
	background:#f6f7f9;
}

/* 매장명과 메모 */
.storeMainInfo{
	flex:1;
	min-width:0;
}

.storeCardTitleRow{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:6px;
	margin:0 0 8px;
}
.storeCardTitleRow h4{
	display: block;
    min-width: 0;
    font-size: 24px;
    line-height: 1.2;
    color: #111827;
    font-weight: 600;
    letter-spacing: -.7px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.storeCardTitleRow h4 a{
	color:#191c22;
	text-decoration:none;
}
.storeCardTitleRow h4 a:hover{
	color:#dd1032;
}
.storeBadges{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:4px;
}
.storeBadge{display:inline-flex;align-items:center;height:28px;padding:10px 10px;border-radius:4px;font-size:15px;font-weight:700;line-height:1;}
.badgeSale{background:#fff1c9;color:#b87500;}
.badgeBest{background:#e9f8e7;color:#198f28;}
.badgePremium{background:#ffe8ed;color:#d41438;}
.badgeHit{background:#efe9ff;color:#6843c7;}
.storeMemo{
	margin:0;
	font-size:15px;
	line-height:1.4;
	letter-spacing: -.7px;
	color:#555e69;
	word-break:keep-all;
}

/* 두 번째 줄 */
.storeCardBottom{
	margin-top:14px;
}
/* 키워드 */
.storeKeywordTags{
	display:flex;
	flex-wrap:wrap;
	gap:6px;
	margin:0 0 13px;
}
.storeKeywordTags span{
	display: inline-flex;
    align-items: center;
    height: 27px;
    margin: 0 6px 6px 0;
    padding: 0 10px;
    border-radius: 7px;
    background: #eaf6f1;
    color: #2563eb;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.7px;
    white-space: nowrap;
}

/* 위치와 전화 */
.storeMeta{
	display:flex;
	flex-direction:column;
	gap:6px;
	padding-top: 12px;
	border-top: 1px dashed #e5e7eb;
}
.storeMeta p{
	display:flex;
	align-items:flex-start;
	margin:0;
	font-size:15px;
	line-height:1.4;
	letter-spacing: -.7px;
	color:#20242b;
	font-weight:700;
}
.storeMeta strong{
	flex:0 0 38px;
	color:#737d89;20242b
}
.storeMeta span{
	flex:1;
	min-width:0;
	word-break:keep-all;
}

.storeEmpty{grid-column:1/-1;padding:70px 20px;text-align:center;background:#fff;border:1px solid #e1e5ea;border-radius:7px;}
.storeEmpty strong{display:block;font-size:18px;color:#333;}
.storeEmpty p{margin:8px 0 0;font-size:15px;color:#8a929e; line-height: 1.4;letter-spacing: -.7px;}
.storePaging{grid-column:1/-1;margin:24px 0 30px;text-align:center;}

@media(max-width:1000px){
  .storeSearchPage{width:auto;margin:14px 12px 0;}
  .storeSearchGridBottom{grid-template-columns:1fr 1fr;}
  .storeSearchNotice{grid-column:1/2;}
  .storeSearchActions{grid-column:2/3;justify-content:flex-end;}
}
@media(max-width:760px){
  .storeSearchHeading{display:block;}
  .storeSearchHeading p{margin-top:6px;}
  .storeSearchGridTop,.storeSearchGridBottom{grid-template-columns:1fr;}
  .storeSearchNotice,.storeSearchActions{grid-column:auto;}
  .storeSearchActions{justify-content:stretch;}
  .storeSearchBtn,.storeResetBtn{flex:1;}
  .storeResultList{grid-template-columns:1fr;}
}
