.contact-dock{position:fixed;right:12px;top:50%;transform:translateY(-50%);z-index:40}.contact-actions{display:flex;flex-direction:column;background:#fff;border:1px solid #e9dfca;border-radius:12px;box-shadow:0 6px 25px #65502b10;overflow:hidden}.contact-actions>a,.contact-actions>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:62px;min-height:65px;padding:10px 4px;background:none;border:0;border-bottom:1px solid #f0eade;font-size:10px;font-weight:500;color:#8b754d;text-decoration:none;cursor:pointer}.contact-actions>:last-child{border-bottom:0}.contact-actions>:hover{background:#faf3e2;color:#735620}.contact-actions>:focus-visible,.contact-mobile-toggle:focus-visible{outline:2px solid #ad8739;outline-offset:-3px}.contact-mobile-toggle{display:none}.has-contact-dock .page{padding-right:94px}
.contact-dialog{border:1px solid #e5dccb;border-radius:18px;padding:24px;width:350px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);color:#394047;background:#fff;box-shadow:0 20px 80px #27251f26;overflow:auto;overscroll-behavior:contain}.contact-dialog::backdrop{background:#2f30294d}.contact-dialog [hidden]{display:none!important}.contact-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.contact-dialog-head small{font-size:9px;letter-spacing:1.5px;color:#a78a53}.contact-dialog h2{font-size:20px;line-height:1.6;margin:7px 0 0;font-weight:500}.contact-dialog-head button{font-size:27px;font-weight:400;width:40px;height:40px;border-radius:50%;color:#968a75;background:#f8f5ee;flex-shrink:0}.contact-dialog section>p{font-size:12px;line-height:1.8;color:#948773;margin:0 0 12px}.contact-dialog img{display:block;width:100%;height:auto;max-width:280px;margin:0 auto;object-fit:contain}.contact-save{display:block;text-align:center;font-size:12px;color:#97732c;padding:10px;margin-top:6px}.contact-dialog section>small{display:block;font-size:11px;line-height:1.8;color:#a19480;text-align:center}.contact-number{display:block;font-size:26px;white-space:nowrap;font-weight:500;color:#8b6a28;margin:22px 0;font-variant-numeric:tabular-nums}.contact-phone-actions{display:flex;gap:12px}.contact-phone-actions>a,.contact-phone-actions>button{font-size:12px;padding:11px 17px;border-radius:6px;background:#f5ebd4;color:#84632b;border:1px solid #e3d4b2}.contact-mail{border-top:1px solid #ede6d9;padding-top:22px;margin:24px 0 12px}.contact-mail span{display:block;font-size:11px;color:#a89b84;margin-bottom:8px}.contact-mail a{font-size:13px;color:#817257;overflow-wrap:anywhere}#contact-status{min-height:20px;margin-top:15px}
@media(max-width:760px){.has-contact-dock .page{padding-right:20px;padding-bottom:90px}.contact-dock{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));right:12px;transform:none;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.contact-mobile-toggle{order:2;display:flex;align-items:center;gap:6px;border:1px solid #e4d5b4;border-radius:24px;background:#fffaf0;box-shadow:0 3px 14px #6a54251a;color:#8b6a2c;padding:12px;font-size:11px;min-height:44px}.contact-actions{display:none}.contact-dock.expanded .contact-actions{display:flex}.contact-actions>a,.contact-actions>button{width:64px;min-height:57px}.contact-dialog{padding:20px}.contact-number{font-size:24px}}
@media print{.contact-dock,.contact-dialog{display:none!important}.has-contact-dock .page{padding-right:0}}

.contact-relationship{font-size:12px;line-height:1.7;color:#716d64;border-top:1px solid #e8dfce;padding-top:12px;margin-top:16px}.contact-relationship a{color:inherit;text-decoration:underline}
