.course-contact{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:40;margin:0;color:#211d35;font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC",sans-serif}
.course-contact>summary{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:13px 21px;border:1px solid #694ee7;border-radius:999px;background:#5135c5;color:#fff;box-shadow:0 8px 26px #34217724;font-size:15px;font-weight:650;line-height:1.4;cursor:pointer;list-style:none;user-select:none}
.course-contact>summary::-webkit-details-marker{display:none}
.course-contact>summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
.course-contact>summary:hover{background:#4327b0}
.course-contact .contact-toggle-mark{font-size:21px;font-weight:400;line-height:1;transition:transform .16s}
.course-contact[open] .contact-toggle-mark{transform:rotate(45deg)}
.course-contact .contact-panel{position:absolute;right:0;bottom:calc(100% + 12px);width:310px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 130px);overflow:auto;padding:23px;border:1px solid #e0d9ef;border-radius:18px;background:#fff;box-shadow:0 14px 54px #32214b21;text-align:left}
.course-contact .contact-eyebrow{margin:0 0 5px;color:#624bb0;font-size:11px;font-weight:650;letter-spacing:.08em;line-height:1.6}
.course-contact .contact-panel h2{margin:0 0 5px;color:#211d35;font-size:23px;font-weight:650;letter-spacing:-.025em;line-height:1.4}
.course-contact .contact-intro{margin:0 0 17px;color:#726b7e;font-size:13px;line-height:1.8}
.course-contact .contact-links{display:grid;gap:9px}
.course-contact .contact-link{display:flex;align-items:center;gap:12px;min-height:59px;padding:11px 12px;border:1px solid #e6e0f0;border-radius:10px;color:#211d35;text-decoration:none;background:#fff;font-size:15px;font-weight:600;line-height:1.5}
.course-contact .contact-link:hover{border-color:#ac98e1;background:#f7f4fd}
.course-contact .contact-link[aria-disabled=true]{opacity:.55;cursor:default}
.course-contact .contact-link[aria-disabled=true]:hover{border-color:#e6e0f0;background:#fff}
.course-contact .contact-channel-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f0ebfc;color:#5135c5;flex:none}
.course-contact .contact-channel-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.course-contact .contact-whatsapp .contact-channel-icon{background:#eaf6ef;color:#258452}
.course-contact .contact-telegram .contact-channel-icon{background:#edf4fc;color:#367fb5}
.course-contact .contact-link small{display:block;color:#827a8d;font-size:11px;font-weight:400;line-height:1.5}
.course-contact .contact-arrow{margin-left:auto;color:#8873b4;font-size:17px;font-weight:400}
.course-contact :is(summary,a):focus-visible{outline:3px solid #967de8;outline-offset:4px}
.course-contact[hidden]{display:none}
@media(max-width:600px){.course-contact{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}.course-contact>summary{min-height:50px;padding:12px 18px;font-size:14px}.course-contact .contact-panel{width:310px;padding:20px;max-height:calc(100dvh - 112px)}}
@media(prefers-reduced-motion:reduce){.course-contact .contact-toggle-mark{transition:none}}
@media print{.course-contact{display:none}}
