.clinic-root{z-index:40;background:var(--foam);position:fixed;inset:0;overflow:auto}.clinic-loading{min-height:100vh;color:var(--slate);place-items:center;font-size:.95rem;display:grid}.clinic-app{grid-template-columns:minmax(0,15rem) 1fr;min-height:100vh;display:grid}.clinic-side{border-right:1px solid var(--line);background:color-mix(in srgb, white 72%, var(--mist));box-shadow:2px 0 24px color-mix(in srgb, var(--ink) 6%, transparent);flex-direction:column;display:flex}.clinic-side__brand{border-bottom:1px solid var(--line);padding:1rem 1rem .75rem}.clinic-side__menu{cursor:pointer;color:var(--ink);background:0 0;border:none;padding:.25rem;font-size:1.25rem;display:none}.clinic-side__logo{color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;text-decoration:none;display:block}.clinic-side__who{color:var(--teal);margin-top:.65rem;font-size:.875rem;font-weight:600;text-decoration:none;display:block}.clinic-side__roles{color:var(--slate);text-transform:capitalize;margin:.2rem 0 0;font-size:.72rem}.clinic-side__nav{flex-direction:column;flex:1;gap:.15rem;padding:.75rem .5rem;display:flex}.clinic-side__link{color:var(--slate);border-radius:.5rem;padding:.55rem .75rem;font-size:.875rem;text-decoration:none;transition:background .15s,color .15s;display:block}.clinic-side__link:hover{background:color-mix(in srgb, var(--teal) 8%, transparent);color:var(--ink)}.clinic-side__link.is-active{background:color-mix(in srgb, var(--teal) 14%, white);color:var(--teal-deep);font-weight:550}.clinic-side__foot{border-top:1px solid var(--line);flex-direction:column;gap:.5rem;padding:.75rem 1rem 1rem;display:flex}.clinic-side__muted{letter-spacing:.14em;color:var(--slate);font-size:.65rem;text-decoration:none}.clinic-side__btn{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:#fff;border-radius:.45rem;padding:.45rem .75rem;font-size:.8rem}.clinic-side__btn--ghost{background:0 0}.clinic-main{min-width:0;overflow:auto}.cx-page{max-width:52rem;margin:0 auto;padding:1.25rem 1rem 5rem}.cx-page__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.cx-page__title{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,4vw,2rem)}.cx-page__lead{color:var(--slate);margin:.35rem 0 0;font-size:.9rem;line-height:1.5}.cx-meta{color:var(--slate);font-size:.8rem}.cx-chip{background:color-mix(in srgb, var(--teal) 12%, white);color:var(--teal-deep);text-transform:capitalize;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:550;display:inline-block}.cx-chip--alert{background:color-mix(in srgb, var(--alert) 12%, white);color:var(--alert)}.cx-chip--next{background:color-mix(in srgb, var(--sage) 18%, white);color:var(--teal-deep)}.cx-btn{cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.35rem;font-size:.875rem;font-weight:550;transition:background .15s,transform .12s,box-shadow .15s;display:inline-flex}.cx-btn:disabled{opacity:.55;cursor:not-allowed}.cx-btn--md{padding:.55rem 1rem}.cx-btn--sm{padding:.35rem .7rem;font-size:.8rem}.cx-btn--primary{background:var(--teal);color:#fff;box-shadow:0 2px 8px color-mix(in srgb, var(--teal) 28%, transparent)}.cx-btn--primary:hover:not(:disabled){background:var(--teal-deep)}.cx-btn--soft{background:color-mix(in srgb, var(--teal) 10%, white);color:var(--teal-deep)}.cx-btn--ghost{color:var(--slate);border:1px solid var(--line);background:0 0}.cx-btn--danger{background:var(--alert);color:#fff}.w-full{width:100%}.cx-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.cx-toolbar{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.cx-form{flex-direction:column;gap:.85rem;display:flex}.cx-form--compact .cx-grid{gap:.65rem}.cx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.cx-field{flex-direction:column;gap:.3rem;display:flex}.cx-field--span{grid-column:1/-1}.cx-field__label{color:var(--slate);font-size:.78rem;font-weight:550}.cx-input{border:1px solid var(--line);width:100%;color:var(--ink);background:color-mix(in srgb, white 85%, var(--mist));border-radius:.45rem;padding:.55rem .7rem;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.cx-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 16%, transparent);outline:none}.cx-search{gap:.5rem;margin-bottom:1rem;display:flex}.cx-search .cx-input{flex:1}.cx-consents{border:1px solid var(--line);border-radius:.5rem;margin:0;padding:.75rem 1rem}.cx-consents legend{color:var(--slate);padding:0 .25rem;font-size:.78rem;font-weight:550}.cx-check{align-items:center;gap:.5rem;margin-top:.45rem;font-size:.85rem;display:flex}.cx-flash{border-radius:.45rem;margin:0;padding:.55rem .75rem;font-size:.85rem}.cx-flash--error{background:color-mix(in srgb, var(--alert) 10%, white);color:var(--alert)}.cx-flash--ok{background:color-mix(in srgb, var(--sage) 14%, white);color:var(--teal-deep)}.cx-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.cx-list__row{border:1px solid var(--line);background:color-mix(in srgb, white 80%, var(--foam));color:inherit;box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 4%, transparent);border-radius:.55rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.cx-list__row:hover{border-color:color-mix(in srgb, var(--teal) 35%, var(--line));box-shadow:0 4px 14px color-mix(in srgb, var(--teal) 10%, transparent)}.cx-list__row strong{font-size:.95rem;display:block}.cx-list__row .cx-meta{margin-top:.15rem;display:block}.cx-tabs{border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch;gap:.25rem;margin-bottom:1rem;display:flex;overflow-x:auto}.cx-tab{color:var(--slate);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;margin-bottom:-1px;padding:.65rem .85rem;font-size:.85rem;transition:color .15s,border-color .15s}.cx-tab.is-active{color:var(--teal-deep);border-bottom-color:var(--teal);font-weight:550}.cx-panel{animation:cx-fade-in .2s var(--ease-out)}@keyframes cx-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.cx-drawer-root{z-index:60;justify-content:flex-end;display:flex;position:fixed;inset:0}.cx-drawer-backdrop{background:color-mix(in srgb, var(--ink) 28%, transparent);cursor:pointer;border:none;animation:.25s cx-backdrop-in;position:absolute;inset:0}@keyframes cx-backdrop-in{0%{opacity:0}to{opacity:1}}.cx-drawer{background:var(--foam);width:min(100%,24rem);max-height:100%;box-shadow:-8px 0 32px color-mix(in srgb, var(--ink) 14%, transparent);animation:cx-drawer-slide .32s var(--ease-out);flex-direction:column;display:flex;position:relative}.cx-drawer--wide{width:min(100%,32rem)}@keyframes cx-drawer-slide{0%{transform:translate(100%)}to{transform:none}}.cx-drawer__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1rem .75rem;display:flex}.cx-drawer__title{color:var(--ink);margin:0;font-size:1.05rem}.cx-icon-btn{cursor:pointer;color:var(--slate);background:0 0;border:none;padding:.15rem .35rem;font-size:1.5rem;line-height:1}.cx-drawer__body{flex:1;padding:1rem;overflow:auto}.cx-skeleton{flex-direction:column;gap:.55rem;display:flex}.cx-skeleton__row{background:linear-gradient(90deg, color-mix(in srgb, var(--line) 60%, white) 0%, color-mix(in srgb, var(--mist) 80%, white) 50%, color-mix(in srgb, var(--line) 60%, white) 100%);background-size:200% 100%;border-radius:.35rem;height:.85rem;animation:1.2s infinite cx-shimmer}@keyframes cx-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.cx-empty{text-align:center;color:var(--slate);margin:2rem 0;font-size:.9rem}.cx-auth{place-items:center;min-height:100vh;padding:1.5rem 1rem;display:grid}.cx-auth__card{border:1px solid var(--line);background:color-mix(in srgb, white 88%, var(--foam));width:min(100%,22rem);box-shadow:0 8px 32px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:.75rem;padding:1.75rem 1.5rem}.cx-auth__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:0;font-size:.7rem}.cx-auth__title{color:var(--ink);margin:.5rem 0 1.25rem;font-size:1.65rem}.cx-auth__foot{text-align:center;margin:1rem 0 0;font-size:.85rem}.cx-auth__foot a{color:var(--teal)}.cx-daynav{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.cx-daynav__label{text-align:center;flex:1;font-size:.95rem;font-weight:550}.cx-stats{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.cx-stat{background:color-mix(in srgb, var(--teal) 8%, white);color:var(--teal-deep);border-radius:.45rem;padding:.45rem .75rem;font-size:.78rem}.cx-dl{grid-template-columns:minmax(0,8rem) 1fr;gap:.45rem 1rem;margin:0;font-size:.875rem;display:grid}.cx-dl dt{color:var(--slate);font-weight:550}.cx-dl dd{color:var(--ink);margin:0}.cx-chat-fab{z-index:55;background:var(--teal);color:#fff;cursor:pointer;width:3.25rem;height:3.25rem;box-shadow:0 4px 20px color-mix(in srgb, var(--teal) 40%, transparent);border:none;border-radius:999px;font-size:1.25rem;transition:transform .15s,background .15s;position:fixed;bottom:1rem;right:1rem}.cx-chat-fab:hover{background:var(--teal-deep);transform:scale(1.04)}.cx-chat-badge{background:var(--alert);color:#fff;border-radius:999px;place-items:center;min-width:1.15rem;height:1.15rem;padding:0 .25rem;font-size:.65rem;font-weight:700;display:grid;position:absolute;top:-2px;right:-2px}.cx-chat-panel{z-index:55;border:1px solid var(--line);background:var(--foam);width:min(100vw - 2rem,22rem);max-height:min(70vh,28rem);box-shadow:0 12px 40px color-mix(in srgb, var(--ink) 16%, transparent);animation:cx-chat-pop .25s var(--ease-out);border-radius:.75rem;flex-direction:column;display:flex;position:fixed;bottom:4.75rem;right:1rem;overflow:hidden}@keyframes cx-chat-pop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.cx-chat-head{border-bottom:1px solid var(--line);background:color-mix(in srgb, white 70%, var(--mist));justify-content:space-between;align-items:center;padding:.65rem .85rem;display:flex}.cx-chat-head h3{margin:0;font-size:.9rem}.cx-chat-peers{flex:1;margin:0;padding:.35rem;list-style:none;overflow:auto}.cx-chat-peer{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:none;border-radius:.45rem;align-items:center;gap:.65rem;padding:.55rem .65rem;font-size:.85rem;display:flex}.cx-chat-peer:hover{background:color-mix(in srgb, var(--teal) 8%, transparent)}.cx-chat-peer__unread{background:var(--alert);color:#fff;border-radius:999px;place-items:center;min-width:1.1rem;height:1.1rem;margin-left:auto;font-size:.62rem;font-weight:700;display:grid}.cx-chat-thread{flex-direction:column;flex:1;gap:.45rem;padding:.65rem;display:flex;overflow:auto}.cx-chat-msg{border-radius:.65rem;max-width:85%;padding:.45rem .65rem;font-size:.82rem;line-height:1.4}.cx-chat-msg--mine{background:var(--teal);color:#fff;align-self:flex-end}.cx-chat-msg--theirs{background:color-mix(in srgb, white 90%, var(--mist));color:var(--ink);align-self:flex-start}.cx-chat-compose{border-top:1px solid var(--line);gap:.35rem;padding:.55rem;display:flex}.cx-chat-compose .cx-input{flex:1;font-size:.85rem}@media (max-width:900px){.clinic-app{grid-template-columns:1fr}.clinic-side{z-index:50;width:min(85vw,16rem);transition:transform .28s var(--ease-out);position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.clinic-side.is-open{transform:none}.clinic-side__menu{display:inline-block}.cx-page{padding:1rem .85rem 5rem}.cx-grid{grid-template-columns:1fr}.cx-page__head{flex-direction:column}.cx-drawer{width:100%}.cx-chat-panel{width:auto;bottom:4.5rem;left:.5rem;right:.5rem}.cx-chat-fab{bottom:.75rem;right:.75rem}}@media (prefers-reduced-motion:reduce){.cx-drawer,.cx-drawer-backdrop,.cx-chat-panel,.cx-skeleton__row,.cx-panel{animation:none!important}.clinic-side{transition:none}}
