/* 보험사 업무와 보험·의료 조회가 공유하는 작은 상단 탐색. */
.insurance-services-workspace { box-sizing: border-box; width: 100%; min-width: 0; color: #303744; background: #fff; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; }
.insurance-services-workspace *, .insurance-workspace-promo * { box-sizing: border-box; }
.insurance-workspace-inner { width: 100%; max-width: 1200px; min-width: 0; margin: 0 auto; }
.insurance-workspace-row { display: flex; align-items: stretch; gap: 8px; min-width: 0; border-bottom: 1px solid #e4e7eb; }
.isd-navigation > .insurance-services-workspace { margin-bottom: 0; }
body.insurance-service-minimal.insu-link-app.visit-centers-page .insu-directory-shell .search-results-area { min-width: 0 !important; width: 100% !important; max-width: 100%; }
.insurance-workspace-nav { display: flex; flex: 1 1 auto; align-items: stretch; gap: 5px; min-width: 0; overflow-x: auto; scrollbar-width: thin; overscroll-behavior-x: contain; }
.insurance-services-workspace .insurance-workspace-link { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 6px; min-height: 44px; margin: 0; padding: 8px 10px; border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent; color: #6f7886; font-size: 13px; font-weight: 600; line-height: 1.5; text-decoration: none; white-space: nowrap; }
.insurance-services-workspace .insurance-workspace-link:hover { color: #272e38; background: #f8f9fb; }
.insurance-services-workspace .insurance-workspace-link[aria-current="page"] { border-bottom-color: #ffda30; color: #252c36; font-weight: 750; }
.insurance-services-workspace .insurance-workspace-link:focus-visible, .insurance-services-workspace .insurance-workspace-toggle:focus-visible { outline: 2px solid #4b5563; outline-offset: -3px; }
.insurance-workspace-toggle { display: none; flex: 0 0 50px; align-items: center; justify-content: center; gap: 4px; min-height: 44px; padding: 5px; border: 0; border-radius: 6px; background: #111; color: #fff; font-family: inherit; font-size: 12px; font-weight: 650; cursor: pointer; -webkit-appearance: none; appearance: none; }
.insurance-workspace-toggle[aria-expanded="true"] { background: #111; }
.insurance-workspace-all { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; min-width: 0; padding: 10px 0; border-bottom: 1px solid #e4e7eb; background: #fff; }
.insurance-workspace-all[hidden] { display: none !important; }
.insurance-services-workspace .insurance-workspace-link--all { min-width: 0; padding: 6px; border: 1px solid #e4e7eb; border-radius: 7px; background: #f8fafc; font-size: 12px; white-space: normal; text-align: center; }
.insurance-services-workspace .insurance-workspace-link--all[aria-current="page"] { border-color: #e0c12c; background: #fff9dd; }
.insurance-workspace-link--all i { color: #7c8797; font-size: 12px; }
/* PC에서는 모든 서비스의 탐색을 같은 70px 헤더 + 4px 간격에 맞춘다. */
@media (min-width: 1025px) {
    html:not([data-is-tablet-mode="mobile"]) .insurance-workspace-nav > .insurance-workspace-link { font-size: 14px; font-weight: 700; color: #4b5563; }
    html:not([data-is-tablet-mode="mobile"]) .insurance-workspace-nav > .insurance-workspace-link[aria-current="page"] { font-weight: 800; color: #252c36; }
    html:not([data-is-tablet-mode="mobile"]) body.insurance-service-minimal.insu-link-app #callcenterDirectory,
    html:not([data-is-tablet-mode="mobile"]) body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell.main-wrapper { padding-top: 4px !important; }
    html:not([data-is-tablet-mode="mobile"]) .medical-search-page .insurance-services-workspace--map { top: calc(var(--medical-workspace-nav-top, var(--header-height, 70px)) + 4px); }
}
html[data-is-tablet-mode="desktop"] .insurance-workspace-nav > .insurance-workspace-link { font-size: 14px; font-weight: 700; color: #4b5563; }
html[data-is-tablet-mode="desktop"] .insurance-workspace-nav > .insurance-workspace-link[aria-current="page"] { font-weight: 800; color: #252c36; }
html[data-is-tablet-mode="desktop"] body.insurance-service-minimal.insu-link-app #callcenterDirectory,
html[data-is-tablet-mode="desktop"] body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell.main-wrapper { padding-top: 4px !important; }
html[data-is-tablet-mode="desktop"] body.insurance-service-minimal.insu-link-app.insu-dashboard-page main.main-content { padding-top: 0 !important; }
html[data-is-tablet-mode="desktop"] .medical-search-page .insurance-services-workspace--map { top: calc(var(--medical-workspace-nav-top, var(--header-height, 70px)) + 4px); }
/* 보험사 카드 화면도 검색 화면과 같은 크기의 서비스 제목을 사용한다. */
body.insurance-service-minimal #callcenterDirectory .callcenter-intro,
body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell[data-insu-directory] .isd-intro { min-height: 0 !important; margin: 0 !important; padding: 14px 0 12px !important; gap: 10px !important; }
body.insurance-service-minimal #callcenterDirectory .callcenter-directory-back,
body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell[data-insu-directory] .isd-back-link { display: none !important; }
body.insurance-service-minimal #callcenterDirectory .callcenter-intro h1,
body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell[data-insu-directory] .isd-intro h1 { margin: 0 !important; font-size: 23px !important; line-height: 1.4 !important; letter-spacing: -.04em; }
body.insurance-service-minimal #callcenterDirectory .callcenter-support-illustration,
body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell[data-insu-directory] .isd-intro-illustration { flex: 0 0 54px !important; width: 54px !important; height: 54px !important; margin: 0 !important; object-fit: contain; }
.insurance-workspace-promo--wide .home-promo-banner__store { min-height: 44px; }
.insurance-workspace-promo { box-sizing: border-box; min-width: 0; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; }
.insurance-workspace-promo--wide { width: 100%; max-width: 1200px; margin: 28px auto 0; }
.insurance-workspace-promo--wide .home-promo-banner--compact { --home-promo-height: 144px; }
/* 업무·계산·검색 화면: 홈의 청구 배너와 프로모션을 같은 높이로 재사용한다. */
.insurance-workspace-promo--services {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 16px;
}
body.insu-link-app .insurance-workspace-promo--services { width: calc(100% - 48px); margin: 28px auto 56px !important; }
.insurance-workspace-promo--services .home-promo-banner { --home-promo-height: 180px; }
.insurance-workspace-promo--services > .home-claim-banner {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 180px;
    padding: 20px;
    border: 1px solid #e6dfd5;
    border-radius: 14px;
    background: #f6f2eb var(--home-claim-banner-image) right bottom / 100% auto no-repeat;
    color: #352d27;
    text-decoration: none;
}
.insurance-workspace-promo--services .ip-home-banner-button__copy { display: flex; flex: 0 1 64%; flex-direction: column; align-items: flex-start; gap: 8px; }
.insurance-workspace-promo--services .ip-home-banner-button__title { color: #352d27; font-size: 26px; font-weight: 750; line-height: 31px; letter-spacing: -.9px; }
.insurance-workspace-promo--services .ip-claim-banner__message { color: #51463b; font-size: 14px; font-weight: 700; line-height: 20px; letter-spacing: -.3px; }
.insurance-workspace-promo--services .ip-home-banner-button__description { color: #62574c; font-size: 11px; line-height: 16px; word-break: keep-all; }
.insurance-workspace-promo--services > .home-claim-banner:focus-visible { outline: 2px solid #4b5563; outline-offset: 3px; }
@media (max-width: 1000px) {
    .insurance-workspace-promo--services > .home-claim-banner { padding: 14px; }
    .insurance-workspace-promo--services .ip-home-banner-button__title { font-size: 22px; line-height: 27px; }
}
@media (max-width: 768px) {
    .insurance-workspace-promo--services { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    body.insu-link-app .insurance-workspace-promo--services { width: calc(100% - 28px); margin-bottom: 32px !important; }
    .insurance-workspace-promo--services > .home-claim-banner { min-height: 140px; }
    .insurance-workspace-promo--services .home-promo-banner { --home-promo-height: 180px; }
}
.insurance-workspace-promo--rail { width: 100%; margin: 18px 0 0; }
.insurance-workspace-promo--rail .home-claim-banner { display: block; width: 100%; min-height: 170px; padding: 18px 14px; border: 1px solid #e4e9f0; border-radius: 14px; background: #f5f8fc var(--home-claim-banner-image) right bottom / auto 132px no-repeat; color: #253246; text-decoration: none; }
.insurance-workspace-promo--rail .ip-home-banner-button__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; max-width: 75%; }
.insurance-workspace-promo--rail .ip-home-banner-button__title { color: #273344; font-size: 18px; line-height: 1.4; }
.insurance-workspace-promo--rail .ip-claim-banner__message { color: #4d5c70; font-size: 13px; line-height: 1.6; }
.insurance-workspace-promo--rail .ip-home-banner-button__description { color: #718095; font-size: 11px; line-height: 1.6; }
.insurance-workspace-promo--rail a:focus-visible { outline: 2px solid #4b5563; outline-offset: 3px; }
@media (max-width: 1024px) {
    html:not([data-is-tablet-mode="desktop"]) .isd-navigation > .insurance-services-workspace { margin-bottom: 0; }
    html:not([data-is-tablet-mode="desktop"]) .insurance-workspace-toggle { display: inline-flex; }
    html:not([data-is-tablet-mode="desktop"]) .insurance-workspace-nav { gap: 1px; scrollbar-width: none; }
    html:not([data-is-tablet-mode="desktop"]) .insurance-workspace-nav::-webkit-scrollbar { display: none; }
    html:not([data-is-tablet-mode="desktop"]) .insurance-services-workspace .insurance-workspace-link { padding-inline: 10px; font-size: 12px; }
    html:not([data-is-tablet-mode="desktop"]) .insurance-workspace-promo--rail { display: none; }
    html:not([data-is-tablet-mode="desktop"]) body.insurance-service-minimal #callcenterDirectory .callcenter-intro h1,
    html:not([data-is-tablet-mode="desktop"]) body.insurance-service-minimal.insu-link-app.insu-dashboard-page .insu-directory-shell[data-insu-directory] .isd-intro h1 { font-size: 22px !important; }
}
html[data-is-tablet-mode="mobile"] .insurance-workspace-toggle { display: inline-flex; }
html[data-is-tablet-mode="mobile"] .insurance-workspace-nav { gap: 1px; scrollbar-width: none; }
html[data-is-tablet-mode="mobile"] .insurance-workspace-nav::-webkit-scrollbar { display: none; }
html[data-is-tablet-mode="mobile"] .insurance-services-workspace .insurance-workspace-link { padding-inline: 10px; font-size: 12px; }
html[data-is-tablet-mode="mobile"] .insurance-workspace-promo--rail { display: none; }
@media (max-width: 600px) {
    .insurance-workspace-promo--wide .home-promo-banner--compact { --home-promo-height: 200px; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__copy { width: 82%; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__title { font-size: 19px; line-height: 1.4; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__description { font-size: 12px; line-height: 1.6; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__notice { font-size: 11px; line-height: 1.6; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__legal { padding: 8px 12px; }
    .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__insurers, .insurance-workspace-promo--wide .home-promo-banner--compact .home-promo-banner__review { font-size: 10px; line-height: 1.6; }
}
@media print { .insurance-services-workspace, .insurance-workspace-promo { display: none !important; } }
@media (forced-colors: active) {
    .insurance-services-workspace .insurance-workspace-link[aria-current="page"] { border-bottom-color: Highlight; }
    .insurance-services-workspace .insurance-workspace-link--all[aria-current="page"] { border-color: Highlight; }
}
