.dn-advertise-container{
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.dn-sort-placeholder{ background:#f1f5ff; border:1px dashed #90a4f6; height:68px; margin:6px 0 }
/* 모바일 앱 아이콘 형식 디자인 */
.dn-container{max-width:1200px;margin:0 auto;padding:20px}
.dn-page-title{font-size:24px;margin:0 0 20px;text-align:center;color:#333}

/* 홍보 텍스트 스타일 */
.promotional-text-block {
    margin: 20px 0;
    padding: 15px 20px;
    border-radius: 4px;
    text-align: center;
    font-size: 14px;
    line-height: 1.6;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

.promotional-text-block:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.promotional-text-block.square {
    border-radius: 4px;
}

.promotional-text-block.rounded {
    border-radius: 8px;
}

.promotional-text-block.pill {
    border-radius: 25px;
}

.promotional-text-content {
    margin: 0;
}
.dn-filters{margin:0 0 20px}
.dn-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px;justify-content:center}
.dn-tab{padding:8px 16px;border:1px solid #e0e0e0;border-radius:25px;text-decoration:none;color:#666;background:#fff;font-size:14px;transition:all 0.3s ease}
.dn-tab.active,.dn-tab:hover{background:#4a90e2;color:#fff;border-color:#4a90e2;transform:translateY(-1px)}
.dn-search{display:flex;gap:10px;justify-content:center;margin-bottom:20px}
.dn-search input[type="text"]{flex:1;max-width:300px;padding:10px 15px;border:1px solid #e0e0e0;border-radius:25px;font-size:14px}
.dn-search button{padding:10px 20px;border:none;background:#4a90e2;color:#fff;border-radius:25px;cursor:pointer;font-size:14px;transition:background 0.3s ease}
.dn-search button:hover{background:#357abd}

/* 업종별 아이콘 그리드 */
.dn-category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px;max-width:1000px;margin:0 auto}
.dn-category-featured-wrap{max-width:1000px;margin:0 auto 18px;padding:0;border-radius:0;background:transparent;border:none;box-shadow:none}
.dn-category-grid-featured{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px}
.dn-category-grid-regular{margin-top:18px}
.dn-category-divider{max-width:1000px;margin:16px auto 12px;height:1px;background:linear-gradient(90deg,rgba(0,0,0,0),#e5e7eb 30%,#e5e7eb 70%,rgba(0,0,0,0))}
.dn-grid-note{max-width:1000px;margin:0 auto 8px auto;font-size:12px;color:#334155;background:linear-gradient(0deg,#f8fafc,#ffffff);border:1px solid #e2e8f0;padding:8px 12px;border-radius:10px;text-align:center;box-shadow:0 1px 2px rgba(0,0,0,0.04);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:500}
.dn-grid-note::before{content:"\26A0\FE0F"; /* ⚠️ */ display:inline-block;font-size:14px;line-height:1}
@media (prefers-color-scheme: dark){
    .dn-grid-note{color:#cbd5e1;background:linear-gradient(0deg,#0b1220,#0f172a);border-color:#24314a;box-shadow:0 1px 2px rgba(0,0,0,0.5)}
}
.dn-category-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff;border:none;border-radius:18px;padding:22px 12px;text-decoration:none;color:#333;transition:all 0.3s ease;box-shadow:0 4px 14px rgba(15,23,42,0.08)}
.dn-category-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(15,23,42,0.15)}

/* 업종 아이콘 영역 */
.dn-category-icon{width:99px;height:99px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;background:transparent;font-size:39.6px;transition:transform 0.3s ease;flex-shrink:0}
.dn-category-card:hover .dn-category-icon{transform:scale(1.1)}

/* 이모지 색상 강제 보호 - 모든 테마 설정 무효화 */
.dn-category-icon,
.dn-category-icon *,
.dn-category-icon::before,
.dn-category-icon::after {
    -webkit-font-smoothing: auto !important;
    -moz-osx-font-smoothing: auto !important;
    text-rendering: auto !important;
    font-variant-emoji: emoji !important;
    font-feature-settings: "liga" 1, "kern" 1 !important;
    filter: none !important;
    opacity: 1 !important;
    color: inherit !important;
}

/* 이모지 전용 강제 스타일 */
.dn-category-icon {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Android Emoji", "EmojiSymbols", "EmojiOne Mozilla", "Twemoji Mozilla", "Segoe UI Symbol", sans-serif !important;
    font-variant-emoji: emoji !important;
    -webkit-font-feature-settings: "liga" 1, "kern" 1 !important;
    font-feature-settings: "liga" 1, "kern" 1 !important;
}

/* 최종 강제 이모지 색상 복원 */
.dn-category-icon,
.dn-category-icon *,
.dn-category-icon::before,
.dn-category-icon::after,
.dn-category-card .dn-category-icon,
.dn-category-card .dn-category-icon * {
    -webkit-font-smoothing: auto !important;
    -moz-osx-font-smoothing: auto !important;
    text-rendering: auto !important;
    font-variant-emoji: emoji !important;
    font-feature-settings: "liga" 1, "kern" 1 !important;
    filter: none !important;
    opacity: 1 !important;
    color: inherit !important;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Android Emoji", "EmojiSymbols", "EmojiOne Mozilla", "Twemoji Mozilla", "Segoe UI Symbol", sans-serif !important;
}

/* 모든 테마 스타일 무효화 */
body .dn-category-icon,
html .dn-category-icon,
* .dn-category-icon {
    -webkit-font-smoothing: auto !important;
    -moz-osx-font-smoothing: auto !important;
    text-rendering: auto !important;
    font-variant-emoji: emoji !important;
    filter: none !important;
    opacity: 1 !important;
    color: inherit !important;
}

/* 이모지 렌더링 일관성 강제 보장 - 등록된 이모지 유지 */
.dn-category-icon {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Android Emoji", "EmojiSymbols", "EmojiOne Mozilla", "Twemoji Mozilla", "Segoe UI Symbol", sans-serif !important;
    font-display: block !important;
    font-variant-emoji: emoji !important;
    -webkit-font-feature-settings: "liga" 1, "kern" 1 !important;
    font-feature-settings: "liga" 1, "kern" 1 !important;
    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: subpixel-antialiased !important;
    -moz-osx-font-smoothing: auto !important;
    /* 등록된 이모지 강제 유지 */
    font-variant-ligatures: normal !important;
    font-kerning: normal !important;
    font-optical-sizing: auto !important;
    font-synthesis: none !important;
    font-variation-settings: normal !important;
}

/* 이모지 텍스트 노드 직접 보호 */
.dn-category-icon * {
    font-family: inherit !important;
    font-variant-emoji: inherit !important;
    -webkit-font-smoothing: inherit !important;
    -moz-osx-font-smoothing: inherit !important;
    text-rendering: inherit !important;
}

/* 업종 카드 내용 */
.dn-category-body{text-align:center;width:100%;flex-shrink:0}
.dn-category-title{font-size:13px;margin:0 0 6px;font-weight:500;line-height:1.3;color:#333}
.dn-category-count{font-size:11px;color:#666;background:#f0f0f0;padding:2px 6px;border-radius:10px;display:inline-block}
/* 요청: 카테고리 카드 하단의 '00개 업체' 표시 숨김 */
.dn-category-count{display:none !important}

/* 브레드크럼 스타일 */
.dn-breadcrumb {
    margin: 20px 0;
    font-size: 14px;
    color: #666;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dn-breadcrumb a {
    color: #4a90e2;
    text-decoration: none;
    transition: color 0.3s ease;
}

.dn-breadcrumb a:hover {
    color: #357abd;
    text-decoration: underline;
}

.dn-breadcrumb span { margin: 0 4px; color: #999; }

.dn-breadcrumb .current {
    color: #333;
    font-weight: 500;
}

/* 체크박스 테두리 제거 */
.dn-consent-check input[type="checkbox"] {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

.dn-consent-check input[type="checkbox"]:focus {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

.dn-consent-check input[type="checkbox"]:checked {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* 모든 체크박스의 테두리 제거 */
input[type="checkbox"] {
    outline: none !important;
    box-shadow: none !important;
}

input[type="checkbox"]:focus {
    outline: none !important;
    box-shadow: none !important;
}

input[type="checkbox"]:checked {
    outline: none !important;
    box-shadow: none !important;
}

/* 뷰 토글 버튼 - 완전히 숨김 처리 */
.dn-view-toggle,
.dn-business-view-toggle,
.dn-view-toggle *,
.dn-business-view-toggle *,
.dn-view-btn,
.dn-view-card,
.dn-view-list,
.dn-view-btn *,
[class*="view-toggle"],
[class*="view-btn"]{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    height:0 !important;
    width:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    position:absolute !important;
    left:-9999px !important;
}


/* 업체 리스트 - 라인 형식 (지역분류 박스와 동일한 너비) */
.dn-business-list{
    max-width:1000px !important;
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    padding:0 !important;
    overflow:visible !important;
    position:relative !important;
    z-index:1 !important;
    background:transparent !important;
    box-sizing:border-box !important;
    clear:both !important;
    float:none !important;
}

/* form 밖으로 나간 업체 항목들을 강제로 form 안으로 이동 */
.dn-front-order-form {
    max-width:1000px !important;
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 !important;
    border:none !important;
    background:transparent !important;
}
.dn-business-item,
.dn-business-line-item{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    background:transparent !important;
    border:none !important;
    border-bottom:1px solid #e0e0e0 !important;
    border-radius:0 !important;
    padding:12px 15px !important;
    margin:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    margin-bottom:0 !important;
    box-shadow:none !important;
    transition:background-color 0.2s ease;
    flex-wrap:nowrap !important;
    position:relative !important;
    z-index:1 !important;
    overflow:visible !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    clear:both !important;
    float:none !important;
}
.dn-business-item:hover{
    box-shadow:none;
    transform:none;
    background-color:rgba(0, 0, 0, 0.02);
}
.dn-business-item:last-child{
    border-bottom:1px solid #e0e0e0;
}
/* 정렬 입력 필드가 레이아웃에 영향을 주지 않도록 */
.dn-order-input{
    position:absolute;
    right:15px;
    top:12px;
    z-index:10;
    float:none !important;
}
.dn-order-input input{
    width:70px !important;
}

/* 기존 카드 형식 스타일 제거됨 - 라인 형식으로 대체 */
.dn-business-image{display:none}
.dn-business-info{display:none}
.dn-business-actions{display:none}
.dn-business-name{display:none}
.dn-business-address{display:none}
.dn-business-phone{display:none}

/* 단일 페이지 스타일 */
.dn-single-header{display:block;margin-bottom:16px}
.dn-single-thumb{max-width:220px;margin:0 auto}
.dn-single-thumb img{width:100%;height:auto;border-radius:8px}
.dn-single-cats{font-size:13px;color:#6b7280;margin:0 0 6px}
.dn-single-cats .dn-crumb-root{color:#4a90e2;text-decoration:none}
.dn-single-cats .dn-crumb-root:hover{text-decoration:underline}
.dn-single-cats .dn-crumb-sep{color:#9ca3af;margin:0 6px}
.dn-company-name{font-size:18px;font-weight:600;color:#333;line-height:1.3}
.dn-single-info{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,0.05);margin:12px 0;width:100%;box-sizing:border-box}
.dn-single-content,.dn-single-map{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,0.05);margin:12px 0;width:100%;box-sizing:border-box}
.dn-single-info p{margin:.25rem 0;display:flex;align-items:center;gap:8px}
.dn-info-table{width:100%;border-collapse:separate;border-spacing:0 4px}
.dn-info-table th{width:auto;min-width:120px;text-align:left;color:#374151;font-weight:600;vertical-align:top;white-space:nowrap;padding-right:6px}
.dn-info-table th::after{content:" :";margin:0 6px 0 2px;color:#6b7280}
.dn-info-table td{color:#4b5563;padding-left:0;word-break:break-word;overflow-wrap:break-word;min-width:0}
.dn-icon{display:inline-flex;align-items:center;justify-content:center;color:#4a90e2;vertical-align:middle}
.dn-map-button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #e0e0e0;border-radius:16px;text-decoration:none;color:#333;background:#fff;transition:all .2s}
.dn-map-button:hover{border-color:#4a90e2;color:#4a90e2;background:#f5f9ff}
.dn-related h2{font-size:20px;margin:24px 0 12px}
.dn-pagination{margin:20px 0;text-align:center}
.dn-pagination .page-numbers{display:inline-block;padding:8px 12px;margin:0 4px;border:1px solid #e0e0e0;border-radius:8px;text-decoration:none;color:#666;transition:all 0.3s ease}
.dn-pagination .current{background:#4a90e2;color:#fff;border-color:#4a90e2}
.dn-pagination .page-numbers:hover{background:#f5f5f5}

/* 연락처 디렉토리 */
.dn-contacts{max-width:900px;margin:0 auto}
.dn-contacts-heading{font-size:22px;margin:24px 0 8px;padding:8px 12px;background:#f1f5f9;border-radius:8px}
.dn-contacts-list{list-style:none;margin:0;padding:0}
.dn-contact-item{padding:10px 12px;border-bottom:1px solid #eef2f7}
.dn-contact-name{font-weight:600}
.dn-contact-name-sub{color:#6b7280;font-size:12px}
.dn-contact-addr,.dn-contact-phone{color:#374151;font-size:14px}
.dn-empty{color:#6b7280}

/* 광고문의 페이지 스타일 */
.dn-advertise-container{max-width:800px;margin:0 auto;padding:20px}
.dn-advertise-title{font-size:28px;margin:0 0 30px;text-align:center;color:#333;font-weight:600}
.dn-advertise-intro{background:#f8f9fa;padding:20px;border-radius:10px;margin-bottom:30px;text-align:center}
.dn-advertise-intro h3{font-size:18px;margin:0 0 10px;color:#4a90e2}
.dn-advertise-intro p{font-size:14px;color:#666;margin:0;line-height:1.5}

.dn-contact-form{background:#fff;border:1px solid #e0e0e0;border-radius:10px;padding:30px;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.dn-form-group{margin-bottom:20px}
.dn-form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}
.dn-form-group input,.dn-form-group textarea,.dn-form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color 0.3s ease}
.dn-form-group input:focus,.dn-form-group textarea:focus,.dn-form-group select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px rgba(74,144,226,0.1)}
.dn-form-group textarea{min-height:120px;resize:vertical}
.dn-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.dn-submit-btn{background:#4a90e2;color:#fff;padding:12px 30px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background 0.3s ease;width:100%}
.dn-submit-btn:hover{background:#357abd}

.dn-contact-info{background:#f8f9fa;border-radius:10px;padding:20px;margin-top:30px}
.dn-contact-info h4{font-size:16px;margin:0 0 15px;color:#333}
.dn-contact-item{display:flex;align-items:center;margin-bottom:10px;font-size:14px}
.dn-contact-item strong{color:#4a90e2;margin-right:10px;min-width:60px}
.dn-contact-item span{color:#666}

/* 반응형 디자인 */
@media (max-width: 768px) {
    .dn-advertise-container{padding:15px}
    .dn-advertise-title{font-size:24px}
    .dn-contact-form{padding:20px}
    .dn-form-row{grid-template-columns:1fr;gap:0}
}

/* 반응형 디자인 */
@media (max-width: 768px) {
    .dn-container{padding-left:6px;padding-right:6px}
    .dn-category-featured-wrap{padding:18px 12px;border-radius:18px;margin:0 4px}
    .dn-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;max-width:100%}
    .dn-category-grid-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
    .dn-category-grid-regular{margin-top:18px;padding:0}
    .dn-category-card{padding:14px 8px;border-radius:16px}
    .dn-category-icon{width:90px;height:90px;font-size:34px;margin-bottom:6px}
    .dn-category-title{font-size:12px}
    .dn-category-count{font-size:10px}
    
    .dn-business-item,
    .dn-business-line-item{
        padding:10px 12px !important;
        overflow:visible !important;
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }
    .dn-business-line-thumbnail{
        width:56px;
        min-width:56px;
        aspect-ratio:1/1;
        height:auto;
        border-radius:12px;
        overflow:hidden;
    }
    .dn-business-line-name{
        font-size:15px;
    }
    .dn-business-line-phone{
        font-size:12px;
    }
    
    .dn-company-name{font-size:16px}
    .dn-single-thumb{max-width:180px}
}

