/* /Components/Layout/DoctorActionLayout.razor.rz.scp.css */
.doc-action-layout[b-97krrmsvmt] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #f7f4f1;
    color: #1a1a1a;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.doc-action-header[b-97krrmsvmt] {
    background-color: #1a1a1a;
    color: #ffffff;
    padding: 14px 20px;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.doc-action-header-inner[b-97krrmsvmt] {
    max-width: 560px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.doc-action-brand[b-97krrmsvmt] {
    display: flex;
    align-items: center;
}

.doc-action-logo[b-97krrmsvmt] {
    height: 20px;
    width: auto;
    display: block;
}

.doc-action-badge[b-97krrmsvmt] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 4px 10px;
    border-radius: 9999px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #e5e5e5;
}

.badge-lock-icon[b-97krrmsvmt] {
    font-size: 11px;
}

.doc-action-main[b-97krrmsvmt] {
    flex: 1;
    padding: 16px;
    display: flex;
    flex-direction: column;
}

.doc-action-container[b-97krrmsvmt] {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    flex: 1;
}

.doc-action-footer[b-97krrmsvmt] {
    padding: 16px 20px;
    text-align: center;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    background-color: transparent;
}

.footer-note[b-97krrmsvmt] {
    margin: 0;
    font-size: 11px;
    color: #888888;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.nx-app[b-nnhj6ddcom] {
    min-height: 100vh;
    height: 100vh;
    display: flex;
    flex-direction: row;
    background: var(--nx-bg-warm, #f7f4f1);
    overflow: hidden;
}

.nx-content-column[b-nnhj6ddcom] {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

.nx-main[b-nnhj6ddcom] {
    flex: 1;
    background: var(--nx-bg-warm, #f7f4f1);
    padding: 1rem 0;
}

.nx-container[b-nnhj6ddcom] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.nx-footer[b-nnhj6ddcom] {
    background: var(--nx-primary, #1a1a1a);
    color: #999;
    padding: 2rem 0;
    text-align: center;
    font-size: 0.8rem;
    letter-spacing: 0.01em;
}

.nx-footer p[b-nnhj6ddcom] {
    margin: 0;
}

#blazor-error-ui[b-nnhj6ddcom] {
    color-scheme: light only;
    background: #fff3cd;
    bottom: 0;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
    display: none;
    left: 0;
    padding: 0.75rem 1.5rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
    border-top: 3px solid #e6940a;
}

#blazor-error-ui .dismiss[b-nnhj6ddcom] {
    cursor: pointer;
    position: absolute;
    right: 1rem;
    top: 0.5rem;
}

@media (max-width: 768px) {
    .nx-app[b-nnhj6ddcom] {
        height: auto;
        /* dvh, not vh: 100vh is the address-bar-collapsed height, so on iOS this
           floor alone makes the document taller than the screen and leaves the
           footer sitting under the fold as an empty second page. */
        min-height: 100vh;
        min-height: 100dvh;
        flex-direction: column;
        overflow: visible;
    }

    .nx-content-column[b-nnhj6ddcom] {
        width: 100%;
        overflow: visible;
    }

    .nx-main[b-nnhj6ddcom] {
        padding: 0.5rem 0;
    }
    
    .nx-container[b-nnhj6ddcom] {
        padding: 0 1rem;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* Portal sidebar — scoped to NavMenu and backed by the SeriousMD token set. */
.nx-navbar[b-zcywywc0s0] { width:252px; height:100vh; flex:0 0 252px; position:sticky; top:0; z-index:1000; background:var(--smd-white,#fff); border-right:1px solid var(--smd-gray-30,#e1e3e9); }
.nx-navbar-container[b-zcywywc0s0] { height:100%; display:flex; flex-direction:column; padding:24px 16px 16px; gap:24px; }
.nx-brand[b-zcywywc0s0] { display:flex; align-items:center; min-height:32px; padding:0 10px; text-decoration:none; flex-shrink:0; }
.nx-brand:hover[b-zcywywc0s0] { opacity:.75; }
.nx-brand-logo[b-zcywywc0s0] { display:block; width:auto; height:24px; max-width:176px; }
.nx-nav-links[b-zcywywc0s0] { min-height:0; flex:1; display:flex; flex-direction:column; align-items:stretch; gap:4px; overflow:visible; }
/* ::deep because <NavLink> is a Blazor component — Blazor stamps b-<scope> onto native HTML
   elements only, so a bare `.nx-nav-link` compiles to `.nx-nav-link[b-<scope>]` which never
   matches the rendered <a> tags. Anchoring off .nx-navbar (a real <nav> element that does
   carry the scope) with ::deep pierces component boundaries. Same pattern as .nx-user-identity
   fix in commit b0ad130f. */
.nx-navbar[b-zcywywc0s0]  .nx-nav-link { width:100%; min-height:42px; display:flex; align-items:center; gap:12px; padding:9px 12px; color:var(--smd-gray-70,#575c71); background:transparent; border:0; border-radius:10px; font-family:inherit; font-size:.875rem; font-weight:500; line-height:1.25; text-align:left; text-decoration:none; white-space:normal; cursor:pointer; transition:color 150ms ease,background-color 150ms ease; }
.nx-navbar[b-zcywywc0s0]  .nx-nav-link svg { width:19px; height:19px; flex:0 0 19px; }
.nx-navbar[b-zcywywc0s0]  .nx-nav-link:hover { color:var(--text-primary,#222326); background:#f1f8f5; }
.nx-navbar[b-zcywywc0s0]  .nx-nav-link.active { color:#168663; background:var(--mint-soft,#e7f1ee); font-weight:600; }
.nx-nav-auth[b-zcywywc0s0] { flex-shrink:0; display:flex; flex-direction:column; align-items:stretch; gap:8px; padding-top:16px; border-top:1px solid var(--smd-gray-30,#e1e3e9); }
.nx-nav-auth form[b-zcywywc0s0] { margin:0; }
/* ::deep because .nx-user-identity sits on a <NavLink> — a COMPONENT. Blazor
   stamps b-<scope> onto elements only, so a bare `.nx-user-identity` compiles to
   `.nx-user-identity[b-<scope>]` and matches nothing; these rules were dead from
   the day they were written, which is what left the block rendering stacked.
   .nx-nav-auth is a real <div> and does carry the scope. The same trap on
   .nx-nav-link for 77 other NavLinks is fixed in issue #703 (see below). */
.nx-nav-auth[b-zcywywc0s0]  .nx-user-identity { display:flex; flex-wrap:nowrap; align-items:center; gap:10px; padding:6px 4px; border-radius:10px; text-decoration:none; min-width:0; transition:background-color 150ms ease; }
.nx-nav-auth[b-zcywywc0s0]  .nx-user-identity:hover { background:#f1f8f5; }
.nx-user-avatar[b-zcywywc0s0] { flex:0 0 44px; width:44px; height:44px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; overflow:hidden; background:var(--mint-soft,#e7f1ee); color:var(--mint-dark,#13996e); font-size:.9rem; font-weight:700; }
.nx-user-avatar img[b-zcywywc0s0] { width:100%; height:100%; display:block; object-fit:cover; }
.nx-user-meta[b-zcywywc0s0] { flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:1px; }
.nx-user-name-row[b-zcywywc0s0] { display:flex; align-items:center; gap:6px; min-width:0; }
.nx-user-name[b-zcywywc0s0] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text-primary,#222326); font-size:.85rem; font-weight:600; }
.nx-user-role[b-zcywywc0s0] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text-secondary,#636467); font-size:.72rem; }
.nx-expert-status[b-zcywywc0s0] { display:flex; flex-direction:column; gap:8px; padding:4px 0; }
.nx-expert-badge[b-zcywywc0s0] { flex:0 0 auto; padding:2px 7px; border-radius:20px; color:#065f46; background:#dbf6e8; font-size:.6rem; font-weight:700; letter-spacing:.06em; }
.nx-duty-toggle[b-zcywywc0s0] { width:100%; min-height:38px; display:inline-flex; align-items:center; gap:8px; padding:7px 10px; border:1.5px solid var(--smd-gray-30,#e1e3e9); border-radius:10px; background:var(--smd-gray-10,#f8f8f9); color:var(--smd-gray-70,#575c71); cursor:pointer; font-family:inherit; text-decoration:none; transition:background .22s,border-color .22s,box-shadow .22s; }
.nx-duty-toggle:hover:not(:disabled)[b-zcywywc0s0] { border-color:var(--smd-gray-40,#cbcdd8); background:var(--smd-gray-20,#f0f1f4); }
.nx-duty-toggle:disabled[b-zcywywc0s0] { opacity:.7; cursor:default; }
.nx-duty-toggle.nx-duty-on[b-zcywywc0s0] { background:var(--smd-teal-10,#eafaf8); border-color:var(--smd-teal-70,#6bd9d1); box-shadow:0 0 0 3px rgba(44,201,189,.10); }
.nx-duty-toggle.nx-duty-on:hover:not(:disabled)[b-zcywywc0s0] { background:var(--smd-teal-20,#d5f4f2); border-color:var(--smd-teal-90,#41cec4); }
.nx-duty-dot[b-zcywywc0s0] { width:7px; height:7px; flex-shrink:0; border-radius:50%; background:var(--smd-gray-50,#b4b8c7); transition:background .22s,box-shadow .22s; }
.nx-duty-toggle.nx-duty-on .nx-duty-dot[b-zcywywc0s0] { background:var(--smd-teal-100,#2cc9bd); box-shadow:0 0 0 3px rgba(44,201,189,.2); animation:nx-duty-pulse-b-zcywywc0s0 2s ease-in-out infinite; }
.nx-duty-label[b-zcywywc0s0] { flex:1; color:inherit; font-size:.78rem; font-weight:600; letter-spacing:.03em; text-align:left; }
.nx-duty-toggle.nx-duty-on .nx-duty-label[b-zcywywc0s0] { color:var(--smd-teal-130,#1f8d84); }
/* The roster line under the duty toggle: the plan the toggle sits on top of, deliberately
   quieter than the toggle's own label so the two do not read as the same setting. */
.nx-duty-roster[b-zcywywc0s0] { margin-top:-4px; padding:0 2px; color:var(--smd-gray-60,#767b8e); font-size:.68rem; font-weight:500; letter-spacing:.01em; line-height:1.3; }

.nx-pill-track[b-zcywywc0s0] { width:32px; height:17px; position:relative; display:block; flex-shrink:0; border-radius:100px; background:var(--smd-gray-40,#cbcdd8); transition:background .22s; }
.nx-duty-toggle.nx-duty-on .nx-pill-track[b-zcywywc0s0] { background:var(--smd-teal-100,#2cc9bd); }
.nx-pill-thumb[b-zcywywc0s0] { position:absolute; top:2px; left:2px; display:block; width:13px; height:13px; border-radius:50%; background:var(--smd-white,#fff); box-shadow:0 1px 3px rgba(0,0,0,.2); transition:transform .22s cubic-bezier(.34,1.56,.64,1); }
.nx-duty-toggle.nx-duty-on .nx-pill-thumb[b-zcywywc0s0] { transform:translateX(15px); }
.nx-pill-thumb.nx-pill-saving[b-zcywywc0s0] { animation:nx-pill-spin-b-zcywywc0s0 .6s linear infinite; }
.nx-duty-toggle.nx-duty-on .nx-pill-thumb.nx-pill-saving[b-zcywywc0s0] { animation:nx-pill-spin-on-b-zcywywc0s0 .6s linear infinite; }
.nx-btn-primary[b-zcywywc0s0],.nx-btn-logout[b-zcywywc0s0] { width:100%; min-height:38px; display:inline-flex; align-items:center; justify-content:center; padding:8px 12px; border-radius:10px; font:inherit; font-size:.825rem; font-weight:600; text-decoration:none; cursor:pointer; }
.nx-btn-primary[b-zcywywc0s0] { color:var(--smd-white,#fff); background:var(--smd-teal-130,#1f8d84); border:1px solid var(--smd-teal-130,#1f8d84); }
.nx-btn-logout[b-zcywywc0s0] { color:var(--smd-gray-70,#575c71); background:transparent; border:1px solid var(--smd-gray-30,#e1e3e9); }
.nx-btn-logout:hover[b-zcywywc0s0] { color:var(--smd-red-100,#ff4b54); border-color:var(--smd-red-100,#ff4b54); }
.nx-menu-toggle[b-zcywywc0s0] { display:none; }
.nx-hide-mobile[b-zcywywc0s0] { display:flex!important; }
.nx-hide-desktop[b-zcywywc0s0] { display:none!important; }
.nx-hide-mobile[b-zcywywc0s0],.nx-mobile-nav-group[b-zcywywc0s0] { flex-direction:column; gap:4px; }
.nx-flyout-backdrop[b-zcywywc0s0] { position:fixed; inset:0; z-index:1040; background:transparent; cursor:default; }
.nx-dropdown[b-zcywywc0s0] { position:relative; display:block; }
.nx-dropdown-toggle[b-zcywywc0s0] { justify-content:flex-start; position:relative; z-index:1041; }
.nx-dropdown-arrow[b-zcywywc0s0] { width:14px!important; height:14px!important; margin-left:auto; opacity:.55; transition:transform 180ms ease, opacity 180ms ease; }
.nx-dropdown-arrow.open[b-zcywywc0s0] { transform:translateX(3px); opacity:1; color:#168663; }
.nx-dropdown-menu[b-zcywywc0s0] { display:flex; flex-direction:column; align-items:stretch; gap:2px; position:absolute; left:calc(100% + 10px); top:0; background:var(--smd-white,#fff); border:1px solid var(--smd-gray-30,#e1e3e9); border-radius:12px; box-shadow:0 10px 30px -5px rgba(15,23,42,.14), 0 4px 10px -2px rgba(15,23,42,.06); padding:10px 8px; z-index:1050; animation:flyoutIn-b-zcywywc0s0 160ms cubic-bezier(.16,1,.3,1); }
.nx-mega-flyout[b-zcywywc0s0] { top:-80px; display:grid; grid-template-columns:260px 285px; gap:16px; min-width:561px; padding:12px 14px; }
.nx-mega-flyout-col[b-zcywywc0s0] { display:flex; flex-direction:column; gap:2px; }
.nx-mega-flyout-col:first-child[b-zcywywc0s0] { border-right:1px solid var(--smd-gray-30,#e1e3e9); padding-right:16px; }
.nx-navbar[b-zcywywc0s0]  .nx-dropdown-menu .nx-nav-link { min-height:34px; padding:6px 10px; gap:10px; font-size:.82rem; border-radius:8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--smd-gray-70,#575c71); }
.nx-navbar[b-zcywywc0s0]  .nx-dropdown-menu .nx-nav-link:hover { background:#f1f8f5; color:var(--text-primary,#222326); }
.nx-navbar[b-zcywywc0s0]  .nx-dropdown-menu .nx-nav-link.active { color:#168663; background:var(--mint-soft,#e7f1ee); font-weight:600; }
.nx-navbar[b-zcywywc0s0]  .nx-dropdown-menu .nx-nav-link svg { width:16px; height:16px; flex:0 0 16px; }
.nx-dropdown-header[b-zcywywc0s0],.nx-mobile-nav-group-title[b-zcywywc0s0] { padding:6px 10px 3px; color:var(--smd-gray-60,#868b9e); font-size:.68rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.nx-dropdown-divider[b-zcywywc0s0] { height:1px; margin:6px 6px; background:var(--smd-gray-30,#e1e3e9); }
@keyframes flyoutIn-b-zcywywc0s0 { from { opacity:0; transform:translateX(-6px); } to { opacity:1; transform:translateX(0); } }
@media (max-width:768px) {
  .nx-navbar[b-zcywywc0s0] { width:100%; height:56px; flex-basis:56px; position:sticky; border-right:0; border-bottom:1px solid var(--smd-gray-30,#e1e3e9); }
  .nx-navbar-container[b-zcywywc0s0] { height:56px; padding:0 16px; flex-direction:row; align-items:center; justify-content:space-between; gap:12px; }
  .nx-brand[b-zcywywc0s0] { padding:0; }
  .nx-brand-logo[b-zcywywc0s0] { height:22px; }
  .nx-menu-toggle[b-zcywywc0s0] { width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; padding:8px; color:var(--smd-gray-90,#1f2439); background:transparent; border:0; border-radius:10px; cursor:pointer; }
  .nx-menu-toggle:hover[b-zcywywc0s0] { background:var(--smd-gray-20,#f0f1f4); }
  .nx-menu-toggle svg[b-zcywywc0s0] { width:24px; height:24px; }
  .nx-nav-links[b-zcywywc0s0],.nx-nav-auth[b-zcywywc0s0] { display:none; }
  .nx-nav-links.open[b-zcywywc0s0] { display:flex; position:fixed; inset:56px 0 0; padding:12px 16px 190px; background:var(--smd-white,#fff); overflow-y:auto; z-index:999; animation:drawerIn-b-zcywywc0s0 180ms ease-out; }
  .nx-nav-auth.open[b-zcywywc0s0] { display:flex; position:fixed; left:0; right:0; bottom:0; padding:12px 16px 16px; background:var(--smd-white,#fff); box-shadow:0 -8px 20px rgba(15,23,42,.06); z-index:1001; }
  .nx-navbar[b-zcywywc0s0]  .nx-nav-link { min-height:44px; font-size:.95rem; }
  .nx-hide-mobile[b-zcywywc0s0] { display:none!important; }
  .nx-hide-desktop[b-zcywywc0s0] { display:flex!important; }
  .nx-mobile-nav-group[b-zcywywc0s0] { padding-left:8px; margin:4px 0 8px 8px; border-left:2px solid var(--smd-gray-30,#e1e3e9); }
  .nx-dropdown-menu[b-zcywywc0s0] { position:static; max-height:none; margin:4px 0 8px; box-shadow:none; border:0; border-left:2px solid var(--smd-gray-30,#e1e3e9); border-radius:0; animation:none; }
  .nx-mega-flyout[b-zcywywc0s0] { top:auto; display:flex; flex-direction:column; gap:8px; min-width:0; padding:4px 0; }
  .nx-mega-flyout-col:first-child[b-zcywywc0s0] { border-right:0; padding-right:0; }
}
@keyframes drawerIn-b-zcywywc0s0 { from { opacity:0; transform:translateX(-12px); } to { opacity:1; transform:translateX(0); } }
@keyframes nx-duty-pulse-b-zcywywc0s0 { 0%,100% { box-shadow:0 0 0 3px rgba(44,201,189,.25); } 50% { box-shadow:0 0 0 5px rgba(44,201,189,.08); } }
@keyframes nx-pill-spin-b-zcywywc0s0 { from { transform:translateX(0) rotate(0deg); } to { transform:translateX(0) rotate(360deg); } }
@keyframes nx-pill-spin-on-b-zcywywc0s0 { from { transform:translateX(15px) rotate(0deg); } to { transform:translateX(15px) rotate(360deg); } }
/* /Components/Layout/PublicLayout.razor.rz.scp.css */
.nx-app[b-ivysauudow] {
    min-height: 100vh;
    height: 100vh;
    display: flex;
    flex-direction: row;
    background: var(--nx-bg-warm, #f7f4f1);
    overflow: hidden;
}

.nx-content-column[b-ivysauudow] {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

.nx-public-header[b-ivysauudow] {
    display: flex;
    align-items: center;
    padding: 1rem 1.5rem;
    flex-shrink: 0;
}

.nx-public-brand[b-ivysauudow] {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.nx-public-brand:hover[b-ivysauudow] {
    opacity: 0.75;
}

.nx-public-logo[b-ivysauudow] {
    display: block;
    width: auto;
    height: 28px;
}

.nx-main[b-ivysauudow] {
    flex: 1;
    background: var(--nx-bg-warm, #f7f4f1);
    padding: 1rem 0;
}

.nx-container[b-ivysauudow] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.nx-footer[b-ivysauudow] {
    background: var(--nx-primary, #1a1a1a);
    color: #999;
    padding: 2rem 0;
    text-align: center;
    font-size: 0.8rem;
    letter-spacing: 0.01em;
}

.nx-footer p[b-ivysauudow] {
    margin: 0;
}

#blazor-error-ui[b-ivysauudow] {
    color-scheme: light only;
    background: #fff3cd;
    bottom: 0;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
    display: none;
    left: 0;
    padding: 0.75rem 1.5rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
    border-top: 3px solid #e6940a;
}

#blazor-error-ui .dismiss[b-ivysauudow] {
    cursor: pointer;
    position: absolute;
    right: 1rem;
    top: 0.5rem;
}

@media (max-width: 768px) {
    .nx-app[b-ivysauudow] {
        height: auto;
        /* dvh, not vh: 100vh is the address-bar-collapsed height, so on iOS this
           floor alone makes the document taller than the screen and leaves the
           footer sitting under the fold as an empty second page. */
        min-height: 100vh;
        min-height: 100dvh;
        flex-direction: column;
        overflow: visible;
    }

    .nx-content-column[b-ivysauudow] {
        width: 100%;
        overflow: visible;
    }

    .nx-main[b-ivysauudow] {
        padding: 0.5rem 0;
    }

    .nx-container[b-ivysauudow] {
        padding: 0 1rem;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-chvb3nm3jv],
.components-reconnect-repeated-attempt-visible[b-chvb3nm3jv],
.components-reconnect-failed-visible[b-chvb3nm3jv],
.components-pause-visible[b-chvb3nm3jv],
.components-resume-failed-visible[b-chvb3nm3jv],
.components-rejoining-animation[b-chvb3nm3jv] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-retrying[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-failed[b-chvb3nm3jv],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-chvb3nm3jv] {
    display: block;
}


#components-reconnect-modal[b-chvb3nm3jv] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-chvb3nm3jv 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-chvb3nm3jv 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-chvb3nm3jv 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-chvb3nm3jv]::backdrop {
    background-color: rgba(0, 0, 0, 0.5);
    animation: components-reconnect-modal-fadeInOpacity-b-chvb3nm3jv 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-chvb3nm3jv {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-chvb3nm3jv {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-chvb3nm3jv {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-chvb3nm3jv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-chvb3nm3jv] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-chvb3nm3jv] {
    border: 0;
    background-color: #1a1a1a;
    color: white;
    padding: 8px 24px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.2s;
}

    #components-reconnect-modal button:hover[b-chvb3nm3jv] {
        background-color: #333;
    }

    #components-reconnect-modal button:active[b-chvb3nm3jv] {
        background-color: #000;
    }

.components-rejoining-animation[b-chvb3nm3jv] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-chvb3nm3jv] {
        position: absolute;
        border: 3px solid #1a1a1a;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-chvb3nm3jv 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-chvb3nm3jv] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-chvb3nm3jv {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Admin/ExpertInfos/Index.razor.rz.scp.css */
/* Compact inline toggle for admin table rows */
.nx-duty-toggle-sm[b-qecymg2h0u] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.25rem 0.65rem;
    border-radius: 100px;
    border: 1.5px solid #e2e8f0;
    background: #f1f5f9;
    cursor: pointer;
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
    white-space: nowrap;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
    font-family: inherit;
}

.nx-duty-toggle-sm:hover[b-qecymg2h0u] {
    border-color: #cbd5e1;
    background: #e2e8f0;
}

.nx-duty-toggle-sm.nx-duty-on[b-qecymg2h0u] {
    background: #ecfdf5;
    border-color: #6ee7b7;
    color: #047857;
}

.nx-duty-toggle-sm.nx-duty-on:hover[b-qecymg2h0u] {
    background: #d1fae5;
    border-color: #34d399;
}

/* Status Dots */
.nx-roster-dot[b-qecymg2h0u] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.nx-roster-on[b-qecymg2h0u] {
    background: #10b981;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

.nx-roster-off[b-qecymg2h0u] {
    background: #94a3b8;
}

/* Mini pill inside the table toggle */
.nx-duty-sm-pill[b-qecymg2h0u] {
    width: 26px;
    height: 14px;
    border-radius: 100px;
    background: #cbd5e1;
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    transition: background 0.2s;
}

.nx-duty-toggle-sm.nx-duty-on .nx-duty-sm-pill[b-qecymg2h0u] {
    background: #00a99d;
}

.nx-duty-sm-thumb[b-qecymg2h0u] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,0.2);
    transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    display: block;
}

.nx-duty-sm-thumb.nx-duty-sm-on[b-qecymg2h0u] {
    transform: translateX(12px);
}

/* Segmented filter pills */
.nx-filter-chip[b-qecymg2h0u] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    font-size: 0.8rem;
    font-weight: 500;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #475569;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

.nx-filter-chip:hover[b-qecymg2h0u] {
    border-color: #cbd5e1;
    background: #f8fafc;
    color: #1e293b;
}

.nx-filter-chip.active[b-qecymg2h0u] {
    background: #1a1a1a;
    border-color: #1a1a1a;
    color: #ffffff;
}

.nx-filter-chip.active .nx-roster-off[b-qecymg2h0u] {
    background: #94a3b8;
}

.nx-count-badge[b-qecymg2h0u] {
    padding: 0.1rem 0.45rem;
    border-radius: 9999px;
    font-size: 0.72rem;
    font-weight: 600;
    background: rgba(0, 0, 0, 0.06);
    color: inherit;
}

.nx-filter-chip.active .nx-count-badge[b-qecymg2h0u] {
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff;
}

/* Pill Search Input */
.nx-search-wrapper[b-qecymg2h0u] {
    position: relative;
}

.nx-search-icon[b-qecymg2h0u] {
    position: absolute;
    left: 0.85rem;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    display: flex;
    align-items: center;
}

.nx-search-input[b-qecymg2h0u] {
    padding-left: 2.25rem !important;
    border-radius: 9999px !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 0.85rem;
    background-color: #ffffff;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.nx-search-input:focus[b-qecymg2h0u] {
    border-color: #1a1a1a !important;
    box-shadow: 0 0 0 3px rgba(26, 26, 26, 0.1) !important;
    outline: none;
}

/* Two-line table cell styling */
.nx-expert-table th[b-qecymg2h0u] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    vertical-align: middle;
}

.nx-expert-table td[b-qecymg2h0u] {
    vertical-align: middle;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
}

.nx-cell-primary[b-qecymg2h0u] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.35;
}

.nx-cell-secondary[b-qecymg2h0u] {
    font-size: 0.75rem;
    color: #64748b;
    line-height: 1.35;
}

.nx-org-pill[b-qecymg2h0u] {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 6px;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: var(--bs-font-monospace);
    background: #f1f5f9;
    color: #334155;
    border: 1px solid #e2e8f0;
}
/* /Components/Pages/Coordinator/DiagnosticsDetail.razor.rz.scp.css */
/* Scoped styles for DiagnosticsDetail */
.modal-backdrop-blur[b-ep39umikc8] {
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    z-index: 1050;
}

.positional-close[b-ep39umikc8] {
    position: absolute;
    right: 1.25rem;
    top: 1.25rem;
}
/* /Components/Pages/Doctor/ConsultationAction.razor.rz.scp.css */
.action-card[b-m4hqdylchb] {
    background-color: #ffffff;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.05);
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.loading-card[b-m4hqdylchb], .error-card[b-m4hqdylchb], .expired-card[b-m4hqdylchb], .declined-card[b-m4hqdylchb] {
    text-align: center;
    padding: 48px 24px;
    align-items: center;
}

.state-icon[b-m4hqdylchb] {
    font-size: 40px;
    margin-bottom: 12px;
}

.notice-desc[b-m4hqdylchb] {
    color: #4b5563;
    font-size: 15px;
    line-height: 1.5;
    max-width: 420px;
    margin: 0 auto 16px;
}

.expired-footer[b-m4hqdylchb] {
    padding-top: 16px;
    border-top: 1px solid #f3f4f6;
    width: 100%;
}

/* ── Live Countdown Bar ── */
.countdown-bar[b-m4hqdylchb] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: all 0.3s ease;
}

.countdown-bar.urgent[b-m4hqdylchb] {
    background: #fef2f2;
    border-color: #fecaca;
}

.countdown-info[b-m4hqdylchb] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #334155;
}

.countdown-bar.urgent .countdown-info[b-m4hqdylchb] {
    color: #b91c1c;
}

.timer-icon[b-m4hqdylchb] {
    font-size: 16px;
}

.progress-track[b-m4hqdylchb] {
    width: 100%;
    height: 6px;
    background: #e2e8f0;
    border-radius: 9999px;
    overflow: hidden;
}

.countdown-bar.urgent .progress-track[b-m4hqdylchb] {
    background: #fee2e2;
}

.progress-fill[b-m4hqdylchb] {
    height: 100%;
    background: #10b981;
    border-radius: 9999px;
    transition: width 1s linear;
}

.countdown-bar.urgent .progress-fill[b-m4hqdylchb] {
    background: #ef4444;
}

/* ── Triage Card ── */
.triage-card[b-m4hqdylchb] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.triage-header[b-m4hqdylchb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.topic-tag[b-m4hqdylchb] {
    background-color: #1a1a1a;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 6px;
}

.mode-tag[b-m4hqdylchb] {
    background-color: #f1f5f9;
    color: #475569;
    font-size: 11px;
    font-weight: 500;
    padding: 4px 8px;
    border-radius: 6px;
}

.patient-name[b-m4hqdylchb] {
    font-size: 22px;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
}

.patient-demographics[b-m4hqdylchb] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.demo-chip[b-m4hqdylchb] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 12px;
    color: #64748b;
}

.slot-display-box[b-m4hqdylchb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 12px 16px;
    gap: 12px;
}

.slot-item[b-m4hqdylchb] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.slot-label[b-m4hqdylchb] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    font-weight: 600;
}

.slot-val[b-m4hqdylchb] {
    font-size: 14px;
    color: #0f172a;
    font-weight: 500;
}

.slot-val.highlight[b-m4hqdylchb] {
    color: #047857;
    font-weight: 700;
}

.clinical-box[b-m4hqdylchb] {
    background: #fafafa;
    border: 1px solid #f0f0f0;
    border-radius: 10px;
    padding: 12px 14px;
}

.clinical-title[b-m4hqdylchb] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    font-weight: 600;
    margin-bottom: 4px;
}

.clinical-text[b-m4hqdylchb] {
    font-size: 13px;
    color: #334155;
    line-height: 1.45;
}

.safety-flags-box[b-m4hqdylchb] {
    background: #fffbeb;
    border: 1px solid #fef3c7;
    border-radius: 10px;
    padding: 12px 14px;
}

.safety-flags-title[b-m4hqdylchb] {
    font-size: 12px;
    font-weight: 600;
    color: #92400e;
    margin-bottom: 6px;
}

.safety-list[b-m4hqdylchb] {
    margin: 0;
    padding-left: 20px;
    font-size: 12px;
    color: #78350f;
    line-height: 1.5;
}

.error-alert[b-m4hqdylchb] {
    padding: 10px 14px;
    font-size: 13px;
    border-radius: 8px;
    margin-bottom: 0;
}

/* ── Actions ── */
.action-buttons-container[b-m4hqdylchb] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 6px;
}

.btn-accept[b-m4hqdylchb] {
    background-color: #10b981;
    color: #ffffff;
    border: none;
    padding: 14px 20px;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(16, 185, 129, 0.25);
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-accept:hover:not(:disabled)[b-m4hqdylchb] {
    background-color: #059669;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(16, 185, 129, 0.35);
}

.btn-accept:disabled[b-m4hqdylchb] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-decline[b-m4hqdylchb] {
    background: transparent;
    color: #ef4444;
    border: 1px solid #fca5a5;
    padding: 10px 16px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-decline:hover:not(:disabled)[b-m4hqdylchb] {
    background-color: #fef2f2;
    border-color: #ef4444;
}

/* ── Decline Options ── */
.decline-options-box[b-m4hqdylchb] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.decline-title[b-m4hqdylchb] {
    font-size: 13px;
    font-weight: 600;
    color: #475569;
}

.decline-chips[b-m4hqdylchb] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.chip[b-m4hqdylchb] {
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 12px;
    color: #334155;
    cursor: pointer;
    transition: all 0.2s ease;
}

.chip:hover[b-m4hqdylchb] {
    border-color: #94a3b8;
}

.chip.selected[b-m4hqdylchb] {
    background: #1e293b;
    border-color: #1e293b;
    color: #ffffff;
    font-weight: 600;
}

.decline-actions[b-m4hqdylchb] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 4px;
}

/* ── Confirmed View ── */
.confirmed-badge[b-m4hqdylchb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #065f46;
    padding: 6px 14px;
    border-radius: 9999px;
    font-size: 13px;
    font-weight: 600;
    width: fit-content;
}

.patient-headline[b-m4hqdylchb] {
    font-size: 24px;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
}

.schedule-pill[b-m4hqdylchb] {
    font-size: 14px;
    color: #475569;
    font-weight: 500;
}

.info-section[b-m4hqdylchb] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.info-row[b-m4hqdylchb] {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
}

.info-label[b-m4hqdylchb] {
    color: #64748b;
}

.info-val[b-m4hqdylchb] {
    color: #0f172a;
}

.action-buttons-group[b-m4hqdylchb] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 8px;
}

.btn-action-primary[b-m4hqdylchb] {
    background-color: #10b981;
    color: #ffffff;
    border: none;
    padding: 14px 20px;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
    transition: all 0.2s ease;
}

.btn-action-primary:hover:not(:disabled)[b-m4hqdylchb] {
    background-color: #059669;
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(16, 185, 129, 0.4);
}

.btn-action-secondary[b-m4hqdylchb] {
    background-color: #1a1a1a;
    color: #ffffff;
    border: none;
    padding: 12px 18px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.btn-action-secondary:hover[b-m4hqdylchb] {
    background-color: #333333;
    color: #ffffff;
}

.btn-icon[b-m4hqdylchb] {
    font-size: 18px;
}
/* /Components/Pages/Expert/ClaimPoolTable.razor.rz.scp.css */
/* Claim pool table — quiet, fixed-height, and deliberately less loud than the invitation cards
   above it. An invitation is counting down; this queue is not, and the colour weight should say so.

   Density is pinned to the Recent Request Activity card at the bottom of the page: 36px header row,
   42px body rows, 16px card padding, 16px radius. Three modules on one screen have to read as one
   table style, not three. */

.claim-pool[b-j7vtu0v8k2] {
    background: #FFFFFF;
    border: 1px solid #E8ECF2;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
    padding: 16px;
    overflow: hidden;
}

/* ── Card heading ─────────────────────────────────────────────────────────── */

/* The label lives inside the card. Outside it, the page read as a loose heading with a table under
   it rather than as one module beside the other two. */
.claim-pool__head[b-j7vtu0v8k2] { margin: 0 0 12px; }

.claim-pool__title[b-j7vtu0v8k2] {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1F2A44;
}

.claim-pool__sub[b-j7vtu0v8k2] {
    margin: 2px 0 0;
    font-size: 12.5px;
    color: #8A97AB;
}

/* ── Controls ─────────────────────────────────────────────────────────────── */

.claim-pool__controls[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.claim-pool__controls-right[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1 1 460px;
    justify-content: flex-end;
    min-width: 0;
}

/* The filter groups are the controls that can give up width without becoming unusable, so they are
   the ones allowed to shrink and scroll. Squeezing the search instead would leave a box too narrow to
   read a patient name in.

   This used to be a child selector, which reached the category group but not the consult type chips
   nested a level deeper in __controls-right. Without a min-width floor of 0 a flex item will not
   shrink below its content, so rather than scrolling, that group overflowed its container — off the
   left edge of the card, taking the "All" chip off the screen with it. */
.claim-pool__controls .segmented[b-j7vtu0v8k2] {
    flex: 0 1 auto;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.claim-pool__controls .segmented[b-j7vtu0v8k2]::-webkit-scrollbar { display: none; }

.segmented[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    gap: 3px;
    background: #F5F7FB;
    border: 1px solid #E7EBF1;
    border-radius: 11px;
    padding: 3px;
    min-height: 34px;
}

.segmented__item[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 26px;
    padding: 0 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #60708A;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease;
}

.segmented__item:hover[b-j7vtu0v8k2] { color: #1E293B; }

.segmented__item.is-selected[b-j7vtu0v8k2] {
    background: #FFFFFF;
    color: #1E293B;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.segmented--compact .segmented__item[b-j7vtu0v8k2] { padding: 0 9px; }

.segmented__count[b-j7vtu0v8k2] {
    background: #EFF3F8;
    border-radius: 999px;
    padding: 1px 6px;
    font-size: 11px;
    font-weight: 600;
    color: #64748B;
}

.search[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 260px;
    min-width: 200px;
    max-width: 340px;
    height: 34px;
    padding: 0 12px;
    background: #FFFFFF;
    border: 1px solid #E4EAF2;
    border-radius: 10px;
    color: #94A3B8;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.search:focus-within[b-j7vtu0v8k2] {
    border-color: #CBD5E1;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, .10);
}

.search input[b-j7vtu0v8k2] {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: none;
    background: transparent;
    font-size: 12.5px;
    color: #334155;
}

.search input[b-j7vtu0v8k2]::placeholder { color: #94A3B8; }

/* Safari draws its own clear affordance on type=search; it fights the layout. */
.search input[b-j7vtu0v8k2]::-webkit-search-decoration,
.search input[b-j7vtu0v8k2]::-webkit-search-cancel-button { -webkit-appearance: none; }

.icon[b-j7vtu0v8k2] {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ── Table ────────────────────────────────────────────────────────────────── */

.table-card[b-j7vtu0v8k2] {
    margin-top: 12px;
    border: 1px solid #E8ECF2;
    border-radius: 12px;
    overflow: hidden;
    background: #FFFFFF;
}

.pool-table[b-j7vtu0v8k2] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.pool-table thead th[b-j7vtu0v8k2] {
    height: 36px;
    padding: 0 12px;
    background: #FBFCFE;
    border-bottom: 1px solid #EDF1F5;
    color: #61708A;
    font-size: 12px;
    font-weight: 600;
    text-align: left;
}

.col-patient[b-j7vtu0v8k2] { width: 27%; }
.col-type[b-j7vtu0v8k2]    { width: 14%; }
.col-reason[b-j7vtu0v8k2]  { width: 28%; }
/* Wider than it was: it carries the wait, the slot and the clash warning now that the overflow
   button is gone. The actions column gave up the width — it holds one button. */
.col-queue[b-j7vtu0v8k2]   { width: 21%; }
.col-actions[b-j7vtu0v8k2] { width: 10%; }

.sort[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.sort__arrow[b-j7vtu0v8k2] { color: #94A3B8; }

.pool-table tbody td[b-j7vtu0v8k2] {
    height: 42px;
    padding: 0 12px;
    border-bottom: 1px solid #F0F3F7;
    vertical-align: middle;
}

.pool-table tbody tr:last-child td[b-j7vtu0v8k2] { border-bottom: 0; }
.pool-table tbody tr:hover[b-j7vtu0v8k2] { background: #FAFBFD; }

.pool-table tbody tr.is-empty:hover[b-j7vtu0v8k2] { background: transparent; }

.pool-table tbody tr.is-empty td[b-j7vtu0v8k2] {
    height: 84px;
    text-align: center;
    color: #94A3B8;
    font-size: 13px;
}

/* Patient */

.patient[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.avatar[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    border-radius: 50%;
    color: #5C6B84;
    font-size: 11px;
    font-weight: 600;
}

.patient__name[b-j7vtu0v8k2] {
    font-size: 13px;
    font-weight: 500;
    color: #22314D;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Consult type */

.pill[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #F6F8FB;
    border: 1px solid #EEF2F6;
    color: #465670;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
}

.pill .icon[b-j7vtu0v8k2] { width: 13px; height: 13px; }

/* Reason */

.reason[b-j7vtu0v8k2] {
    display: block;
    font-size: 12.5px;
    font-weight: 400;
    font-style: italic;
    color: #8A97AB;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* In queue */

/* Three lines at most — wait, slot/reason, clash — and the line-heights are set so all three fit
   the 42px row rather than pushing that one row out of step with the rest. */
.queue__time[b-j7vtu0v8k2] {
    font-size: 12.5px;
    font-weight: 600;
    line-height: 15px;
    color: #1F2A44;
    white-space: nowrap;
}

.queue__meta[b-j7vtu0v8k2] {
    font-size: 11px;
    line-height: 13px;
    color: #94A3B8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* The clash is the only red on this table. It is advisory — the pool exists precisely because the
   strict availability rules found nobody — so it warns and never blocks the Claim button. */
.queue__clash[b-j7vtu0v8k2] {
    font-size: 11px;
    line-height: 13px;
    font-weight: 600;
    color: #B91C1C;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Actions */

.actions[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-claim[b-j7vtu0v8k2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 28px;
    padding: 0 12px;
    border: 0;
    border-radius: 999px;
    background: #C96A12;
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .15s ease;
}

.btn-claim .icon[b-j7vtu0v8k2] { width: 13px; height: 13px; }

.btn-claim:hover:not(:disabled)[b-j7vtu0v8k2] { background: #B85F10; }
.btn-claim:active:not(:disabled)[b-j7vtu0v8k2] { background: #A8540D; }
.btn-claim:disabled[b-j7vtu0v8k2] { opacity: .7; cursor: default; }

.spinner[b-j7vtu0v8k2] {
    width: 12px;
    height: 12px;
    border: 2px solid rgba(255, 255, 255, .45);
    border-top-color: #FFFFFF;
    border-radius: 50%;
    animation: claim-spin-b-j7vtu0v8k2 .6s linear infinite;
}

@keyframes claim-spin-b-j7vtu0v8k2 { to { transform: rotate(360deg); } }

/* ── Footer ───────────────────────────────────────────────────────────────── */

.claim-pool__footer[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 10px;
    flex-wrap: wrap;
}

.footer__summary[b-j7vtu0v8k2] {
    font-size: 12.5px;
    color: #7C8AA5;
}

.pager[b-j7vtu0v8k2] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pager__item[b-j7vtu0v8k2] {
    min-width: 30px;
    height: 30px;
    padding: 0 9px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: #63738D;
    font-size: 12.5px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color .15s ease;
}

.pager__item:hover:not(:disabled)[b-j7vtu0v8k2] { background: #F8FAFC; }

.pager__item.is-active[b-j7vtu0v8k2] {
    background: #F4F7FB;
    border-color: #E4EAF2;
    color: #1F2A44;
}

.pager__item:disabled[b-j7vtu0v8k2] { opacity: .35; cursor: default; }

/* ── Narrow widths ────────────────────────────────────────────────────────── */

@media (max-width: 1100px) {
    .claim-pool[b-j7vtu0v8k2] { padding: 16px; border-radius: 16px; }

    .claim-pool__controls[b-j7vtu0v8k2],
    .claim-pool__controls-right[b-j7vtu0v8k2] { align-items: stretch; }

    .search[b-j7vtu0v8k2] { width: 100%; }

    /* The table keeps its shape and scrolls sideways rather than reflowing: a doctor comparing wait
       times across rows needs the columns to stay aligned. */
    .table-card[b-j7vtu0v8k2] { overflow-x: auto; }
    .pool-table[b-j7vtu0v8k2] { min-width: 860px; }
}

/* One row held the category chips, the consult type chips and the search at every width. Below
   roughly 420px that row runs out of room, and because the right-hand group is justified to its end
   and the search will not go under its 200px floor, the consult type chips are what gives.

   On a phone each control takes its own line, so the chips are reachable rather than merely
   narrower — and the search gets a box worth typing a patient name into. */
@media (max-width: 640px) {
    .claim-pool__controls-right[b-j7vtu0v8k2] {
        flex: 1 1 100%;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    /* Left-aligned now that the group owns the whole line instead of sharing its
       right edge with the search. */
    .claim-pool__controls-right > .segmented[b-j7vtu0v8k2] { justify-content: flex-start; }

    /* Both of these carry a flex shorthand written for a row, where the basis is a
       width and growing means growing sideways. Turning the container into a column
       re-points those at the cross axis, so `flex: 1 1 260px` stops meaning "260px
       wide, take any slack" and starts meaning "260px TALL, take all of it" — which
       rendered the search as a box some 500px deep. Neither control wants a say in
       its own height: they are 34px tall and that is that. */
    .claim-pool__controls-right > .segmented[b-j7vtu0v8k2],
    .claim-pool__controls-right > .search[b-j7vtu0v8k2] { flex: none; }

    .search[b-j7vtu0v8k2] { max-width: none; }
}
/* /Components/Pages/Expert/ConsultationDetail.razor.rz.scp.css */
/* ==========================================================================
   ConsultationDetail.razor.css
   Isolated component styles for Consultation Details & Workspace
   ========================================================================== */

/* ── Workspace Pane & Grid (.nx-ws) ──────────────────────────────────────── */
.nx-ws[b-h651xstqff] {
    --nx-ws-h: clamp(420px, calc(100vh - 11.5rem), 940px);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

@supports (height: 100dvh) {
    .nx-ws[b-h651xstqff] {
        --nx-ws-h: clamp(420px, calc(100dvh - 11.5rem), 940px);
    }
}

.nx-ws__bar[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border, #DBDEE0);
}

.nx-ws__id[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.nx-ws__back[b-h651xstqff] {
    color: var(--mint, #24B685);
    text-decoration: none;
    font-size: 0.875rem;
}

.nx-ws__name[b-h651xstqff] {
    font-weight: 600;
}

.nx-ws__tabs[b-h651xstqff] {
    display: inline-flex;
    border: 1px solid var(--border, #DBDEE0);
    border-radius: 99px;
    overflow: hidden;
}

.nx-ws__tab[b-h651xstqff] {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0.35rem 0.9rem;
    font-size: 0.8125rem;
    color: var(--text-secondary, #636467);
}

.nx-ws__tab.is-active[b-h651xstqff] {
    background: var(--button-black, #1D1E20);
    color: #fff;
}

.nx-ws__grid[b-h651xstqff] {
    display: grid;
    grid-template-columns: 65fr 35fr;
    gap: 1rem;
    align-items: start;
}

.nx-ws__pane[b-h651xstqff] {
    min-width: 0;
}

.nx-ws__frame[b-h651xstqff] {
    display: block;
    width: 100%;
    max-width: 100%;
    height: var(--nx-ws-h);
    border: 1px solid var(--border, #DBDEE0);
    border-radius: 12px;
    background: #000;
}

.nx-ws__frame--chat[b-h651xstqff] {
    background: var(--surface, #fff);
}

.nx-ws__chart[b-h651xstqff] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.nx-ws-rx__toggle[b-h651xstqff] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.nx-ws-rx__indicator[b-h651xstqff] {
    color: var(--text-secondary, #636467);
    font-size: 1.1rem;
    font-weight: 500;
}

.nx-ws-rx__body--collapsed[b-h651xstqff] {
    display: none;
}

.nx-ws-rx__doc-link[b-h651xstqff] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0.35rem 0.85rem;
    border: 1px solid rgba(34,35,38,.10);
    border-radius: 999px;
    background: #fff;
    color: #3F4145;
    text-decoration: none;
    font-weight: 500;
    font-size: 0.82rem;
    line-height: 1.2;
    box-shadow: 0 2px 7px rgba(21,31,38,.07);
}

.nx-ws-rx__doc-link:hover[b-h651xstqff] {
    background: #F8F8F7;
    color: #222326;
    border-color: rgba(34,35,38,.16);
}

.nx-ws__scroll[b-h651xstqff] {
    max-height: var(--nx-ws-h);
    overflow-y: auto;
    padding-right: 0.25rem;
}

.nx-ws__scroll > *[b-h651xstqff] {
    flex: 0 0 auto;
}

@media (max-width: 900px) {
    .nx-ws[b-h651xstqff] {
        gap: 1rem;
    }
    .nx-ws__grid[b-h651xstqff] {
        grid-template-columns: 1fr;
    }
    .nx-ws__scroll[b-h651xstqff] {
        max-height: none;
        overflow-y: visible;
        padding-right: 0;
    }
    .nx-ws__bar[b-h651xstqff] {
        position: sticky;
        top: 0.5rem;
        z-index: 5;
        display: block;
        padding: 1.25rem;
        border: 0;
        border-radius: 16px;
        background: var(--surface, #fff);
        box-shadow: 0 2px 12px rgba(21,31,38,.06);
    }
    .nx-ws__id[b-h651xstqff] {
        display: flex;
        width: 100%;
        gap: 0.65rem 0.75rem;
    }
    .nx-ws__back[b-h651xstqff] {
        flex: 0 0 100%;
        font-size: 0.875rem;
    }
    .nx-ws__name[b-h651xstqff] {
        min-width: 0;
        max-width: calc(100% - 7.5rem);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 1.5rem;
        line-height: 1.2;
        font-weight: 700;
        color: var(--text-primary, #222326);
    }
    .nx-ws__id > .badge[b-h651xstqff] {
        align-self: center;
        padding: 0.38rem 0.8rem;
        border-radius: 999px;
    }
    .nx-ws__tabs[b-h651xstqff] {
        display: flex;
        width: 100%;
        margin-top: 1.15rem;
        padding: 0;
        border: 0;
        border-radius: 999px;
        background: var(--bg-subtle, #F6F8FA);
    }
    .nx-ws__tab[b-h651xstqff] {
        flex: 1 1 0;
        min-height: 44px;
        padding: 0.6rem 0.75rem;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.55rem;
        font-size: 0.875rem;
    }
    .nx-ws__tab svg[b-h651xstqff] {
        width: 18px;
        height: 18px;
        flex: 0 0 auto;
    }
    .nx-ws__pane[b-h651xstqff] {
        display: none;
    }
    .nx-ws__pane.is-shown[b-h651xstqff] {
        display: block;
    }
}

@media (min-width: 901px) {
    .nx-ws__tabs[b-h651xstqff] {
        display: none;
    }
    .nx-ws__pane[b-h651xstqff] {
        display: block;
    }
}

/* ── Status Bar & Patient Summary ────────────────────────────────────────── */
.nx-consult-header[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    border-radius: 14px;
    padding: 1rem 1.25rem;
    margin-bottom: 0.85rem;
}
.nx-consult-header--idle[b-h651xstqff] {
    background: var(--bg-subtle, #FAFBFB);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-consult-header--live[b-h651xstqff] {
    background: linear-gradient(90deg, var(--mint-ultralight, #EAFAF8) 0%, var(--bg-subtle, #FAFBFB) 100%);
    border: 1px solid var(--mint-soft, #D5F4F2);
}
.nx-consult-header--ready[b-h651xstqff] {
    background: linear-gradient(100deg, #F2F8FC 0%, #F7FAFC 100%);
    border: none;
}
.nx-consult-header__modeicon[b-h651xstqff] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--info-soft, #EAF5FC);
    color: var(--info, #2581B8);
}
.nx-consult-header__modeicon svg[b-h651xstqff] {
    width: 20px;
    height: 20px;
}
.nx-consult-header__startbtn[b-h651xstqff] {
    background: var(--button-black, #1D1E20);
    color: #fff;
    border: none;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}
.nx-consult-header__startbtn svg[b-h651xstqff] {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}
.nx-consult-header--ended[b-h651xstqff] {
    background: var(--bg-subtle, #FAFBFB);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-consult-header__state[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    flex-wrap: wrap;
    color: var(--text-primary, #222326);
}
.nx-consult-header__divider[b-h651xstqff] {
    width: 1px;
    height: 28px;
    background: var(--border, #DBDEE0);
}
.nx-consult-header__dot[b-h651xstqff] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--mint-dark, #13996E);
    display: inline-block;
    box-shadow: 0 0 0 4px rgba(36, 182, 133, 0.12);
    animation: nx-pulse-b-h651xstqff 1.4s infinite;
}
.nx-consult-header__timer[b-h651xstqff] {
    font-variant-numeric: tabular-nums;
    color: var(--text-primary, #222326);
}
@keyframes nx-pulse-b-h651xstqff {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.45; }
}

.nx-patient-summary[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1.2rem 1.35rem;
    border: 0;
    border-radius: 16px;
    background: var(--surface, #fff);
    box-shadow: 0 2px 12px rgba(21,31,38,.06);
}
.nx-patient-summary__name[b-h651xstqff] {
    margin: 0 0 0.8rem;
    font-size: 1.55rem;
    line-height: 1.15;
    font-weight: 700;
    color: var(--text-primary, #222326);
}
.nx-patient-summary__meta[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0;
    flex-wrap: wrap;
    color: var(--text-secondary, #636467);
    font-size: 0.9rem;
}
.nx-patient-summary__item[b-h651xstqff] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}
.nx-patient-summary__item + .nx-patient-summary__item[b-h651xstqff] {
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: 1px solid var(--border, #DBDEE0);
}
.nx-patient-summary__icon[b-h651xstqff] {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
}
.nx-patient-summary__badge[b-h651xstqff] {
    align-self: flex-start;
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    background: var(--mint-ultralight, #EAFAF8);
    color: var(--mint-dark, #13996E);
    font-size: 0.75rem;
    font-weight: 700;
}
.nx-patient-summary__badge--live[b-h651xstqff] {
    background: var(--mint-soft, #D5F4F2);
    color: var(--mint-dark, #13996E);
}
.nx-patient-summary__badge--attention[b-h651xstqff] {
    background: #FFF4E5;
    color: #9A5B00;
}
.nx-patient-summary__badge--muted[b-h651xstqff] {
    background: var(--bg-subtle, #FAFBFB);
    color: var(--text-secondary, #636467);
    box-shadow: inset 0 0 0 1px var(--border, #DBDEE0);
}
.nx-patient-summary__badge--alert[b-h651xstqff] {
    background: #FDECEC;
    color: var(--danger, #F15D5F);
}

@media (max-width: 575.98px) {
    .nx-consult-header__divider[b-h651xstqff] { display: none; }
    .nx-patient-summary[b-h651xstqff] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        gap: 1rem 0.75rem;
        padding: 1.4rem 1.25rem;
        border-radius: 18px;
    }
    .nx-patient-summary > div[b-h651xstqff] { display: contents; }
    .nx-patient-summary__name[b-h651xstqff] {
        min-width: 0;
        margin: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        align-self: center;
        font-size: 1.65rem;
    }
    .nx-patient-summary__badge[b-h651xstqff] {
        grid-column: 2;
        grid-row: 1;
        align-self: center;
    }
    .nx-patient-summary__meta[b-h651xstqff] {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
        flex-wrap: nowrap;
        font-size: 0.82rem;
        line-height: 1.25;
    }
    .nx-patient-summary__item[b-h651xstqff] {
        min-width: 0;
        white-space: nowrap;
    }
    .nx-patient-summary__item + .nx-patient-summary__item[b-h651xstqff] {
        margin-left: 0.75rem;
        padding-left: 0.75rem;
    }
    .nx-patient-summary__icon[b-h651xstqff] {
        width: 17px;
        height: 17px;
    }
    .nx-patient-summary__item[title="Call duration"][b-h651xstqff] {
        display: none;
    }
}

@media (max-width: 390px) {
    .nx-patient-summary[b-h651xstqff] { padding-inline: 1rem; }
    .nx-patient-summary__meta[b-h651xstqff] { font-size: 0.75rem; }
    .nx-patient-summary__item[b-h651xstqff] { gap: 0.35rem; }
    .nx-patient-summary__item + .nx-patient-summary__item[b-h651xstqff] { margin-left: 0.5rem; padding-left: 0.5rem; }
}

/* ── Tab Bar, Intake Inline, Grid, Patient Card, Checklist ───────────────── */
.nx-tabbar[b-h651xstqff] {
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--border, #DBDEE0);
    margin: 1rem 0 0;
    overflow: visible;
}
.nx-tabbar__item[b-h651xstqff] {
    background: none;
    border: none;
    padding: 0.65rem 0.1rem;
    margin-bottom: -1px;
    white-space: nowrap;
    font-family: var(--smd-font-sans, inherit);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-muted, #7A7F82);
    border-bottom: 2px solid transparent;
    cursor: pointer;
}
.nx-tabbar__item.is-active[b-h651xstqff] {
    color: var(--text-primary, #222326);
    border-bottom-color: var(--mint, #24B685);
}
.nx-tabbar__item:hover:not(.is-active)[b-h651xstqff] {
    color: var(--text-secondary, #636467);
}
.nx-tabbar__dot[b-h651xstqff] {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f59e0b;
    margin-left: 5px;
    vertical-align: middle;
    flex-shrink: 0;
}

.nx-intake-inline.card[b-h651xstqff] {
    border: 1px solid var(--border, #DBDEE0);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
    background: #fff;
}
.nx-intake-inline__header[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 1.25rem;
    cursor: pointer;
    user-select: none;
    background: #fff;
    border-bottom: 1px solid var(--border, #EDEFF0);
    transition: background-color 0.15s ease;
}
.nx-intake-inline__header:hover[b-h651xstqff] {
    background: var(--bg-subtle, #FAFBFB);
}
.nx-intake-inline__header-left[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}
.nx-intake-inline__icon[b-h651xstqff] {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #EFF6FF;
    color: #2563EB;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nx-intake-inline__titles[b-h651xstqff] {
    min-width: 0;
}
.nx-intake-inline__title[b-h651xstqff] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary, #222326);
    display: flex;
    align-items: center;
}
.nx-intake-inline__subtitle[b-h651xstqff] {
    font-size: 0.8rem;
    color: var(--text-muted, #7A7F82);
    margin-top: 0.1rem;
}
.nx-intake-inline__header-right[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}
.nx-intake-inline__indicator[b-h651xstqff] {
    font-size: 0.75rem;
    color: var(--text-secondary, #636467);
}
.nx-intake-inline__body[b-h651xstqff] {
    padding: 1.25rem 1.5rem;
    background: #fff;
}

.nx-encounter-grid[b-h651xstqff] {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
}
.nx-encounter-col[b-h651xstqff] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    min-width: 0;
}
.nx-encounter-col--left[b-h651xstqff] {
    flex: 0 0 35%;
    max-width: 35%;
    min-width: 280px;
}
.nx-encounter-col--right[b-h651xstqff] {
    flex: 1 1 65%;
    min-width: 0;
}
.nx-workspace-card[b-h651xstqff] {
    width: 100%;
    box-sizing: border-box;
    height: auto;
    flex: 0 0 auto;
}
.nx-encounter-grid .card[b-h651xstqff],
.nx-encounter-grid details.card[b-h651xstqff] {
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}
.nx-encounter-grid .card-header[b-h651xstqff] {
    min-height: 52px;
    display: flex;
    align-items: center;
}
.nx-patient-card__toggle[b-h651xstqff] {
    width: 100%;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    pointer-events: none;
}
.nx-patient-card__indicator[b-h651xstqff] {
    display: none;
    color: var(--text-secondary, #636467);
    font-size: 1.1rem;
    font-weight: 500;
}
.nx-encounter-grid details.card > summary[b-h651xstqff] {
    cursor: pointer;
    list-style: none;
    padding: 1rem 1.25rem;
    font-weight: 600;
    color: var(--text-primary, #222326);
}
.nx-encounter-grid details.card > summary[b-h651xstqff]::-webkit-details-marker {
    display: none;
}
.nx-encounter-grid details.card > summary[b-h651xstqff]::after {
    content: "+";
    float: right;
    color: var(--text-secondary, #636467);
}
.nx-encounter-grid details[open] > summary[b-h651xstqff]::after {
    content: "−";
}
@media (max-width: 991.98px) {
    .nx-encounter-grid[b-h651xstqff] { flex-direction: column; }
    .nx-encounter-col--left[b-h651xstqff], .nx-encounter-col--right[b-h651xstqff] {
        flex: none;
        width: 100%;
        max-width: none;
        min-width: 0;
    }
    .nx-patient-card__toggle[b-h651xstqff] {
        pointer-events: auto;
        cursor: pointer;
    }
    .nx-patient-card__indicator[b-h651xstqff] { display: block; }
    .nx-patient-card__body--collapsed[b-h651xstqff] { display: none; }
}

.nx-checklist[b-h651xstqff] {
    background: var(--nx-bg-white, #fff);
    border: 1px solid var(--nx-border, #e0ddd9);
    border-radius: 12px;
}
.nx-checklist__head[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1.1rem 1.25rem;
}
.nx-checklist__title[b-h651xstqff] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--nx-text, #1a1a1a);
    margin: 0 0 0.15rem;
}
.nx-checklist__sub[b-h651xstqff] {
    font-size: 0.85rem;
    color: var(--nx-text-muted, #666);
    margin: 0;
}
.nx-checklist__progress[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.nx-checklist__bar[b-h651xstqff] {
    width: 150px;
    height: 8px;
    border-radius: 9999px;
    background: var(--nx-accent-green-bg, #dbf6e8);
    overflow: hidden;
}
.nx-checklist__bar-fill[b-h651xstqff] {
    height: 100%;
    border-radius: 9999px;
    background: var(--nx-accent-green, #119555);
    transition: width 0.25s ease;
}
.nx-checklist__count[b-h651xstqff] {
    font-size: 0.85rem;
    color: var(--nx-text-muted, #666);
    white-space: nowrap;
}
.nx-checklist__items[b-h651xstqff] {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid var(--nx-border, #e0ddd9);
}
.nx-checklist__item[b-h651xstqff] {
    flex: 1 1 190px;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 1rem 1.25rem;
}
.nx-checklist__item + .nx-checklist__item[b-h651xstqff] {
    border-left: 1px solid var(--nx-border, #e0ddd9);
}
.nx-checklist__icon[b-h651xstqff] {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nx-checklist__icon--done[b-h651xstqff] {
    background: var(--nx-accent-green, #119555);
    color: #fff;
}
.nx-checklist__icon--todo[b-h651xstqff] {
    border: 2px solid #c9cdd1;
}
.nx-checklist__label[b-h651xstqff] {
    font-size: 0.875rem;
    line-height: 1.25;
    color: var(--nx-text, #1a1a1a);
}
.nx-checklist__label--todo[b-h651xstqff] {
    color: var(--nx-text-muted, #666);
}
@media (max-width: 767.98px) {
    .nx-checklist__item[b-h651xstqff] { flex: 1 1 100%; }
    .nx-checklist__item + .nx-checklist__item[b-h651xstqff] {
        border-left: none;
        border-top: 1px solid var(--nx-border, #e0ddd9);
    }
}

/* ── Meet Link & Actions (.nx-meetcard) ──────────────────────────────────── */
.nx-meetcard__summary[b-h651xstqff] {
    display: flex;
    align-items: stretch;
    background: var(--bg-subtle, #F6F8FA);
    border-radius: 12px;
    min-height: 64px;
    padding: 10px 14px;
    margin-bottom: 14px;
}
.nx-meetcard__item[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 0 14px;
}
.nx-meetcard__item:first-child[b-h651xstqff] { padding-left: 0; }
.nx-meetcard__item:last-child[b-h651xstqff] { padding-right: 0; }
.nx-meetcard__item + .nx-meetcard__item[b-h651xstqff] { border-left: 1px solid var(--border, #DBDEE0); }
.nx-meetcard__item--mode[b-h651xstqff] { flex: 0.85; }
.nx-meetcard__item--doctor[b-h651xstqff] { flex: 1.1; }
.nx-meetcard__item--datetime[b-h651xstqff] { flex: 1.25; }
.nx-meetcard__icon[b-h651xstqff] {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    stroke-width: 1.8;
    color: var(--text-primary, #222326);
}
.nx-meetcard__text[b-h651xstqff] {
    font-size: 13px;
    line-height: 1.4;
    color: var(--text-secondary, #636467);
    min-width: 0;
}
.nx-meetcard__item--doctor .nx-meetcard__text[b-h651xstqff] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.nx-meetcard__actions[b-h651xstqff] {
    display: flex;
    gap: 8px;
    width: 100%;
    margin-bottom: 12px;
}
.nx-meetcard__actions .btn[b-h651xstqff] {
    flex: 1 1 0;
    min-width: 0;
    height: 44px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.nx-meetcard__btn-primary[b-h651xstqff] {
    background: var(--button-black, #1D1E20);
    color: #fff;
    border: 1px solid var(--button-black, #1D1E20);
}
.nx-meetcard__btn-primary:hover:not(:disabled)[b-h651xstqff] {
    background: #24262C;
}
.nx-meetcard__btn-secondary[b-h651xstqff] {
    background: #fff;
    color: var(--text-primary, #222326);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-meetcard__btn-secondary:disabled[b-h651xstqff] {
    opacity: 0.45;
    cursor: not-allowed;
}
.nx-meetcard__status[b-h651xstqff] {
    font-size: 13px;
    font-weight: 600;
    color: var(--mint-dark, #13996E);
    text-align: center;
    padding: 12px 2px;
    margin-bottom: 4px;
}
.nx-meetcard__fallback[b-h651xstqff] {
    border: 1px solid var(--border, #DBDEE0);
    border-radius: 10px;
    background: var(--bg-subtle, #FAFBFC);
    overflow: hidden;
}
.nx-meetcard__fallback summary[b-h651xstqff] {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    cursor: pointer;
    list-style: none;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #636467);
}
.nx-meetcard__fallback summary[b-h651xstqff]::-webkit-details-marker {
    display: none;
}
.nx-meetcard__fallback summary[b-h651xstqff]::after {
    content: "▾";
    margin-left: auto;
}
.nx-meetcard__fallback[open] summary[b-h651xstqff]::after {
    content: "▴";
}
.nx-meetcard__fallback-body[b-h651xstqff] {
    padding: 0 14px 14px;
}
.nx-meetcard__btn-join[b-h651xstqff] {
    background: var(--mint-ultralight, #EAFAF8);
    color: var(--mint-dark, #13996E);
    border: 1px solid var(--mint-soft, #D5F4F2);
}
.nx-meetcard__btn-join:hover[b-h651xstqff] {
    background: var(--mint-soft, #D5F4F2);
}
.nx-meetcard__header[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.nx-meetcard__workspace-btn[b-h651xstqff] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    color: var(--text-muted, #7A7F82);
    flex-shrink: 0;
}
.nx-meetcard__workspace-btn:hover[b-h651xstqff] {
    background: var(--bg-subtle, #F6F8FA);
    color: var(--text-primary, #222326);
}
.nx-meetcard__workspace-btn svg[b-h651xstqff] {
    width: 16px;
    height: 16px;
    stroke-width: 1.8;
}

/* ── Consultation Outcome Card (.nx-outcomecard, .nx-outcome-note) ────────── */
.nx-outcome-note[b-h651xstqff] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--bg-subtle, #FAFBFB);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-outcome-note--spaced[b-h651xstqff] {
    margin-bottom: 14px;
}
.nx-outcome-note--quiet[b-h651xstqff] {
    background: none;
    border-color: transparent;
    padding: 0 0 2px;
}
.nx-outcome-note--quiet .nx-outcome-note__title[b-h651xstqff] {
    font-weight: 500;
    color: var(--text-secondary, #636467);
}
.nx-outcome-note--quiet .nx-outcome-note__text[b-h651xstqff] {
    color: var(--text-muted, #7A7F82);
}
.nx-outcome-note--quiet .nx-outcome-note__icon[b-h651xstqff] {
    width: 15px;
    height: 15px;
    flex-basis: 15px;
    margin-top: 2px;
}
.nx-outcome-note + .nx-outcome-note[b-h651xstqff] {
    margin-top: 8px;
}
.nx-outcome-note__icon[b-h651xstqff] {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin-top: 1px;
    stroke-width: 1.8;
    color: var(--text-muted, #7A7F82);
}
.nx-outcome-note__body[b-h651xstqff] {
    min-width: 0;
}
.nx-outcome-note__title[b-h651xstqff] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #222326);
}
.nx-outcome-note__text[b-h651xstqff] {
    font-size: 12px;
    line-height: 1.4;
    margin-top: 2px;
    color: var(--text-secondary, #636467);
}
.nx-outcome-note--warn[b-h651xstqff] {
    background: #FFF9EC;
    border-color: #F0DFB8;
}
.nx-outcome-note--warn .nx-outcome-note__icon[b-h651xstqff] {
    color: #B07D1A;
}
.nx-outcomecard__row[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.nx-outcomecard__row > label[b-h651xstqff] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #222326);
    flex-shrink: 0;
}
.nx-outcomecard__row > select[b-h651xstqff] {
    flex: 1;
    min-width: 0;
}
.nx-outcomecard__complete[b-h651xstqff] {
    width: 100%;
    height: 44px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--button-black, #1D1E20);
    color: #fff;
    border: 1px solid var(--button-black, #1D1E20);
}
.nx-outcomecard__complete:disabled[b-h651xstqff] {
    background: var(--bg-subtle, #F6F8FA);
    color: var(--text-muted, #7A7F82);
    border-color: var(--border, #DBDEE0);
    opacity: 1;
    cursor: not-allowed;
}

/* ── Standalone Prescription Card (.nx-rxcard) ───────────────────────────── */
.nx-rxcard.card[b-h651xstqff] {
    border: none;
    border-radius: 20px;
    box-shadow: 0 1px 4px rgba(21,31,38,.06);
    overflow: hidden;
}
.nx-rxcard .card-body[b-h651xstqff] {
    padding: 1.35rem 1.5rem 1.5rem;
}
.nx-rxcard__header[b-h651xstqff] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding-bottom: 1.1rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px solid var(--border, #EDEFF0);
}
.nx-rxcard__icon[b-h651xstqff] {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--mint-ultralight, #EAFAF8);
    display: flex;
    align-items: center;
    justify-content: center;
}
.nx-rxcard__title[b-h651xstqff] {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text-primary, #222326);
    margin: 0;
}
.nx-rxcard__subtitle[b-h651xstqff] {
    font-size: 0.85rem;
    color: var(--text-muted, #7A7F82);
    margin-top: 0.15rem;
}
.nx-rxcard__chip[b-h651xstqff] {
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0.35rem 0.9rem;
    border: 1px solid transparent;
}
.nx-rxcard__chip--active[b-h651xstqff] {
    background: var(--mint, #24B685);
    color: #fff;
}
.nx-rxcard__chip--inactive[b-h651xstqff] {
    background: #fff;
    color: var(--text-secondary, #6b7280);
    border-color: var(--border, #DBDEE0);
}
.nx-rxcard__meta[b-h651xstqff] {
    font-size: 0.85rem;
    color: var(--text-muted, #7A7F82);
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}
.nx-rxcard__confirmed[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    background: var(--mint-ultralight, #EAFAF8);
    border-radius: 16px;
    padding: 1rem 1.1rem;
    margin-top: 1.1rem;
}
.nx-rxcard__confirmed-left[b-h651xstqff] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.nx-rxcard__check[b-h651xstqff] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--mint-dark, #13996E);
}
.nx-rxcard__confirmed-title[b-h651xstqff] {
    font-weight: 700;
    color: var(--text-primary, #222326);
}
.nx-rxcard__confirmed-sub[b-h651xstqff] {
    font-size: 0.82rem;
    color: var(--text-muted, #7A7F82);
    margin-top: 0.1rem;
}
.nx-rxcard__pill-btn[b-h651xstqff] {
    border-radius: 999px !important;
}
.nx-rxcard__actions[b-h651xstqff] {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
}
.nx-rxcard__action-btn[b-h651xstqff] {
    min-height: 38px;
    padding: 0.45rem 1rem;
    border: 1px solid rgba(34,35,38,.10) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #3F4145 !important;
    font-weight: 500;
    line-height: 1.2;
    box-shadow: 0 2px 7px rgba(21,31,38,.07);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.nx-rxcard__action-btn:hover:not(:disabled)[b-h651xstqff] {
    background: #F8F8F7 !important;
    color: #222326 !important;
    border-color: rgba(34,35,38,.16) !important;
}
.nx-rxcard__action-btn:focus-visible[b-h651xstqff] {
    box-shadow: 0 0 0 3px rgba(34,35,38,.12);
}
.nx-rxcard__start-another[b-h651xstqff] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text-secondary, #6b7280);
    text-decoration: none;
    padding: 0;
    margin-top: 1rem;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

/* ── Decision Card (.nx-decision) ────────────────────────────────────────── */
.nx-decision__lines[b-h651xstqff] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.nx-decision__line[b-h651xstqff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 11px;
    border-radius: 9px;
    background: var(--bg-subtle, #FAFBFB);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-decision__title[b-h651xstqff] {
    font-size: 0.8125rem;
    color: var(--text-primary, #222326);
    min-width: 0;
}
.nx-decision__qty[b-h651xstqff] {
    flex: 0 0 auto;
    background: var(--button-black, #1D1E20);
    color: #fff;
    border-radius: 99px;
    padding: 2px 9px;
    font-size: 0.6875rem;
    font-weight: 600;
}
.nx-decision__actions[b-h651xstqff] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}
.nx-decision__btn[b-h651xstqff] {
    height: 44px;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border: 1px solid transparent;
    flex: 1 1 8rem;
}
.nx-decision__btn--approve[b-h651xstqff] {
    flex-grow: 1.6;
    background: var(--mint-dark, #13996E);
    border-color: var(--mint-dark, #13996E);
    color: #fff;
}
.nx-decision__btn--modify[b-h651xstqff] {
    background: #fff;
    border-color: var(--button-black, #1D1E20);
    color: var(--button-black, #1D1E20);
}
.nx-decision__btn--decline[b-h651xstqff] {
    background: #fff;
    border-color: var(--danger, #F15D5F);
    color: var(--danger, #F15D5F);
}
.nx-decision__btn:disabled[b-h651xstqff] {
    background: var(--bg-subtle, #F6F8FA);
    color: var(--text-muted, #7A7F82);
    border-color: var(--border, #DBDEE0);
    opacity: 1;
    cursor: not-allowed;
}
.nx-decision__note[b-h651xstqff] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--bg-subtle, #FAFBFB);
    border: 1px solid var(--border, #DBDEE0);
}
.nx-decision__note--warn[b-h651xstqff] {
    background: #FFF9EC;
    border-color: #F0DFB8;
}
.nx-decision__note--good[b-h651xstqff] {
    background: var(--mint-ultralight, #F0FAF6);
    border-color: var(--mint-soft, #E7F1EE);
}
.nx-decision__note-icon[b-h651xstqff] {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    margin-top: 1px;
    stroke-width: 1.8;
    color: var(--text-muted, #7A7F82);
}
.nx-decision__note--good .nx-decision__note-icon[b-h651xstqff] {
    color: var(--mint-dark, #13996E);
}
.nx-decision__note-title[b-h651xstqff] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #222326);
}
.nx-decision__note-text[b-h651xstqff] {
    font-size: 0.75rem;
    line-height: 1.4;
    margin-top: 2px;
    color: var(--text-secondary, #636467);
}
/* /Components/Pages/Expert/Profile.razor.rz.scp.css */
/* The page's own sections, aligned to the roster card (WorkingDaysSelect.razor.css) so they read
   as one set rather than one redesigned card sitting among older ones. Scoped to this page: the
   same .card shell is used all over the portal and is not ours to restyle globally.

   The `shadow-sm` utility was removed from the markup rather than overridden — it carries
   !important, so the softer shadow below could not win against it from here. */

.card[b-oeu4bep8ts] {
    border-radius: 16px;
    border-color: rgba(15, 23, 42, .08);
    box-shadow: 0 2px 12px rgba(15, 23, 42, .04);
}

/* Bootstrap rounds these to the old 6px against the card's own corner, so they have to follow it
   up — otherwise the header's white fill squares off inside a 16px card. 15px, not 16: the inner
   radius sits inside the 1px border. */
.card > .card-header:first-child[b-oeu4bep8ts] { border-radius: 15px 15px 0 0; }
.card > .card-body:first-child[b-oeu4bep8ts] { border-top-left-radius: 15px; border-top-right-radius: 15px; }
.card > .card-body:last-child[b-oeu4bep8ts] { border-bottom-left-radius: 15px; border-bottom-right-radius: 15px; }

/* h6 is 16px; the roster card's heading is 14px at the PM's request. Brought down to match so the
   section titles on this page are one size rather than two. */
.card-header .h6[b-oeu4bep8ts] { font-size: 14px; }
/* /Components/Pages/Expert/Requests.razor.rz.scp.css */
/* Requests inbox chrome. The tables below bring their own styles; this is the page header and the
   card that wraps the invitations list.

   Sizing note: the page is three stacked cards of equal weight, so the page title stays at 21px.
   At 32px it sat two full steps above every heading inside the cards and made the whole screen
   read as oversized. */

.rq-header[b-rv3cwsgzuh] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.rq-header__title[b-rv3cwsgzuh] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.rq-header__title h1[b-rv3cwsgzuh] {
    margin: 0;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.2;
    color: #0F172A;
}

.rq-header__count[b-rv3cwsgzuh] {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 9px;
    border-radius: 999px;
    background: #F2F5FA;
    color: #64748B;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

/* An invitation expires; the pool does not. This is the only place on the page that earns a strong
   colour, so it stays distinct from the neutral pool count beside it. */
.rq-header__new[b-rv3cwsgzuh] {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 9px;
    border-radius: 999px;
    background: #FEE2E2;
    color: #991B1B;
    font-size: 11.5px;
    font-weight: 600;
    line-height: 1;
}

.rq-header__sub[b-rv3cwsgzuh] {
    margin: 3px 0 0;
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.4;
    color: #7C8AA5;
}

.rq-header__actions[b-rv3cwsgzuh] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.rq-btn[b-rv3cwsgzuh] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .15s ease;
}

.rq-btn svg[b-rv3cwsgzuh] {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Both buttons share one height. They were 44 and 48, which read as a misalignment rather than as
   emphasis — the dark fill already carries the emphasis. */
.rq-btn--quiet[b-rv3cwsgzuh] {
    height: 34px;
    padding: 0 14px;
    background: #FFFFFF;
    border: 1px solid #E5EAF1;
    color: #51607A;
}

.rq-btn--quiet:hover[b-rv3cwsgzuh] { background: #F8FAFC; }

.rq-btn--dark[b-rv3cwsgzuh] {
    height: 34px;
    padding: 0 16px;
    background: #111827;
    border: 1px solid #111827;
    color: #FFFFFF;
    font-weight: 600;
}

.rq-btn--dark:hover[b-rv3cwsgzuh] { background: #1F2937; color: #FFFFFF; }

/* ── The three stacked modules ────────────────────────────────────────────── */

/* One gap between cards, set in one place, so the invitations card, the claim pool and the activity
   card sit on the same rhythm however each one is built internally. */
.rq-stack-item[b-rv3cwsgzuh] { margin-bottom: 16px; }
.rq-stack-item:last-child[b-rv3cwsgzuh] { margin-bottom: 0; }

/* Matches .claim-pool and .nx-activity-card: 16px radius, 16px padding, same hairline border. */
.rq-card[b-rv3cwsgzuh] {
    background: #FFFFFF;
    border: 1px solid #E8ECF2;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
    padding: 16px;
    margin-bottom: 16px;
}

.rq-card__head[b-rv3cwsgzuh] { margin: 0 0 12px; }

.rq-card__title[b-rv3cwsgzuh] {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1F2A44;
}

.rq-card__sub[b-rv3cwsgzuh] {
    margin: 2px 0 0;
    font-size: 12.5px;
    color: #8A97AB;
}

/* The card's own empty state. Deliberately the same weight as the claim pool's empty row, so
   "nothing here" looks the same in both modules. */
.rq-empty[b-rv3cwsgzuh] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 84px;
    padding: 0 16px;
    border: 1px solid #E8ECF2;
    border-radius: 12px;
    background: #FBFCFE;
    color: #94A3B8;
    font-size: 13px;
    text-align: center;
}

@media (max-width: 720px) {
    .rq-header__title h1[b-rv3cwsgzuh] { font-size: 19px; }
    .rq-header__sub[b-rv3cwsgzuh] { font-size: 12px; }
}
/* /Components/Pages/Expert/ResponseDetailPage.razor.rz.scp.css */
.review-layout[b-6mqpqp5shp] {
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 120px);
}

.review-main[b-6mqpqp5shp] {
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Desktop: Side-by-side layout */
@media (min-width: 992px) {
    .review-main[b-6mqpqp5shp] {
        flex-direction: row;
        gap: 1.5rem;
    }

    .review-sidebar[b-6mqpqp5shp] {
        width: 320px;
        flex-shrink: 0;
        position: sticky;
        top: 80px;
        height: fit-content;
        max-height: calc(100vh - 160px);
        overflow-y: auto;
    }

    .review-content[b-6mqpqp5shp] {
        flex: 1;
        min-width: 0;
    }
}

/* Mobile: Sidebar reflows below the main content instead of hiding */
@media (max-width: 991.98px) {
    .review-sidebar[b-6mqpqp5shp] {
        order: 2;
        width: 100%;
    }

    .review-content[b-6mqpqp5shp] {
        order: 1;
    }

    .score-display[b-6mqpqp5shp] {
        padding: 1rem;
    }

    .score-value[b-6mqpqp5shp] {
        font-size: 2rem;
    }
}

.score-display[b-6mqpqp5shp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem;
    background: linear-gradient(135deg, #d5d5d5 0%, #ffffff 100%);
    border-radius: 12px;
    color: black;
    margin-bottom: 1rem;
}

.score-value[b-6mqpqp5shp] {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1;
}

.score-label[b-6mqpqp5shp] {
    font-size: 0.875rem;
    opacity: 0.9;
    margin-top: 0.25rem;
}

.assessment-guidelines[b-6mqpqp5shp] {
    background: var(--nx-primary-light);
    border-radius: 8px;
    padding: 1rem;
}

.assessment-guidelines pre[b-6mqpqp5shp] {
    white-space: pre-wrap;
    word-wrap: break-word;
    font-family: inherit;
    font-size: 0.875rem;
    margin: 0;
    color: var(--nx-primary-dark);
}

.doctor-panel-title[b-6mqpqp5shp] {
    color: var(--nx-primary-dark);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-top: 0.75rem;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.doctor-panel-item[b-6mqpqp5shp] {
    color: var(--nx-primary-dark);
    font-size: 0.875rem;
    line-height: 1.35;
    margin-bottom: 0.25rem;
}

.review-bottom-panel[b-6mqpqp5shp] {
    background: white;
    border-top: 1px solid var(--nx-border);
    padding: 1rem 0;
    margin-top: auto;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.05);
}

.review-form-inline[b-6mqpqp5shp] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.review-remarks-input[b-6mqpqp5shp] {
    flex: 1;
    min-width: 200px;
}

.review-buttons[b-6mqpqp5shp] {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

@media (max-width: 767.98px) {
    .review-form-inline[b-6mqpqp5shp] {
        flex-direction: column;
    }

    .review-remarks-input[b-6mqpqp5shp] {
        width: 100%;
    }

    .review-buttons[b-6mqpqp5shp] {
        width: 100%;
    }

    .review-buttons button[b-6mqpqp5shp] {
        flex: 1;
    }
}
/* ── Cart Items card ─────────────────────────────────────────────────────
   The card keeps its plain black-on-white treatment; only the line the
   patient starred on the preference screen is emphasised, with the same ★
   the preference table uses. */

.cart-line[b-6mqpqp5shp] {
    padding: 0.5rem;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-sm);
    background: var(--nx-bg-light);
}

.cart-line-pick[b-6mqpqp5shp] {
    background: #f1fbf6;
    border-left: 3px solid var(--nx-accent);
}

.cart-line-title[b-6mqpqp5shp] {
    font-size: 0.875rem;
    color: var(--nx-text);
}

.cart-star[b-6mqpqp5shp] {
    color: var(--nx-accent);
    font-weight: 700;
    margin-right: 0.25rem;
}
/* /Components/Pages/Pharmacist/FulfillmentOrderDetailModal.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════
   NowExpress Fulfillment Order Detail Modal Scoped Styles
   ═══════════════════════════════════════════════════════════════════════════ */

.nx-fulfillment-backdrop[b-xn9288kl8c] {
    background-color: rgba(15, 23, 42, 0.65);
    backdrop-filter: blur(4px);
    z-index: 1055;
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem;
}

.nx-fulfillment-dialog[b-xn9288kl8c] {
    max-width: 1200px;
    width: 100%;
    max-height: 94vh;
    height: 94vh;
    display: flex;
    flex-direction: column;
    margin: auto;
}

.nx-fulfillment-content[b-xn9288kl8c] {
    background: #ffffff;
    border-radius: 14px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 20px 35px -10px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
}

/* ───── Modal Header ───── */
.nx-modal-header[b-xn9288kl8c] {
    background: #faf8f5;
    border-bottom: 1px solid #e5e7eb;
    padding: 0.65rem 1rem;
    flex-shrink: 0;
}

.nx-header-pill[b-xn9288kl8c] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 0.25rem 0.65rem;
    border-radius: 9999px;
}

/* ───── Modal Body ───── */
.nx-modal-body[b-xn9288kl8c] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 1rem;
    background: #fdfdfd;
}

/* Custom Scrollbar for Smooth UX */
.nx-modal-body[b-xn9288kl8c]::-webkit-scrollbar,
.nx-audit-box[b-xn9288kl8c]::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.nx-modal-body[b-xn9288kl8c]::-webkit-scrollbar-track,
.nx-audit-box[b-xn9288kl8c]::-webkit-scrollbar-track {
    background: #f1f5f9;
    border-radius: 4px;
}

.nx-modal-body[b-xn9288kl8c]::-webkit-scrollbar-thumb,
.nx-audit-box[b-xn9288kl8c]::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}

.nx-modal-body[b-xn9288kl8c]::-webkit-scrollbar-thumb:hover,
.nx-audit-box[b-xn9288kl8c]::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* ───── Section Cards ───── */
.nx-card[b-xn9288kl8c] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 0.75rem 0.9rem;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.nx-card-header-label[b-xn9288kl8c] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    margin-bottom: 0.45rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ───── Order Items Table ───── */
.nx-items-table[b-xn9288kl8c] {
    font-size: 12.5px;
    margin-bottom: 0;
}

.nx-items-table thead th[b-xn9288kl8c] {
    background: #f8fafc;
    color: #475569;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 0.5rem 0.65rem;
    border-bottom: 1px solid #e2e8f0;
}

.nx-items-table tbody td[b-xn9288kl8c] {
    padding: 0.55rem 0.65rem;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
}

.nx-items-table tfoot td[b-xn9288kl8c] {
    background: #faf8f5;
    padding: 0.5rem 0.65rem;
    border-top: 1px solid #e2e8f0;
}

/* ───── Audit Trail Box ───── */
.nx-audit-box[b-xn9288kl8c] {
    background: #0f172a;
    color: #e2e8f0;
    font-family: var(--bs-font-monospace);
    font-size: 11px;
    line-height: 1.5;
    max-height: 320px;
    overflow-y: auto;
    border-radius: 8px;
    padding: 0.65rem 0.8rem;
    white-space: pre-wrap;
    border: 1px solid #1e293b;
}

/* ───── Action Drawers & Forms ───── */
.nx-action-drawer[b-xn9288kl8c] {
    border-radius: 10px;
    padding: 0.85rem;
    margin-top: 0.65rem;
    animation: fadeInSlide-b-xn9288kl8c 0.2s ease-out;
}

.nx-drawer-fulfill[b-xn9288kl8c] {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
}

.nx-drawer-undo[b-xn9288kl8c] {
    background: #fffbeb;
    border: 1px solid #fde68a;
}

.nx-drawer-void[b-xn9288kl8c] {
    background: #fef2f2;
    border: 1px solid #fecaca;
}

@keyframes fadeInSlide-b-xn9288kl8c {
    from {
        opacity: 0;
        transform: translateY(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ───── Modal Footer (Sticky Action Center Toolbar) ───── */
.nx-modal-footer[b-xn9288kl8c] {
    background: #faf8f5;
    border-top: 1px solid #e5e7eb;
    padding: 0.65rem 1rem;
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.02);
}

/* ───── Mobile Optimizations (< 768px) ───── */
@media (max-width: 767.98px) {
    .nx-fulfillment-backdrop[b-xn9288kl8c] {
        padding: 0;
    }

    .nx-fulfillment-dialog[b-xn9288kl8c] {
        max-height: 100vh;
        height: 100vh;
        border-radius: 0;
    }

    .nx-fulfillment-content[b-xn9288kl8c] {
        border-radius: 0;
        border: none;
    }

    .nx-modal-body[b-xn9288kl8c] {
        padding: 0.65rem;
    }

    .nx-modal-footer[b-xn9288kl8c] {
        padding: 0.6rem 0.75rem;
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }

    .nx-modal-footer > div:last-child[b-xn9288kl8c] {
        justify-content: stretch;
    }

    .nx-modal-footer > div:last-child > .btn[b-xn9288kl8c] {
        flex: 1 1 auto;
    }

    .nx-btn-touch[b-xn9288kl8c] {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}
/* /Components/Pages/Shared/Consultations/RescheduleDrawer.razor.rz.scp.css */
/* The panel's insides. The frame — .hd-drawer-scrim and .hd-drawer — is the shared one in
   hellodoc-scheduling.css, the same right-hand drawer Edit Booking uses, so its width, its phone
   breakpoint, its scrim and its shadow are already solved and already dark-mode aware.

   The interior is the PM's design: icon badge on the status banner, the facts card, section
   eyebrows, fields with trailing icons, the doctor picker nested inside the selected choice card,
   and Copy booking ID as a quiet link in the footer. */

.rx__body[b-0oejv4q8uc],
.rx__head[b-0oejv4q8uc],
.rx__foot[b-0oejv4q8uc] { flex-shrink: 0; }

.rx__head[b-0oejv4q8uc] {
    padding: 18px 20px;
    border-bottom: 1px solid var(--smd-border-subtle);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-shrink: 0;
}

.rx-title[b-0oejv4q8uc] { color: var(--smd-fg-primary); }

.rx__body[b-0oejv4q8uc] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.rx__foot[b-0oejv4q8uc] {
    padding: 12px 20px;
    border-top: 1px solid var(--smd-border-subtle);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-shrink: 0;
}

.rx__actions[b-0oejv4q8uc] { display: flex; gap: 10px; margin-left: auto; }

/* Copy booking ID, Cancel and the primary action do not fit one 460px line. The link wraps to its
   own row rather than the two actions being squeezed — they are what the drawer is for. */
.rx__foot[b-0oejv4q8uc] { flex-wrap: wrap; }

.rx-loading[b-0oejv4q8uc] { color: var(--smd-fg-tertiary); padding: 28px 0; text-align: center; }

/* ─── Banners ─── */

.rx-banner[b-0oejv4q8uc] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border-radius: 12px;
}

.rx-banner--info[b-0oejv4q8uc]   { background: var(--smd-info-bg); }
.rx-banner--warn[b-0oejv4q8uc]   { background: var(--smd-danger-bg); }
.rx-banner--danger[b-0oejv4q8uc] { background: var(--smd-danger-bg); color: var(--smd-danger-fg); }

.rx-banner__icon[b-0oejv4q8uc] { font-size: 18px; flex-shrink: 0; }

/* The circular badge is what stops the banner reading as another grey field. */
.rx-banner__badge[b-0oejv4q8uc] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--smd-surface);
    color: var(--smd-info-fg);
}

.rx-banner__badge--warn[b-0oejv4q8uc] { color: var(--smd-danger-fg); }
.rx-banner__badge .material-symbols-rounded[b-0oejv4q8uc] { font-size: 22px; }

.rx-banner__name[b-0oejv4q8uc] { color: var(--smd-info-fg); }
.rx-banner__sub[b-0oejv4q8uc]  { color: var(--smd-fg-tertiary); display: block; margin-top: 2px; }
.rx-banner--warn .smd-label-semibold-m[b-0oejv4q8uc] { color: var(--smd-danger-fg); line-height: 1.35; }

/* ─── Patient facts ─── */

.rx-facts[b-0oejv4q8uc] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
    border-radius: 12px;
    background: var(--smd-surface-sunken);
}

.rx-facts__row[b-0oejv4q8uc] {
    display: grid;
    grid-template-columns: 74px 1fr;
    gap: 12px;
    align-items: baseline;
}

.rx-facts__key[b-0oejv4q8uc] {
    font: 500 11px/1.4 Inter, sans-serif;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--smd-fg-tertiary);
}

.rx-facts__val[b-0oejv4q8uc] { color: var(--smd-fg-primary); }

/* ─── Sections and fields ─── */

.rx-section[b-0oejv4q8uc] { display: flex; flex-direction: column; gap: 12px; }

.rx-section__title[b-0oejv4q8uc] {
    font: 600 12px/1.4 Inter, sans-serif;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--smd-fg-tertiary);
}

.rx-grid[b-0oejv4q8uc] { display: grid; grid-template-columns: .8fr 1fr; gap: 12px; }

.rx-field__label[b-0oejv4q8uc] { color: var(--smd-fg-secondary); display: block; margin-bottom: 7px; }

.rx-field[b-0oejv4q8uc] {
    position: relative;
    display: flex;
    align-items: center;
    height: 46px;
    border-radius: 10px;
    padding: 0 14px;
    background: var(--smd-surface-sunken);
    border: 1px solid var(--smd-border-subtle);
}

/* Inside a choice card, which already carries a tint — a second fill muddies it. */
.rx-field--plain[b-0oejv4q8uc] { background: var(--smd-surface); }

.rx-field__input[b-0oejv4q8uc] {
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    color: var(--smd-fg-primary);
    appearance: none;
}

/* Sits over the select's own (removed) arrow; the native date input keeps its own picker icon. */
.rx-field__icon[b-0oejv4q8uc] {
    position: absolute;
    right: 14px;
    font-size: 20px;
    color: var(--smd-fg-tertiary);
    pointer-events: none;
}

.rx-field select.rx-field__input[b-0oejv4q8uc] { padding-right: 24px; }

/* ─── Choice cards ─── */

.rx-choice[b-0oejv4q8uc] {
    border: 1px solid var(--smd-border-subtle);
    border-radius: 12px;
    padding: 14px 16px;
}

/* Blended rather than --smd-primary-soft: that is a raw value token (teal-20), so it would stay a
   pale mint card on a dark surface. Mixing against transparent keeps the tint in both themes. */
.rx-choice--on[b-0oejv4q8uc] {
    border-color: var(--smd-primary);
    background: color-mix(in srgb, var(--smd-primary) 7%, transparent);
}

.rx-choice__head[b-0oejv4q8uc] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
}

.rx-choice__head input[b-0oejv4q8uc] { margin-top: 3px; flex-shrink: 0; }
.rx-choice__title[b-0oejv4q8uc] { display: block; color: var(--smd-fg-primary); }
.rx-choice__sub[b-0oejv4q8uc]   { display: block; color: var(--smd-fg-tertiary); margin-top: 2px; }

.rx-choice__body[b-0oejv4q8uc] { margin: 14px 0 0 30px; }

.rx-recheck[b-0oejv4q8uc] {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

/* ─── Notes ─── */

.rx-note[b-0oejv4q8uc] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-top: 7px;
    font: 400 12px/1.45 Inter, sans-serif;
    color: var(--smd-fg-tertiary);
}

.rx-note--warn[b-0oejv4q8uc] { color: var(--smd-danger-fg); }
.rx-note__icon[b-0oejv4q8uc] { font-size: 15px; flex-shrink: 0; margin-top: 1px; }

/* ─── Copy booking id ─── */

.rx-copy[b-0oejv4q8uc] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0;
    border: none;
    background: none;
    cursor: pointer;
    color: var(--smd-info-fg);
}

.rx-copy:hover[b-0oejv4q8uc] { text-decoration: underline; }

/* ─── Phone ─── */
/* .hd-drawer already goes full-bleed under 560px (hellodoc-scheduling.css). Only the insides
   need to give way here. */

@media (max-width: 560px) {
    .rx__head[b-0oejv4q8uc], .rx__body[b-0oejv4q8uc], .rx__foot[b-0oejv4q8uc] { padding-left: 16px; padding-right: 16px; }
    .rx-grid[b-0oejv4q8uc] { grid-template-columns: 1fr; }
    .rx-facts__row[b-0oejv4q8uc] { grid-template-columns: 70px 1fr; }
}
/* /Components/Shared/WorkingDaysSelect.razor.rz.scp.css */
/* "My usual days & hours" — PM redesign 2026-09-24, resized 2026-09-24 (round 2).
   Whitespace does the grouping: one card, no nested bordered boxes, one hairline between the
   desktop columns.

   Sized against the rest of the profile page rather than as a hero — the section title is a
   sibling of the other card headings, not bigger than them.

   Laid out with CONTAINER queries, not viewport ones. The card lives in the portal's content
   area beside the sidebar, which is far narrower than the window: a viewport media query says
   "desktop" while the card itself has ~700px, and the two-column grid then overflowed and pushed
   the hours column out through the right edge. Everything below is mobile-first and opts INTO
   the wider layouts, so a browser without container queries stacks rather than overflows. */

.wdh[b-s5d4athcm8] {
    container-type: inline-size;

    --wdh-green: #1fa971;
    --wdh-green-dark: #178a5c;
    --wdh-mint: #eafaf3;
    --wdh-ink: #111827;
    --wdh-muted: #667085;
    --wdh-line: rgba(15, 23, 42, .08);
    --wdh-rest: #f5f6f7;
    --wdh-gutter: 32px;

    background: #fff;
    border: 1px solid var(--wdh-line);
    border-radius: 16px;
    padding: 20px 22px 22px;
    box-shadow: 0 2px 12px rgba(15, 23, 42, .04);
    color: var(--wdh-ink);
}

/* Admin's variant sits inside a form that already owns its card, heading and spacing. */
.wdh--bare[b-s5d4athcm8] {
    background: none;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}

/* ── Header ─────────────────────────────────────────────────────────────── */

/* Title over subtitle, no icon — the same shape as every other card-header on My Profile. */
.wdh-head[b-s5d4athcm8] { margin-bottom: 16px; }

.wdh-title[b-s5d4athcm8] { margin: 0; font-size: 14px; font-weight: 600; line-height: 1.35; color: var(--wdh-ink); }
.wdh-sub[b-s5d4athcm8] { margin: 1px 0 0; font-size: 12px; line-height: 1.45; color: var(--wdh-muted); }

/* ── Body ───────────────────────────────────────────────────────────────── */

.wdh-grid[b-s5d4athcm8] { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 20px; }

.wdh-label[b-s5d4athcm8] { margin: 0; font-size: 12.25px; font-weight: 600; color: var(--wdh-ink); }

/* ── Days: heading row + quick set ──────────────────────────────────────── */

.wdh-days-head[b-s5d4athcm8] { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-bottom: 12px; }

/* Quick set leads on a narrow card: it is the one tap most doctors need, and the grid below
   reads as the detail under it. Ordered, not duplicated in the markup. */
.wdh-quickset[b-s5d4athcm8] {
    order: -1;
    display: flex; flex-direction: column; align-items: stretch; gap: 8px;
    padding: 10px; margin-bottom: 6px;
    border-radius: 12px; background: #f7f8f9;
}

.wdh-quickset-label[b-s5d4athcm8] { font-size: 12.25px; color: var(--wdh-muted); }
.wdh-quickset-btns[b-s5d4athcm8] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.wdh-colon[b-s5d4athcm8] { display: none; }

.wdh-preset[b-s5d4athcm8] {
    min-width: 0; height: 36px; padding: 0 10px;
    border: 1px solid #e4e7ec; border-radius: 999px;
    background: #fff;
    font: inherit; font-size: 12.25px; font-weight: 500; color: #344054;
    white-space: nowrap;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}

.wdh-preset:hover[b-s5d4athcm8] { background: #f8faf9; border-color: #d6dae0; }
.wdh-preset:focus-visible[b-s5d4athcm8] { outline: none; box-shadow: 0 0 0 3px rgba(31, 169, 113, .18); border-color: var(--wdh-green); }

/* ── Day chips ──────────────────────────────────────────────────────────── */

.wdh-daygrid[b-s5d4athcm8] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }

.wdh-day[b-s5d4athcm8] {
    min-width: 0; min-height: 42px; padding: 0 4px;
    border: 0; border-radius: 9px;
    background: var(--wdh-rest);
    font: inherit; font-size: 12.25px; font-weight: 600; color: #344054;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.wdh-day:hover[b-s5d4athcm8] { background: #eceff1; }
.wdh-day--on[b-s5d4athcm8] { background: var(--wdh-green); color: #fff; }
.wdh-day--on:hover[b-s5d4athcm8] { background: var(--wdh-green-dark); }
.wdh-day:focus-visible[b-s5d4athcm8] { outline: none; box-shadow: 0 0 0 3px rgba(31, 169, 113, .25); }

.wdh-summary[b-s5d4athcm8] { margin: 9px 0 0; font-size: 12.25px; line-height: 1.45; color: var(--wdh-muted); }
.wdh-error[b-s5d4athcm8] { margin: 9px 0 0; font-size: 12.25px; line-height: 1.45; color: #b42318; font-weight: 500; }

/* ── Hours ──────────────────────────────────────────────────────────────── */

.wdh-hours-head[b-s5d4athcm8] { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.wdh-gmt[b-s5d4athcm8] { font-size: 12.25px; color: var(--wdh-muted); }

.wdh-time-grid[b-s5d4athcm8] { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.wdh-field[b-s5d4athcm8] { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.wdh-field-label[b-s5d4athcm8] { font-size: 12.25px; color: var(--wdh-muted); }

/* ::deep — InputDate renders the <input>, so it carries the child component's scope, not ours.
   box-sizing is set here rather than inherited from Bootstrap's reset: without it the padding
   pushes the field past its grid track and the two inputs collide. */
.wdh-field[b-s5d4athcm8]  .wdh-input {
    box-sizing: border-box;
    width: 100%; height: 40px;
    padding: 0 10px;
    border: 1px solid #dde1e6; border-radius: 8px;
    background: #fff;
    font: inherit; font-size: 14px; font-weight: 500; color: var(--wdh-ink);
    transition: border-color .15s, box-shadow .15s;
}

.wdh-field[b-s5d4athcm8]  .wdh-input:focus {
    outline: none;
    border-color: var(--wdh-green);
    box-shadow: 0 0 0 3px rgba(31, 169, 113, .10);
}

/* The native clock stays the picker affordance — just sized and calmed down. */
.wdh-field[b-s5d4athcm8]  .wdh-input::-webkit-calendar-picker-indicator { width: 15px; height: 15px; opacity: .45; cursor: pointer; }
.wdh-field[b-s5d4athcm8]  .wdh-input::-webkit-calendar-picker-indicator:hover { opacity: .75; }

/* ── HelloDoc notice ────────────────────────────────────────────────────── */

.wdh-note[b-s5d4athcm8] {
    display: flex; align-items: flex-start; gap: 10px;
    margin-top: 16px; padding: 11px 13px;
    border-radius: 10px;
    background: #fff8e6;
}

.wdh-note-icon[b-s5d4athcm8] { flex: 0 0 auto; color: #b54708; line-height: 0; margin-top: 1px; }
.wdh-note-icon svg[b-s5d4athcm8] { width: 16px; height: 16px; }
.wdh-note-text[b-s5d4athcm8] { margin: 0; font-size: 12.25px; line-height: 1.5; color: #7a4a0b; }
.wdh-note-text strong[b-s5d4athcm8] { font-weight: 600; }

/* ── Roomier card: seven days across, hours side by side ────────────────── */

@container (min-width: 560px) {
    .wdh-daygrid[b-s5d4athcm8] { grid-template-columns: repeat(7, minmax(0, 62px)); justify-content: start; gap: 6px; }
    .wdh-day[b-s5d4athcm8] { min-height: 32px; }
    .wdh-preset[b-s5d4athcm8] { height: 28px; }

    /* Matches .form-control-sm on the rest of this page rather than towering over it. */
    .wdh-time-grid[b-s5d4athcm8] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .wdh-field[b-s5d4athcm8]  .wdh-input { height: 32px; }
}

/* ── Wide card: two columns, quick set back beside the heading ──────────── */

@container (min-width: 820px) {
    .wdh-grid[b-s5d4athcm8] { grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr); column-gap: var(--wdh-gutter); row-gap: 0; }

    /* Border on the right column's own edge, a full gutter clear of the day chips. Previously
       pulled left with a negative margin, which parked the line hard against the last chip. */
    .wdh-col--hours[b-s5d4athcm8] { padding-left: var(--wdh-gutter); border-left: 1px solid var(--wdh-line); }

    .wdh-days-head[b-s5d4athcm8] { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; }

    .wdh-quickset[b-s5d4athcm8] {
        order: 0;
        flex-direction: row; align-items: center; gap: 8px;
        padding: 0; margin-bottom: 0;
        background: none; border-radius: 0;
    }

    .wdh-quickset-btns[b-s5d4athcm8] { display: flex; gap: 6px; }
    .wdh-colon[b-s5d4athcm8] { display: inline; }
}

/* The admin variant is one column in a form, so it never takes the two-column branch. */
.wdh--bare .wdh-grid[b-s5d4athcm8] { grid-template-columns: minmax(0, 1fr); }
.wdh--bare .wdh-col--hours[b-s5d4athcm8] { padding-left: 0; border-left: 0; }
