body:has(.assistant-medflow-shell) > footer { display: block; }

body:not(:has(.assistant-medflow-shell)) { background: linear-gradient(135deg, #f6fafc 0%, #ffffff 52%, #f6f9fd 100%); }
.site-app-header { position: sticky; top: 0; z-index: 1030; border-bottom: 1px solid #e1e7ef; background: rgba(251, 252, 255, .94); backdrop-filter: blur(16px); }
.site-header-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; width: min(100% - 6rem, 1180px); min-height: 84px; margin: 0 auto; }
.site-center-brand { display: inline-flex; align-items: center; gap: .62rem; color: #152b43; line-height: 1; text-decoration: none; }
.site-center-brand:hover { color: #08758a; }
.site-brand-mark { display: block; width: 40px; height: 40px; filter: drop-shadow(0 5px 9px rgba(16, 71, 90, .17)); }
.site-brand-word { display: inline-flex; align-items: baseline; color: #172b43; font-size: 1.12rem; font-weight: 800; letter-spacing: -.055em; }
.site-brand-word b { font-weight: 800; }.site-brand-word em { margin: 0 .02em; color: #078294; font-style: normal; font-weight: 850; }
.site-header-action { justify-self: end; display: inline-flex; align-items: center; gap: .42rem; padding: .64rem .92rem; border-radius: 99px; background: #17192f; color: #fff; font-size: .76rem; font-weight: 760; text-decoration: none; }
.site-header-action:hover { background: #303655; color: #fff; }
.site-header-account { justify-self: end; display: inline-flex; align-items: center; gap: .5rem; }.site-header-logout { margin: 0; }.site-header-logout__button { display: inline-flex; align-items: center; gap: .42rem; padding: .61rem .82rem; border: 1px solid #b7cad6; border-radius: 99px; background: #fff; color: #21445f; font: inherit; font-size: .76rem; font-weight: 760; line-height: 1; cursor: pointer; }.site-header-logout__button:hover { border-color: #3d8994; background: #edf8f9; color: #075f6e; }
.site-workflow-tabs { display: flex; justify-content: center; gap: .2rem; width: min(100% - 6rem, 1180px); margin: 0 auto; padding: 1rem 0; overflow-x: auto; scrollbar-width: none; }
.site-workflow-tabs::-webkit-scrollbar { display: none; }
.site-workflow-tabs a { flex: 0 0 auto; padding: .46rem .55rem; border: 1px solid #dce4ee; border-radius: .62rem; background: #fff; color: #495a70; font-size: .84rem; font-weight: 740; line-height: 1; text-decoration: none; white-space: nowrap; box-shadow: 0 2px 5px rgba(43, 60, 96, .03); transition: border-color .16s, background .16s, color .16s, transform .16s; }
.site-workflow-tabs a:hover { transform: translateY(-1px); border-color: #93cbd3; background: #edf8f9; color: #08758a; }
.site-page-content { min-height: calc(100vh - 155px); }
.site-hcp-disclaimer { position: relative; z-index: 1020; border-bottom: 1px solid #d7e8eb; background: #f1fafb; color: #43656d; }.site-hcp-disclaimer > div { display: flex; align-items: center; justify-content: center; gap: .55rem; width: min(100% - 2rem, 1180px); min-height: 35px; margin: 0 auto; font-size: .69rem; line-height: 1.35; text-align: center; }.site-hcp-disclaimer i { color: #087b8b; font-size: .88rem; }.site-hcp-disclaimer strong { color: #254b54; font-weight: 800; }
.site-flash-wrap { width: min(100% - 2rem, 760px); margin: 1.1rem auto 0; }.site-flash { display: flex; align-items: flex-start; gap: .8rem; margin: 0; padding: .86rem 1rem; border: 1px solid; border-radius: .9rem; box-shadow: 0 10px 24px rgba(43, 60, 96, .08); }.site-flash-error { border-color: #ead4c2; background: #fffaf5; color: #594333; }.site-flash-success { border-color: #cbe6d5; background: #f5fcf7; color: #28563a; }.site-flash-icon { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: .65rem; background: #f7e7d7; color: #ad692d; }.site-flash-success .site-flash-icon { background: #dff3e6; color: #23834d; }.site-flash strong { display: block; font-size: .8rem; font-weight: 780; }.site-flash p { margin: .16rem 0 0; font-size: .76rem; line-height: 1.5; }.site-flash-close { align-self: center; margin-left: auto; padding: .3rem; border: 0; background: transparent; color: currentColor; font-size: .82rem; }
.guest-workspace { max-width: 1180px; }.guest-workspace-hero { position: relative; overflow: hidden; margin-bottom: 1.1rem; padding: 3.2rem; border-radius: 1.2rem; background: linear-gradient(125deg, #15233f, #0e7785); box-shadow: 0 18px 38px rgba(17, 66, 86, .17); color: #fff; }.guest-workspace-hero::after { position: absolute; right: -6rem; bottom: -10rem; width: 24rem; height: 24rem; border: 1px solid rgba(205, 246, 247, .2); border-radius: 50%; content: ""; }.guest-workspace-hero > * { position: relative; z-index: 1; }.guest-workspace-hero h1 { max-width: 670px; margin: .8rem 0; font-size: clamp(2rem, 4vw, 3.3rem); font-weight: 760; letter-spacing: -.06em; }.guest-workspace-hero p { max-width: 660px; margin-bottom: 1.5rem; color: #cbecef; line-height: 1.65; }.guest-workspace-hero .btn { border-radius: .7rem; font-size: .8rem; font-weight: 740; }.guest-access-strip { display: flex; gap: .65rem; align-items: flex-start; margin-bottom: 1.6rem; padding: .9rem 1rem; border: 1px solid #cee9ec; border-radius: .85rem; background: #effafb; color: #436871; font-size: .8rem; line-height: 1.5; }.guest-access-strip i { color: #087b8b; font-size: 1.05rem; }.guest-tool-page { max-width: 1050px; }.guest-tool-card, .guest-unlock-card { height: 100%; padding: 2rem; border: 1px solid #dce5ef; border-radius: 1.15rem; background: #fff; box-shadow: 0 14px 32px rgba(43, 60, 96, .07); }.guest-tool-card { background: linear-gradient(145deg, #fff, #f6fbfc); }.guest-back { color: #087b8b; font-size: .78rem; font-weight: 700; text-decoration: none; }.guest-tool-card h1 { margin: .7rem 0; color: #1a2940; font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 760; letter-spacing: -.055em; }.guest-tool-card > p { max-width: 580px; color: #68798e; line-height: 1.65; }.guest-tool-list { display: grid; gap: .7rem; margin-top: 1.7rem; padding-top: 1.5rem; border-top: 1px solid #e1e8ef; color: #4e6575; font-size: .82rem; }.guest-tool-list i { margin-right: .45rem; color: #16808e; }.guest-unlock-card { display: flex; flex-direction: column; background: #18223b; color: #fff; }.guest-lock-mark { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 1.5rem; border-radius: .8rem; background: rgba(143, 230, 231, .16); color: #9ff1eb; font-size: 1.2rem; }.guest-unlock-card .eyebrow { color: #a7e7e9; }.guest-unlock-card h2 { margin: .65rem 0; font-size: 1.65rem; font-weight: 740; letter-spacing: -.045em; }.guest-unlock-card > p { color: #c3d3df; font-size: .87rem; line-height: 1.65; }.guest-unlock-card .btn { margin-top: auto; border: 0; border-radius: .72rem; background: #fff; color: #19324c; font-size: .8rem; font-weight: 760; }.guest-unlock-card .btn:hover { background: #e9fcfc; color: #087b8b; }.guest-signin-link { margin-top: 1rem; color: #bceff0; font-size: .78rem; font-weight: 700; text-align: center; text-decoration: none; }.guest-safety-note { display: flex; gap: .55rem; margin-top: 1.5rem; padding-top: 1.2rem; border-top: 1px solid rgba(255,255,255,.16); color: #b8c9d5; font-size: .71rem; line-height: 1.55; }.guest-safety-note i { color: #9ff1eb; }
.site-page-content .auth-shell { background: radial-gradient(circle at 15% 20%, rgba(113, 207, 214, .14), transparent 23rem); }
.site-page-content .auth-card { position: relative; overflow: hidden; border-color: #dce5ef; border-radius: 1.15rem; box-shadow: 0 18px 42px rgba(43, 60, 96, .1); }
.site-page-content .workspace-header, .site-page-content .ai-hero { border-radius: 1.15rem; }
.assistant-auth-shell { min-height: calc(100vh - 175px); padding: 4.5rem 1rem; }
.assistant-auth-accent { position: absolute; top: 0; right: 0; left: 0; height: 4px; background: linear-gradient(90deg, #0d8292, #163b58); }
.assistant-auth-heading { margin-top: .4rem; }.assistant-auth-mark { display: grid; place-items: center; width: 50px; height: 50px; margin: 0 auto .95rem; border-radius: 1rem; background: linear-gradient(145deg, #0d8292, #163b58); box-shadow: 0 9px 18px rgba(23, 87, 108, .18); color: #fff; font-size: 1.35rem; }
.assistant-auth-kicker { display: block; margin-bottom: .45rem; color: #16808e; font-size: .64rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }.assistant-auth-heading h1 { margin: 0; color: #19243a; font-size: 1.55rem; font-weight: 770; letter-spacing: -.045em; }.assistant-auth-heading p { margin: .55rem 0 0; color: #718096; font-size: .84rem; }
.assistant-auth-shell .form-label { margin-bottom: .4rem; color: #34425a; font-size: .76rem; font-weight: 740; }.assistant-auth-shell .form-control { min-height: 46px; border-color: #dce4ef; border-radius: .72rem; color: #233048; font-size: .88rem; }.assistant-auth-shell .form-control:focus { border-color: #41a4af; box-shadow: 0 0 0 .22rem rgba(13, 130, 146, .12); }.assistant-auth-shell .form-check-label { color: #758195; font-size: .78rem; }
.assistant-auth-shell .btn-primary { min-height: 46px; border: 0; border-radius: .72rem; background: #17192f; font-size: .84rem; font-weight: 750; }.assistant-auth-shell .btn-primary:hover { background: #303655; }.assistant-auth-footer { margin: 1.35rem 0 0; color: #758195; font-size: .78rem; text-align: center; }.assistant-auth-footer a { color: #087b8b; font-weight: 750; text-decoration: none; }.assistant-auth-notice { display: flex; gap: .65rem; padding: .85rem .95rem; border: 1px solid #cfe7ea; border-radius: .75rem; background: #edf9fa; color: #477077; font-size: .77rem; line-height: 1.55; }.assistant-auth-notice i { margin-top: .1rem; color: #087b8b; }
.site-page-content .card, .site-page-content .placeholder-panel, .site-page-content .ai-form-card, .site-page-content .ai-safety-card, .site-page-content .ai-result-card { border-color: #dce5ef; border-radius: 1.05rem; box-shadow: 0 12px 30px rgba(43, 60, 96, .065); }.site-page-content .workspace-module, .site-page-content .ai-tool-card { border-color: #dce5ef; border-radius: 1rem; }.site-page-content .workspace-module:hover, .site-page-content .ai-tool-card:hover { border-color: #9acfd6; }.site-page-content .form-control { border-radius: .7rem; }.site-page-content .btn-primary { border-radius: .68rem; }
@media (max-width: 980px) { .site-header-row, .site-workflow-tabs { width: min(100% - 4rem, 1180px); } }
@media (max-width: 650px) { .site-workflow-tabs a { font-size: .77rem; }.assistant-trust-note { grid-template-columns: 1fr; max-width: 360px; }.site-hcp-disclaimer > div { align-items: flex-start; padding: .42rem 0; font-size: .62rem; text-align: left; }.site-hcp-disclaimer i { margin-top: .05rem; } }
@media (max-width: 650px) { .site-header-row, .site-workflow-tabs { width: min(100% - 2rem, 1180px); }.site-header-row { min-height: 66px; grid-template-columns: 1fr auto; }.site-header-spacer { display: none; }.site-brand-mark { width: 30px; height: 30px; }.site-brand-word { font-size: .9rem; }.site-header-action, .site-header-logout__button { padding: .55rem .72rem; font-size: .7rem; }.site-header-account { gap: .35rem; }.site-workflow-tabs { justify-content: flex-start; padding: .62rem 0; } }

/* Keep the signed-in header actions visually identical in size. */
.site-header-account .site-header-action,
.site-header-account .site-header-logout__button { min-height: 38px; padding: .64rem .92rem; line-height: 1; box-sizing: border-box; }
@media (max-width: 650px) { .site-header-account .site-header-action, .site-header-account .site-header-logout__button { min-height: 34px; padding: .55rem .72rem; } }

.assistant-medflow-shell .assistant-app { min-height: calc(100vh - 155px); background: #fbfcff; }
.assistant-medflow-shell .assistant-rail { display: none; }
.assistant-medflow-shell .assistant-topbar,
.assistant-medflow-shell .assistant-tools-scroll { width: min(100% - 6rem, 1180px); margin-right: auto; margin-left: auto; padding-right: 0; padding-left: 0; }
.assistant-medflow-shell .assistant-topbar { grid-template-columns: 1fr auto 1fr; }
.assistant-center-brand { display: inline-flex; align-items: center; gap: .62rem; color: #152b43; line-height: 1; text-decoration: none; }
.assistant-center-brand:hover { color: #08758a; }
.assistant-brand-mark { display: block; width: 40px; height: 40px; filter: drop-shadow(0 5px 9px rgba(16, 71, 90, .17)); }
.assistant-brand-word { display: inline-flex; align-items: baseline; color: #172b43; font-size: 1.12rem; font-weight: 800; letter-spacing: -.055em; }
.assistant-brand-word b { font-weight: 800; }
.assistant-brand-word em { margin: 0 .02em; color: #078294; font-style: normal; font-weight: 850; }
.assistant-medflow-shell .assistant-tools-scroll { flex-wrap: nowrap; justify-content: center; gap: .28rem; overflow-x: auto; overflow-y: hidden; }
.assistant-medflow-shell .assistant-tools-scroll::before { display: none; }
.assistant-medflow-shell .assistant-tools-scroll a { padding: .42rem .5rem; font-size: .77rem; }
.assistant-medflow-main { width: min(100% - 6rem, 1180px); max-width: none; margin: 0 auto; padding: 2.4rem 0 0; }
.assistant-medflow-intro { min-height: 305px; }
.assistant-medflow-intro h1 span { color: #08758a; }
.assistant-medflow-intro p { max-width: 610px; }
.assistant-intro-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.55rem; }
.assistant-primary-action, .assistant-secondary-action { display: inline-flex; align-items: center; gap: .45rem; padding: .72rem 1rem; border-radius: .75rem; font-size: .78rem; font-weight: 750; text-decoration: none; }
.assistant-primary-action { background: #17192f; color: #fff; }
.assistant-primary-action:hover { background: #303655; color: #fff; }
.assistant-secondary-action { border: 1px solid #dce3ed; background: #fff; color: #4d5b70; }
.assistant-secondary-action:hover { border-color: #9eabbf; color: #17192f; }
.assistant-trust-note { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 650px; gap: .55rem; margin-top: 1.45rem; }
.assistant-trust-note > span { display: grid; grid-template-columns: 29px 1fr; grid-template-rows: auto auto; column-gap: .5rem; align-items: center; padding: .58rem .62rem; border: 1px solid #dbe6ee; border-radius: .78rem; background: rgba(255, 255, 255, .78); box-shadow: 0 4px 10px rgba(44, 59, 94, .035); }
.assistant-trust-note i { grid-row: 1 / 3; display: grid; place-items: center; width: 29px; height: 29px; border-radius: .52rem; background: #e8f6f7; color: #08758a; font-size: .82rem; }
.assistant-trust-note b { color: #34445a; font-size: .68rem; font-weight: 790; line-height: 1.15; }.assistant-trust-note small { margin-top: .1rem; color: #7a8798; font-size: .6rem; line-height: 1.2; }
.assistant-workflows { padding: 4.1rem 0 5.1rem; }
.assistant-section-heading { max-width: 690px; }
.assistant-section-heading h2 { margin: .7rem 0 .85rem; color: #171b2d; font-size: clamp(2rem, 3.8vw, 3.25rem); font-weight: 740; letter-spacing: -.06em; line-height: 1.08; }
.assistant-section-heading > p { margin: 0; color: #6d7788; font-size: .91rem; line-height: 1.65; }
.assistant-workflow-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-top: 2.6rem; }
.assistant-workflow-card { display: flex; flex-direction: column; min-height: 205px; padding: 1.25rem; border: 1px solid #e3e7f0; border-radius: 1rem; background: #fff; color: #192034; text-decoration: none; box-shadow: 0 7px 18px rgba(54, 64, 96, .045); transition: transform .18s, box-shadow .18s, border-color .18s; }
.assistant-workflow-card:hover { transform: translateY(-4px); border-color: #b8c7d8; color: #192034; box-shadow: 0 15px 28px rgba(54, 64, 96, .1); }
.assistant-workflow-card > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: .72rem; background: #eef7f8; color: #08758a; font-size: 1.08rem; }
.assistant-workflow-card h3 { margin: 1.2rem 0 .55rem; font-size: .95rem; font-weight: 760; letter-spacing: -.025em; }
.assistant-workflow-card p { margin: 0; color: #748093; font-size: .74rem; line-height: 1.55; }
.assistant-workflow-card b { margin-top: auto; padding-top: .9rem; color: #08758a; font-size: .68rem; }
.assistant-how-it-works { margin: 0 calc((100vw - min(100vw - 6rem, 1180px)) / -2); padding: 5.2rem max(3rem, calc((100vw - min(100vw - 6rem, 1180px)) / 2)); border-top: 1px solid #e1e6ef; background: #f5f7fb; }
.assistant-centered-heading { margin: 0 auto; text-align: center; }
.assistant-step-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2.7rem; }
.assistant-step-grid article { position: relative; padding: 1.5rem; border: 1px solid #e0e6ef; border-radius: 1rem; background: #fff; }
.assistant-step-grid article > span { position: absolute; top: 1.15rem; right: 1.2rem; color: #aeb9c9; font-size: .7rem; font-weight: 850; }
.assistant-step-grid article > i { display: grid; place-items: center; width: 42px; height: 42px; border-radius: .72rem; background: #eef7f8; color: #08758a; font-size: 1.1rem; }
.assistant-step-grid h3 { margin: 1.2rem 0 .55rem; color: #21283b; font-size: .96rem; font-weight: 750; }
.assistant-step-grid p { margin: 0; color: #717d90; font-size: .78rem; line-height: 1.6; }
.assistant-professional-cta { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin: 0 calc((100vw - min(100vw - 6rem, 1180px)) / -2); padding: 4.5rem max(3rem, calc((100vw - min(100vw - 6rem, 1180px)) / 2)); background: linear-gradient(125deg, #101b34, #126c7b); }
.assistant-professional-cta .assistant-eyebrow { color: #b9eef0; }
.assistant-professional-cta h2 { max-width: 710px; margin: .75rem 0; color: #fff; font-size: clamp(1.95rem, 3.5vw, 3rem); font-weight: 740; letter-spacing: -.055em; line-height: 1.08; }
.assistant-professional-cta p { max-width: 690px; margin: 0; color: #c2e3e8; font-size: .88rem; line-height: 1.6; }
.assistant-cta-button { flex: 0 0 auto; padding: .85rem 1.1rem; border-radius: .75rem; background: #fff; color: #18263a; font-size: .8rem; font-weight: 780; text-decoration: none; }
.assistant-cta-button:hover { background: #eefbfc; color: #08758a; }
@media (max-width: 980px) { .assistant-medflow-shell .assistant-topbar, .assistant-medflow-shell .assistant-tools-scroll, .assistant-medflow-main { width: min(100% - 4rem, 1180px); } .assistant-workflow-grid { grid-template-columns: repeat(2, 1fr); } .assistant-how-it-works, .assistant-professional-cta { margin-right: -2rem; margin-left: -2rem; padding-right: 2rem; padding-left: 2rem; } .assistant-professional-cta { align-items: flex-start; flex-direction: column; } }
@media (max-width: 650px) { .assistant-medflow-shell .assistant-topbar, .assistant-medflow-shell .assistant-tools-scroll, .assistant-medflow-main { width: min(100% - 2rem, 1180px); } .assistant-center-brand { gap: .45rem; } .assistant-brand-mark { width: 31px; height: 31px; } .assistant-brand-word { font-size: .9rem; } .assistant-medflow-shell .assistant-topbar { grid-template-columns: 1fr auto; } .assistant-top-spacer { display: none; } .assistant-medflow-shell .assistant-tools-scroll { justify-content: flex-start; } .assistant-medflow-main { padding-top: 2.4rem; } .assistant-medflow-intro { min-height: 0; } .assistant-workflows { padding: 3.5rem 0; } .assistant-workflow-grid, .assistant-step-grid { grid-template-columns: 1fr; } .assistant-how-it-works, .assistant-professional-cta { margin-right: -1rem; margin-left: -1rem; padding: 3.5rem 1rem; } .assistant-professional-cta { gap: 1.4rem; } }
