body.life-business-detail-page{background:#f7f8fa;color:#111827}
.life-biz-header{border-bottom:1px solid #e5e7eb;background:#fff}
.life-biz-header__inner{max-width:1240px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between}
.life-biz-logo img{height:40px;width:auto;display:block}
.life-list-link{display:inline-flex;align-items:center;gap:8px;color:#374151;text-decoration:none;font-weight:700}
.life-biz-main{padding:24px 0 80px;background:#f7f8fa}
.life-biz-container{max-width:1120px;margin:0 auto;padding:0 24px}
.life-back-button{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;color:#6b7280;font-weight:600;margin-bottom:20px;cursor:pointer}

/* ── Gallery refactor ── */
.life-gallery{margin-bottom:28px}
.life-gallery__main{position:relative;width:100%;aspect-ratio:16/9;background:#f3f4f6;border-radius:20px;overflow:hidden;cursor:pointer}
.life-gallery__main img{width:100%;height:100%;object-fit:contain;display:block;background:#f3f4f6;transition:opacity .2s}
.life-gallery__counter{position:absolute;bottom:14px;right:16px;background:rgba(0,0,0,.55);color:#fff;font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px;pointer-events:none}
.life-gallery__thumbs-wrap{position:relative;margin-top:12px;display:flex;align-items:center;gap:6px}
.life-gallery__thumbs{display:flex;gap:8px;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 0}
.life-gallery__thumbs::-webkit-scrollbar{display:none}
.life-gallery__thumb{flex:0 0 88px;height:66px;border-radius:12px;overflow:hidden;border:2.5px solid transparent;cursor:pointer;transition:border-color .15s,opacity .15s;background:#f3f4f6}
.life-gallery__thumb.active{border-color:#0f3fb9}
.life-gallery__thumb:not(.active):hover{opacity:.8}
.life-gallery__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.life-gallery__arrow{flex:0 0 32px;width:32px;height:32px;border-radius:50%;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}
.life-gallery__arrow:hover{background:#f3f4f6}
.life-gallery__arrow:disabled{opacity:.3;cursor:default}
@media(max-width:980px){
  .life-gallery__main{border-radius:16px;aspect-ratio:4/3}
  .life-gallery__thumb{flex:0 0 72px;height:54px;border-radius:10px}
  .life-gallery__arrow{display:none}
}

.life-biz-info-card--stack{border:1px solid #e5e7eb;border-radius:24px;padding:28px 28px 24px;background:#fff;box-shadow:none}
.life-biz-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:12px}
.life-biz-card-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.life-icon-btn{width:52px;height:52px;border:1px solid #d1d5db;border-radius:9999px;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer}
.life-biz-badges,.life-biz-tags{display:flex;flex-wrap:wrap;gap:8px}
.life-biz-badge,.life-biz-tag{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:9999px;font-size:14px;font-weight:700}
.life-biz-badge.category{background:#eef4ff;color:#1d4ed8}.life-biz-badge.group{background:#ecfdf5;color:#16a34a}.life-biz-badge.feature{background:#fef3c7;color:#a16207}
.life-biz-badge.feature-premium{background:#F59E0B;color:#fff}
.life-biz-badge.feature-special{background:#8B5CF6;color:#fff}
.life-biz-badge.feature-general{background:#10B981;color:#fff}
.life-biz-tag{background:#f3f4f6;color:#4b5563;font-weight:600}
.life-biz-title{font-size:28px;line-height:1.25;letter-spacing:-.02em;font-weight:800;color:#111827;margin:14px 0 12px}
.life-biz-rating{display:flex;align-items:center;gap:6px;margin:0 0 10px}.life-biz-rating-stars{display:flex;gap:2px}.life-biz-rating-value{font-weight:800;color:#111827}.life-biz-rating-count{color:#6b7280}
.life-biz-tags{margin-bottom:16px}

.life-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}
.life-contact-item{position:relative;padding:18px 18px 18px 56px;border-radius:16px;background:#f8fafc;border:1px solid #eef2f7;min-height:88px}
.life-contact-item:before{content:"";position:absolute;left:18px;top:20px;width:24px;height:24px;background-size:24px 24px;background-repeat:no-repeat;background-position:center;opacity:.95}
.life-contact-item--icon-location:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%230f3fb9" stroke-width="2"><path d="M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 1 1 16 0Z"/><circle cx="12" cy="10" r="3"/></svg>')}
.life-contact-item--icon-phone:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%230f3fb9" stroke-width="2"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg>')}
.life-contact-item--icon-time:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%230f3fb9" stroke-width="2"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>')}
.life-contact-item--icon-parking:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%230f3fb9" stroke-width="2"><path d="M13 3H7a2 2 0 0 0-2 2v14"/><path d="M5 13h8a4 4 0 0 0 0-8H5"/></svg>')}
.life-contact-label{font-size:13px;color:#9ca3af;margin-bottom:8px}.life-contact-value{font-size:18px;font-weight:800;color:#111827;line-height:1.45}

.life-section-card{margin-top:20px;border:1px solid #e5e7eb;border-radius:24px;padding:24px 24px 20px;background:#fff}
.life-section-title{font-size:18px;line-height:1.3;font-weight:800;color:#111827;margin:0 0 18px}
.life-section-description{font-size:16px;line-height:1.8;color:#374151;white-space:pre-line}
.life-info-grid{display:grid;grid-template-columns:1fr;gap:0}.life-info-row{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #f1f5f9}.life-info-row:last-child{border-bottom:none}.life-info-row .k{color:#111827;font-weight:700}.life-info-row .v{color:#0f3fb9;font-weight:800;text-align:right}
.life-menu-list{display:grid;gap:12px}.life-menu-item{display:flex;justify-content:space-between;gap:12px;padding:16px 18px;border:1px solid #eef2f7;border-radius:14px;background:#f8fafc}.life-menu-name{font-size:16px;font-weight:700;color:#111827}.life-menu-price{font-size:18px;font-weight:800;color:#0f3fb9}
.life-reviews-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.life-write-review-btn{padding:0;border:none;background:transparent;color:#0f3fb9;font-weight:800;cursor:pointer}
.life-reviews-list{display:grid;gap:0}.life-review-item{padding:20px 0;border-bottom:1px solid #eef2f7;background:#fff}.life-review-item:last-child{border-bottom:none}.life-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}.life-review-user{display:flex;align-items:flex-start;gap:12px}.life-review-avatar{width:34px;height:34px;border-radius:9999px;background:#eef2ff;color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}.life-review-name{font-weight:800;color:#111827}.life-review-date{font-size:13px;color:#9ca3af}.life-review-rating{display:flex;gap:2px;margin-top:2px}.life-review-content{font-size:15px;line-height:1.75;color:#374151;white-space:pre-line}

.life-cta-section{display:flex;gap:14px;margin-top:24px}.life-cta-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 24px;border-radius:16px;text-decoration:none;font-size:16px;font-weight:800;border:1px solid transparent;cursor:pointer}.life-cta-outline{background:#fff;color:#111827;border-color:#d1d5db}.life-cta-primary{background:#0f3fb9;color:#fff}
.life-empty{padding:28px;border:1px dashed #d1d5db;border-radius:18px;background:#fafafa;color:#6b7280;text-align:center}
.life-review-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.5);display:none;align-items:center;justify-content:center;padding:16px;z-index:10050}.life-review-modal-overlay.active{display:flex}.life-review-modal{width:min(560px,calc(100vw - 32px));background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px rgba(15,23,42,.18)}
.life-review-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.life-review-close{border:none;background:transparent;font-size:22px;color:#9ca3af;cursor:pointer}.life-review-stars{display:flex;gap:8px;margin:8px 0 16px}.life-review-star{width:32px;height:32px;cursor:pointer;color:#e5e7eb}.life-review-star.on{color:#fbbf24}.life-review-textarea{width:100%;min-height:140px;border:1px solid #d1d5db;border-radius:16px;padding:14px 16px;font-size:15px;resize:vertical}.life-review-submit{margin-top:16px;width:100%;height:52px;border:none;border-radius:16px;background:#0f3fb9;color:#fff;font-weight:800;cursor:pointer}

@media (max-width: 980px){
  .life-contact-grid{grid-template-columns:1fr}
  .life-biz-card-head{flex-direction:column;align-items:flex-start}
  .life-biz-card-actions{align-self:flex-end}
  .life-cta-section{flex-direction:column}
}


/* header restore patch */
.life-biz-header{position:sticky;top:0;z-index:30;background:#fff}
.life-biz-header__right{display:flex;align-items:center;gap:12px}
.life-icon-btn{width:48px;height:48px;border:1px solid #d1d5db;border-radius:9999px;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#374151;cursor:pointer;flex:0 0 auto}
.life-list-link{display:inline-flex;align-items:center;gap:8px;color:#374151;text-decoration:none;font-weight:700;flex:0 0 auto}
.life-list-link svg{display:block}
.life-biz-header__inner{max-width:1240px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between}
.life-biz-logo img{height:40px;width:auto;display:block;max-width:none}
@media (max-width: 980px){
  .life-biz-header__inner{padding:14px 16px}
  .life-icon-btn{width:42px;height:42px}
  .life-list-link span{display:none}
}


.life-biz-header__left{display:flex;align-items:center;min-width:0;}
.life-biz-header__center{flex:1;display:flex;justify-content:center;min-width:0;padding:0 20px;}
.life-biz-breadcrumb{max-width:100%;font-size:13px;line-height:1.3;color:#7b8494;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;}
.life-biz-breadcrumb span{vertical-align:middle;}
.life-biz-breadcrumb .is-current{color:#394150;font-weight:700;}
.life-biz-breadcrumb-sep{display:inline-block;margin:0 6px;color:#b1b8c4;}

@media (max-width: 980px){
  .life-biz-header__center{display:none;}
}


/* v4 patch: text readability + mobile CTA stability */
.life-section-description{font-size:17px;line-height:1.9}
.life-contact-value{font-size:19px}
#dp-inquiry.life-cta-btn,
.life-cta-btn#dp-inquiry{background:#fee500;color:#191919;border-color:#f4d800}
#dp-inquiry.life-cta-btn:hover,
.life-cta-btn#dp-inquiry:hover{filter:brightness(.98)}
@media (max-width: 768px){
  .life-section-description{font-size:16px;line-height:1.8}
  .life-contact-grid{gap:10px}
  .life-contact-item{padding:16px 14px 16px 52px;border-radius:14px;min-height:76px}
  .life-contact-value{font-size:16px;line-height:1.5;word-break:keep-all}
  .life-cta-section{position:sticky;bottom:0;z-index:25;background:#fff;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));margin-top:18px}
  .life-cta-btn{min-height:52px;border-radius:14px;font-size:15px}
}


/* [HOTFIX 260321] 생활정보 상세 모바일 정보행 실구조 보정
   실제 대상: life-info-business-detail.css 의 .life-info-row / .k / .v
*/
@media (max-width: 768px){
  .life-info-row{
    display:block !important;
    padding:14px 0 !important;
    gap:0 !important;
  }
  .life-info-row .k{
    display:block !important;
    width:100% !important;
    margin:0 0 8px 0 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
    overflow-wrap:normal !important;
    line-height:1.5 !important;
  }
  .life-info-row .v{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    text-align:left !important;
    word-break:break-all !important;
    overflow-wrap:anywhere !important;
    line-height:1.6 !important;
  }
  .life-info-row .v a{
    display:inline-block !important;
    max-width:100% !important;
    word-break:break-all !important;
    overflow-wrap:anywhere !important;
    line-height:1.6 !important;
  }
}
