
.module-code-art { position: relative; z-index: 1; height: 272px; flex: 0 0 272px; margin-top: 25px; padding: 16px; overflow: hidden; border: 1px solid #dce4ee; border-radius: 15px; background: #fff; box-shadow: 0 24px 55px rgba(0,0,0,.2),inset 0 1px 0 #dce4ee; transition: transform 550ms var(--ease),border-color 350ms ease,box-shadow 450ms ease; }
.platform-module-grid article:hover .module-code-art { transform: translateY(-4px); border-color: rgba(var(--module-rgb),.4); box-shadow: 0 30px 62px rgba(0,0,0,.3),0 0 38px rgba(var(--module-rgb),.09); }
.module-art-window__bar { min-height: 45px; display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 10px; }
.module-art-window__bar > span:nth-child(2),.module-dental-member > span:nth-child(2) { display: grid; gap: 3px; }
.module-art-window__bar small,.module-dental-member small { color: #65758c; font-size: 6px; font-weight: 800; letter-spacing: .13em; }
.module-art-window__bar strong,.module-dental-member strong { font-size: 10px; letter-spacing: -.01em; }
.module-art-window__bar > b { padding: 6px 8px; border: 1px solid rgba(var(--module-rgb),.32); border-radius: 99px; background: rgba(var(--module-rgb),.09); color: rgb(var(--module-rgb)); font-size: 6px; letter-spacing: .08em; text-transform: uppercase; }
.module-art-product-icon { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgba(var(--module-rgb),.28); border-radius: 11px; background: rgba(var(--module-rgb),.1); }
.module-art-product-icon img { width: 29px; height: 29px; object-fit: contain; }

.module-code-art--scheduling { background: #fff; }
.module-calendar-board { position: relative; margin-top: 11px; display: grid; grid-template-columns: repeat(7,1fr); gap: 6px; perspective: 500px; }
.module-calendar-board::before { position: absolute; inset: -12px -20px; content: ""; background: linear-gradient(90deg,transparent,rgba(18,167,210,.1),transparent); transform: translateX(-75%); animation: module-calendar-scan 4.5s ease-in-out infinite; }
.module-calendar-board i { position: relative; height: 42px; display: grid; place-items: center; border: 1px solid #dce4ee; border-radius: 7px; background: #f3f6fa; color: #65758c; font-size: 9px; font-style: normal; font-weight: 650; box-shadow: inset 0 1px 0 #dce4ee; }
.module-calendar-board i.is-open { border-color: rgba(18,167,210,.42); background: rgba(18,167,210,.12); color: #087c9c; box-shadow: 0 0 18px rgba(18,167,210,.1); }
.module-calendar-board i.is-selected { border-color: var(--coral); background: linear-gradient(145deg,#ff876e,#ff685a); color: #fff; font-weight: 800; box-shadow: 0 8px 25px rgba(255,112,94,.34); }
.module-code-art--scheduling .module-calendar-board i { height: 31px; }
.module-calendar-slots { margin-top: 11px; display: flex; align-items: center; gap: 6px; }
.module-calendar-slots span { padding: 6px 10px; border: 1px solid #dce4ee; border-radius: 99px; color: #65758c; font-size: 7px; font-weight: 650; }
.module-calendar-slots span.is-selected { border-color: rgba(18,167,210,.54); color: #087c9c; }
.module-calendar-slots b { margin-left: auto; padding: 9px 13px; border-radius: 8px; background: #fff; color: #142136; font-size: 7px; letter-spacing: .04em; }
.module-code-art--scheduling .module-art-window__bar small { font-size: 7px; }
.module-code-art--scheduling .module-art-window__bar strong { font-size: 11px; }
.module-code-art--scheduling .module-art-window__bar > b { font-size: 7px; }
@keyframes module-calendar-scan { 0%,12% { transform: translateX(-75%); opacity: 0; } 35%,70% { opacity: 1; } 88%,100% { transform: translateX(75%); opacity: 0; } }

.module-code-art--pha { padding: 13px; display: grid; grid-template-columns: minmax(0,1fr) 120px; gap: 12px; background: #fff; }
.module-pha-phone { padding: 12px; border: 1px solid #dce4ee; border-radius: 17px; background: #f5f7fa; box-shadow: inset 0 0 0 3px #dce4ee; }
.module-art-ai-orb { width: 36px; height: 36px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: linear-gradient(145deg,#ff775f,#864bc1 54%,#149bcb); box-shadow: 0 0 20px rgba(155,92,204,.35); }
.module-art-ai-orb img { width: 25px; height: 25px; }
.module-pha-chat { margin-top: 8px; display: grid; gap: 6px; }
.module-pha-chat p { width: 82%; margin: 0; padding: 7px 9px; border-radius: 9px 9px 9px 3px; background: #f3f6fa; color: #65758c; font-size: 6px; line-height: 1.45; }
.module-pha-chat p.is-member { justify-self: end; border-radius: 9px 9px 3px 9px; background: #deebff; color: #405a80; }
.module-pha-input { min-height: 28px; margin-top: 7px; padding: 5px 5px 5px 9px; display: flex; align-items: center; justify-content: space-between; border: 1px solid #dce4ee; border-radius: 8px; color: #65758c; font-size: 6px; }
.module-pha-input b { width: 19px; height: 19px; display: grid; place-items: center; border-radius: 6px; background: var(--coral); color: #fff; }
.module-provider-review { align-self: center; padding: 11px; display: grid; gap: 7px; border: 1px solid rgba(255,112,94,.24); border-radius: 12px; background: #f3f6fa; }
.module-provider-review > small { color: #65758c; font-size: 5px; font-weight: 800; letter-spacing: .11em; }
.module-provider-review > span { min-height: 50px; padding: 8px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 6px; border: 1px solid #dce4ee; border-radius: 9px; background: #f5f7fa; }
.module-provider-review em { grid-column: 1/-1; color: #65758c; font-size: 5px; font-style: normal; font-weight: 800; letter-spacing: .08em; }
.module-provider-review b { width: max-content; padding: 4px 6px; border: 1px solid rgba(255,112,94,.34); border-radius: 99px; background: rgba(255,112,94,.1); color: #c54c3d; font-size: 5px; letter-spacing: .05em; }
.module-provider-review strong { color: #fff; font-size: 12px; line-height: 1; }

.module-code-art--imr { background: #fff; }
.module-imr-labels { margin: 13px 0 5px; padding-inline: 8px; display: grid; grid-template-columns: 1.2fr 1fr 84px; color: #65758c; font-size: 5px; font-weight: 800; letter-spacing: .12em; }
.module-imr-rows { display: grid; gap: 6px; }
.module-imr-rows > div { min-height: 47px; padding: 7px 8px; display: grid; grid-template-columns: 1.2fr 1fr 84px; align-items: center; border: 1px solid #dce4ee; border-radius: 9px; background: #f3f6fa; }
.module-imr-person { display: flex; align-items: center; gap: 8px; min-width: 0; }
.module-imr-person > i { flex: 0 0 27px; width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; background: #243755; color: #fff; font-size: 6px; font-style: normal; font-weight: 800; }
.module-imr-person strong { overflow: hidden; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.module-imr-checks { display: flex; gap: 5px; }
.module-imr-checks i { width: 16px; height: 16px; display: grid; place-items: center; border-radius: 50%; background: rgba(56,207,161,.14); color: #21866e; }
.module-imr-checks i.is-pending { background: rgba(255,176,55,.12); color: #a56e17; }
.module-imr-checks svg { width: 9px; height: 9px; stroke-width: 2.5; }
.module-imr-rows > div > b { justify-self: end; padding: 6px 7px; border-radius: 99px; font-size: 5px; white-space: nowrap; }
.module-imr-rows > div > b.is-cleared { background: rgba(56,207,161,.12); color: #21866e; }
.module-imr-rows > div > b.is-action { background: rgba(255,176,55,.12); color: #a56e17; }

.module-code-art--dental { background: #fff; }
.module-dental-member { min-height: 65px; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; }
.module-dental-member em { color: #65758c; font-size: 6px; font-style: normal; }
.module-dental-member > b { padding: 7px 9px; border: 1px solid rgba(255,112,94,.26); border-radius: 99px; background: rgba(255,112,94,.08); color: #c54c3d; font-size: 5px; letter-spacing: .06em; }
.module-dental-member > b i { display: inline-block; width: 5px; height: 5px; margin-right: 5px; border-radius: 50%; background: var(--coral); }
.module-drc-panel { margin-top: 9px; padding: 14px; border: 1px solid #dce4ee; border-radius: 12px; background: #f3f6fa; }
.module-drc-panel > small { color: #65758c; font-size: 5px; font-weight: 800; letter-spacing: .13em; }
.module-drc-panel > div { margin-top: 11px; display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; }
.module-drc-panel > div span { padding: 8px 4px; border: 1px solid #dce4ee; border-radius: 99px; color: #65758c; font-size: 6px; font-weight: 800; text-align: center; }
.module-drc-panel > div span:nth-child(1) { border-color: rgba(56,207,161,.33); color: #21866e; }
.module-drc-panel > div span:nth-child(2) { border-color: rgba(255,176,55,.35); color: #a56e17; }
.module-drc-panel > div span.is-selected { border-color: var(--coral); background: rgba(255,112,94,.12); color: #c54c3d; box-shadow: 0 0 20px rgba(255,112,94,.1); }
.module-drc-panel > p { margin: 14px 0 0; padding-top: 12px; display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 9px; border-top: 1px solid #dce4ee; }
.module-drc-panel > p > i { width: 34px; height: 34px; border: 5px solid rgba(255,112,94,.22); border-top-color: var(--coral); border-radius: 50%; transform: rotate(35deg); }
.module-drc-panel > p > span { display: grid; gap: 2px; }
.module-drc-panel > p small { color: #65758c; font-size: 5px; font-weight: 800; letter-spacing: .1em; }
.module-drc-panel > p strong { font-size: 12px; }
.module-drc-panel > p > b { color: #c54c3d; font-size: 6px; }

.module-code-art--messaging { padding: 13px; display: grid; grid-template-columns: minmax(150px,.76fr) minmax(180px,1.24fr); gap: 10px; background: #fff; }
.module-message-roster,.module-message-compose { padding: 11px; border: 1px solid #dce4ee; border-radius: 12px; background: #f3f6fa; }
.module-message-roster .module-art-window__bar { grid-template-columns: 36px 1fr; align-items: start; }
.module-message-roster .module-art-window__bar > span:nth-child(2) { gap: 4px; }
.module-message-count { width: max-content; margin: 2px 0 8px; padding: 5px 7px; border: 1px solid rgba(var(--module-rgb),.32); border-radius: 99px; background: rgba(var(--module-rgb),.09); color: rgb(var(--module-rgb)); font-size: 6px; font-weight: 800; letter-spacing: .08em; line-height: 1; text-transform: uppercase; }
.module-message-roster > span { min-height: 37px; padding: 5px 2px; display: grid; grid-template-columns: 26px 1fr 19px; align-items: center; gap: 7px; border-top: 1px solid #dce4ee; }
.module-message-roster > span > i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: #263650; color: #fff; font-size: 5px; font-style: normal; font-weight: 800; }
.module-message-roster > span > b { font-size: 6px; }
.module-message-roster > span > em { width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: var(--coral); color: #fff; }
.module-message-roster > span svg { width: 10px; height: 10px; stroke-width: 2.8; }
.module-message-compose { align-self: center; }
.module-message-compose > small { color: var(--coral); font-size: 5px; font-weight: 800; letter-spacing: .12em; }
.module-message-compose > p { min-height: 78px; margin: 9px 0; padding: 12px; border: 1px solid #dce4ee; border-radius: 10px; background: #fff; color: #65758c; font-size: 7px; line-height: 1.6; }
.module-message-compose > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.module-message-compose > div span { color: #477b98; font-size: 5px; }
.module-message-compose > div b { padding: 8px 9px; border-radius: 7px; background: #fff; color: #142136; font-size: 5px; white-space: nowrap; }

.module-code-art--assist { display: grid; grid-template-columns: 105px minmax(0,.85fr) minmax(190px,1.15fr); align-items: center; gap: 14px; background: #fff; }
.module-assist-orbit { position: relative; width: 92px; height: 92px; display: grid; place-items: center; border: 1px solid rgba(139,113,224,.27); border-radius: 50%; }
.module-assist-orbit::before { position: absolute; inset: 16px; content: ""; border: 1px solid rgba(18,167,210,.2); border-radius: 50%; }
.module-assist-orbit > i { position: absolute; top: 13px; left: 13px; width: 7px; height: 7px; border: 2px solid #101b2e; border-radius: 50%; background: var(--coral); box-shadow: 0 0 12px var(--coral); animation: module-assist-orbit 5.4s linear infinite; transform-origin: 33px 33px; }
.module-assist-orbit > i:nth-child(2) { top: 26px; left: 26px; width: 5px; height: 5px; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); animation-duration: 3.6s; animation-direction: reverse; transform-origin: 20px 20px; }
.module-assist-orbit > span { position: relative; z-index: 2; width: 48px; height: 48px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: linear-gradient(145deg,#ff765e,#8449bf 53%,#159dcc); box-shadow: 0 0 32px rgba(139,113,224,.42); }
.module-assist-orbit img { width: 31px; height: 31px; }
.module-assist-prompt { padding: 14px; display: grid; gap: 7px; border-left: 1px solid #dce4ee; }
.module-assist-prompt small { color: #7951ad; font-size: 5px; font-weight: 800; letter-spacing: .13em; }
.module-assist-prompt strong { font-size: 14px; line-height: 1.15; letter-spacing: -.03em; }