/* Consultation-only UI layer. No shared service/admin layout changes. */
.consultation-page{--sub:#4c5e6b;--light-text:#526371;font-size:.9375rem;line-height:1.65;color:#202a33}
.consultation-page.ux-large-text{font-size:1.25rem}
.consultation-page:not(.ux-large-text) .intro-title{font-size:1.6em}
.consultation-page .app{max-width:40rem;min-width:0}
.consultation-page .top-header{position:sticky;left:auto;transform:none;max-width:none;flex-wrap:wrap;gap:.6rem;padding:.75rem 1rem;background:#fff}
.consultation-page .header-home-button{min-height:2.75rem;min-width:0;flex:1;gap:.6rem}
.consultation-page .header-logo{width:2.5rem;height:2.5rem;font-size:1.1em}
.consultation-page .header-brand-text strong{font-size:1em}.consultation-page .header-brand-text small{font-size:.875em;color:var(--sub)}
.consultation-page .main-header-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%}
.consultation-page .main-header-actions a{display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;min-height:3rem;padding:.5rem;font-size:.875em;line-height:1.45;border:1px solid #9bafbf;border-radius:.75rem;color:#183852;text-decoration:none}
.consultation-page .main-header-actions .header-label-short{display:none}.consultation-page .main-header-actions .header-label-wide{display:inline}
.consultation-page .ux-text-button{min-height:2.75rem;flex:none;border:1px solid #597184;background:#fff;color:#183852;border-radius:.65rem;padding:.4rem .65rem;font-size:.875em;font-weight:700}
.consultation-page .chat-main{padding:1.5rem 1rem 2rem!important;min-width:0}.consultation-page .intro-section{margin:0}
.consultation-page .ux-eyebrow{font-size:.9375em;font-weight:800;color:#183852;margin:0 0 .65rem}
.consultation-page .intro-title{font-size:1.875em;line-height:1.35;letter-spacing:-.035em}.consultation-page .intro-description{font-size:1em;color:var(--sub);line-height:1.7;margin-top:.8rem}
.consultation-page .chat-footer{margin-top:1.5rem}.consultation-page .first-input-guide{margin-bottom:.65rem}.consultation-page .first-input-guide strong{font-size:1em}.consultation-page .first-input-guide span{font-size:.875em;color:var(--sub)}
.consultation-page .chat-input-form{display:grid;grid-template-columns:minmax(0,1fr);gap:.65rem;padding:.75rem;border:2px solid #8198aa;border-radius:1rem}
.consultation-page .chat-input-form:focus-within{outline:3px solid #266f9c;outline-offset:3px}
.consultation-page .input-example{padding:.25rem .15rem;font-size:.875em;line-height:1.65;color:var(--sub)}
.consultation-page .chat-input{padding:.65rem .15rem;min-height:4rem;max-height:10rem;font-size:1.0625em;line-height:1.65;color:#202a33}.consultation-page .chat-input::placeholder{color:#526371;opacity:1}
.consultation-page .send-button{width:100%;height:auto;min-height:3rem;padding:.7rem 1rem;font-size:1em;background:#183852;color:#fff;border:1px solid #183852;align-self:auto}
.consultation-page .send-button:disabled{background:#dce4e9;color:#465b6a;border:1px dashed #718697;cursor:not-allowed}
.consultation-page .ux-input-hint,.consultation-page .ux-status{font-size:.875em;line-height:1.6;color:#4c5e6b;margin:.5rem .1rem}.consultation-page .ux-status:empty{display:none}
.consultation-page #consultationStatus{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.consultation-page.ux-busy .send-button{background:#183852;color:#fff;border:1px solid #183852}.consultation-page.ux-busy .send-button span{display:none}.consultation-page.ux-busy .send-button::after{content:'안내 준비 중…'}
.consultation-page .ux-error{background:#fff4ef;color:#6e2814;border:1px solid #ab6149;padding:.85rem;border-radius:.75rem;font-size:.9375em;margin:.5rem 0}.consultation-page .ux-error p{margin:0 0 .5rem}.consultation-page .ux-error button{padding:.6rem .75rem;min-height:2.75rem;border:1px solid #7a4938;border-radius:.5rem;background:#fff;color:#642b1a;margin:.2rem .5rem .2rem 0;font-size:1em}
.consultation-page .chat-notice{font-size:.875em;line-height:1.7;color:#4c5e6b}
.consultation-page .quick-section-title strong{font-size:1.125em}.consultation-page .quick-section-title span{font-size:.9375em;color:#4c5e6b}
.consultation-page .quick-question-list{gap:.75rem}.consultation-page .quick-question-button{min-height:4.5rem;padding:1rem;gap:.75rem;border-color:#9bafbf}.consultation-page .quick-question-text strong{font-size:1em}.consultation-page .quick-question-text small{font-size:.875em;line-height:1.6;color:#4c5e6b;margin-top:.3rem}.consultation-page .quick-arrow{font-size:1.4em}
.consultation-page .ux-examples{margin-top:1.75rem}.consultation-page .ux-examples h2{font-size:1.125em;margin:0}.consultation-page .ux-examples p{font-size:.875em;color:#4c5e6b;margin:.35rem 0 .6rem}.consultation-page .ux-examples>div{display:grid;gap:.5rem}.consultation-page .ux-examples button{min-height:2.75rem;text-align:left;padding:.75rem;border:1px solid #9bafbf;background:#fff;color:#183852;border-radius:.6rem;font-size:.9375em;line-height:1.6}
.consultation-page .ux-data-notice{margin:1.5rem 0;padding:1rem;border:1px solid #9bafbf;border-radius:.75rem;color:#334d60;font-size:.9375em;background:#f4f8fb}.consultation-page .ux-data-notice summary{cursor:pointer;font-weight:700;min-height:2.75rem;align-content:center}.consultation-page .ux-data-notice p{margin:.5rem 0}
.consultation-page .service-explore-heading strong{font-size:1.125em}.consultation-page .service-explore-heading span{font-size:.875em}.consultation-page .service-explore-card{min-height:9rem;padding:1rem}.consultation-page .service-explore-card strong{font-size:1em}.consultation-page .service-explore-card small,.consultation-page .service-explore-card b{font-size:.875em;line-height:1.6;color:#4c5e6b}.consultation-page .info-line{font-size:.9375em}
.consultation-page .ux-chat-tools{display:none}.consultation-page .app:has(#introSection.is-hidden) .ux-chat-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.consultation-page .ux-chat-tools>*{min-height:2.75rem;padding:.65rem;border:1px solid #9bafbf;border-radius:.6rem;background:#fff;color:#183852;font-size:.875em;text-decoration:none;line-height:1.5}
.consultation-page .app:has(#introSection.is-hidden) .ux-examples{display:none}
.consultation-page .app:has(#introSection.is-hidden) .ux-data-notice{display:none}
.consultation-page .app:has(#introSection.is-hidden) .chat-footer{max-width:40rem;bottom:var(--ux-keyboard-inset,0px);max-height:60dvh;overflow-y:auto;padding:.6rem 1rem calc(.65rem + env(safe-area-inset-bottom));gap:0}
.consultation-page .app:has(#introSection.is-hidden) .chat-footer .ux-chat-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin:0 0 .5rem;order:-1}
.consultation-page .chat-footer .ux-chat-tools button{min-width:0;padding:.5rem .25rem;word-break:keep-all;font-size:.8em}
.consultation-page .ux-chat-menu{position:relative;flex:none}
.consultation-page .ux-chat-menu>summary{display:flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.4rem .55rem;border:1px solid #597184;border-radius:.65rem;font-size:.8em;color:#183852;cursor:pointer;list-style:none}
.consultation-page .ux-chat-menu>summary::-webkit-details-marker{display:none}
.consultation-page .app:has(#introSection:not(.is-hidden)) .ux-chat-menu{display:none}
.consultation-page .app:has(#introSection.is-hidden) .ux-chat-menu .ux-chat-tools{display:none}
.consultation-page .app:has(#introSection.is-hidden) .ux-chat-menu[open] .ux-chat-tools{position:absolute;right:0;top:100%;display:grid;width:min(18rem,calc(100vw - 2rem));padding:.6rem;margin:.3rem 0 0;background:#fff;border:1px solid #8198aa;border-radius:.75rem;box-shadow:0 6px 20px #18385233;z-index:100}
.consultation-page .app:has(#introSection.is-hidden) .chat-footer .chat-service-shortcuts{display:flex;align-items:center;flex-wrap:nowrap;gap:.4rem;width:100%;margin:0 0 .5rem;padding:.35rem;overflow-x:auto;order:-1;border:1px solid #cad8e2;border-radius:.6rem;scrollbar-width:thin}
.consultation-page .chat-footer .chat-service-shortcuts>span{flex:none;font-size:.75em;white-space:nowrap}
.consultation-page .chat-footer .chat-service-shortcuts button{flex:none;min-height:2.75rem;padding:.35rem .55rem;font-size:.8em;white-space:nowrap}
.consultation-page .funeralhall-cta-row{display:none}
.consultation-page .app:has(#introSection.is-hidden) .site-business-footer{display:none}
.consultation-page .header-brand-text strong{font-size:.9375rem}.consultation-page .header-brand-text small{font-size:.75rem}
@media(max-width:600px){.consultation-page .chat-footer .chat-service-shortcuts>span{display:none}.consultation-page .chat-footer .chat-service-shortcuts button{flex:1 1 0;min-width:0;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;padding:.35rem .2rem}}
.consultation-page .app:has(#introSection:not(.is-hidden)) .chat-section{display:none}
.consultation-page .app:has(#introSection.is-hidden) .chat-input-form{display:flex;flex-wrap:wrap;align-items:end;padding:.45rem;gap:.4rem}
.consultation-page .app:has(#introSection.is-hidden) .chat-input-form .input-area{flex:1 1 10em;min-width:min(100%,10em)}
.consultation-page .app:has(#introSection.is-hidden) .chat-input{font-size:1em;min-height:3rem;padding:.4rem;max-height:7rem}
.consultation-page .app:has(#introSection.is-hidden) .send-button{flex:0 1 auto;max-width:100%;min-height:3rem;min-width:3.75rem;width:auto;height:auto;padding:.6rem;font-size:.9375em}
.consultation-page .app:has(#introSection.is-hidden) .chat-notice{font-size:.875em;line-height:1.55;margin:.2rem 0 .45rem;order:0}
.consultation-page .app:has(#introSection.is-hidden) .chat-main{padding-bottom:calc(var(--ux-composer-height,15rem) + 2rem)!important}
.consultation-page .app:has(#introSection.is-hidden) .chat-message-list{min-height:calc(100dvh - var(--ux-header-height,9rem) - var(--ux-composer-height,15rem) - 2rem);justify-content:flex-start}
.consultation-page .message-bubble{font-size:1em;line-height:1.85;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere}.consultation-page .message-content{min-width:0}.consultation-page .message-name{font-size:.875em;color:#4c5e6b}
.consultation-page .follow-question-button,.consultation-page .message-action-button,.consultation-page .chat-service-shortcuts button,.consultation-page .summary-button{min-height:2.75rem;font-size:.9375em;line-height:1.6;white-space:normal}
.consultation-page .ux-answer-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.65rem}.consultation-page .ux-answer-tools button{min-height:2.75rem;padding:.5rem .75rem;border:1px solid #9bafbf;border-radius:.5rem;background:#fff;color:#183852;font-size:.875em}
.consultation-page .ux-situation-dialog{width:min(36rem,calc(100% - 2rem));max-height:85dvh;overflow:auto;border:1px solid #8198aa;border-radius:1rem;padding:1.25rem;font:inherit;color:#202a33}.consultation-page .ux-situation-dialog::backdrop{background:#102a4077}.consultation-page .ux-situation-dialog h2{font-size:1.25em;margin-top:0}.consultation-page .ux-situation-dialog>button{display:block;width:100%;padding:.85rem;min-height:3rem;margin:.65rem 0;border:1px solid #9bafbf;border-radius:.7rem;background:#edf3f7;color:#183852;font:inherit}.consultation-page .ux-situation-dialog form button{width:100%;min-height:2.75rem;padding:.65rem;background:#fff;border:1px solid #9bafbf;border-radius:.6rem;font:inherit}
.consultation-page .partners-heading,.consultation-page .partners-group li{font-size:.9375em}.consultation-page .partners-heading button,.consultation-page .partner-dialog-heading button{min-height:2.75rem;min-width:2.75rem}.consultation-page .partner-dialog-heading h2{font-size:1.125em}.consultation-page .partner-dialog p,.consultation-page .partner-detail-grid li{font-size:.875em}
.consultation-page :is(button,a,textarea,summary,[tabindex]):focus-visible{outline:3px solid #1474b2;outline-offset:3px}.consultation-page .skip-link{position:absolute;left:.5rem;top:.5rem;padding:.75rem;background:#fff;color:#102a40;z-index:1000;transform:translateY(-200%)}.consultation-page .skip-link:focus{transform:none}
@media(max-width:360px){.consultation-page .top-header{padding:.65rem .75rem}.consultation-page .chat-main{padding-inline:.75rem!important}.consultation-page .intro-title{font-size:1.7em}.consultation-page .service-explore-grid{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.consultation-page,.consultation-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.consultation-page .info-line,.consultation-page .info-line span{color:#4c5e6b}
.consultation-page .site-business-footer,.consultation-page .site-business-footer :is(p,dt,dd,a){font-size:1em;line-height:1.8;color:#4c5e6b;overflow-wrap:anywhere}
.consultation-page .site-business-footer :is(a,button){display:inline-flex;min-height:2.75rem;align-items:center;font-size:.9375em}
.consultation-page .site-business-footer small{font-size:.875em;color:#4c5e6b}
.consultation-page :is(button,a,input,textarea,summary,[tabindex]){scroll-margin-top:calc(var(--ux-header-height,9rem) + 1rem)}
html:has(.consultation-page){scroll-padding-top:calc(var(--ux-header-height,9rem) + 1rem)}
.consultation-page :is(.speaker-label,.facility-chat-note,.ai-facility-card p,.ai-facility-choices small){font-size:.875em;line-height:1.65;color:#4c5e6b}
.consultation-page .facility-chat-content{font-size:1em;line-height:1.8}.consultation-page .facility-chat-content :is(button,a){min-height:2.75rem;font-size:.9375em}
