/* DrTime UI helpers (lightweight, framework-agnostic)
   Keep this file small; rely on Tailwind utilities for layout.
*/

:root {
  --drt-radius: 0.9rem;
  --drt-border: rgb(226 232 240); /* slate-200 */
  --drt-bg: rgb(255 255 255);
  --drt-text: rgb(15 23 42);      /* slate-900 */
  --drt-muted: rgb(100 116 139);  /* slate-500 */
  --drt-primary: rgb(37 99 235);  /* blue-600 */
  --drt-primary-dark: rgb(29 78 216); /* blue-700 */
  --drt-danger: rgb(220 38 38);   /* red-600 */
  --drt-success: rgb(22 163 74);  /* green-600 */
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.55rem 0.9rem;
  border-radius: 0.75rem;
  border: 1px solid transparent;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.25rem;
  cursor: pointer;
  user-select: none;
}
.btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.btn-primary {
  background: var(--drt-primary);
  color: white;
}
.btn-primary:hover { background: var(--drt-primary-dark); }

.btn-secondary {
  background: var(--drt-bg);
  border-color: var(--drt-border);
  color: var(--drt-text);
}
.btn-secondary:hover { background: rgb(248 250 252); }

.btn-danger {
  background: var(--drt-danger);
  color: white;
}
.btn-danger:hover { filter: brightness(0.95); }

/* Inputs */
.input {
  width: 100%;
  padding: 0.6rem 0.75rem;
  border-radius: 0.75rem;
  border: 1px solid var(--drt-border);
  background: var(--drt-bg);
  color: var(--drt-text);
  outline: none;
}
.input:focus {
  border-color: rgb(191 219 254); /* blue-200 */
  box-shadow: 0 0 0 3px rgb(191 219 254 / 0.35);
}

/* Inline input used inside consent text (paper form style) */
.consent-inline {
  display: inline-block;
  min-width: 14rem;
  max-width: 100%;
  border: 0;
  border-bottom: 1px dotted rgb(148 163 184); /* slate-400 */
  background: transparent;
  padding: 0 0.15rem;
  margin: 0 0.15rem;
  color: var(--drt-primary);
  font-weight: 800;
  outline: none;
}
.consent-inline:focus {
  border-bottom-color: var(--drt-primary);
  box-shadow: none;
}
.consent-name {
  color: var(--drt-primary);
  font-weight: 900;
}

/* Cards */
.card {
  border: 1px solid var(--drt-border);
  background: var(--drt-bg);
  border-radius: 1rem;
}
.card-padded { padding: 1rem; }

/* Badges */
.badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.15rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  line-height: 1.1rem;
  font-weight: 700;
  border: 1px solid transparent;
}
.badge-muted {
  background: rgb(241 245 249); /* slate-100 */
  color: rgb(51 65 85);         /* slate-700 */
  border-color: rgb(226 232 240);
}
.badge-success {
  background: rgb(220 252 231); /* green-100 */
  color: rgb(21 128 61);        /* green-700 */
  border-color: rgb(187 247 208);
}
.badge-danger {
  background: rgb(254 226 226); /* red-100 */
  color: rgb(185 28 28);        /* red-700 */
  border-color: rgb(254 202 202);
}

/* Slot selection feedback (public booking + panel)
   Uses small CSS only (no Tailwind dependency) to avoid purge issues.
*/
.drt-slot-btn {
  position: relative;
}
.drt-slot-btn[aria-pressed="true"],
.drt-slot-btn.drt-slot-selected {
  border-color: var(--drt-primary) !important;
  background: rgb(239 246 255) !important; /* blue-50 */
  box-shadow: 0 0 0 3px rgb(191 219 254 / 0.55); /* blue-200 */
}

/* Optional card highlight when the button sits inside a card. */
[data-slot-card][data-selected="true"] {
  border-color: rgb(191 219 254) !important; /* blue-200 */
  background: rgb(248 250 252) !important;  /* slate-50 */
}

/* Range highlight (start + duration). */
[data-slot-card][data-range="true"] {
  border-color: var(--drt-primary) !important;
  background: rgb(239 246 255) !important; /* blue-50 */
}

[data-slot-card][data-range-start="true"] {
  box-shadow: 0 0 0 3px rgb(191 219 254 / 0.55);
}

[data-slot-card][data-range-end="true"] {
  box-shadow: 0 0 0 2px rgb(191 219 254 / 0.35);
}


/* Make selection unmistakable */
.drt-slot-btn.drt-slot-selected,
.drt-slot-btn[aria-pressed="true"] {
  transform: translateZ(0) scale(1.01);
}

.drt-slot-btn.drt-slot-selected::after,
.drt-slot-btn[aria-pressed="true"]::after {
  content: "✓";
  position: absolute;
  top: -0.45rem;
  right: -0.45rem;
  width: 1.35rem;
  height: 1.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background: var(--drt-primary);
  color: #fff;
  font-size: 0.85rem;
  font-weight: 900;
  box-shadow: 0 6px 18px rgb(2 6 23 / 0.18);
  pointer-events: none;
}

/* Selected summary box */
.drt-selected-box {
  border: 1px solid rgb(191 219 254); /* blue-200 */
  background: rgb(239 246 255);        /* blue-50 */
  color: rgb(30 64 175);               /* blue-800 */
  border-radius: 0.9rem;
  padding: 0.55rem 0.85rem;
  font-weight: 800;
  font-size: 0.9rem;
  line-height: 1.25rem;
}


/* Bulk selection toggle (for multi-slot actions like block/unblock) */
.drt-slot-pick{
  position:absolute;
  top:-0.45rem;
  left:-0.45rem;
  width:1.55rem;
  height:1.55rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:9999px;
  border:1px solid var(--drt-border);
  background:#fff;
  color:transparent; /* becomes visible when selected */
  font-weight:900;
  font-size:0.85rem;
  box-shadow: 0 6px 18px rgb(2 6 23 / 0.12);
  cursor:pointer;
}
.drt-slot-pick:hover{ background: rgb(248 250 252); }
.drt-slot-pick:disabled{
  opacity:0.35;
  cursor:not-allowed;
}
.drt-slot-pick[aria-pressed="true"]{
  background: var(--drt-primary);
  border-color: var(--drt-primary);
  color:#fff;
}
[data-slot-card][data-picked="true"]{
  border-color: rgb(191 219 254) !important; /* blue-200 */
  background: rgb(248 250 252) !important;  /* slate-50 */
  box-shadow: 0 0 0 3px rgb(191 219 254 / 0.35);
}

/* Manual booking range: a single selected slot is also the range anchor. */
[data-slot-card][data-range-anchor="true"]{
  border-color:#5eead4 !important;
  background:#f0fdfa !important;
  box-shadow:0 0 0 3px rgb(94 234 212 / .28);
}
[data-slot-card][data-range-anchor="true"] .drt-slot-choice{
  border-color:#2dd4bf;
  background:#ccfbf1;
}
[data-slot-card][data-range-anchor="true"] .drt-slot-badge.is-free{
  background:#fff;
  color:#0f766e;
}


/* ------------------------------------------------------------------
   Forms (global): make form controls consistent across templates.
   ui.css loads after Tailwind build, so we can safely normalize here.
------------------------------------------------------------------ */
label.label,
.label {
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 800;
  color: rgb(51 65 85); /* slate-700 */
}

.help,
.help-text {
  margin-top: 0.4rem;
  font-size: 0.75rem;
  line-height: 1.1rem;
  color: var(--drt-muted);
}

select.select,
.select,
textarea.textarea,
.textarea,
input.input,
.input,
input[type="text"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="date"],
input[type="email"],
textarea,
select {
  width: 100%;
  padding: 0.6rem 0.75rem;
  border-radius: 0.75rem !important;
  border: 1px solid var(--drt-border) !important;
  background: var(--drt-bg) !important;
  color: var(--drt-text);
  outline: none;
}

select.select,
.select,
select {
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgb(100 116 139) 50%),
    linear-gradient(135deg, rgb(100 116 139) 50%, transparent 50%);
  background-position:
    calc(100% - 16px) calc(1em + 2px),
    calc(100% - 11px) calc(1em + 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  padding-right: 2.3rem;
}

[dir="rtl"] select.select,
[dir="rtl"] .select,
[dir="rtl"] select {
  background-position:
    16px calc(1em + 2px),
    11px calc(1em + 2px);
  padding-left: 2.3rem;
  padding-right: 0.75rem;
}

textarea.textarea,
.textarea,
textarea {
  min-height: 7rem;
  resize: vertical;
}

input:focus,
select:focus,
textarea:focus,
.input:focus,
.select:focus,
.textarea:focus {
  border-color: rgb(191 219 254) !important; /* blue-200 */
  box-shadow: 0 0 0 3px rgb(191 219 254 / 0.35);
}

.input[readonly],
.input[disabled],
.select[disabled],
textarea[disabled],
input[disabled],
select[disabled] {
  opacity: 0.75;
  cursor: not-allowed;
  background: rgb(248 250 252) !important; /* slate-50 */
}

/* ------------------------------------------------------------------
   Layout helpers
------------------------------------------------------------------ */
.page-title {
  font-size: 1.125rem;
  line-height: 1.6rem;
  font-weight: 900;
  letter-spacing: -0.01em;
  color: var(--drt-text);
}
.page-subtitle {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: var(--drt-muted);
}

.hr {
  height: 1px;
  background: var(--drt-border);
  border: 0;
}

/* Cards */
.card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.card-title {
  font-weight: 900;
  color: var(--drt-text);
}
.card-muted {
  color: var(--drt-muted);
  font-size: 0.85rem;
}

/* Buttons */
.btn-block { width: 100%; }
.btn-sm {
  padding: 0.45rem 0.7rem;
  border-radius: 0.7rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 800;
}
.btn-xs {
  padding: 0.35rem 0.55rem;
  border-radius: 0.65rem;
  font-size: 0.72rem;
  line-height: 0.95rem;
  font-weight: 800;
}

/* Alerts */
.alert {
  border: 1px solid var(--drt-border);
  background: var(--drt-bg);
  color: var(--drt-text);
  border-radius: 1rem;
  padding: 0.75rem 0.9rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.alert-success {
  border-color: rgb(187 247 208);
  background: rgb(240 253 244);
  color: rgb(21 128 61);
}
.alert-warning {
  border-color: rgb(253 230 138);
  background: rgb(255 251 235);
  color: rgb(146 64 14);
}
.alert-danger {
  border-color: rgb(254 202 202);
  background: rgb(254 242 242);
  color: rgb(185 28 28);
}
.alert-muted {
  border-color: rgb(226 232 240);
  background: rgb(248 250 252);
  color: rgb(51 65 85);
}

/* Tables */
.table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--drt-border);
  border-radius: 1rem;
  overflow: hidden;
  background: var(--drt-bg);
}
.table th,
.table td {
  padding: 0.65rem 0.75rem;
  border-bottom: 1px solid var(--drt-border);
  font-size: 0.875rem;
}
.table thead th {
  background: rgb(248 250 252); /* slate-50 */
  font-weight: 900;
  color: rgb(51 65 85);
}
.table tbody tr:last-child td {
  border-bottom: 0;
}
.table tbody tr:hover td {
  background: rgb(248 250 252);
}

/* Badges */
.badge { border-radius: 9999px; }
.badge-info {
  background: rgb(219 234 254);
  color: rgb(30 64 175);
  border-color: rgb(191 219 254);
}
.badge-warning {
  background: rgb(254 243 199);
  color: rgb(146 64 14);
  border-color: rgb(253 230 138);
}

/* Button variants */
.btn-success { background: var(--drt-success); color: #fff; }
.btn-success:hover { filter: brightness(0.95); }
.btn-warning { background: rgb(245 158 11); color: #111827; }
.btn-warning:hover { filter: brightness(0.97); }
.btn-ghost { background: transparent; border-color: var(--drt-border); color: var(--drt-text); }
.btn-ghost:hover { background: rgb(248 250 252); }

/* ------------------------------------------------------------------
   Scheduler + Reports UI (UI-3)
------------------------------------------------------------------ */

/* Tabs (scheduler modal) */
.drt-tab-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0.5rem;
  padding:0.55rem 0.9rem;
  border-radius:0.85rem;
  border:1px solid var(--drt-border);
  background:#fff;
  color:rgb(51 65 85);
  font-size:0.875rem;
  line-height:1.25rem;
  font-weight:900;
  cursor:pointer;
}
.drt-tab-btn:hover{ background: rgb(248 250 252); }
.drt-tab-btn.is-active{
  background: rgb(15 23 42); /* slate-900 */
  border-color: rgb(15 23 42);
  color:#fff;
}

/* Scheduler board table cells */
.drt-sched-cell{
  vertical-align: top;
}
.drt-sched-cell-free{
  background: rgb(240 253 244); /* green-50 */
}
.drt-sched-cell-empty{
  background: rgb(248 250 252); /* slate-50 */
  color: rgb(148 163 184); /* slate-400 */
}
.drt-sched-cell-blocked{
  background: rgb(255 251 235); /* amber-50 */
}
.drt-sched-cell-held{
  background: rgb(238 242 255); /* indigo-50 */
}
.drt-sched-block{
  border:1px solid var(--drt-border);
  border-radius:1rem;
  background: rgb(248 250 252);
  padding:0.6rem 0.7rem;
}
.drt-sched-meta{
  font-size:0.75rem;
  line-height:1.1rem;
  color: var(--drt-muted);
}

/* Mini cards (units status) */
.mini-card{
  border:1px solid var(--drt-border);
  border-radius:1rem;
  background:#fff;
  padding:0.6rem 0.75rem;
}
.mini-card-success{
  border-color: rgb(187 247 208);
  background: rgb(240 253 244);
  color: rgb(21 128 61);
}
.mini-card-warning{
  border-color: rgb(253 230 138);
  background: rgb(255 251 235);
  color: rgb(146 64 14);
}

/* KPI number */
.kpi-value{
  font-size:1.7rem;
  line-height:2.1rem;
  font-weight:900;
  letter-spacing:-0.02em;
  color: var(--drt-text);
}
.kpi-label{
  font-size:0.75rem;
  line-height:1.1rem;
  color: var(--drt-muted);
  font-weight:800;
}

/* ------------------------------------------------------------------
   Patient card + Billing + Lists UI (UI-4)
------------------------------------------------------------------ */

/* Compact input for small numeric fields (durations, etc.) */
.input-sm{
  padding:0.45rem 0.6rem !important;
  border-radius:0.7rem !important;
  font-size:0.875rem;
  line-height:1.15rem;
}

/* Selectable list items (patient search, planned items lists, etc.) */
.list-item{
  width:100%;
  text-align:start;
  display:block;
  border:1px solid var(--drt-border);
  background:#fff;
  border-radius:1rem;
  padding:0.75rem 0.85rem;
}
.list-item:hover{ background: rgb(248 250 252); }
.list-item:active{ transform: translateY(0.5px); }
.list-item-title{
  font-weight:900;
  color: var(--drt-text);
}
.list-item-meta{
  margin-top:0.2rem;
  font-size:0.75rem;
  line-height:1.1rem;
  color: var(--drt-muted);
}
.list-item-right{
  font-size:0.75rem;
  line-height:1.1rem;
  font-weight:900;
  color: var(--drt-primary);
}

/* Lightweight toast wrapper (used with hx-swap-oob) */
.drt-toast{
  position: fixed;
  left: 0;
  right: 0;
  top: 4.75rem;
  z-index: 60;
  pointer-events: none;
}
.drt-toast-inner{
  pointer-events: auto;
  margin: 0 auto;
  max-width: 28rem;
}


/* Accent system (section-based theming; no rebuild needed)
   - Set data-accent="..." on a container (we use the main panel wrapper)
   - Use helper classes for background/text/border
*/
:root{
  --drt-accent: 37 99 235;       /* blue-600 */
  --drt-accent-soft: 239 246 255;/* blue-50 */
}
[data-accent="blue"]{
  --drt-accent: 37 99 235;
  --drt-accent-soft: 239 246 255;
}
[data-accent="indigo"]{
  --drt-accent: 79 70 229;       /* indigo-600 */
  --drt-accent-soft: 238 242 255;/* indigo-50 */
}
[data-accent="emerald"]{
  --drt-accent: 5 150 105;       /* emerald-600 */
  --drt-accent-soft: 236 253 245;/* emerald-50 */
}
[data-accent="rose"]{
  --drt-accent: 225 29 72;       /* rose-600 */
  --drt-accent-soft: 255 241 242;/* rose-50 */
}
[data-accent="cyan"]{
  --drt-accent: 8 145 178;       /* cyan-600 */
  --drt-accent-soft: 236 254 255;/* cyan-50 */
}
[data-accent="violet"]{
  --drt-accent: 124 58 237;      /* violet-600 */
  --drt-accent-soft: 245 243 255;/* violet-50 */
}
[data-accent="sky"]{
  --drt-accent: 2 132 199;       /* sky-600 */
  --drt-accent-soft: 240 249 255;/* sky-50 */
}
[data-accent="amber"]{
  --drt-accent: 217 119 6;       /* amber-600 */
  --drt-accent-soft: 255 251 235;/* amber-50 */
}
[data-accent="slate"]{
  --drt-accent: 51 65 85;        /* slate-700 */
  --drt-accent-soft: 248 250 252;/* slate-50 */
}

.drt-accent-bg{ background-color: rgb(var(--drt-accent)); }
.drt-accent-soft{ background-color: rgb(var(--drt-accent-soft)); }
.drt-accent-text{ color: rgb(var(--drt-accent)); }
.drt-accent-border{ border-color: rgb(var(--drt-accent)); }

/* Panel sidebar + topbar polish (no Tailwind rebuild required) */
.drt-sidebar{
  background: linear-gradient(180deg, rgb(var(--drt-accent-soft)) 0%, #ffffff 58%);
}

/* Ensure sidebar stays visible on desktop even if mobile transform classes exist */
@media (min-width: 768px){
  .drt-sidebar{ transform: none !important; }
}
.drt-sidebar::before{
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(520px circle at top left, rgba(var(--drt-accent), 0.12), transparent 55%);
  pointer-events: none;
}

html[dir="rtl"] .drt-sidebar::before{
  background: radial-gradient(520px circle at top right, rgba(var(--drt-accent), 0.12), transparent 55%);
}
.drt-sidebar > *{ position: relative; }

.drt-sidebar-scroll{
  flex: 1 1 auto;
  overflow: auto;
  padding-inline-end: 0.25rem;
}

/* Main wrapper padding is handled in template (md:pl-72 vs md:pr-72)
   to avoid direction-specific CSS edge cases. */

/* Scrollbar (subtle) */
.drt-scrollbar{ scrollbar-width: thin; scrollbar-color: rgba(100,116,139,0.35) transparent; }
.drt-scrollbar::-webkit-scrollbar{ width: 10px; height: 10px; }
.drt-scrollbar::-webkit-scrollbar-thumb{
  background: rgba(100,116,139,0.25);
  border-radius: 999px;
  border: 3px solid transparent;
  background-clip: content-box;
}
.drt-scrollbar::-webkit-scrollbar-thumb:hover{
  background: rgba(100,116,139,0.35);
  background-clip: content-box;
}

/* Sidebar nav */
.drt-nav-item{
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.55rem 0.75rem;
  border-radius: 0.9rem;
  color: rgb(51 65 85); /* slate-700 */
  font-weight: 800;
  font-size: 0.9rem;
  line-height: 1.25rem;
  border: 1px solid transparent;
  background: transparent;
}
.drt-nav-item svg{ color: rgb(100 116 139); }
.drt-nav-item:hover{
  background: rgba(255,255,255,0.65);
  border-color: rgba(226,232,240,0.85);
}
.drt-nav-item.is-active{
  background: rgb(var(--drt-accent-soft));
  border-color: rgba(var(--drt-accent), 0.25);
  box-shadow: 0 10px 24px rgba(2,6,23,0.06);
  color: rgb(15 23 42);
}
.drt-nav-item.is-active svg{ color: rgb(var(--drt-accent)); }

/* Topbar pills + dropdown */
.drt-topbar-pill{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.55rem 0.8rem;
  border-radius: 0.85rem;
  border: 1px solid rgb(226 232 240);
  background: rgba(255,255,255,0.88);
  color: rgb(51 65 85);
  font-size: 0.875rem;
  font-weight: 900;
  line-height: 1.25rem;
  box-shadow: 0 1px 0 rgba(2,6,23,0.03);
}
.drt-topbar-pill:hover{ background: #fff; }
.drt-topbar-pill:focus{
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--drt-accent), 0.18);
  border-color: rgba(var(--drt-accent), 0.35);
}

.drt-caret{ font-size: 0.9rem; opacity: 0.7; margin-inline-start: 0.1rem; }

.drt-dropdown{
  position: absolute;
  inset-inline-end: 0;
  top: calc(100% + 0.5rem);
  min-width: 12rem;
  border: 1px solid rgb(226 232 240);
  background: #fff;
  border-radius: 1rem;
  box-shadow: 0 18px 40px rgba(2,6,23,0.12);
  padding: 0.35rem;
  z-index: 60;
}

.drt-dropdown-item{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  text-align: start;
  padding: 0.55rem 0.7rem;
  border-radius: 0.85rem;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  color: rgb(15 23 42);
  font-size: 0.9rem;
  font-weight: 800;
}
.drt-dropdown-item:hover{
  background: rgb(var(--drt-accent-soft));
  border-color: rgba(var(--drt-accent), 0.18);
}

select.drt-topbar-pill{ display: inline-block; }

/* ------------------------------------------------------------------
   Account page: clean profile/password layout
------------------------------------------------------------------ */
.drt-account-page{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.drt-account-hero{
  display:flex;
  align-items:center;
  gap:1rem;
  border:1px solid rgb(226 232 240);
  border-radius:1.25rem;
  background:linear-gradient(135deg, rgb(255 255 255), rgb(248 250 252));
  padding:1rem;
  box-shadow:0 1px 2px rgb(15 23 42 / 0.04);
}
.drt-account-avatar,
.drt-account-card-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.drt-account-avatar{
  width:3.25rem;
  height:3.25rem;
  border-radius:1.1rem;
  background:rgb(241 245 249);
  color:rgb(51 65 85);
  border:1px solid rgb(226 232 240);
}
.drt-account-hero-text{
  min-width:0;
  flex:1 1 auto;
}
.drt-account-hero-text h2,
.drt-account-card-head h3{
  margin:0;
  color:rgb(15 23 42);
  font-weight:900;
  line-height:1.35;
}
.drt-account-hero-text h2{font-size:1.05rem;}
.drt-account-card-head h3{font-size:1rem;}
.drt-account-hero-text p,
.drt-account-card-head p{
  margin:0.25rem 0 0;
  color:rgb(100 116 139);
  font-size:0.875rem;
  line-height:1.75;
}
.drt-account-meta{
  display:flex;
  flex-wrap:wrap;
  gap:0.45rem;
  justify-content:flex-end;
}
.drt-account-meta span{
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  border:1px solid rgb(226 232 240);
  border-radius:999px;
  background:#fff;
  padding:0.35rem 0.75rem;
  color:rgb(51 65 85);
  font-size:0.75rem;
  font-weight:800;
}
.drt-account-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(18rem, 22rem);
  gap:1rem;
  align-items:start;
}
.drt-account-main{
  display:flex;
  flex-direction:column;
  gap:1rem;
  min-width:0;
}
.drt-account-card{
  border:1px solid rgb(226 232 240);
  border-radius:1.25rem;
  background:#fff;
  padding:1rem;
  box-shadow:0 1px 2px rgb(15 23 42 / 0.04);
}
.drt-account-card-head{
  display:flex;
  align-items:flex-start;
  gap:0.75rem;
  padding-bottom:0.9rem;
  border-bottom:1px solid rgb(241 245 249);
}
.drt-account-card-head.compact-head{padding-bottom:0.75rem;}
.drt-account-card-icon{
  width:2.5rem;
  height:2.5rem;
  border-radius:0.9rem;
  background:rgb(239 246 255);
  color:rgb(37 99 235);
}
.drt-account-card-icon.danger{
  background:rgb(255 247 237);
  color:rgb(234 88 12);
}
.drt-account-card-icon.muted{
  background:rgb(248 250 252);
  color:rgb(71 85 105);
}
.drt-account-form{
  display:flex;
  flex-direction:column;
  gap:1rem;
  margin-top:1rem;
}
.drt-account-fields{
  display:grid;
  gap:0.85rem;
}
.drt-account-fields.two-cols{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}
.drt-account-fields.compact{gap:0.75rem;}
.drt-field{
  display:flex;
  flex-direction:column;
  gap:0.45rem;
}
.drt-field .input{margin-top:0;}
.drt-field-error{
  color:rgb(225 29 72);
  font-size:0.75rem;
  line-height:1.5;
}
.drt-account-actions{
  display:flex;
  justify-content:flex-end;
  padding-top:0.25rem;
}
[dir="rtl"] .drt-account-actions{justify-content:flex-start;}
.drt-account-side{
  min-width:0;
}
.drt-account-card.sticky-card{
  position:sticky;
  top:5rem;
}
.drt-account-summary{
  display:grid;
  gap:0.65rem;
  margin:1rem 0 0;
}
.drt-account-summary div{
  border:1px solid rgb(226 232 240);
  border-radius:0.9rem;
  background:rgb(248 250 252);
  padding:0.75rem;
}
.drt-account-summary dt{
  margin:0;
  color:rgb(100 116 139);
  font-size:0.72rem;
  font-weight:800;
}
.drt-account-summary dd{
  margin:0.2rem 0 0;
  color:rgb(15 23 42);
  font-size:0.88rem;
  font-weight:900;
  overflow-wrap:anywhere;
}
.drt-account-access-list{
  margin-top:1rem;
  padding-top:1rem;
  border-top:1px solid rgb(241 245 249);
}
.drt-account-list-title{
  color:rgb(71 85 105);
  font-size:0.78rem;
  font-weight:900;
  margin-bottom:0.6rem;
}
.drt-access-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.75rem;
  border:1px solid rgb(226 232 240);
  border-radius:0.9rem;
  background:#fff;
  padding:0.75rem;
}
.drt-access-item + .drt-access-item{margin-top:0.55rem;}
.drt-access-branch{
  min-width:0;
  color:rgb(15 23 42);
  font-size:0.85rem;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.drt-access-role{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  border-radius:999px;
  background:rgb(241 245 249);
  color:rgb(51 65 85);
  padding:0.25rem 0.55rem;
  font-size:0.72rem;
  font-weight:900;
}
.drt-empty-note{
  border:1px dashed rgb(203 213 225);
  border-radius:0.9rem;
  background:rgb(248 250 252);
  padding:0.8rem;
  color:rgb(100 116 139);
  font-size:0.85rem;
  text-align:center;
}
@media (max-width: 1024px){
  .drt-account-layout{grid-template-columns:1fr;}
  .drt-account-card.sticky-card{position:static;}
}
@media (max-width: 640px){
  .drt-account-hero{align-items:flex-start; flex-direction:column;}
  .drt-account-meta{justify-content:flex-start;}
  .drt-account-fields.two-cols{grid-template-columns:1fr;}
  .drt-account-actions .btn{width:100%;}
}

/* ------------------------------------------------------------------
   Panel UX refresh: calmer colors, clearer navigation, softer cards.
   This layer intentionally overrides older utility-heavy sections without
   changing business flows or HTMX behavior.
------------------------------------------------------------------ */
:root{
  --drt-surface:#ffffff;
  --drt-surface-soft:#f8fafc;
  --drt-surface-warm:#fbfcfd;
  --drt-line:#e5e7eb;
  --drt-line-soft:#eef2f7;
  --drt-shadow-sm:0 1px 2px rgba(15,23,42,.04);
  --drt-shadow-md:0 14px 34px rgba(15,23,42,.07);
  --drt-shadow-lg:0 24px 60px rgba(15,23,42,.10);
}

body:has([data-drt-sidebar]){
  background:
    radial-gradient(900px circle at 12% -8%, rgba(var(--drt-accent), .10), transparent 52%),
    linear-gradient(180deg, #fbfdff 0%, #f6f8fb 48%, #f8fafc 100%);
}
html[dir="rtl"] body:has([data-drt-sidebar]){
  background:
    radial-gradient(900px circle at 88% -8%, rgba(var(--drt-accent), .10), transparent 52%),
    linear-gradient(180deg, #fbfdff 0%, #f6f8fb 48%, #f8fafc 100%);
}

.drt-main{
  min-height:100vh;
}
.drt-page-shell{
  width:100%;
  max-width:1480px;
  margin-inline:auto;
}

/* Sidebar */
.drt-sidebar{
  background:
    linear-gradient(180deg, rgba(var(--drt-accent-soft), .95) 0%, rgba(255,255,255,.96) 42%, rgba(255,255,255,.98) 100%);
  box-shadow: 12px 0 34px rgba(15,23,42,.05);
}
html[dir="rtl"] .drt-sidebar{ box-shadow:-12px 0 34px rgba(15,23,42,.05); }
.drt-sidebar::before{
  opacity:.85;
  filter:saturate(.85);
}

.drt-user-card{
  margin-top:1rem;
  display:flex;
  align-items:center;
  gap:.75rem;
  border:1px solid rgba(226,232,240,.92);
  border-radius:1.15rem;
  background:rgba(255,255,255,.72);
  padding:.72rem;
  box-shadow:var(--drt-shadow-sm);
  backdrop-filter:blur(10px);
}
.drt-user-avatar{
  width:2.45rem;
  height:2.45rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.95rem;
  background:rgb(var(--drt-accent-soft));
  color:rgb(var(--drt-accent));
  border:1px solid rgba(var(--drt-accent), .14);
}
.drt-user-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#0f172a;
  font-size:.88rem;
  font-weight:900;
  line-height:1.35;
}
.drt-user-meta{
  display:flex;
  align-items:center;
  gap:.35rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#64748b;
  font-size:.72rem;
  font-weight:800;
}
.drt-user-link{
  width:2rem;
  height:2rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #e2e8f0;
  border-radius:.85rem;
  background:#fff;
  color:#64748b;
}
.drt-user-link:hover{ color:rgb(var(--drt-accent)); border-color:rgba(var(--drt-accent),.28); }

.drt-nav-menu{ display:grid; gap:.9rem; padding-bottom:.25rem; }
.drt-nav-section{
  border:1px solid rgba(226,232,240,.72);
  border-radius:1rem;
  background:rgba(255,255,255,.46);
  padding:.45rem;
}
.drt-nav-label{
  padding:.2rem .55rem .45rem;
  color:#64748b;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.025em;
  text-transform:uppercase;
}
html[dir="rtl"] .drt-nav-label{ letter-spacing:0; }
.drt-nav-items{ display:grid; gap:.12rem; }
.drt-nav-item{
  min-height:2.5rem;
  padding:.58rem .66rem;
  border-radius:.86rem;
  color:#475569;
  font-size:.84rem;
  font-weight:850;
  line-height:1.2rem;
  transition:background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}
.drt-nav-item svg{ color:#94a3b8; transition:color .16s ease; }
.drt-nav-item:hover{
  transform:translateY(-1px);
  background:#fff;
  border-color:#e2e8f0;
  color:#0f172a;
  box-shadow:0 8px 20px rgba(15,23,42,.045);
}
.drt-nav-item.is-active{
  background:linear-gradient(135deg, #fff 0%, rgb(var(--drt-accent-soft)) 100%);
  border-color:rgba(var(--drt-accent), .22);
  box-shadow:0 10px 26px rgba(var(--drt-accent), .10);
  color:#0f172a;
}
.drt-nav-item.is-active::before{
  content:"";
  width:.25rem;
  align-self:stretch;
  min-height:1.1rem;
  border-radius:999px;
  background:rgb(var(--drt-accent));
  margin-inline-end:.05rem;
}
.drt-nav-item.is-active svg{ color:rgb(var(--drt-accent)); }
.drt-nav-badge{
  margin-inline-start:auto;
  min-width:1.25rem;
  height:1.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(var(--drt-accent), .13);
  color:rgb(var(--drt-accent));
  padding-inline:.35rem;
  font-size:.68rem;
  font-weight:950;
}
.drt-nav-badge.danger{ background:#ffe4e6; color:#be123c; }

/* Topbar */
.drt-topbar{
  border-bottom:1px solid rgba(226,232,240,.72);
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.drt-topbar-pill{
  min-height:2.35rem;
  border-color:rgba(226,232,240,.88);
  background:rgba(255,255,255,.74);
  box-shadow:none;
  color:#475569;
  font-weight:850;
}
.drt-topbar-pill:hover{
  border-color:rgba(var(--drt-accent), .22);
  background:#fff;
  color:#0f172a;
}

/* Page hero: one clear page identity instead of nested headings. */
.drt-page-hero{
  display:flex;
  align-items:center;
  gap:1rem;
  border:1px solid rgba(226,232,240,.86);
  border-radius:1.25rem;
  background:
    radial-gradient(420px circle at 0% 0%, rgba(var(--drt-accent), .10), transparent 52%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
  padding:1rem;
  box-shadow:var(--drt-shadow-sm);
}
html[dir="rtl"] .drt-page-hero{
  background:
    radial-gradient(420px circle at 100% 0%, rgba(var(--drt-accent), .10), transparent 52%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
}
.drt-page-hero-icon{
  width:2.9rem;
  height:2.9rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:1rem;
  background:#fff;
  color:rgb(var(--drt-accent));
  border:1px solid rgba(var(--drt-accent), .16);
  box-shadow:0 10px 24px rgba(var(--drt-accent), .08);
}
.drt-page-kicker{
  color:#64748b;
  font-size:.75rem;
  font-weight:850;
  line-height:1.35;
}
.drt-page-hero h1{
  margin:.12rem 0 0;
  color:#0f172a;
  font-size:1.25rem;
  line-height:1.55;
  font-weight:950;
  letter-spacing:-.01em;
}
.drt-page-hero p{
  margin:.1rem 0 0;
  color:#64748b;
  font-size:.87rem;
  line-height:1.6;
}
.drt-page-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.5rem;
}
html[dir="rtl"] .drt-page-actions{ justify-content:flex-start; }

/* General content: calmer cards, clearer tables, easier forms. */
.card,
.drt-account-card,
.drt-account-hero{
  border-color:rgba(226,232,240,.92) !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:var(--drt-shadow-sm);
}
.card{ border-radius:1.15rem; }
.card-padded{ padding:1.05rem; }
.card:hover,
.drt-account-card:hover{ box-shadow:0 12px 30px rgba(15,23,42,.055); }

.page-title{
  color:#0f172a;
  font-size:1rem;
  font-weight:950;
}
.page-subtitle{ color:#64748b; }

.input,
.select,
.textarea,
input[type="text"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="date"],
input[type="email"],
textarea,
select{
  border-radius:.9rem !important;
  border-color:#e2e8f0 !important;
  background:#fff !important;
  min-height:2.55rem;
}
input:focus,
select:focus,
textarea:focus,
.input:focus,
.select:focus,
.textarea:focus{
  border-color:rgba(var(--drt-accent), .38) !important;
  box-shadow:0 0 0 4px rgba(var(--drt-accent), .12);
}
.label{ color:#334155; font-weight:900; }
.help,
.help-text{ color:#64748b; }

.btn{
  border-radius:.9rem;
  min-height:2.45rem;
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.btn-primary{
  background:rgb(var(--drt-accent));
  box-shadow:0 12px 22px rgba(var(--drt-accent), .18);
}
.btn-primary:hover{ filter:saturate(1.03) brightness(.96); }
.btn-secondary,
.btn-ghost{
  background:#fff;
  border-color:#e2e8f0;
}
.btn-secondary:hover,
.btn-ghost:hover{ border-color:rgba(var(--drt-accent),.22); background:#fff; }

.table{
  border-color:#e2e8f0;
  box-shadow:var(--drt-shadow-sm);
}
.table thead th{
  background:#f8fafc;
  color:#475569;
}
.table tbody tr:hover td{ background:#f9fbfd; }

.alert{
  border-radius:1rem;
  box-shadow:0 1px 0 rgba(15,23,42,.025);
}
.badge{ font-weight:900; }

/* Existing tab buttons become clean segmented controls. */
.drt-tab-btn{
  border-radius:.9rem;
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}
.drt-tab-btn:hover{ background:#fff; border-color:#e2e8f0; }
.drt-tab-btn.is-active{
  background:#fff;
  color:rgb(var(--drt-accent));
  border-color:rgba(var(--drt-accent), .18);
  box-shadow:0 8px 20px rgba(var(--drt-accent), .10);
}

/* Lists should feel like clean rows, not nested cards. */
.list-item{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:1rem;
  padding:.85rem;
  box-shadow:0 1px 0 rgba(15,23,42,.025);
}
.list-item:hover{ border-color:rgba(var(--drt-accent),.18); box-shadow:0 10px 26px rgba(15,23,42,.05); }
.list-item-title{ color:#0f172a; font-weight:950; }
.list-item-meta{ color:#64748b; font-size:.82rem; }

@media (max-width: 768px){
  .drt-page-shell{ padding-inline:1rem !important; }
  .drt-page-hero{ align-items:flex-start; flex-direction:column; }
  .drt-page-actions{ width:100%; justify-content:flex-start; }
  .drt-page-actions .btn,
  .drt-page-actions a{ width:100%; justify-content:center; }
}

/* Booking page refresh */
.drt-booking-page{ max-width: 1380px; margin-inline:auto; }
.drt-booking-intro{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  border:1px solid #e2e8f0; border-radius:1.35rem; padding:1rem 1.1rem;
  background:linear-gradient(135deg, rgba(var(--drt-accent),.08), #fff 45%, #f8fafc);
  box-shadow:var(--drt-shadow-sm);
}
.drt-mini-kicker{ color:rgb(var(--drt-accent)); font-weight:950; font-size:.78rem; letter-spacing:.01em; }
.drt-booking-intro h2{ margin:.1rem 0 0; color:#0f172a; font-size:1.2rem; font-weight:950; }
.drt-booking-intro p{ margin:.2rem 0 0; color:#64748b; font-size:.88rem; }
.drt-booking-intro-badges{ display:flex; flex-wrap:wrap; gap:.45rem; justify-content:flex-end; }
.drt-booking-intro-badges span{
  display:inline-flex; align-items:center; border:1px solid rgba(var(--drt-accent),.16);
  background:#fff; color:#334155; border-radius:999px; padding:.45rem .7rem;
  font-size:.78rem; font-weight:900; white-space:nowrap;
}
.drt-booking-steps{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem;
}
.drt-booking-step{
  display:flex; align-items:center; gap:.65rem; border:1px solid #e2e8f0; background:#fff;
  border-radius:1.1rem; padding:.75rem; box-shadow:0 1px 0 rgba(15,23,42,.025);
}
.drt-booking-step span{
  flex:0 0 auto; width:2rem; height:2rem; display:inline-flex; align-items:center; justify-content:center;
  border-radius:.8rem; background:#f1f5f9; color:#475569; font-weight:950;
}
.drt-booking-step strong{ display:block; color:#0f172a; font-size:.86rem; font-weight:950; line-height:1.15; }
.drt-booking-step small{ display:block; color:#64748b; font-size:.72rem; line-height:1.15; margin-top:.2rem; }
.drt-booking-step.is-active{ border-color:rgba(var(--drt-accent),.22); background:rgba(var(--drt-accent),.045); }
.drt-booking-step.is-active span{ background:rgb(var(--drt-accent)); color:#fff; }
.drt-booking-panel{
  border:1px solid #e2e8f0; border-radius:1.35rem; background:rgba(255,255,255,.94);
  box-shadow:0 14px 36px rgba(15,23,42,.055); padding:1rem;
}
.drt-section-head{ display:flex; align-items:center; gap:.75rem; }
.drt-section-icon{
  flex:0 0 auto; width:2.4rem; height:2.4rem; display:inline-flex; align-items:center; justify-content:center;
  border-radius:1rem; background:rgba(var(--drt-accent),.08); color:rgb(var(--drt-accent));
}
.drt-section-head h3{ margin:0; color:#0f172a; font-size:1rem; font-weight:950; }
.drt-section-head p{ margin:.15rem 0 0; color:#64748b; font-size:.8rem; line-height:1.6; }
.drt-choice-card{
  border:1px solid #e2e8f0; border-radius:1.15rem; background:#fff; padding:1rem;
}
.drt-choice-title{ display:flex; align-items:center; gap:.45rem; color:#0f172a; font-size:.9rem; font-weight:950; }
.drt-choice-card p{ margin:.25rem 0 0; color:#64748b; font-size:.78rem; line-height:1.6; }
.drt-selected-patient{
  display:flex; align-items:center; gap:.75rem; border:1px solid rgba(var(--drt-accent),.16);
  background:rgba(var(--drt-accent),.045); border-radius:1.1rem; padding:.85rem;
}
.drt-selected-patient-icon{
  flex:0 0 auto; width:2.1rem; height:2.1rem; display:inline-flex; align-items:center; justify-content:center;
  border-radius:.85rem; background:#fff; color:rgb(var(--drt-accent)); border:1px solid rgba(var(--drt-accent),.14);
}
.drt-selected-time{
  border:1px dashed rgba(var(--drt-accent),.35); border-radius:1.05rem; background:rgba(var(--drt-accent),.045);
  color:#334155; padding:.85rem; font-weight:950;
}
.drt-slot-panel{ min-height: 560px; }
.drt-booking-tip{
  display:flex; align-items:center; gap:.5rem; color:#475569; background:#f8fafc; border:1px solid #e2e8f0;
  border-radius:1rem; padding:.7rem .85rem; font-size:.82rem; font-weight:750;
}
.drt-slot-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; flex-wrap:wrap; }
.drt-slot-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.drt-slot-card{
  border:1px solid #e2e8f0; border-radius:1rem; background:#fff; padding:.55rem;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.drt-slot-choice{
  width:100%; min-height:3.4rem; display:flex; align-items:center; justify-content:space-between; gap:.55rem;
  border-radius:.85rem; border:1px solid #e2e8f0; padding:.75rem .8rem; font-weight:950;
}
.drt-slot-choice.is-free{ background:#f0fdfa; border-color:#99f6e4; color:#115e59; }
.drt-slot-choice.is-free:hover{ background:#ccfbf1; }
.drt-slot-choice.is-disabled{ background:#f8fafc; color:#94a3b8; cursor:not-allowed; }
.drt-slot-time{ font-size:1rem; }
.drt-slot-badge{
  display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:.22rem .52rem;
  background:#e2e8f0; color:#475569; font-size:.68rem; line-height:1; font-weight:950;
}
.drt-slot-badge.is-free{ background:#fff; color:#0f766e; border:1px solid #99f6e4; }
.drt-slot-admin-action{
  width:100%; display:inline-flex; align-items:center; justify-content:center; border:1px solid #e2e8f0;
  background:#fff; color:#64748b; border-radius:.75rem; padding:.45rem .55rem; font-size:.7rem; font-weight:900;
}
.drt-slot-admin-action:hover{ background:#f8fafc; color:#334155; }
.drt-empty-state{
  border:1px dashed #cbd5e1; border-radius:1.1rem; background:#f8fafc; color:#64748b;
  padding:1.2rem; text-align:center; font-weight:750;
}
@media (min-width: 640px){ .drt-slot-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (min-width: 1024px){ .drt-slot-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (min-width: 1280px){ .drt-slot-grid{ grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media (max-width: 900px){
  .drt-booking-intro{ align-items:flex-start; flex-direction:column; }
  .drt-booking-intro-badges{ justify-content:flex-start; }
  .drt-booking-steps{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px){
  .drt-booking-steps{ grid-template-columns:1fr; }
  .drt-section-head{ align-items:flex-start; }
}

/* ------------------------------------------------------------------
   Patient file refresh
------------------------------------------------------------------ */
.drt-patient-file {
  --drt-soft-border: rgb(226 232 240);
}
.drt-patient-hero {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  border: 1px solid rgb(219 234 254);
  background:
    radial-gradient(circle at top left, rgb(224 242 254 / 0.55), transparent 32rem),
    linear-gradient(135deg, rgb(255 255 255), rgb(248 250 252));
  border-radius: 1.35rem;
  padding: 1rem;
  box-shadow: 0 18px 45px rgb(15 23 42 / 0.06);
}
[dir="rtl"] .drt-patient-hero {
  background:
    radial-gradient(circle at top right, rgb(224 242 254 / 0.55), transparent 32rem),
    linear-gradient(225deg, rgb(255 255 255), rgb(248 250 252));
}
.drt-patient-avatar {
  width: 3.35rem;
  height: 3.35rem;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgb(37 99 235), rgb(14 165 233));
  color: #fff;
  font-weight: 950;
  font-size: 1.45rem;
  box-shadow: 0 14px 30px rgb(37 99 235 / 0.22);
}
.drt-patient-name {
  font-size: 1.25rem;
  line-height: 1.85rem;
  font-weight: 950;
  color: var(--drt-text);
}
.drt-patient-kpis {
  margin-top: 0.95rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
}
@media (min-width: 640px) {
  .drt-patient-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.drt-patient-kpi {
  border: 1px solid rgb(226 232 240);
  background: rgb(255 255 255 / 0.76);
  border-radius: 1rem;
  padding: 0.7rem 0.8rem;
}
.drt-patient-kpi span {
  display: block;
  font-size: 0.72rem;
  line-height: 1rem;
  color: rgb(100 116 139);
}
.drt-patient-kpi strong {
  margin-top: 0.1rem;
  display: block;
  font-weight: 950;
  color: rgb(15 23 42);
}
.drt-file-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.75rem;
  border: 1px solid rgb(226 232 240);
  background: #fff;
  border-radius: 1rem;
}
.drt-patient-summary {
  border: 1px solid rgb(226 232 240);
  background: #fff;
  border-radius: 1.15rem;
  padding: 0.9rem;
}
.drt-patient-summary > summary,
.drt-upload-panel > summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  font-weight: 950;
  color: rgb(15 23 42);
}
.drt-patient-summary > summary::-webkit-details-marker,
.drt-upload-panel > summary::-webkit-details-marker { display: none; }
.drt-patient-summary > summary::after,
.drt-upload-panel > summary::after {
  content: "⌄";
  display: inline-flex;
  width: 1.5rem;
  height: 1.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgb(226 232 240);
  color: rgb(100 116 139);
  transition: transform 150ms ease;
}
.drt-patient-summary[open] > summary::after,
.drt-upload-panel[open] > summary::after { transform: rotate(180deg); }
.drt-info-box {
  border: 1px solid rgb(226 232 240);
  background: rgb(248 250 252 / 0.7);
  border-radius: 1rem;
  padding: 0.85rem;
}
.drt-info-title {
  font-size: 0.8rem;
  line-height: 1.15rem;
  font-weight: 950;
  color: rgb(51 65 85);
}
.drt-info-list {
  margin-top: 0.55rem;
  display: grid;
  gap: 0.35rem;
  font-size: 0.85rem;
}
.drt-info-list div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.drt-info-list dt { color: rgb(100 116 139); }
.drt-info-list dd {
  color: rgb(15 23 42);
  font-weight: 850;
  text-align: end;
}
.drt-patient-layout {
  display: grid;
  gap: 1rem;
}
@media (min-width: 1024px) {
  .drt-patient-layout { grid-template-columns: minmax(17rem, 0.38fr) minmax(0, 0.62fr); align-items: start; }
  .drt-patient-side { position: sticky; top: 5.25rem; }
  .drt-patient-main-full { grid-column: 1 / -1; }
}
.drt-section-card {
  border: 1px solid rgb(226 232 240);
  background: #fff;
  border-radius: 1.15rem;
  padding: 1rem;
  box-shadow: 0 12px 28px rgb(15 23 42 / 0.04);
}
.drt-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}
.drt-section-head h3 {
  font-weight: 950;
  color: rgb(15 23 42);
  line-height: 1.3rem;
}
.drt-section-head p {
  margin-top: 0.2rem;
  font-size: 0.78rem;
  line-height: 1.1rem;
  color: rgb(100 116 139);
}
.drt-compact-item,
.drt-timeline-item,
.drt-treatment-item,
.drt-document-item {
  border: 1px solid rgb(226 232 240);
  background: rgb(248 250 252 / 0.58);
  border-radius: 1rem;
  padding: 0.75rem;
}
.drt-compact-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}
.drt-timeline-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.drt-timeline-dot {
  margin-top: 0.35rem;
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 999px;
  background: rgb(37 99 235);
  box-shadow: 0 0 0 4px rgb(219 234 254);
  flex: 0 0 auto;
}
.drt-plan-card {
  border: 1px solid rgb(226 232 240);
  background: linear-gradient(180deg, #fff, rgb(248 250 252 / 0.55));
  border-radius: 1.15rem;
  padding: 0.9rem;
}
.drt-empty-state {
  display: grid;
  gap: 0.2rem;
  border: 1px dashed rgb(203 213 225);
  background: rgb(248 250 252 / 0.85);
  border-radius: 1rem;
  padding: 0.9rem;
  color: rgb(71 85 105);
}
.drt-empty-state strong {
  color: rgb(15 23 42);
  font-weight: 950;
}
.drt-empty-state span {
  font-size: 0.82rem;
  color: rgb(100 116 139);
}

.drt-lab-referral-help{
  display:flex;
  align-items:flex-start;
  gap:.65rem;
  margin-top:.8rem;
  margin-bottom:.85rem;
  padding:.75rem .85rem;
  border:1px solid rgb(191 219 254);
  background:linear-gradient(135deg,rgba(239,246,255,.95),rgba(240,253,250,.9));
  border-radius:1rem;
  color:rgb(51 65 85);
  font-size:.82rem;
  line-height:1.45;
}
.drt-lab-referral-help strong{color:rgb(30 64 175);font-weight:950;white-space:nowrap;}
.drt-lab-referral-help span{color:rgb(71 85 105);}
.drt-lab-referral{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-top:.65rem;
  padding:.65rem .7rem;
  border-radius:.95rem;
  border:1px solid rgb(226 232 240);
  background:#fff;
}
.drt-lab-referral.is-pending{border-color:rgb(253 230 138);background:linear-gradient(135deg,rgba(255,251,235,.96),rgba(255,255,255,.92));}
.drt-lab-referral.is-sent{border-color:rgb(191 219 254);background:linear-gradient(135deg,rgba(239,246,255,.98),rgba(240,253,250,.92));}
.drt-lab-referral__main{display:flex;flex-wrap:wrap;align-items:center;gap:.42rem .55rem;min-width:0;}
.drt-lab-referral__actions{display:flex;align-items:center;gap:.4rem;flex:0 0 auto;}
.drt-lab-referral__flag,.drt-lab-referral__pending,.drt-lab-referral__case,.drt-lab-referral__meta{
  display:inline-flex;align-items:center;gap:.25rem;border-radius:999px;padding:.22rem .52rem;font-size:.72rem;line-height:1rem;font-weight:900;
}
.drt-lab-referral__flag{background:rgb(254 243 199);color:rgb(146 64 14);border:1px solid rgb(253 230 138);}
.drt-lab-referral__pending{background:rgb(255 247 237);color:rgb(154 52 18);border:1px solid rgb(254 215 170);}
.drt-lab-referral__case{background:rgb(219 234 254);color:rgb(30 64 175);border:1px solid rgb(191 219 254);text-decoration:none;}
.drt-lab-referral__case:hover{filter:brightness(.98);}
.drt-lab-referral__meta{background:rgba(248,250,252,.92);color:rgb(71 85 105);border:1px solid rgb(226 232 240);}
.drt-lab-referral__meta strong{color:rgb(15 23 42);font-weight:950;}
.drt-lab-referral__hint{color:rgb(100 116 139);font-size:.74rem;line-height:1.1rem;}
@media (max-width:640px){
  .drt-lab-referral{align-items:stretch;flex-direction:column;}
  .drt-lab-referral__actions,.drt-lab-referral__actions form,.drt-lab-referral__actions .btn{width:100%;}
  .drt-lab-referral__actions .btn{justify-content:center;}
  .drt-lab-referral-help{flex-direction:column;gap:.2rem;}
}
.drt-upload-panel {
  border: 1px solid rgb(226 232 240);
  background: rgb(248 250 252 / 0.7);
  border-radius: 1rem;
  padding: 0.85rem;
}
.drt-document-item {
  background: #fff;
}
@media (max-width: 639px) {
  .drt-patient-hero { flex-direction: column; }
  .drt-patient-avatar { width: 3rem; height: 3rem; }
}

/* ------------------------------------------------------------------
   Patient file color refresh - calmer sections and clearer documents
------------------------------------------------------------------ */
.drt-patient-file{
  --drt-doc:#f59e0b;
  --drt-appt:#0ea5e9;
  --drt-treatment:#8b5cf6;
  --drt-schedule:#14b8a6;
  --drt-billing:#22c55e;
}
.drt-patient-hero{
  border-color:rgb(204 251 241);
  background:
    radial-gradient(circle at top left, rgb(153 246 228 / .35), transparent 30rem),
    radial-gradient(circle at bottom right, rgb(219 234 254 / .52), transparent 26rem),
    linear-gradient(135deg,#fff,rgb(248 250 252));
  box-shadow:0 18px 45px rgb(15 23 42 / .055);
}
[dir="rtl"] .drt-patient-hero{
  background:
    radial-gradient(circle at top right, rgb(153 246 228 / .35), transparent 30rem),
    radial-gradient(circle at bottom left, rgb(219 234 254 / .52), transparent 26rem),
    linear-gradient(225deg,#fff,rgb(248 250 252));
}
.drt-patient-avatar{background:linear-gradient(135deg,#0f766e,#38bdf8); box-shadow:0 14px 30px rgb(13 148 136 / .2);}
.drt-patient-kpi{position:relative; overflow:hidden; background:#fff;}
.drt-patient-kpi::before{content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:4px; background:rgb(203 213 225);}
.drt-patient-kpi--appointments::before{background:var(--drt-appt);}
.drt-patient-kpi--treatments::before{background:var(--drt-treatment);}
.drt-patient-kpi--schedule::before{background:var(--drt-schedule);}
.drt-patient-kpi--consent::before{background:var(--drt-billing);}
.drt-file-toolbar{
  display:grid;
  gap:.65rem;
  border:1px solid rgb(226 232 240);
  background:rgb(255 255 255 / .82);
  border-radius:1.05rem;
  padding:.65rem;
  box-shadow:0 8px 24px rgb(15 23 42 / .035);
}
@media (min-width:1024px){.drt-file-toolbar{grid-template-columns:minmax(0,1fr) auto; align-items:center;}}
.drt-file-nav{display:flex; flex-wrap:wrap; gap:.4rem;}
.drt-file-nav a{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.42rem .7rem;
  border:1px solid rgb(226 232 240);
  background:rgb(248 250 252 / .78);
  color:#475569;
  border-radius:999px;
  font-size:.78rem;
  font-weight:850;
  text-decoration:none;
}
.drt-file-nav a:hover{border-color:rgb(45 212 191); color:#0f766e; background:rgb(240 253 250);}
.drt-file-actions{border:0; background:transparent; border-radius:0; padding:0; justify-content:flex-start;}
.drt-patient-summary{background:rgb(255 255 255 / .8); border-color:rgb(226 232 240);}
.drt-patient-summary > summary{align-items:center;}
.drt-patient-summary > summary small,
.drt-upload-panel > summary small{font-size:.72rem; line-height:1rem; color:#64748b; font-weight:750;}
.drt-section-card{position:relative; overflow:hidden;}
.drt-section-card::before{content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:5px; background:transparent;}
.drt-section-card--documents{border-color:rgb(254 215 170); background:linear-gradient(180deg,#fff,rgb(255 251 235 / .48));}
.drt-section-card--documents::before{background:var(--drt-doc);}
.drt-section-card--appointments{border-color:rgb(186 230 253); background:linear-gradient(180deg,#fff,rgb(240 249 255 / .52));}
.drt-section-card--appointments::before{background:var(--drt-appt);}
.drt-section-card--treatments{border-color:rgb(221 214 254); background:linear-gradient(180deg,#fff,rgb(245 243 255 / .5));}
.drt-section-card--treatments::before{background:var(--drt-treatment);}
.drt-section-card--schedule{border-color:rgb(153 246 228); background:linear-gradient(180deg,#fff,rgb(240 253 250 / .52));}
.drt-section-card--schedule::before{background:var(--drt-schedule);}
.drt-section-card--billing{border-color:rgb(187 247 208); background:linear-gradient(180deg,#fff,rgb(240 253 244 / .5));}
.drt-section-card--billing::before{background:var(--drt-billing);}
.drt-section-card--loyalty{border-color:rgb(191 219 254); background:linear-gradient(180deg,#fff,rgb(239 246 255 / .55));}
.drt-section-card--loyalty::before{background:#2563eb;}
.drt-section-titleline{display:flex; align-items:flex-start; gap:.65rem; min-width:0;}
.drt-section-dot{width:2.1rem; height:2.1rem; border-radius:.8rem; display:inline-flex; flex:0 0 auto; background:rgb(226 232 240); box-shadow:inset 0 0 0 1px rgb(255 255 255 / .72);}
.drt-section-card--documents .drt-section-dot{background:linear-gradient(135deg,#f59e0b,#fcd34d);}
.drt-section-card--appointments .drt-section-dot{background:linear-gradient(135deg,#0284c7,#7dd3fc);}
.drt-section-card--treatments .drt-section-dot{background:linear-gradient(135deg,#7c3aed,#c4b5fd);}
.drt-section-card--schedule .drt-section-dot{background:linear-gradient(135deg,#0f766e,#5eead4);}
.drt-section-card--loyalty .drt-section-dot{background:linear-gradient(135deg,#2563eb,#22c55e);}
.drt-documents-grid{display:grid; gap:.85rem;}
@media (min-width:1100px){.drt-documents-grid{grid-template-columns:minmax(0,1fr) minmax(17rem, .36fr); align-items:start;}}
.drt-documents-list{display:grid; gap:.65rem;}
.drt-document-item{
  display:flex;
  flex-direction:column;
  gap:.7rem;
  border-color:rgb(226 232 240);
  background:rgb(255 255 255 / .86);
  box-shadow:0 8px 20px rgb(15 23 42 / .035);
}
@media (min-width:720px){.drt-document-item{flex-direction:row; align-items:center; justify-content:space-between;}}
.drt-document-main{display:flex; align-items:flex-start; gap:.7rem; min-width:0;}
.drt-document-icon{
  width:2.45rem; height:2.45rem; border-radius:.85rem;
  display:inline-flex; align-items:center; justify-content:center;
  flex:0 0 auto;
  font-size:.58rem; line-height:.8rem; font-weight:950;
  background:rgb(254 243 199); color:#92400e;
  text-align:center;
}
.drt-document-item--radiograph .drt-document-icon{background:rgb(219 234 254); color:#1d4ed8;}
.drt-document-item--insurance .drt-document-icon{background:rgb(220 252 231); color:#15803d;}
.drt-document-item--patient .drt-document-icon{background:rgb(254 243 199); color:#92400e;}
.drt-document-item--other .drt-document-icon{background:rgb(241 245 249); color:#475569;}
.drt-document-title-row{display:grid; gap:.25rem; min-width:0;}
@media (min-width:640px){.drt-document-title-row{display:flex; align-items:center; gap:.5rem;}}
.drt-document-type{
  width:max-content;
  max-width:100%;
  border:1px solid rgb(254 215 170);
  background:rgb(255 251 235);
  color:#92400e;
  border-radius:999px;
  padding:.16rem .5rem;
  font-size:.68rem;
  font-weight:900;
}
.drt-document-actions{display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; justify-content:flex-start;}
@media (min-width:720px){.drt-document-actions{justify-content:flex-end;}}
.btn-ghost-danger{border-color:rgb(254 205 211)!important; color:#be123c!important; background:rgb(255 241 242)!important;}
.btn-ghost-danger:hover{background:rgb(255 228 230)!important;}
.drt-upload-panel{
  background:rgb(255 251 235 / .72);
  border-color:rgb(254 215 170);
  box-shadow:inset 0 0 0 1px rgb(255 255 255 / .55);
}
.drt-upload-form{display:grid; gap:.7rem;}
.drt-upload-dropzone{
  border:1px dashed rgb(251 191 36);
  background:rgb(255 255 255 / .62);
  border-radius:.9rem;
  padding:.7rem;
}
.drt-upload-dropzone input[type="file"]{background:#fff;}
.drt-empty-state--documents{border-color:rgb(251 191 36); background:rgb(255 251 235 / .65);}
@media (max-width:639px){
  .drt-file-nav a{font-size:.74rem; padding:.38rem .6rem;}
  .drt-section-titleline{gap:.5rem;}
  .drt-section-dot{width:1.85rem;height:1.85rem;border-radius:.7rem;}
}

/* ------------------------------------------------------------------
   Scheduler page color refresh - clearer day board and calmer actions
------------------------------------------------------------------ */
.drt-scheduler-page{
  --drt-sched-primary:#0f766e;
  --drt-sched-soft:rgb(240 253 250);
  --drt-sched-border:rgb(153 246 228);
  --drt-sched-booked:#2563eb;
  --drt-sched-treatment:#7c3aed;
  --drt-sched-blocked:#f59e0b;
  --drt-sched-held:#6366f1;
}
.drt-scheduler-hero,
.drt-scheduler-control-card,
.drt-scheduler-board-shell{
  border:1px solid rgb(226 232 240);
  background:#fff;
  border-radius:1.25rem;
  box-shadow:0 18px 42px rgb(15 23 42 / .045);
}
.drt-scheduler-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding:1rem;
  background:
    radial-gradient(circle at top left, rgb(153 246 228 / .36), transparent 28rem),
    radial-gradient(circle at bottom right, rgb(219 234 254 / .58), transparent 26rem),
    linear-gradient(135deg,#fff,rgb(248 250 252));
  border-color:rgb(204 251 241);
}
[dir="rtl"] .drt-scheduler-hero{
  background:
    radial-gradient(circle at top right, rgb(153 246 228 / .36), transparent 28rem),
    radial-gradient(circle at bottom left, rgb(219 234 254 / .58), transparent 26rem),
    linear-gradient(225deg,#fff,rgb(248 250 252));
}
.drt-scheduler-hero-main{display:flex; align-items:flex-start; gap:.85rem; min-width:0;}
.drt-scheduler-icon{
  width:2.75rem; height:2.75rem; border-radius:1rem;
  display:inline-flex; align-items:center; justify-content:center;
  flex:0 0 auto;
  color:#fff;
  background:linear-gradient(135deg,#0f766e,#38bdf8);
  box-shadow:0 14px 30px rgb(13 148 136 / .22);
}
.drt-scheduler-actions{display:flex; flex-wrap:wrap; gap:.5rem; justify-content:flex-end;}
.drt-scheduler-control-card{padding:1rem; position:relative; overflow:hidden;}
.drt-scheduler-control-card::before{content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:5px; background:var(--drt-sched-primary);}
.drt-scheduler-control-head{display:flex; align-items:flex-start; justify-content:space-between; gap:1rem;}
.drt-scheduler-control-head h2{font-weight:950; color:#0f172a;}
.drt-scheduler-control-head p{margin-top:.18rem; font-size:.82rem; color:#64748b;}
.drt-scheduler-step-badge{
  display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;
  border:1px solid rgb(153 246 228); background:rgb(240 253 250); color:#0f766e;
  border-radius:999px; padding:.35rem .7rem; font-size:.75rem; font-weight:900;
}

.drt-scheduler-filter-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(15rem,1.35fr) minmax(11rem,.85fr) minmax(16rem,1fr);
  gap:.85rem;
  align-items:end;
  margin-top:1rem;
}
.drt-scheduler-filter-field{
  min-width:0;
  display:grid;
  gap:.45rem;
}
.drt-scheduler-filter-field .label{
  margin:0;
  color:#334155;
  font-size:.78rem;
  font-weight:950;
}
.drt-scheduler-filter-control{
  width:100%;
  min-height:2.8rem;
  margin:0!important;
  border-color:rgb(203 213 225);
  background:#fff;
  box-shadow:0 6px 16px rgb(15 23 42 / .035);
}
.drt-scheduler-filter-control:focus{
  border-color:rgb(45 212 191);
  box-shadow:0 0 0 4px rgb(45 212 191 / .14);
}
.drt-scheduler-filter-tip-wrap{min-width:0;}
[dir="rtl"] .drt-scheduler-filter-control{text-align:right;}
@media (max-width:1120px){
  .drt-scheduler-filter-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,.65fr);}
  .drt-scheduler-filter-tip-wrap{grid-column:1 / -1;}
}
@media (max-width:720px){
  .drt-scheduler-filter-grid{grid-template-columns:1fr; gap:.75rem;}
  .drt-scheduler-control-card{padding:.85rem;}
  .drt-scheduler-step-badge{align-self:flex-start;}
}
.drt-scheduler-tip{
  border:1px solid rgb(204 251 241);
  background:rgb(240 253 250 / .78);
  color:#115e59;
  border-radius:1rem;
  padding:.65rem .75rem;
  display:grid;
  gap:.14rem;
}
.drt-scheduler-tip strong{font-size:.75rem; font-weight:950;}
.drt-scheduler-tip span{font-size:.74rem; line-height:1.05rem; color:#0f766e;}
.drt-scheduler-board-shell{padding:1rem; min-height:9rem;}
.drt-board-loading{border:1px dashed rgb(203 213 225); border-radius:1rem; padding:1.25rem; color:#64748b; background:rgb(248 250 252 / .8); text-align:center; font-weight:850;}
.drt-scheduler-empty-panel{
  display:flex; align-items:center; gap:.85rem; flex-wrap:wrap;
  border:1px dashed rgb(153 246 228);
  background:rgb(240 253 250 / .74);
  border-radius:1.1rem;
  padding:1rem;
  color:#115e59;
}
.drt-scheduler-empty-panel > div:not(.drt-scheduler-empty-icon){display:grid; gap:.15rem; min-width:12rem; flex:1 1 18rem;}
.drt-scheduler-empty-panel strong{font-weight:950; color:#0f172a;}
.drt-scheduler-empty-panel span{font-size:.82rem; color:#64748b;}
.drt-scheduler-empty-icon{
  width:2.6rem; height:2.6rem; border-radius:1rem;
  display:inline-flex; align-items:center; justify-content:center;
  background:#fff; color:#0f766e; border:1px solid rgb(153 246 228);
}
.drt-scheduler-board-top{display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-bottom:.85rem;}
.drt-board-eyebrow{text-transform:none; letter-spacing:.02em; color:#0f766e; font-size:.72rem; font-weight:950;}
.drt-scheduler-board-top h2{margin-top:.1rem; color:#0f172a; font-size:1.05rem; font-weight:950;}
.drt-scheduler-board-top p{margin-top:.18rem; color:#64748b; font-size:.82rem;}
.drt-scheduler-legend{display:flex; flex-wrap:wrap; gap:.35rem; justify-content:flex-end;}
.drt-legend-item{display:inline-flex; align-items:center; gap:.35rem; border:1px solid rgb(226 232 240); border-radius:999px; padding:.28rem .58rem; background:#fff; font-size:.72rem; font-weight:900; color:#475569;}
.drt-legend-item::before{content:""; width:.48rem; height:.48rem; border-radius:999px; background:rgb(148 163 184);}
.drt-legend-free::before{background:#14b8a6;}
.drt-legend-booked::before{background:#2563eb;}
.drt-legend-blocked::before{background:#f59e0b;}
.drt-legend-held::before{background:#6366f1;}
.drt-scheduler-stats{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; margin-bottom:.9rem;}
@media (min-width:900px){.drt-scheduler-stats{grid-template-columns:repeat(4,minmax(0,1fr));}}
.drt-scheduler-stat{
  position:relative; overflow:hidden;
  border:1px solid rgb(226 232 240); background:rgb(248 250 252 / .64);
  border-radius:1rem; padding:.72rem .8rem;
}
.drt-scheduler-stat::before{content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:4px; background:rgb(203 213 225);}
.drt-scheduler-stat span{display:block; color:#64748b; font-size:.74rem; font-weight:850;}
.drt-scheduler-stat strong{display:block; margin-top:.18rem; color:#0f172a; font-size:1.25rem; line-height:1.35rem; font-weight:950;}
.drt-scheduler-stat--doctors::before{background:#0ea5e9;}
.drt-scheduler-stat--booked::before{background:#2563eb;}
.drt-scheduler-stat--free::before{background:#14b8a6;}
.drt-scheduler-stat--blocked::before{background:#f59e0b;}
.drt-scheduler-table-wrap{
  overflow:auto;
  border:1px solid rgb(226 232 240);
  border-radius:1.1rem;
  background:#fff;
  max-height:calc(100vh - 18rem);
}
.drt-scheduler-table{border-collapse:separate; border-spacing:0; min-width:760px;}
.drt-scheduler-table th,
.drt-scheduler-table td{border-bottom:1px solid rgb(226 232 240); border-inline-end:1px solid rgb(226 232 240); padding:.42rem;}
.drt-scheduler-table tbody tr:last-child td{border-bottom:0;}
.drt-scheduler-table thead th{position:sticky; top:0; z-index:4; background:rgb(248 250 252);}
.drt-scheduler-time-head,
.drt-scheduler-time-cell{position:sticky; inset-inline-start:0; z-index:3; width:4.8rem; min-width:4.8rem;}
.drt-scheduler-time-head{z-index:5!important; color:#475569; font-size:.72rem; font-weight:950;}
.drt-scheduler-time-cell{background:rgb(248 250 252); color:#475569; font-size:.75rem; font-weight:950; white-space:nowrap; text-align:center;}
.drt-scheduler-doctor-head{min-width:13.5rem;}
.drt-doctor-head-card{display:grid; gap:.08rem; text-align:start;}
.drt-doctor-head-card span{font-weight:950; color:#0f172a;}
.drt-doctor-head-card small{font-size:.68rem; color:#64748b; font-weight:800;}
.drt-sched-cell{vertical-align:top; min-height:2.75rem;}
.drt-sched-cell-free{background:rgb(240 253 250 / .72);}
.drt-sched-cell-empty{background:rgb(248 250 252 / .7); color:#cbd5e1; text-align:center;}
.drt-sched-cell-blocked{background:rgb(255 251 235 / .88);}
.drt-sched-cell-held{background:rgb(238 242 255 / .88);}
.drt-sched-free-btn,
.drt-sched-state-btn,
.drt-sched-appointment{
  width:100%; border:1px solid transparent; border-radius:.85rem;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
  cursor:pointer;
}
.drt-sched-free-btn{
  min-height:2.4rem; display:flex; align-items:center; justify-content:center; gap:.35rem;
  background:#fff; border-color:rgb(153 246 228); color:#0f766e; font-weight:950;
}
.drt-sched-free-btn span{display:inline-flex; width:1.35rem; height:1.35rem; border-radius:999px; align-items:center; justify-content:center; background:rgb(204 251 241); line-height:1;}
.drt-sched-free-btn small{font-size:.72rem; font-weight:900;}
.drt-sched-free-btn:hover{background:rgb(240 253 250); box-shadow:0 8px 18px rgb(20 184 166 / .12); transform:translateY(-1px);}
.drt-sched-appointment{display:grid; gap:.42rem; text-align:start; padding:.7rem; background:#fff; box-shadow:0 8px 18px rgb(15 23 42 / .045);}
.drt-sched-appointment--checkup{border-color:rgb(191 219 254); background:linear-gradient(180deg,#fff,rgb(239 246 255 / .72));}
.drt-sched-appointment--treatment{border-color:rgb(221 214 254); background:linear-gradient(180deg,#fff,rgb(245 243 255 / .78));}
.drt-sched-appointment:hover{transform:translateY(-1px); box-shadow:0 12px 26px rgb(15 23 42 / .075);}
.drt-sched-appt-top{display:flex; align-items:flex-start; justify-content:space-between; gap:.5rem;}
.drt-sched-appt-top strong{font-size:.82rem; line-height:1.1rem; color:#0f172a; font-weight:950; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.drt-sched-appt-top em{font-style:normal; flex:0 0 auto; font-size:.68rem; color:#64748b; font-weight:900;}
.drt-sched-appt-bottom{display:flex; flex-wrap:wrap; align-items:center; gap:.35rem; color:#475569; font-size:.72rem; font-weight:900;}
.drt-sched-appt-bottom small{font-size:.7rem; color:#64748b; font-weight:800;}
.drt-sched-state-btn{display:grid; gap:.05rem; min-height:2.4rem; padding:.45rem .55rem; text-align:start; background:#fff;}
.drt-sched-state-btn strong{font-size:.75rem; font-weight:950; color:#0f172a;}
.drt-sched-state-btn small{font-size:.68rem; color:#64748b; font-weight:850;}
.drt-sched-state-btn--blocked{border-color:rgb(253 230 138); background:rgb(255 251 235);}
.drt-sched-state-btn--held{border-color:rgb(199 210 254); background:rgb(238 242 255);}
.drt-sched-state-btn:hover{transform:translateY(-1px); box-shadow:0 8px 18px rgb(15 23 42 / .055);}
.drt-scheduler-modal-card{border-radius:1.25rem; overflow:hidden; box-shadow:0 24px 70px rgb(15 23 42 / .22); border:1px solid rgb(226 232 240); background:#fff;}
.drt-scheduler-modal-head{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:1rem 1.1rem;
  border-bottom:1px solid rgb(204 251 241);
  background:linear-gradient(135deg,rgb(240 253 250),#fff);
}
.drt-scheduler-modal-kicker{font-size:.72rem; color:#0f766e; font-weight:950;}
.drt-scheduler-modal-title{margin-top:.12rem; color:#0f172a; font-weight:950;}
.drt-scheduler-modal-body{padding:1rem;}
.drt-scheduler-panel{
  border:1px solid rgb(226 232 240);
  background:rgb(255 255 255 / .88);
  border-radius:1rem;
  padding:.85rem;
}
.drt-scheduler-panel--patient{border-color:rgb(186 230 253); background:linear-gradient(180deg,#fff,rgb(240 249 255 / .55));}
.drt-scheduler-panel--action{border-color:rgb(153 246 228); background:linear-gradient(180deg,#fff,rgb(240 253 250 / .55));}

.drt-scheduler-modal-shell{width:min(980px,calc(100vw - 1.25rem)); margin-top:clamp(.5rem,3vh,2rem);}
.drt-scheduler-modal-card{display:flex; flex-direction:column; max-height:calc(100vh - 1.25rem);}
.drt-scheduler-modal-body{flex:1 1 auto; min-height:0; overflow:hidden;}
.drt-scheduler-modal-grid{display:grid; grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr); gap:1rem; min-height:0;}
.drt-scheduler-panel{display:flex; flex-direction:column; min-height:0;}
.drt-scheduler-panel--patient{max-height:calc(100vh - 9.2rem); overflow:auto; scrollbar-width:thin;}
.drt-scheduler-panel--action{max-height:calc(100vh - 9.2rem); overflow:hidden;}
.drt-scheduler-patient-results{max-height:14rem; overflow:auto; padding-inline-end:.15rem; scrollbar-width:thin;}
.drt-scheduler-treatment-panel{min-height:0; flex:1 1 auto;}
.drt-scheduler-treatment-panel:not(.hidden){display:flex; flex-direction:column;}
.drt-scheduler-treat-form{display:flex; flex-direction:column; gap:.75rem; min-height:0; flex:1 1 auto;}
.drt-scheduler-treat-scroll{display:grid; gap:.75rem; min-height:0; max-height:calc(100vh - 20rem); overflow:auto; padding:.15rem .2rem .45rem; scrollbar-width:thin;}
.drt-scheduler-mode-card{border:1px solid rgb(221 214 254); border-radius:.95rem; padding:.85rem; background:linear-gradient(180deg,#fff,rgb(245 243 255 / .75));}
.drt-scheduler-mode-option{display:flex; align-items:center; gap:.5rem; border:1px solid rgb(226 232 240); border-radius:.75rem; background:rgb(255 255 255 / .75); padding:.55rem .65rem;}
.drt-scheduler-mode-option:has(input:checked){border-color:rgb(167 139 250); background:rgb(245 243 255); box-shadow:0 8px 18px rgb(124 58 237 / .08);}
.drt-scheduler-items-box{border:1px solid rgb(226 232 240); border-radius:.95rem; background:linear-gradient(180deg,#fff,rgb(248 250 252 / .8)); padding:.75rem; min-height:4.5rem;}
.drt-scheduler-items-list{display:grid; gap:.65rem;}
.drt-scheduler-items-head{position:sticky; top:-.2rem; z-index:3; display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.55rem .6rem; margin:-.35rem -.35rem .1rem; border:1px solid rgb(226 232 240); border-radius:.8rem; background:linear-gradient(135deg,rgb(240 253 250),#fff); box-shadow:0 6px 16px rgb(15 23 42 / .05);}
.drt-scheduler-item-card{position:relative; border:1px solid rgb(221 214 254); border-radius:.95rem; background:linear-gradient(135deg,#fff,rgb(245 243 255 / .66)); padding:.75rem .8rem; box-shadow:0 8px 18px rgb(15 23 42 / .045);}
.drt-scheduler-item-card::before{content:""; position:absolute; inset-inline-start:0; top:.65rem; bottom:.65rem; width:4px; border-radius:999px; background:rgb(139 92 246 / .72);}
.drt-scheduler-item-card input[type="checkbox"]{margin-top:.2rem; width:1rem; height:1rem; accent-color:#0d9488;}
.drt-scheduler-duration-input{text-align:center; direction:ltr;}
.drt-scheduler-empty-items{margin:0;}
.drt-scheduler-treat-footer{position:sticky; bottom:0; z-index:5; display:grid; gap:.5rem; padding:.75rem .15rem .05rem; border-top:1px solid rgb(204 251 241); background:linear-gradient(180deg,rgb(255 255 255 / .78),#fff 35%,#fff); box-shadow:0 -14px 28px rgb(15 23 42 / .07);}
@media (max-width:980px){
  .drt-scheduler-modal-card{max-height:calc(100vh - 1rem);}
  .drt-scheduler-modal-body{overflow:auto;}
  .drt-scheduler-modal-grid{grid-template-columns:1fr;}
  .drt-scheduler-panel--patient,.drt-scheduler-panel--action{max-height:none; overflow:visible;}
  .drt-scheduler-patient-results{max-height:12rem;}
  .drt-scheduler-treat-scroll{max-height:48vh;}
}
@media (max-height:700px) and (min-width:981px){
  .drt-scheduler-modal-head{padding:.7rem .9rem;}
  .drt-scheduler-modal-body{padding:.75rem;}
  .drt-scheduler-panel--patient,.drt-scheduler-panel--action{max-height:calc(100vh - 7.2rem);}
  .drt-scheduler-treat-scroll{max-height:calc(100vh - 16.7rem);}
}

@media (max-width:760px){
  .drt-scheduler-hero,.drt-scheduler-board-top,.drt-scheduler-control-head{flex-direction:column; align-items:stretch;}
  .drt-scheduler-actions,.drt-scheduler-legend{justify-content:flex-start;}
  .drt-scheduler-board-shell{padding:.75rem;}
  .drt-scheduler-table-wrap{max-height:none;}
}

/* ------------------------------------------------------------------
   Laboratory pages refresh - compact, calmer and role-friendly.
   Scope: only .drt-lab-* pages/templates.
------------------------------------------------------------------ */
.drt-lab-page{
  --lab-primary:#d97706;
  --lab-soft:#fffbeb;
  --lab-border:#fde68a;
  --lab-danger:#e11d48;
  --lab-danger-soft:#fff1f2;
  --lab-warning:#f59e0b;
  --lab-success:#059669;
  display:grid;
  gap:1rem;
}
.drt-lab-page--delays{--lab-primary:#e11d48;--lab-soft:#fff1f2;--lab-border:#fecdd3;}
.drt-lab-page--performance{--lab-primary:#7c3aed;--lab-soft:#f5f3ff;--lab-border:#ddd6fe;}
.drt-lab-page--settings{--lab-primary:#0f766e;--lab-soft:#f0fdfa;--lab-border:#99f6e4;}
.drt-lab-brief{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  border:1px solid var(--lab-border);
  border-radius:1.35rem;
  padding:1rem;
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--lab-primary) 13%, transparent), transparent 30rem),
    linear-gradient(135deg,#fff,var(--lab-soft));
  box-shadow:0 18px 42px rgb(15 23 42 / .045);
}
[dir="rtl"] .drt-lab-brief{
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--lab-primary) 13%, transparent), transparent 30rem),
    linear-gradient(225deg,#fff,var(--lab-soft));
}
.drt-lab-brief-main{display:flex; align-items:flex-start; gap:.85rem; min-width:0;}
.drt-lab-brief-icon{
  width:2.75rem;height:2.75rem;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:1rem;background:#fff;color:var(--lab-primary);
  border:1px solid color-mix(in srgb, var(--lab-primary) 20%, #fff);
  box-shadow:0 12px 26px color-mix(in srgb, var(--lab-primary) 14%, transparent);
}
.drt-lab-brief h2{margin:.12rem 0 0;color:#0f172a;font-size:1.05rem;line-height:1.65;font-weight:950;}
.drt-lab-brief p{margin:.15rem 0 0;color:#64748b;font-size:.84rem;line-height:1.65;}
.drt-lab-brief-meta{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;max-width:32rem;}
[dir="rtl"] .drt-lab-brief-meta{justify-content:flex-start;}
.drt-lab-brief-meta span{
  display:inline-flex;align-items:center;gap:.25rem;min-height:2rem;
  border:1px solid rgba(226,232,240,.92);border-radius:999px;background:rgba(255,255,255,.76);
  padding:.35rem .7rem;color:#64748b;font-size:.75rem;font-weight:850;white-space:nowrap;
}
.drt-lab-brief-meta strong{color:#0f172a;font-weight:950;}

.drt-lab-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.drt-lab-kpis--five{grid-template-columns:repeat(2,minmax(0,1fr));}
@media (min-width:760px){.drt-lab-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}.drt-lab-kpis--five{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media (min-width:1280px){.drt-lab-kpis{grid-template-columns:repeat(6,minmax(0,1fr));}}
.drt-lab-kpi{
  position:relative;overflow:hidden;display:block;min-height:6.15rem;
  border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.85rem;
  box-shadow:0 1px 2px rgba(15,23,42,.035);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.drt-lab-kpi::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#cbd5e1;}
.drt-lab-kpi:hover,.drt-lab-kpi.is-active{transform:translateY(-1px);box-shadow:0 14px 30px rgba(15,23,42,.065);}
.drt-lab-kpi.is-active{border-color:color-mix(in srgb, var(--lab-primary) 32%, #e2e8f0);background:linear-gradient(180deg,#fff,var(--lab-soft));}
.drt-lab-kpi span{display:block;color:#64748b;font-size:.76rem;font-weight:900;line-height:1.1rem;}
.drt-lab-kpi strong{display:block;margin-top:.18rem;color:#0f172a;font-size:1.65rem;line-height:1.9rem;font-weight:950;letter-spacing:-.02em;}
.drt-lab-kpi small{display:block;margin-top:.18rem;color:#94a3b8;font-size:.72rem;font-weight:850;line-height:1rem;}
.drt-lab-kpi--open::before{background:#0ea5e9;}.drt-lab-kpi--success::before{background:#10b981;}.drt-lab-kpi--action::before,.drt-lab-kpi--critical::before{background:#e11d48;}.drt-lab-kpi--overdue::before{background:#f43f5e;}.drt-lab-kpi--soon::before{background:#f59e0b;}.drt-lab-kpi--unassigned::before{background:#f97316;}.drt-lab-kpi--score::before{background:#7c3aed;}

.drt-lab-filter-card,.drt-lab-side-panel,.drt-lab-table-card,.drt-lab-settings-card{
  border:1px solid rgba(226,232,240,.92);border-radius:1.25rem;background:rgba(255,255,255,.94);
  box-shadow:0 12px 30px rgba(15,23,42,.045);
}
.drt-lab-filter-card{padding:1rem;}
.drt-lab-filter-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.8rem;align-items:end;}
.drt-lab-field{grid-column:span 2;display:grid;gap:.42rem;min-width:0;}
.drt-lab-field--search{grid-column:span 4;}
.drt-lab-filter-action{grid-column:span 2;}
.drt-lab-filter-grid--delays .drt-lab-field{grid-column:span 2;}
.drt-lab-filter-grid--delays .drt-lab-field--search{grid-column:span 4;}
.drt-lab-filter-grid--performance .drt-lab-field{grid-column:span 2;}
.drt-lab-filter-grid--performance .drt-lab-filter-action{grid-column:span 2;}
.drt-lab-filter-grid--settings .drt-lab-field--search{grid-column:span 10;}
@media (max-width:1180px){.drt-lab-field,.drt-lab-field--search,.drt-lab-filter-action,.drt-lab-filter-grid--settings .drt-lab-field--search{grid-column:span 6;}}
@media (max-width:680px){.drt-lab-filter-grid{grid-template-columns:1fr;}.drt-lab-field,.drt-lab-field--search,.drt-lab-filter-action,.drt-lab-filter-grid--settings .drt-lab-field--search{grid-column:auto;}}
.drt-lab-field .label{font-size:.78rem;margin:0;}
.drt-lab-field .input,.drt-lab-field .select{margin:0!important;min-height:2.72rem;box-shadow:0 6px 16px rgba(15,23,42,.032);}

.drt-lab-priority-panel{
  border:1px solid #fecdd3;border-radius:1.25rem;background:linear-gradient(135deg,#fff1f2,#fff 70%);
  padding:1rem;box-shadow:0 16px 36px rgba(225,29,72,.065);
}
.drt-lab-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}
.drt-lab-panel-title{color:#0f172a;font-weight:950;line-height:1.35;}
.drt-lab-panel-head p{margin:.18rem 0 0;color:#64748b;font-size:.82rem;line-height:1.55;}
.drt-lab-priority-grid{display:grid;gap:.65rem;margin-top:.85rem;}
@media (min-width:1000px){.drt-lab-priority-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
.drt-lab-priority-card{
  display:grid;gap:.25rem;border:1px solid rgba(255,255,255,.8);border-radius:1rem;background:#fff;padding:.85rem;
  box-shadow:0 8px 20px rgba(15,23,42,.045);
}
.drt-lab-priority-card:hover{border-color:#fda4af;box-shadow:0 14px 30px rgba(225,29,72,.09);}
.drt-lab-priority-card strong{color:#0f172a;font-size:.88rem;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.drt-lab-priority-card small{color:#64748b;font-size:.78rem;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.drt-lab-priority-card em{font-style:normal;color:#be123c;font-size:.76rem;line-height:1.35;font-weight:850;}

.drt-lab-case-list,.drt-lab-delay-list{display:grid;gap:.85rem;}
.drt-lab-case,.drt-lab-delay-card{
  border:1px solid #e2e8f0;border-radius:1.25rem;background:rgba(255,255,255,.94);padding:1rem;
  box-shadow:0 12px 28px rgba(15,23,42,.045);
}
.drt-lab-case-head,.drt-lab-delay-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}
.drt-lab-case-title{min-width:0;}
.drt-lab-case-id{color:#0f172a;font-size:.98rem;font-weight:950;line-height:1.35;}
.drt-lab-case-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;}
.drt-lab-alert-pill{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:999px;border:1px solid currentColor;padding:.18rem .55rem;font-size:.7rem;font-weight:950;line-height:1.05rem;white-space:nowrap;}
.drt-lab-case-meta{display:flex;flex-wrap:wrap;gap:.35rem .55rem;margin-top:.45rem;color:#475569;font-size:.85rem;font-weight:850;line-height:1.35;}
.drt-lab-case-meta span:not(:last-child)::after{content:"·";margin-inline-start:.55rem;color:#cbd5e1;}
.drt-lab-case-date{margin-top:.35rem;color:#94a3b8;font-size:.75rem;font-weight:800;line-height:1.35;}
.drt-lab-current-stage{
  flex:0 0 19rem;min-width:16rem;border:1px solid rgba(226,232,240,.92);border-radius:1.1rem;background:rgba(248,250,252,.72);
  padding:.85rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);
}
.drt-lab-current-stage--compact{flex-basis:17rem;}
.drt-lab-current-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;}
.drt-lab-current-top span{color:#64748b;font-size:.72rem;font-weight:850;}
.drt-lab-current-top strong{color:#0f172a;font-size:.88rem;font-weight:950;text-align:end;}
.drt-lab-progress{height:.5rem;overflow:hidden;border-radius:999px;background:#e2e8f0;margin:.65rem 0 .55rem;}
.drt-lab-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--lab-primary),#64748b);}
.drt-lab-current-meta,.drt-lab-current-operator{font-size:.74rem;line-height:1.45;color:#64748b;font-weight:850;}
.drt-lab-current-meta.is-danger{color:#be123c;}.drt-lab-current-meta.is-warning{color:#b45309;}
.drt-lab-alert-detail{margin-top:.85rem;border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.7rem .8rem;color:#475569;font-size:.83rem;line-height:1.55;font-weight:800;}

.drt-lab-stage-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.65rem;margin-top:.85rem;}
@media (min-width:760px){.drt-lab-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:1240px){.drt-lab-stage-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.drt-lab-stage{border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.8rem;}
.drt-lab-stage.is-done{border-color:#bbf7d0;background:#f0fdf4;}.drt-lab-stage.is-active{border-color:#bfdbfe;background:#eff6ff;}.drt-lab-stage.is-danger{border-color:#fecdd3;background:#fff1f2;}
.drt-lab-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem;}
.drt-lab-stage-head strong{color:#0f172a;font-size:.85rem;font-weight:950;line-height:1.25;}
.drt-lab-stage-meta{display:grid;gap:.3rem;margin:.65rem 0 0;}
.drt-lab-stage-meta div{display:flex;align-items:flex-start;justify-content:space-between;gap:.55rem;}
.drt-lab-stage-meta dt{color:#94a3b8;font-size:.7rem;font-weight:850;}
.drt-lab-stage-meta dd{margin:0;color:#475569;font-size:.72rem;font-weight:850;text-align:end;}
.drt-lab-score,.drt-lab-stage-late{margin-top:.5rem;font-size:.72rem;font-weight:950;}
.drt-lab-score{color:#2563eb;}.drt-lab-stage-late{color:#be123c;}

.drt-lab-action-panel{margin-top:.85rem;border:1px dashed #cbd5e1;border-radius:1rem;background:#f8fafc;padding:.72rem;}
.drt-lab-action-panel summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.45rem;color:#334155;font-size:.86rem;font-weight:950;}
.drt-lab-action-panel summary::-webkit-details-marker{display:none;}
.drt-lab-action-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.7rem;margin-top:.75rem;}
.drt-lab-action-card{grid-column:span 4;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.75rem;}
.drt-lab-action-card--wide{grid-column:span 6;}.drt-lab-action-card--danger{grid-column:span 2;display:flex;align-items:end;}
.drt-lab-inline-form{display:flex;gap:.5rem;align-items:center;margin-top:.45rem;}.drt-lab-inline-form .select{margin:0!important;}
.drt-lab-score-grid{display:grid;grid-template-columns:minmax(5rem,.3fr) minmax(0,.7fr);gap:.6rem;margin-bottom:.65rem;}
@media (max-width:1100px){.drt-lab-action-card,.drt-lab-action-card--wide,.drt-lab-action-card--danger{grid-column:span 12;}.drt-lab-action-card--danger{display:block;}}
@media (max-width:620px){.drt-lab-case-head,.drt-lab-delay-head,.drt-lab-panel-head,.drt-lab-brief{flex-direction:column;}.drt-lab-current-stage{width:100%;flex-basis:auto;}.drt-lab-brief-meta{justify-content:flex-start;}.drt-lab-inline-form,.drt-lab-score-grid{display:grid;grid-template-columns:1fr;}}

.drt-lab-dashboard-grid,.drt-lab-performance-grid{display:grid;gap:1rem;align-items:start;}
@media (min-width:1180px){.drt-lab-dashboard-grid{grid-template-columns:minmax(18rem,.34fr) minmax(0,.66fr);}.drt-lab-performance-grid{grid-template-columns:minmax(0,.68fr) minmax(18rem,.32fr);}}
.drt-lab-side-panel,.drt-lab-table-card{padding:1rem;}
@media (min-width:1180px){.drt-lab-side-panel{position:sticky;top:5.25rem;}}
.drt-lab-stage-summary-list,.drt-lab-stage-performance-list{display:grid;gap:.65rem;margin-top:.8rem;}
.drt-lab-stage-summary,.drt-lab-stage-performance{display:block;border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.75rem;}
.drt-lab-stage-summary:hover,.drt-lab-stage-summary.is-active{border-color:var(--lab-border);background:#fff;box-shadow:0 10px 22px rgba(15,23,42,.05);}
.drt-lab-stage-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;}
.drt-lab-stage-summary-head strong{color:#0f172a;font-size:.86rem;font-weight:950;}
.drt-lab-stage-summary-head span{color:#64748b;font-size:.72rem;font-weight:850;white-space:nowrap;}
.drt-lab-stage-summary-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin-top:.65rem;}
.drt-lab-stage-summary-metrics--three{grid-template-columns:repeat(3,minmax(0,1fr));}
.drt-lab-stage-summary-metrics span{display:grid;gap:.12rem;border:1px solid #e2e8f0;border-radius:.75rem;background:#fff;padding:.5rem .35rem;text-align:center;}
.drt-lab-stage-summary-metrics em{font-style:normal;color:#64748b;font-size:.66rem;font-weight:850;line-height:1;}
.drt-lab-stage-summary-metrics b{color:#0f172a;font-size:.9rem;font-weight:950;line-height:1.15;}
.drt-lab-delay-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem;}

.drt-lab-table-wrap{margin-top:.85rem;overflow:auto;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;}
.drt-lab-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;font-size:.84rem;}
.drt-lab-table th,.drt-lab-table td{padding:.75rem;border-bottom:1px solid #eef2f7;text-align:center;vertical-align:middle;}
.drt-lab-table th:first-child,.drt-lab-table td:first-child{text-align:start;}
.drt-lab-table thead th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#64748b;font-size:.72rem;font-weight:950;}
.drt-lab-table tbody tr:last-child td{border-bottom:0;}
.drt-lab-table tbody tr:hover td{background:#fbfdff;}
.drt-lab-table-empty{text-align:center!important;color:#64748b;padding:1.5rem!important;}
.drt-lab-text-success{color:#047857;font-weight:950;}.drt-lab-text-danger{color:#be123c;font-weight:950;}
.drt-lab-mini-badge{display:inline-flex;border-radius:999px;padding:.16rem .45rem;margin-inline-start:.25rem;font-size:.68rem;font-weight:950;background:#f1f5f9;color:#475569;}
.drt-lab-mini-badge.danger{background:#ffe4e6;color:#be123c;}
.drt-lab-stage-active{margin-top:.55rem;color:#64748b;font-size:.72rem;font-weight:850;}.drt-lab-stage-active span{color:#be123c;font-weight:950;}

.drt-lab-settings-card{padding:1rem;}
.drt-lab-settings-form{display:grid;gap:1rem;}
.drt-lab-switch-card{display:flex;align-items:center;gap:.85rem;border:1px solid #e2e8f0;border-radius:1.1rem;background:linear-gradient(135deg,#fff,var(--lab-soft));padding:.9rem;cursor:pointer;}
.drt-lab-switch-card input{position:absolute;opacity:0;pointer-events:none;}
.drt-lab-switch-visual{width:3rem;height:1.65rem;border-radius:999px;background:#cbd5e1;padding:.18rem;transition:background .15s ease;}
.drt-lab-switch-visual i{display:block;width:1.28rem;height:1.28rem;border-radius:999px;background:#fff;box-shadow:0 4px 10px rgba(15,23,42,.18);transition:transform .15s ease;}
.drt-lab-switch-card input:checked + .drt-lab-switch-visual{background:var(--lab-primary);}
.drt-lab-switch-card input:checked + .drt-lab-switch-visual i{transform:translateX(1.35rem);}
[dir="rtl"] .drt-lab-switch-card input:checked + .drt-lab-switch-visual i{transform:translateX(-1.35rem);}
.drt-lab-switch-text{display:grid;gap:.15rem;}.drt-lab-switch-text strong{color:#0f172a;font-size:.9rem;font-weight:950;}.drt-lab-switch-text small{color:#64748b;font-size:.78rem;line-height:1.45;font-weight:800;}
.drt-lab-sla-grid{display:grid;gap:.75rem;}
@media (min-width:820px){.drt-lab-sla-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.drt-lab-sla-item{border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.85rem;}
.drt-lab-sla-input{display:flex;align-items:center;gap:.55rem;margin-top:.45rem;}.drt-lab-sla-input input{margin:0!important;}.drt-lab-sla-input span{color:#64748b;font-size:.82rem;font-weight:850;white-space:nowrap;}
.drt-lab-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.25rem;}
@media (max-width:640px){.drt-lab-settings-actions{flex-direction:column;align-items:stretch;}.drt-lab-settings-actions .btn{width:100%;}}

/* ------------------------------------------------------------------
   Notification center refresh - scoped to .drt-notify-* only.
------------------------------------------------------------------ */
.drt-notify-page{
  --notify-primary:#e11d48;
  --notify-soft:#fff1f2;
  --notify-border:#fecdd3;
  --notify-warning:#f59e0b;
  --notify-success:#059669;
  display:grid;
  gap:1rem;
}
.drt-notify-page--sms{--notify-primary:#0f766e;--notify-soft:#f0fdfa;--notify-border:#99f6e4;}
.drt-notify-brief{
  display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;
  border:1px solid var(--notify-border);border-radius:1.35rem;padding:1rem;
  background:
    radial-gradient(circle at top left,color-mix(in srgb,var(--notify-primary) 12%,transparent),transparent 30rem),
    linear-gradient(135deg,#fff,var(--notify-soft));
  box-shadow:0 18px 42px rgba(15,23,42,.045);
}
[dir="rtl"] .drt-notify-brief{
  background:
    radial-gradient(circle at top right,color-mix(in srgb,var(--notify-primary) 12%,transparent),transparent 30rem),
    linear-gradient(225deg,#fff,var(--notify-soft));
}
.drt-notify-brief-main{display:flex;align-items:flex-start;gap:.85rem;min-width:0;}
.drt-notify-brief-icon{
  width:2.75rem;height:2.75rem;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border-radius:1rem;background:#fff;color:var(--notify-primary);
  border:1px solid color-mix(in srgb,var(--notify-primary) 18%,#fff);
  box-shadow:0 12px 26px color-mix(in srgb,var(--notify-primary) 14%,transparent);
}
.drt-notify-brief h2{margin:.1rem 0 0;color:#0f172a;font-size:1.05rem;line-height:1.65;font-weight:950;}
.drt-notify-brief p{margin:.12rem 0 0;color:#64748b;font-size:.84rem;line-height:1.65;}
.drt-notify-brief-meta{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;max-width:34rem;}
[dir="rtl"] .drt-notify-brief-meta{justify-content:flex-start;}
.drt-notify-brief-meta span{
  display:inline-flex;align-items:center;gap:.25rem;min-height:2rem;border:1px solid rgba(226,232,240,.92);
  border-radius:999px;background:rgba(255,255,255,.76);padding:.35rem .7rem;color:#64748b;font-size:.75rem;font-weight:850;white-space:nowrap;
}
.drt-notify-brief-meta strong{color:#0f172a;font-weight:950;}

.drt-notify-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.drt-notify-kpis--sms{grid-template-columns:repeat(2,minmax(0,1fr));}
@media (min-width:780px){.drt-notify-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}.drt-notify-kpis--sms{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:1280px){.drt-notify-kpis{grid-template-columns:repeat(6,minmax(0,1fr));}}
.drt-notify-kpi{
  position:relative;overflow:hidden;display:block;min-height:6.05rem;border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.85rem;
  box-shadow:0 1px 2px rgba(15,23,42,.035);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.drt-notify-kpi::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#cbd5e1;}
.drt-notify-kpi:hover,.drt-notify-kpi.is-active{transform:translateY(-1px);box-shadow:0 14px 30px rgba(15,23,42,.065);}
.drt-notify-kpi.is-active{border-color:color-mix(in srgb,var(--notify-primary) 32%,#e2e8f0);background:linear-gradient(180deg,#fff,var(--notify-soft));}
.drt-notify-kpi span{display:block;color:#64748b;font-size:.76rem;font-weight:900;line-height:1.1rem;}
.drt-notify-kpi strong{display:block;margin-top:.18rem;color:#0f172a;font-size:1.65rem;line-height:1.9rem;font-weight:950;letter-spacing:-.02em;}
.drt-notify-kpi small{display:block;margin-top:.18rem;color:#94a3b8;font-size:.72rem;font-weight:850;line-height:1rem;}
.drt-notify-kpi--unread::before{background:#e11d48;}.drt-notify-kpi--danger::before{background:#dc2626;}.drt-notify-kpi--warning::before{background:#f59e0b;}.drt-notify-kpi--lab::before{background:#0f766e;}.drt-notify-kpi--billing::before{background:#7c3aed;}.drt-notify-kpi--sent::before{background:#10b981;}

.drt-notify-filter-card,.drt-notify-inbox,.drt-notify-side-card,.drt-notify-settings-card,.drt-notify-run-card,.drt-notify-table-card{
  border:1px solid rgba(226,232,240,.92);border-radius:1.25rem;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(15,23,42,.045);
}
.drt-notify-filter-card{padding:1rem;}
.drt-notify-filter-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.8rem;align-items:end;}
.drt-notify-field{grid-column:span 2;display:grid;gap:.42rem;min-width:0;}
.drt-notify-field--search{grid-column:span 3;}
.drt-notify-field--branch{grid-column:auto;}
.drt-notify-filter-action{grid-column:span 1;}
.drt-notify-field .label{font-size:.78rem;margin:0;}
.drt-notify-field .input,.drt-notify-field .select{margin:0!important;min-height:2.72rem;box-shadow:0 6px 16px rgba(15,23,42,.032);}
@media (max-width:1180px){.drt-notify-field,.drt-notify-field--search,.drt-notify-filter-action{grid-column:span 6;}}
@media (max-width:680px){.drt-notify-filter-grid{grid-template-columns:1fr;}.drt-notify-field,.drt-notify-field--search,.drt-notify-filter-action{grid-column:auto;}}

.drt-notify-layout{display:grid;gap:1rem;align-items:start;}
@media (min-width:1180px){.drt-notify-layout{grid-template-columns:minmax(0,.68fr) minmax(18rem,.32fr);}.drt-notify-side{position:sticky;top:5.25rem;}}
.drt-notify-inbox,.drt-notify-side-card,.drt-notify-table-card{padding:1rem;}
.drt-notify-side{display:grid;gap:1rem;}
.drt-notify-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}
.drt-notify-section-title{color:#0f172a;font-weight:950;line-height:1.35;}
.drt-notify-section-head p{margin:.16rem 0 0;color:#64748b;font-size:.82rem;line-height:1.55;}
.drt-notify-list{display:grid;gap:.85rem;margin-top:.9rem;}
.drt-notify-item{
  position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.04);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.drt-notify-item:hover{transform:translateY(-1px);box-shadow:0 15px 32px rgba(15,23,42,.065);}
.drt-notify-item.is-unread{border-color:#fecdd3;background:linear-gradient(180deg,#fff,#fff1f2);}
.drt-notify-item.is-warning.is-unread{border-color:#fde68a;background:linear-gradient(180deg,#fff,#fffbeb);}
.drt-notify-item.is-success.is-unread{border-color:#bbf7d0;background:linear-gradient(180deg,#fff,#f0fdf4);}
.drt-notify-item-main{display:flex;align-items:flex-start;gap:.75rem;min-width:0;}
.drt-notify-marker{width:.7rem;height:.7rem;flex:0 0 auto;margin-top:.45rem;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 4px #f1f5f9;}
.drt-notify-item.is-danger .drt-notify-marker{background:#e11d48;box-shadow:0 0 0 4px #ffe4e6;}
.drt-notify-item.is-warning .drt-notify-marker{background:#f59e0b;box-shadow:0 0 0 4px #fef3c7;}
.drt-notify-item.is-success .drt-notify-marker{background:#10b981;box-shadow:0 0 0 4px #dcfce7;}
.drt-notify-item-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;}
.drt-notify-dot{display:inline-flex;border-radius:999px;background:#fff;color:#be123c;border:1px solid #fecdd3;padding:.14rem .5rem;font-size:.68rem;font-weight:950;}
.drt-notify-title{margin:.45rem 0 0;color:#0f172a;font-size:.94rem;font-weight:950;line-height:1.45;}
.drt-notify-body{margin:.18rem 0 0;color:#475569;font-size:.84rem;line-height:1.65;font-weight:750;}
.drt-notify-meta{display:flex;flex-wrap:wrap;gap:.3rem .55rem;margin-top:.5rem;color:#64748b;font-size:.74rem;font-weight:850;line-height:1.4;}
.drt-notify-meta span:not(:last-child)::after{content:"·";margin-inline-start:.55rem;color:#cbd5e1;}
.drt-notify-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;}
.drt-notify-empty{display:grid;place-items:center;gap:.55rem;min-height:10rem;border:1px dashed #cbd5e1;border-radius:1.15rem;background:#f8fafc;padding:1.25rem;text-align:center;color:#64748b;font-size:.86rem;font-weight:850;line-height:1.6;}
.drt-notify-empty--small{min-height:6rem;}
.drt-notify-empty-icon{width:2.5rem;height:2.5rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#dcfce7;color:#047857;}
.drt-notify-side-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;}
.drt-notify-text-link{font-size:.76rem;color:#2563eb;font-weight:950;}
.drt-notify-help-list{display:grid;gap:.65rem;margin-top:.7rem;}
.drt-notify-help-list p{margin:0;border:1px solid #e2e8f0;border-radius:.95rem;background:#f8fafc;padding:.75rem;color:#475569;font-size:.8rem;line-height:1.6;font-weight:800;}
.drt-notify-sms-list{display:grid;gap:.65rem;margin-top:.75rem;}
.drt-notify-sms-preview{border:1px solid #e2e8f0;border-radius:.95rem;background:#f8fafc;padding:.75rem;}
.drt-notify-sms-preview-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem;}
.drt-notify-sms-preview-top span:first-child{color:#0f172a;font-size:.82rem;font-weight:950;}
.drt-notify-sms-preview-body{display:-webkit-box;margin-top:.45rem;color:#64748b;font-size:.76rem;font-weight:800;line-height:1.55;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

.drt-notify-sms-grid{display:grid;gap:1rem;align-items:start;}
@media (min-width:1180px){.drt-notify-sms-grid{grid-template-columns:minmax(0,.68fr) minmax(18rem,.32fr);}.drt-notify-run-card{position:sticky;top:5.25rem;}}
.drt-notify-settings-card,.drt-notify-run-card{padding:1rem;}
.drt-notify-settings-form{display:grid;gap:1rem;}
.drt-notify-settings-top{display:grid;gap:.8rem;align-items:stretch;}
@media (min-width:860px){.drt-notify-settings-top{grid-template-columns:minmax(14rem,.35fr) minmax(0,.65fr);}}
.drt-notify-switch-card{display:flex;align-items:center;gap:.85rem;border:1px solid #e2e8f0;border-radius:1.1rem;background:linear-gradient(135deg,#fff,var(--notify-soft));padding:.9rem;cursor:pointer;}
.drt-notify-switch-card input{position:absolute;opacity:0;pointer-events:none;}
.drt-notify-switch-visual{width:3rem;height:1.65rem;border-radius:999px;background:#cbd5e1;padding:.18rem;transition:background .15s ease;flex:0 0 auto;}
.drt-notify-switch-visual i{display:block;width:1.28rem;height:1.28rem;border-radius:999px;background:#fff;box-shadow:0 4px 10px rgba(15,23,42,.18);transition:transform .15s ease;}
.drt-notify-switch-card input:checked + .drt-notify-switch-visual{background:var(--notify-primary);}
.drt-notify-switch-card input:checked + .drt-notify-switch-visual i{transform:translateX(1.35rem);}
[dir="rtl"] .drt-notify-switch-card input:checked + .drt-notify-switch-visual i{transform:translateX(-1.35rem);}
.drt-notify-switch-text{display:grid;gap:.12rem;}.drt-notify-switch-text strong{color:#0f172a;font-size:.9rem;font-weight:950;}.drt-notify-switch-text small{color:#64748b;font-size:.78rem;line-height:1.45;font-weight:800;}
.drt-notify-manager-box{display:grid;gap:.45rem;}
.drt-notify-manager-box .textarea{margin:0!important;min-height:8.5rem;box-shadow:0 8px 20px rgba(15,23,42,.035);}
.drt-notify-chip-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem;}
.drt-notify-rules-grid{display:grid;gap:.75rem;}
@media (min-width:760px){.drt-notify-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.drt-notify-rule-card{border:1px solid #e2e8f0;border-radius:1.1rem;background:#fff;padding:.9rem;}
.drt-notify-rule-card--patient{background:#f8fafc;}
.drt-notify-rule-title{color:#0f172a;font-weight:950;line-height:1.35;}
.drt-notify-rule-card p{margin:.18rem 0 .75rem;color:#64748b;font-size:.78rem;line-height:1.55;font-weight:800;}
.drt-notify-check-list{display:grid;gap:.5rem;}
.drt-notify-check-list label{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:.85rem;background:#f8fafc;padding:.65rem .75rem;color:#334155;font-size:.82rem;font-weight:900;}
.drt-notify-check-list input{width:1.1rem;height:1.1rem;accent-color:var(--notify-primary);}
.drt-notify-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:.9rem;border-top:1px solid #eef2f7;padding-top:.95rem;}
.drt-notify-run-card p{margin:.55rem 0 0;color:#475569;font-size:.84rem;line-height:1.65;font-weight:800;}
.drt-notify-run-form{margin-top:1rem;}
.drt-notify-safe-note{margin-top:.9rem;border:1px solid #fde68a;border-radius:1rem;background:#fffbeb;padding:.75rem;color:#92400e;font-size:.78rem;line-height:1.55;font-weight:850;}

.drt-notify-log-filter{display:grid;grid-template-columns:minmax(10rem,1fr) minmax(9rem,.45fr) auto;gap:.55rem;align-items:end;min-width:min(100%,34rem);}
.drt-notify-table-wrap{margin-top:.9rem;overflow:auto;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;}
.drt-notify-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;font-size:.84rem;}
.drt-notify-table th,.drt-notify-table td{padding:.75rem;border-bottom:1px solid #eef2f7;text-align:start;vertical-align:top;}
.drt-notify-table thead th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#64748b;font-size:.72rem;font-weight:950;}
.drt-notify-table tbody tr:last-child td{border-bottom:0;}
.drt-notify-table tbody tr:hover td{background:#fbfdff;}
.drt-notify-table-date{white-space:nowrap;color:#64748b;font-weight:850;}
.drt-notify-table-strong{color:#0f172a;font-weight:950;}.drt-notify-table-muted{margin-top:.12rem;color:#64748b;font-size:.72rem;font-weight:800;}
.drt-notify-table-message{min-width:320px;color:#475569;font-weight:800;line-height:1.55;}
.drt-notify-error{margin-top:.3rem;color:#be123c;font-size:.74rem;font-weight:900;}
.drt-notify-table-empty{text-align:center!important;color:#64748b;padding:1.5rem!important;font-weight:850;}
@media (max-width:760px){
  .drt-notify-brief,.drt-notify-section-head,.drt-notify-item,.drt-notify-settings-actions{flex-direction:column;align-items:stretch;}
  .drt-notify-actions{justify-content:flex-start;}
  .drt-notify-log-filter{grid-template-columns:1fr;min-width:0;}
}

/* ------------------------------------------------------------------
   Finance, reports, billing and cheques refresh - scoped classes only.
------------------------------------------------------------------- */
.drt-fin-page{--fin-primary:#0f766e;--fin-soft:#f0fdfa;--fin-border:#99f6e4;--fin-ink:#0f172a;--fin-muted:#64748b;}
.drt-fin-hero,.drt-fin-filter-card,.drt-fin-panel,.drt-billing-card{
  border:1px solid #e2e8f0;border-radius:1.35rem;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(15,23,42,.045);
}
.drt-fin-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;overflow:hidden;position:relative;}
.drt-fin-hero::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:.38rem;background:linear-gradient(180deg,var(--fin-primary),#14b8a6);}
.drt-fin-hero--reports{background:linear-gradient(135deg,#ffffff,#f0fdfa);}.drt-fin-hero--cheques{background:linear-gradient(135deg,#ffffff,#f8fafc);}.drt-fin-hero--due{background:linear-gradient(135deg,#ffffff,#fffbeb);}
.drt-fin-hero-main{min-width:0;padding-inline-start:.35rem;}.drt-fin-eyebrow{color:var(--fin-primary);font-size:.72rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase;}
.drt-fin-title{margin:.15rem 0 0;color:var(--fin-ink);font-size:1.25rem;line-height:1.35;font-weight:950;}.drt-fin-subtitle{margin:.22rem 0 0;color:var(--fin-muted);font-size:.88rem;line-height:1.65;font-weight:800;}
.drt-fin-hero-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end;}
.drt-fin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}.drt-fin-section-title{color:var(--fin-ink);font-weight:950;line-height:1.35;}
.drt-fin-section-head p,.drt-fin-help-card p{margin:.15rem 0 0;color:var(--fin-muted);font-size:.82rem;line-height:1.6;font-weight:800;}
.drt-fin-filter-grid,.drt-cheque-filter-grid,.drt-due-filter-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.75rem;align-items:end;margin-top:.85rem;}
.drt-fin-field{display:grid;gap:.42rem;min-width:0;}.drt-fin-field .label{margin:0;font-size:.77rem;}.drt-fin-field .input,.drt-fin-field .select{margin:0!important;min-height:2.72rem;box-shadow:0 7px 18px rgba(15,23,42,.035);}
.drt-fin-filter-grid .drt-fin-field{grid-column:span 2;}.drt-fin-field--branch,.drt-fin-field--doctor{grid-column:span 3!important;}.drt-cheque-field--branch{grid-column:span 2;}.drt-cheque-filter-grid .drt-fin-field{grid-column:span 2;}.drt-cheque-field--search,.drt-cheque-field--bank{grid-column:span 3!important;}.drt-due-filter-grid .drt-fin-field{grid-column:span 3;}.drt-due-filter-action{grid-column:span 2;display:flex;align-items:end;}
@media (max-width:1120px){.drt-fin-filter-grid .drt-fin-field,.drt-fin-field--branch,.drt-fin-field--doctor,.drt-cheque-filter-grid .drt-fin-field,.drt-cheque-field--search,.drt-cheque-field--bank,.drt-due-filter-grid .drt-fin-field,.drt-due-filter-action{grid-column:span 6!important;}}
@media (max-width:680px){.drt-fin-hero,.drt-fin-section-head{flex-direction:column;align-items:stretch;}.drt-fin-hero-actions{justify-content:flex-start;}.drt-fin-filter-grid,.drt-cheque-filter-grid,.drt-due-filter-grid{grid-template-columns:1fr;}.drt-fin-filter-grid .drt-fin-field,.drt-fin-field--branch,.drt-fin-field--doctor,.drt-cheque-filter-grid .drt-fin-field,.drt-cheque-field--search,.drt-cheque-field--bank,.drt-due-filter-grid .drt-fin-field,.drt-due-filter-action{grid-column:auto!important;}}

.drt-fin-kpi-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem;}@media (min-width:760px){.drt-fin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (min-width:1180px){.drt-fin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.drt-fin-kpi{border:1px solid #e2e8f0;border-radius:1.2rem;background:#fff;padding:1rem;box-shadow:0 12px 26px rgba(15,23,42,.04);}.drt-fin-kpi--patients{background:linear-gradient(135deg,#fff,#eff6ff);}.drt-fin-kpi--treatments{background:linear-gradient(135deg,#fff,#f0fdf4);}.drt-fin-kpi--revenue{background:linear-gradient(135deg,#fff,#f0fdfa);}.drt-fin-kpi--cheque{background:linear-gradient(135deg,#fff,#fffbeb);}
.drt-fin-kpi-label{display:block;color:var(--fin-muted);font-size:.75rem;font-weight:900;}.drt-fin-kpi strong{display:block;margin-top:.18rem;color:var(--fin-ink);font-size:1.15rem;font-weight:950;line-height:1.3;}.drt-fin-kpi small{display:block;margin-top:.3rem;color:var(--fin-muted);font-size:.74rem;font-weight:800;line-height:1.45;}
.drt-fin-layout,.drt-cheque-layout{display:grid;gap:1rem;align-items:start;}@media (min-width:1180px){.drt-fin-layout{grid-template-columns:minmax(0,.7fr) minmax(18rem,.3fr);}.drt-cheque-layout{grid-template-columns:minmax(18rem,.32fr) minmax(0,.68fr);}.drt-fin-side-col,.drt-cheque-side{position:sticky;top:5.25rem;}}
.drt-fin-main-col,.drt-fin-side-col{display:grid;gap:1rem;}.drt-fin-method-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.65rem;margin-top:.85rem;}@media (min-width:760px){.drt-fin-method-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.drt-fin-method-card{border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.8rem;}.drt-fin-method-card strong{display:block;margin-top:.55rem;color:var(--fin-ink);font-weight:950;line-height:1.25;}.drt-fin-method-card small{display:block;margin-top:.18rem;color:var(--fin-muted);font-size:.72rem;font-weight:850;}
.drt-fin-table-wrap{margin-top:.85rem;overflow:auto;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;}.drt-fin-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.84rem;}.drt-fin-table--wide{min-width:820px;}.drt-fin-table th,.drt-fin-table td{padding:.75rem;border-bottom:1px solid #eef2f7;text-align:start;vertical-align:middle;}.drt-fin-table thead th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#64748b;font-size:.72rem;font-weight:950;}.drt-fin-table tbody tr:last-child td{border-bottom:0;}.drt-fin-table tbody tr:hover td{background:#fbfdff;}.drt-fin-empty{text-align:center!important;color:#64748b;padding:1.5rem!important;font-weight:850;}
.drt-fin-status-list{display:grid;gap:.65rem;margin-top:.85rem;}.drt-fin-status-card{display:block;border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.8rem;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;}.drt-fin-status-card:hover{transform:translateY(-1px);border-color:var(--fin-border);box-shadow:0 12px 25px rgba(15,23,42,.055);}.drt-fin-status-card span{display:block;color:#475569;font-size:.78rem;font-weight:950;}.drt-fin-status-card strong{display:block;margin-top:.2rem;color:#0f172a;font-size:.94rem;font-weight:950;}.drt-fin-status-card small{display:block;margin-top:.2rem;color:#64748b;font-size:.72rem;font-weight:850;}.drt-fin-status-card.is-warning{background:#fffbeb;border-color:#fde68a;}.drt-fin-status-card.is-success{background:#f0fdf4;border-color:#bbf7d0;}.drt-fin-status-card.is-danger{background:#fff1f2;border-color:#fecdd3;}.drt-fin-text-link{color:#2563eb;font-size:.76rem;font-weight:950;white-space:nowrap;}.drt-fin-help-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem;}
.drt-fin-empty-card{display:grid;place-items:center;gap:.55rem;min-height:9rem;border:1px dashed #cbd5e1;border-radius:1.15rem;background:#f8fafc;padding:1.25rem;text-align:center;color:#64748b;font-size:.86rem;font-weight:850;line-height:1.6;margin-top:.9rem;}.drt-fin-empty-icon{width:2.4rem;height:2.4rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#dcfce7;color:#047857;font-weight:950;}

.drt-cheque-list-panel{min-width:0;}.drt-cheque-list{display:grid;gap:.85rem;}.drt-cheque-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.95rem;box-shadow:0 12px 26px rgba(15,23,42,.04);}.drt-cheque-card.is-warning{border-color:#fde68a;background:linear-gradient(135deg,#fff,#fffbeb);}.drt-cheque-card.is-success{border-color:#bbf7d0;background:linear-gradient(135deg,#fff,#f0fdf4);}.drt-cheque-card.is-danger{border-color:#fecdd3;background:linear-gradient(135deg,#fff,#fff1f2);}.drt-cheque-card-main{min-width:0;flex:1;}.drt-cheque-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}.drt-cheque-title{margin:0;color:#0f172a;font-size:.95rem;font-weight:950;line-height:1.4;}.drt-cheque-title span{color:#64748b;font-size:.75rem;font-weight:850;margin-inline-start:.35rem;}.drt-cheque-meta{display:flex;flex-wrap:wrap;gap:.3rem .55rem;margin-top:.4rem;color:#64748b;font-size:.74rem;font-weight:850;line-height:1.45;}.drt-cheque-meta span:not(:last-child)::after{content:"·";margin-inline-start:.55rem;color:#cbd5e1;}.drt-cheque-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.75rem 0 0;}.drt-cheque-detail-grid div{border:1px solid #e2e8f0;border-radius:.85rem;background:rgba(255,255,255,.78);padding:.55rem;}.drt-cheque-detail-grid dt{color:#94a3b8;font-size:.68rem;font-weight:850;}.drt-cheque-detail-grid dd{margin:.12rem 0 0;color:#334155;font-size:.78rem;font-weight:900;}.drt-cheque-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;max-width:18rem;}@media (max-width:900px){.drt-cheque-card,.drt-cheque-title-row{flex-direction:column;}.drt-cheque-actions{justify-content:flex-start;max-width:none;}.drt-cheque-detail-grid{grid-template-columns:1fr;}}

.drt-billing-card{padding:1rem!important;}.drt-billing-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:1.25rem;background:linear-gradient(135deg,#ffffff,#f0fdfa);padding:1rem;}.drt-billing-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;min-width:min(100%,34rem);}.drt-billing-summary-card,.drt-billing-mini{border:1px solid #e2e8f0;border-radius:.95rem;background:#fff;padding:.65rem;}.drt-billing-summary-card span,.drt-billing-mini span{display:block;color:#64748b;font-size:.7rem;font-weight:900;}.drt-billing-summary-card strong,.drt-billing-mini strong{display:block;margin-top:.15rem;color:#0f172a;font-size:.84rem;font-weight:950;line-height:1.35;}.drt-billing-summary-card.is-success,.drt-billing-mini.is-success{background:#f0fdf4;border-color:#bbf7d0;}.drt-billing-summary-card.is-warning,.drt-billing-mini.is-warning{background:#fffbeb;border-color:#fde68a;}.drt-billing-summary-card.is-danger,.drt-billing-mini.is-danger{background:#fff1f2;border-color:#fecdd3;}.drt-billing-action-panel{margin-top:1rem;border:1px dashed #cbd5e1;border-radius:1.1rem;background:#f8fafc;padding:.8rem;}.drt-billing-action-panel summary{cursor:pointer;list-style:none;color:#0f172a;font-size:.9rem;font-weight:950;}.drt-billing-action-panel summary::-webkit-details-marker{display:none;}.drt-billing-form{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.75rem;margin-top:.85rem;}.drt-billing-form .drt-fin-field{grid-column:span 3;}.drt-billing-form-wide{grid-column:span 4!important;}.drt-billing-form-submit{grid-column:span 2;display:flex;align-items:end;}.drt-billing-section{border-top:1px solid #eef2f7;padding-top:1rem;}.drt-billing-invoice-list{display:grid;gap:1rem;margin-top:.9rem;}.drt-billing-invoice{border:1px solid #e2e8f0;border-radius:1.2rem;background:#fff;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.04);}.drt-billing-invoice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}.drt-billing-invoice-title{color:#0f172a;font-size:.98rem;font-weight:950;line-height:1.4;}.drt-billing-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;min-width:20rem;}.drt-billing-breakdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.85rem;}.drt-billing-mini small{display:block;margin-top:.2rem;color:#64748b;font-size:.68rem;font-weight:800;line-height:1.45;}.drt-billing-payments{margin-top:1rem;}.drt-billing-subtitle{margin-bottom:.55rem;color:#334155;font-size:.86rem;font-weight:950;}.drt-billing-payment-panel{background:#fff;margin-top:1rem;}.drt-billing-cheque-fields{grid-column:span 12;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;border-top:1px solid #e2e8f0;margin-top:.25rem;padding-top:.75rem;}@media (max-width:1180px){.drt-billing-header,.drt-billing-invoice-head{flex-direction:column;}.drt-billing-summary-grid,.drt-billing-mini-grid{width:100%;min-width:0;}.drt-billing-form .drt-fin-field,.drt-billing-form-wide,.drt-billing-form-submit{grid-column:span 6!important;}.drt-billing-cheque-fields{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:700px){.drt-billing-summary-grid,.drt-billing-breakdown-grid,.drt-billing-mini-grid,.drt-billing-cheque-fields{grid-template-columns:1fr;}.drt-billing-form{grid-template-columns:1fr;}.drt-billing-form .drt-fin-field,.drt-billing-form-wide,.drt-billing-form-submit{grid-column:auto!important;}}

/* ------------------------------------------------------------------
   Patients list refresh - scoped to .drt-plist-* only.
------------------------------------------------------------------ */
.drt-plist-page{--plist-primary:#0f766e;--plist-soft:#f0fdfa;--plist-border:#99f6e4;display:grid;gap:1rem;}
.drt-plist-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid var(--plist-border);border-radius:1.35rem;padding:1rem;background:radial-gradient(circle at top left,rgba(15,118,110,.12),transparent 30rem),linear-gradient(135deg,#fff,var(--plist-soft));box-shadow:0 18px 42px rgba(15,23,42,.045);}
[dir="rtl"] .drt-plist-hero{background:radial-gradient(circle at top right,rgba(15,118,110,.12),transparent 30rem),linear-gradient(225deg,#fff,var(--plist-soft));}
.drt-plist-hero-main{display:flex;align-items:flex-start;gap:.85rem;min-width:0;}.drt-plist-hero-icon{width:2.75rem;height:2.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:1rem;background:#fff;color:var(--plist-primary);border:1px solid rgba(15,118,110,.18);box-shadow:0 12px 26px rgba(15,118,110,.12);flex:0 0 auto;}.drt-plist-hero h1{margin:.1rem 0 0;color:#0f172a;font-size:1.12rem;line-height:1.6;font-weight:950;}.drt-plist-hero p{margin:.1rem 0 0;color:#64748b;font-size:.84rem;line-height:1.7;}.drt-plist-hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;}
.drt-plist-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,.28fr) minmax(10rem,.18fr);gap:.8rem;align-items:end;border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.04);}.drt-plist-search-box{position:relative;margin-top:.45rem;}.drt-plist-search-icon{position:absolute;inset-block:0;inset-inline-start:.8rem;display:flex;align-items:center;color:#94a3b8;pointer-events:none;}.drt-plist-search-input{padding-inline-start:2.4rem!important;}.drt-plist-help-text{margin:.4rem 0 0;color:#64748b;font-size:.74rem;font-weight:800;line-height:1.55;}.drt-plist-locked-scope{min-height:2.55rem;margin-top:.45rem;display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:.85rem;background:#f8fafc;padding:.6rem .75rem;color:#475569;font-size:.84rem;font-weight:850;}.drt-plist-toolbar-actions{display:grid;gap:.45rem;}
.drt-plist-loading{border:1px dashed #cbd5e1;border-radius:1.2rem;background:#f8fafc;padding:1rem;color:#64748b;font-size:.86rem;font-weight:850;text-align:center;}
.drt-plist-results{display:grid;gap:1rem;}.drt-plist-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}@media (min-width:900px){.drt-plist-kpis{grid-template-columns:repeat(4,minmax(0,1fr));}}@media (min-width:1220px){.drt-plist-kpis{grid-template-columns:repeat(6,minmax(0,1fr));}}
.drt-plist-kpi{position:relative;overflow:hidden;border:1px solid #e2e8f0;border-radius:1.1rem;background:#fff;padding:.85rem;box-shadow:0 10px 24px rgba(15,23,42,.035);}.drt-plist-kpi::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#cbd5e1;}.drt-plist-kpi--total::before{background:#0f766e;}.drt-plist-kpi--page::before{background:#2563eb;}.drt-plist-kpi--next::before{background:#7c3aed;}.drt-plist-kpi--intake::before{background:#f59e0b;}.drt-plist-kpi--debt::before{background:#e11d48;}.drt-plist-kpi--money::before{background:#be123c;}.drt-plist-kpi span{display:block;color:#64748b;font-size:.72rem;font-weight:900;}.drt-plist-kpi strong{display:block;margin-top:.2rem;color:#0f172a;font-size:1.05rem;font-weight:950;line-height:1.35;}.drt-plist-kpi small{display:block;margin-top:.25rem;color:#94a3b8;font-size:.7rem;font-weight:850;line-height:1.45;}
.drt-plist-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.9rem 1rem;}.drt-plist-result-head h2{margin:0;color:#0f172a;font-size:.98rem;font-weight:950;line-height:1.45;}.drt-plist-result-head p{margin:.18rem 0 0;color:#64748b;font-size:.8rem;font-weight:800;line-height:1.55;}.drt-plist-page-indicator{display:inline-flex;align-items:center;min-height:2rem;border-radius:999px;background:#f1f5f9;padding:.35rem .75rem;color:#475569;font-size:.75rem;font-weight:900;white-space:nowrap;}
.drt-plist-list{display:grid;gap:.85rem;}.drt-plist-card{border:1px solid #e2e8f0;border-radius:1.2rem;background:#fff;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.04);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;}.drt-plist-card:hover{transform:translateY(-1px);border-color:var(--plist-border);box-shadow:0 18px 36px rgba(15,23,42,.065);}.drt-plist-card.has-debt{border-color:#fecdd3;background:linear-gradient(135deg,#fff,#fff1f2);}.drt-plist-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;}.drt-plist-identity{display:flex;align-items:flex-start;gap:.75rem;min-width:0;}.drt-plist-avatar{width:2.75rem;height:2.75rem;border-radius:1rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:linear-gradient(135deg,#ccfbf1,#eff6ff);color:#0f766e;font-size:1rem;font-weight:950;border:1px solid #ccfbf1;}.drt-plist-title-block{min-width:0;}.drt-plist-name{display:inline-block;color:#0f172a;font-size:.98rem;font-weight:950;line-height:1.45;}.drt-plist-name:hover{text-decoration:underline;}.drt-plist-subline{display:flex;flex-wrap:wrap;gap:.2rem .55rem;margin-top:.22rem;color:#64748b;font-size:.74rem;font-weight:850;line-height:1.5;}.drt-plist-subline span:not(:last-child)::after{content:"·";margin-inline-start:.55rem;color:#cbd5e1;}.drt-plist-badges{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;}.drt-plist-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .6rem;font-size:.68rem;font-weight:950;white-space:nowrap;background:#f1f5f9;color:#475569;}.drt-plist-badge.success{background:#dcfce7;color:#047857;}.drt-plist-badge.warning{background:#fef3c7;color:#b45309;}.drt-plist-badge.danger{background:#ffe4e6;color:#be123c;}.drt-plist-badge.info{background:#dbeafe;color:#1d4ed8;}
.drt-plist-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.9rem;}.drt-plist-metrics div,.drt-plist-finance-strip div{border:1px solid #e2e8f0;border-radius:.95rem;background:rgba(255,255,255,.82);padding:.65rem;min-width:0;}.drt-plist-metrics span,.drt-plist-finance-strip span,.drt-plist-branches>span{display:block;color:#64748b;font-size:.69rem;font-weight:900;line-height:1.35;}.drt-plist-metrics strong,.drt-plist-finance-strip strong{display:block;margin-top:.14rem;color:#0f172a;font-size:.82rem;font-weight:950;line-height:1.45;overflow-wrap:anywhere;}.drt-plist-metrics small,.drt-plist-finance-strip small{display:block;margin-top:.16rem;color:#94a3b8;font-size:.66rem;font-weight:800;line-height:1.35;}
.drt-plist-extra-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:.85rem;border-top:1px solid #eef2f7;padding-top:.85rem;}.drt-plist-branches{min-width:0;}.drt-plist-branches div{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem;}.drt-plist-branches em{font-style:normal;display:inline-flex;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;padding:.22rem .55rem;color:#475569;font-size:.7rem;font-weight:850;}.drt-plist-quick-actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end;}.drt-plist-finance-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.85rem;}.drt-plist-finance-strip .is-danger{background:#fff1f2;border-color:#fecdd3;}.drt-plist-finance-strip .is-danger strong{color:#be123c;}.drt-plist-finance-strip .is-ok{background:#f0fdf4;border-color:#bbf7d0;}.drt-plist-finance-strip .is-ok strong{color:#047857;}
.drt-plist-empty{display:grid;place-items:center;gap:.5rem;min-height:12rem;border:1px dashed #cbd5e1;border-radius:1.2rem;background:#f8fafc;padding:1.5rem;text-align:center;}.drt-plist-empty span{width:2.8rem;height:2.8rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e0f2fe;color:#0369a1;}.drt-plist-empty strong{color:#0f172a;font-size:.95rem;font-weight:950;}.drt-plist-empty small{color:#64748b;font-size:.8rem;font-weight:800;line-height:1.55;}.drt-plist-pagination{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.75rem;}.drt-plist-page-count{color:#64748b;font-size:.78rem;font-weight:850;}.drt-plist-page-actions{display:flex;gap:.45rem;}
@media (max-width:1050px){.drt-plist-toolbar{grid-template-columns:1fr 1fr;}.drt-plist-search-field{grid-column:1/-1;}.drt-plist-metrics,.drt-plist-finance-strip{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:760px){.drt-plist-hero,.drt-plist-card-main,.drt-plist-extra-row,.drt-plist-result-head,.drt-plist-pagination{flex-direction:column;align-items:stretch;}.drt-plist-hero-actions,.drt-plist-badges,.drt-plist-quick-actions{justify-content:flex-start;}.drt-plist-toolbar{grid-template-columns:1fr;}.drt-plist-metrics,.drt-plist-finance-strip,.drt-plist-kpis{grid-template-columns:1fr;}.drt-plist-page-actions{justify-content:flex-start;flex-wrap:wrap;}}

/* ------------------------------------------------------------------
   Clinic Today refresh - scoped to .drt-ct-* only.
------------------------------------------------------------------ */
.drt-ct-page{--ct-primary:#2563eb;--ct-soft:#eff6ff;--ct-border:#bfdbfe;--ct-success:#059669;--ct-warning:#d97706;--ct-danger:#e11d48;display:grid;gap:1rem;}
.drt-ct-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border:1px solid var(--ct-border);border-radius:1.35rem;padding:1rem;background:radial-gradient(circle at top left,rgba(37,99,235,.12),transparent 30rem),linear-gradient(135deg,#fff,var(--ct-soft));box-shadow:0 18px 42px rgba(15,23,42,.045);}
[dir="rtl"] .drt-ct-hero{background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 30rem),linear-gradient(225deg,#fff,var(--ct-soft));}
.drt-ct-hero-main{display:flex;align-items:flex-start;gap:.85rem;min-width:0;}.drt-ct-hero-icon{width:2.8rem;height:2.8rem;display:inline-flex;align-items:center;justify-content:center;border-radius:1rem;background:#fff;color:var(--ct-primary);border:1px solid rgba(37,99,235,.18);box-shadow:0 12px 26px rgba(37,99,235,.12);flex:0 0 auto;}.drt-ct-hero h1{margin:.05rem 0 0;color:#0f172a;font-size:1.12rem;line-height:1.6;font-weight:950;}.drt-ct-hero p{margin:.08rem 0 0;color:#64748b;font-size:.84rem;line-height:1.7;}.drt-ct-muted-sep{color:#cbd5e1;margin-inline:.25rem;}.drt-ct-hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;}
.drt-ct-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.04);}.drt-ct-toolbar-info{display:flex;align-items:center;gap:.75rem;min-width:0;}.drt-ct-toolbar-icon{width:2.45rem;height:2.45rem;border-radius:.9rem;background:#f1f5f9;color:#475569;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}.drt-ct-toolbar-info strong{display:block;color:#0f172a;font-size:.92rem;font-weight:950;}.drt-ct-toolbar-info small{display:block;margin-top:.12rem;color:#64748b;font-size:.78rem;font-weight:800;line-height:1.55;}.drt-ct-doctor-field{display:grid;gap:.4rem;min-width:min(22rem,100%);}.drt-ct-doctor-field .label{margin:0;}.drt-ct-doctor-field .select{margin:0!important;min-height:2.7rem;}
.drt-ct-results,.drt-ct-stack{display:grid;gap:1rem;}.drt-ct-loading{border:1px dashed #cbd5e1;border-radius:1.2rem;background:#f8fafc;padding:1.1rem;color:#64748b;font-size:.86rem;font-weight:850;text-align:center;}
.drt-ct-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}@media (min-width:820px){.drt-ct-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}}@media (min-width:1180px){.drt-ct-kpis{grid-template-columns:repeat(6,minmax(0,1fr));}}
.drt-ct-kpi{position:relative;overflow:hidden;border:1px solid #e2e8f0;border-radius:1.1rem;background:#fff;padding:.85rem;box-shadow:0 10px 24px rgba(15,23,42,.035);}.drt-ct-kpi::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#cbd5e1;}.drt-ct-kpi--total::before{background:#2563eb;}.drt-ct-kpi--waiting::before{background:#94a3b8;}.drt-ct-kpi--checked::before{background:#0ea5e9;}.drt-ct-kpi--room::before{background:#f59e0b;}.drt-ct-kpi--done::before{background:#10b981;}.drt-ct-kpi--noshow::before{background:#e11d48;}.drt-ct-kpi span{display:block;color:#64748b;font-size:.72rem;font-weight:900;}.drt-ct-kpi strong{display:block;margin-top:.2rem;color:#0f172a;font-size:1.45rem;font-weight:950;line-height:1.4;}.drt-ct-kpi small{display:block;margin-top:.2rem;color:#94a3b8;font-size:.69rem;font-weight:850;line-height:1.45;}
.drt-ct-layout{display:grid;gap:1rem;align-items:start;}@media (min-width:1180px){.drt-ct-layout{grid-template-columns:minmax(0,.7fr) minmax(19rem,.3fr);}.drt-ct-side-col{position:sticky;top:5.25rem;}}.drt-ct-main-col,.drt-ct-side-col{display:grid;gap:1rem;min-width:0;}
.drt-ct-panel{border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;padding:1rem;box-shadow:0 12px 28px rgba(15,23,42,.04);}.drt-ct-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem;}.drt-ct-section-head h2{margin:0;color:#0f172a;font-size:.98rem;font-weight:950;line-height:1.45;}.drt-ct-section-head p{margin:.16rem 0 0;color:#64748b;font-size:.8rem;font-weight:800;line-height:1.55;}.drt-ct-pill{display:inline-flex;align-items:center;min-height:2rem;border-radius:999px;background:#f1f5f9;padding:.32rem .7rem;color:#475569;font-size:.72rem;font-weight:900;white-space:nowrap;}
.drt-ct-focus-grid{display:grid;grid-template-columns:1fr;gap:.75rem;}@media (min-width:760px){.drt-ct-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}.drt-ct-focus-card{border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:1rem;box-shadow:0 10px 22px rgba(15,23,42,.035);}.drt-ct-focus-card--current{background:linear-gradient(135deg,#fff,#fffbeb);border-color:#fde68a;}.drt-ct-focus-card--next{background:linear-gradient(135deg,#fff,#eff6ff);border-color:#bfdbfe;}.drt-ct-focus-label{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;background:rgba(255,255,255,.72);padding:.25rem .6rem;color:#64748b;font-size:.7rem;font-weight:950;}.drt-ct-focus-card strong{display:block;margin-top:.6rem;color:#0f172a;font-size:1rem;font-weight:950;line-height:1.45;}.drt-ct-focus-card p{margin:.18rem 0 0;color:#475569;font-size:.82rem;font-weight:850;line-height:1.55;}.drt-ct-focus-card small{display:block;margin-top:.28rem;color:#64748b;font-size:.74rem;font-weight:800;line-height:1.5;}
.drt-ct-flow-legend{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.85rem;}.drt-ct-flow-legend span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;padding:.25rem .62rem;color:#64748b;font-size:.7rem;font-weight:900;}.drt-ct-flow-legend i{width:.55rem;height:.55rem;border-radius:999px;background:#94a3b8;}.drt-ct-flow-legend i.checked{background:#0ea5e9;}.drt-ct-flow-legend i.room{background:#f59e0b;}.drt-ct-flow-legend i.done{background:#10b981;}.drt-ct-flow-legend i.noshow{background:#e11d48;}
.drt-ct-appt-list{display:grid;gap:.75rem;}.drt-ct-appt{position:relative;display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.85rem;border:1px solid #e2e8f0;border-radius:1.15rem;background:#fff;padding:.9rem;box-shadow:0 10px 24px rgba(15,23,42,.035);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;}.drt-ct-appt:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(15,23,42,.06);}.drt-ct-appt::before{content:"";position:absolute;inset-block:.85rem;inset-inline-start:0;width:5px;border-radius:999px;background:#cbd5e1;}.drt-ct-appt.is-checked_in::before{background:#0ea5e9;}.drt-ct-appt.is-in_room::before{background:#f59e0b;}.drt-ct-appt.is-done::before{background:#10b981;}.drt-ct-appt.is-no_show::before{background:#e11d48;}.drt-ct-appt.is-in_room{border-color:#fde68a;background:linear-gradient(135deg,#fff,#fffbeb);}.drt-ct-appt.is-done{border-color:#bbf7d0;background:linear-gradient(135deg,#fff,#f0fdf4);}.drt-ct-appt.is-no_show{border-color:#fecdd3;background:linear-gradient(135deg,#fff,#fff1f2);}
.drt-ct-time-block{display:grid;place-items:center;align-content:center;border:1px solid #e2e8f0;border-radius:1rem;background:#f8fafc;padding:.65rem;min-height:4.8rem;}.drt-ct-time-block strong{color:#0f172a;font-size:1.15rem;font-weight:950;line-height:1.3;}.drt-ct-time-block span{margin-top:.12rem;color:#64748b;font-size:.72rem;font-weight:900;}.drt-ct-appt-main{min-width:0;display:grid;gap:.65rem;}.drt-ct-appt-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;}.drt-ct-patient-line{display:flex;align-items:flex-start;gap:.65rem;min-width:0;}.drt-ct-avatar{width:2.35rem;height:2.35rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:.85rem;background:linear-gradient(135deg,#dbeafe,#f0fdfa);color:#1d4ed8;border:1px solid #dbeafe;font-size:.92rem;font-weight:950;}.drt-ct-patient-name{display:inline-block;color:#0f172a;font-size:.96rem;font-weight:950;line-height:1.45;}.drt-ct-patient-name:hover{text-decoration:underline;}.drt-ct-patient-meta{display:flex;flex-wrap:wrap;gap:.2rem .55rem;margin-top:.2rem;color:#64748b;font-size:.72rem;font-weight:850;line-height:1.45;}.drt-ct-patient-meta span{display:inline-flex;align-items:center;gap:.2rem;}.drt-ct-badges{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;}.drt-ct-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .56rem;font-size:.67rem;font-weight:950;white-space:nowrap;background:#f1f5f9;color:#475569;}.drt-ct-badge.info{background:#e0f2fe;color:#0369a1;}.drt-ct-badge.warning{background:#fef3c7;color:#b45309;}.drt-ct-badge.success{background:#dcfce7;color:#047857;}.drt-ct-badge.danger{background:#ffe4e6;color:#be123c;}.drt-ct-badge.treatment{background:#ede9fe;color:#6d28d9;}.drt-ct-badge.neutral{background:#f8fafc;color:#475569;border:1px solid #e2e8f0;}.drt-ct-badge.muted{background:#f1f5f9;color:#64748b;}.drt-ct-procedure-line{display:flex;align-items:center;gap:.35rem;border:1px solid #e2e8f0;border-radius:.9rem;background:#f8fafc;padding:.55rem .65rem;color:#475569;font-size:.76rem;font-weight:850;line-height:1.45;}.drt-ct-procedure-line strong{color:#334155;font-weight:950;}.drt-ct-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;}
.drt-ct-units-grid{display:grid;gap:.55rem;}.drt-ct-unit{border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.75rem;}.drt-ct-unit.is-free{border-color:#bbf7d0;background:linear-gradient(135deg,#fff,#f0fdf4);}.drt-ct-unit.is-occupied{border-color:#fde68a;background:linear-gradient(135deg,#fff,#fffbeb);}.drt-ct-unit-top{display:flex;align-items:center;gap:.45rem;}.drt-ct-unit-icon{width:1.65rem;height:1.65rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.6rem;background:#fff;color:#475569;border:1px solid rgba(226,232,240,.9);}.drt-ct-unit strong,.drt-ct-unit-patient{color:#0f172a;font-size:.84rem;font-weight:950;line-height:1.45;}.drt-ct-unit-patient{margin-top:.45rem;overflow-wrap:anywhere;}.drt-ct-unit small{display:block;margin-top:.1rem;color:#64748b;font-size:.72rem;font-weight:800;line-height:1.45;}
.drt-ct-guide ul{display:grid;gap:.55rem;margin:.25rem 0 0;padding:0;list-style:none;}.drt-ct-guide li{position:relative;border:1px solid #e2e8f0;border-radius:.9rem;background:#f8fafc;padding:.65rem .75rem;color:#475569;font-size:.78rem;font-weight:850;line-height:1.55;}.drt-ct-guide li::before{content:"";display:inline-block;width:.45rem;height:.45rem;border-radius:999px;background:#2563eb;margin-inline-end:.45rem;vertical-align:middle;}
.drt-ct-empty{display:grid;place-items:center;gap:.5rem;min-height:11rem;border:1px dashed #cbd5e1;border-radius:1.2rem;background:#f8fafc;padding:1.5rem;text-align:center;}.drt-ct-empty span{width:2.85rem;height:2.85rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#dbeafe;color:#1d4ed8;}.drt-ct-empty strong{color:#0f172a;font-size:.95rem;font-weight:950;}.drt-ct-empty small{color:#64748b;font-size:.8rem;font-weight:800;line-height:1.55;max-width:38rem;}.drt-ct-empty--small{min-height:8rem;padding:1rem;}.drt-ct-empty--danger{border-color:#fecdd3;background:#fff1f2;}.drt-ct-empty--danger span{background:#ffe4e6;color:#be123c;}
.drt-ct-modal-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.46);backdrop-filter:blur(3px);}.drt-ct-modal-card{width:100%;max-width:34rem;border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.22);overflow:hidden;}.drt-ct-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid #eef2f7;background:linear-gradient(135deg,#fff,#eff6ff);}.drt-ct-modal-titleline{display:flex;align-items:flex-start;gap:.75rem;min-width:0;}.drt-ct-modal-titleline>span{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.85rem;background:#fff;color:#2563eb;border:1px solid #bfdbfe;flex:0 0 auto;}.drt-ct-modal-titleline strong{display:block;color:#0f172a;font-size:.94rem;font-weight:950;line-height:1.45;}.drt-ct-modal-titleline small{display:block;margin-top:.16rem;color:#64748b;font-size:.76rem;font-weight:800;line-height:1.45;}.drt-ct-modal-body{padding:1rem;}.drt-ct-unit-choices{display:grid;gap:.65rem;}.drt-ct-unit-choice{display:flex;align-items:center;justify-content:space-between;gap:.8rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.75rem;}.drt-ct-unit-choice.is-free{border-color:#bbf7d0;background:#f0fdf4;}.drt-ct-unit-choice.is-busy{background:#f8fafc;color:#94a3b8;}.drt-ct-unit-choice-main{display:flex;align-items:center;gap:.6rem;min-width:0;}.drt-ct-unit-choice-main>span{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.75rem;background:#fff;color:#475569;border:1px solid #e2e8f0;flex:0 0 auto;}.drt-ct-unit-choice strong{display:block;color:#0f172a;font-size:.86rem;font-weight:950;line-height:1.4;}.drt-ct-unit-choice small{display:block;color:#64748b;font-size:.72rem;font-weight:800;line-height:1.4;margin-top:.1rem;}
@media (max-width:760px){.drt-ct-hero,.drt-ct-toolbar,.drt-ct-section-head,.drt-ct-appt-top,.drt-ct-unit-choice{flex-direction:column;align-items:stretch;}.drt-ct-hero-actions,.drt-ct-badges{justify-content:flex-start;}.drt-ct-doctor-field{min-width:0;width:100%;}.drt-ct-appt{grid-template-columns:1fr;}.drt-ct-time-block{display:flex;justify-content:space-between;min-height:0;}.drt-ct-modal-head{align-items:stretch;}.drt-ct-unit-choice form,.drt-ct-unit-choice button{width:100%;}.drt-ct-unit-choice form .btn{width:100%;justify-content:center;}}

/* ------------------------------------------------------------------
   Panel final cleanup: distinct shell + flatter reports.
   Keep this layer at the end so it can safely override older refresh CSS.
------------------------------------------------------------------ */
.drt-sidebar{
  background:
    radial-gradient(520px circle at 18% 0%, rgba(20,184,166,.24), transparent 48%),
    linear-gradient(180deg,#102033 0%,#16263d 46%,#1f314b 100%) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#e2e8f0;
  box-shadow:12px 0 36px rgba(15,23,42,.16);
}
html[dir="rtl"] .drt-sidebar{
  box-shadow:-12px 0 36px rgba(15,23,42,.16);
}
.drt-sidebar::before{
  background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 38%) !important;
  opacity:1;
  filter:none;
}
.drt-sidebar .text-slate-900,
.drt-sidebar .drt-user-name{
  color:#f8fafc !important;
}
.drt-sidebar .text-slate-600,
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label{
  color:#b6c4d6 !important;
}
.drt-sidebar .drt-accent-soft{
  background:rgba(45,212,191,.12) !important;
  border:1px solid rgba(94,234,212,.18);
}
.drt-sidebar .drt-accent-text{
  color:#67e8f9 !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  border-color:rgba(148,163,184,.18) !important;
  background:rgba(255,255,255,.065) !important;
  box-shadow:none;
  backdrop-filter:blur(12px);
}
.drt-sidebar .drt-user-link,
.drt-sidebar form button{
  border-color:rgba(148,163,184,.22) !important;
  background:rgba(255,255,255,.08) !important;
  color:#dbeafe !important;
}
.drt-sidebar .drt-user-link:hover,
.drt-sidebar form button:hover{
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
}
.drt-sidebar .drt-nav-item{
  color:#d4deea !important;
  border-color:transparent;
}
.drt-sidebar .drt-nav-item svg{
  color:#93a8bd !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.09) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#fff !important;
  box-shadow:none;
}
.drt-sidebar .drt-nav-item:hover svg{
  color:#ccfbf1 !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(236,253,245,.92)) !important;
  border-color:rgba(45,212,191,.34) !important;
  color:#0f172a !important;
  box-shadow:0 14px 28px rgba(0,0,0,.16);
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#0f766e !important;
}
.drt-sidebar .drt-nav-badge{
  background:rgba(45,212,191,.18);
  color:#ccfbf1;
}
.drt-sidebar .drt-nav-badge.danger{
  background:rgba(244,63,94,.20);
  color:#fecdd3;
}
.drt-sidebar .drt-scrollbar::-webkit-scrollbar-thumb{
  background:rgba(226,232,240,.22);
  background-clip:content-box;
}

.drt-topbar{
  position:sticky;
  isolation:isolate;
  border-bottom:1px solid rgba(148,163,184,.34) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,250,252,.90)) !important;
  box-shadow:0 10px 30px rgba(15,23,42,.055) !important;
  backdrop-filter:blur(18px);
}
.drt-topbar::before{
  content:"";
  position:absolute;
  inset-inline:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,rgba(var(--drt-accent),.85),rgba(20,184,166,.65),rgba(14,165,233,.55));
  pointer-events:none;
  z-index:-1;
}
.drt-topbar .text-slate-900{
  color:#0f172a !important;
}
.drt-topbar .text-slate-500{
  color:#64748b !important;
}
.drt-topbar-pill{
  border-color:rgba(203,213,225,.95) !important;
  background:rgba(255,255,255,.86) !important;
}
.drt-topbar-pill:hover{
  border-color:rgba(var(--drt-accent),.32) !important;
  box-shadow:0 8px 20px rgba(15,23,42,.055);
}

/* Reports page: remove heavy nested-card feeling and keep sections separated. */
.drt-fin-page--reports{
  gap:1.15rem;
}
.drt-fin-page--reports .drt-fin-hero,
.drt-fin-page--reports .drt-fin-filter-card{
  padding:1rem;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.drt-fin-page--reports #report-results{
  margin-top:.25rem;
}
.drt-fin-page--reports .drt-fin-kpi-grid{
  margin-bottom:1rem;
}
.drt-fin-page--reports .drt-fin-layout{
  margin-top:0 !important;
  gap:1rem;
}
.drt-fin-page--reports .drt-fin-main-col,
.drt-fin-page--reports .drt-fin-side-col{
  gap:1rem;
}
.drt-fin-page--reports .drt-fin-panel{
  padding:1rem;
  border:1px solid #e2e8f0;
  border-radius:1.18rem;
  background:#fff;
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-fin-page--reports .drt-fin-panel.mt-4{
  margin-top:1rem !important;
}
.drt-fin-page--reports .drt-fin-panel:hover{
  box-shadow:0 10px 24px rgba(15,23,42,.045);
}
.drt-fin-page--reports .drt-fin-method-card,
.drt-fin-page--reports .drt-fin-status-card{
  box-shadow:none;
  background:#f8fafc;
}
.drt-fin-page--reports .drt-fin-table-wrap{
  box-shadow:none;
  background:#fff;
}
.drt-fin-page--reports .drt-fin-side-col{
  align-self:start;
}
@media (min-width:1180px){
  .drt-fin-page--reports .drt-fin-side-col{
    top:5.9rem;
  }
}
@media (max-width:760px){
  .drt-topbar .drt-topbar-pill span:not(.drt-caret){
    max-width:9rem;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* ------------------------------------------------------------------
   Dental clinic sidebar palette refinement.
   Lighter aqua/white shell: cleaner clinical feel than the previous dark sidebar.
------------------------------------------------------------------ */
.drt-sidebar{
  background:
    radial-gradient(620px circle at 16% 0%, rgba(45,212,191,.20), transparent 46%),
    radial-gradient(520px circle at 94% 18%, rgba(125,211,252,.22), transparent 50%),
    linear-gradient(180deg,#f7fdff 0%,#eefbf9 44%,#ffffff 100%) !important;
  border-color:rgba(14,165,233,.18) !important;
  color:#164e63 !important;
  box-shadow:12px 0 34px rgba(8,145,178,.075) !important;
}
html[dir="rtl"] .drt-sidebar{
  box-shadow:-12px 0 34px rgba(8,145,178,.075) !important;
}
.drt-sidebar::before{
  background:
    linear-gradient(180deg,rgba(255,255,255,.58),transparent 34%),
    linear-gradient(90deg,rgba(14,165,233,.10),transparent 28%) !important;
  opacity:1 !important;
  filter:none !important;
}
html[dir="rtl"] .drt-sidebar::before{
  background:
    linear-gradient(180deg,rgba(255,255,255,.58),transparent 34%),
    linear-gradient(270deg,rgba(14,165,233,.10),transparent 28%) !important;
}
.drt-sidebar .text-slate-900,
.drt-sidebar .drt-user-name{
  color:#0f172a !important;
}
.drt-sidebar .text-slate-600,
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label{
  color:#64748b !important;
}
.drt-sidebar .drt-accent-soft{
  background:linear-gradient(135deg,#e0f7fa,#ecfeff) !important;
  border:1px solid rgba(14,165,233,.18) !important;
}
.drt-sidebar .drt-accent-text{
  color:#0891b2 !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  border-color:rgba(14,165,233,.15) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 12px 28px rgba(8,145,178,.055) !important;
  backdrop-filter:blur(12px);
}
.drt-sidebar .drt-user-link,
.drt-sidebar form button{
  border-color:rgba(14,165,233,.18) !important;
  background:rgba(255,255,255,.78) !important;
  color:#155e75 !important;
}
.drt-sidebar .drt-user-link:hover,
.drt-sidebar form button:hover{
  background:#ecfeff !important;
  color:#0e7490 !important;
  border-color:rgba(14,165,233,.30) !important;
}
.drt-sidebar .drt-nav-item{
  color:#334155 !important;
  border-color:transparent !important;
}
.drt-sidebar .drt-nav-item svg{
  color:#64748b !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:linear-gradient(135deg,#ffffff,#ecfeff) !important;
  border-color:rgba(14,165,233,.18) !important;
  color:#0e7490 !important;
  box-shadow:0 10px 22px rgba(8,145,178,.055) !important;
}
.drt-sidebar .drt-nav-item:hover svg{
  color:#0891b2 !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,#0ea5e9,#14b8a6) !important;
  border-color:rgba(255,255,255,.78) !important;
  color:#ffffff !important;
  box-shadow:0 14px 30px rgba(14,165,233,.20) !important;
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#ffffff !important;
}
.drt-sidebar .drt-nav-badge{
  background:#cffafe !important;
  color:#0e7490 !important;
}
.drt-sidebar .drt-nav-badge.danger{
  background:#ffe4e6 !important;
  color:#be123c !important;
}
.drt-sidebar .drt-scrollbar{
  scrollbar-color:rgba(14,165,233,.28) transparent;
}
.drt-sidebar .drt-scrollbar::-webkit-scrollbar-thumb{
  background:rgba(14,165,233,.22) !important;
  background-clip:content-box !important;
}

.drt-topbar{
  border-bottom-color:rgba(14,165,233,.18) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(240,253,250,.91)) !important;
  box-shadow:0 10px 30px rgba(8,145,178,.055) !important;
}
.drt-topbar::before{
  background:linear-gradient(90deg,#0ea5e9,#14b8a6,#67e8f9) !important;
}
.drt-topbar-pill:hover{
  border-color:rgba(14,165,233,.28) !important;
  box-shadow:0 8px 20px rgba(8,145,178,.07) !important;
}

/* ------------------------------------------------------------------
   Final panel cleanup: reports spacing, one-title rhythm, RTL polish.
   Kept as a small override layer so existing page-specific UI stays safe.
------------------------------------------------------------------ */
.drt-page-shell--custom-header{
  padding-top:1rem;
}
.drt-topbar--compact-title .drt-topbar-page-title{
  font-size:.82rem;
  font-weight:850;
  color:#334155 !important;
}
.drt-topbar--compact-title .drt-accent-bg{
  opacity:.72;
}
.drt-topbar--compact-title .leading-tight .text-xs{
  font-size:.68rem;
}

/* Make RTL pages feel native even where older templates still used text-left/text-right. */
html[dir="rtl"] [data-drt-sidebar] .text-left{ text-align:right !important; }
html[dir="rtl"] [data-drt-sidebar] .text-right{ text-align:left !important; }
html[dir="rtl"] [data-drt-sidebar] .ltr,
html[dir="rtl"] [data-drt-sidebar] .font-mono,
html[dir="rtl"] [data-drt-sidebar] input[type="tel"],
html[dir="rtl"] [data-drt-sidebar] input[name*="mobile"],
html[dir="rtl"] [data-drt-sidebar] input[name*="phone"],
html[dir="rtl"] [data-drt-sidebar] input[name*="national"],
html[dir="rtl"] [data-drt-sidebar] input[name*="sayad"],
html[dir="rtl"] [data-drt-sidebar] input[name*="cheque"]{
  direction:ltr;
  text-align:left;
  unicode-bidi:plaintext;
}
html[dir="rtl"] [data-drt-sidebar] .drt-dropdown{
  text-align:right;
}
html[dir="ltr"] [data-drt-sidebar] .drt-dropdown{
  text-align:left;
}

/* Reports: remove the nested-card look and make each section breathe. */
.drt-fin-page--reports{
  --fin-border:#dbeafe;
}
.drt-fin-page--reports .drt-fin-hero{
  border-color:#dbeafe;
  background:
    radial-gradient(520px circle at 0% 0%, rgba(14,165,233,.13), transparent 54%),
    linear-gradient(135deg,#ffffff,#f8fbff 58%,#ecfeff);
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
html[dir="rtl"] .drt-fin-page--reports .drt-fin-hero{
  background:
    radial-gradient(520px circle at 100% 0%, rgba(14,165,233,.13), transparent 54%),
    linear-gradient(135deg,#ffffff,#f8fbff 58%,#ecfeff);
}
.drt-fin-page--reports .drt-fin-filter-card{
  border-color:#e0f2fe;
  background:rgba(255,255,255,.82);
  box-shadow:none;
}
.drt-fin-page--reports .drt-fin-kpi{
  min-height:7.1rem;
  border-color:#e0f2fe;
  box-shadow:none;
}
.drt-fin-page--reports .drt-fin-kpi strong{
  word-break:break-word;
}
.drt-fin-page--reports .drt-fin-panel{
  border-color:#e5edf6;
  background:rgba(255,255,255,.9);
  box-shadow:none;
}
.drt-fin-page--reports .drt-fin-panel:hover{
  box-shadow:none;
  border-color:#cfe8f5;
}
.drt-fin-page--reports .drt-fin-section-head{
  padding-bottom:.72rem;
  border-bottom:1px solid #eef6fb;
}
.drt-fin-page--reports .drt-fin-table-wrap,
.drt-fin-page--reports .drt-fin-method-card,
.drt-fin-page--reports .drt-fin-status-card{
  border-color:#e7eef6;
  background:#fbfdff;
}
.drt-fin-page--reports .drt-fin-main-col > .grid{
  gap:1rem;
}
.drt-fin-page--reports .drt-fin-help-card{
  background:linear-gradient(135deg,#ffffff,#f0fdfa);
  border-color:#ccfbf1;
}
.drt-fin-legacy-head .page-subtitle{
  margin-top:0;
}

/* ------------------------------------------------------------------
   Dental color separation pass: turquoise sidebar, clearer page titles,
   spacious reports and separated laboratory zones.
   Low-saturation palette; no business logic changes.
------------------------------------------------------------------ */
:root{
  --drt-dental-teal:#0f9f97;
  --drt-dental-teal-dark:#0f766e;
  --drt-dental-cyan:#0891b2;
  --drt-dental-soft:#ecfeff;
  --drt-dental-soft-2:#d9f5f2;
  --drt-dental-line:#b6e6df;
}

/* Sidebar: visibly turquoise but still calm and clinical. */
.drt-sidebar{
  background:
    radial-gradient(760px circle at 12% -4%, rgba(255,255,255,.72), transparent 42%),
    radial-gradient(560px circle at 92% 12%, rgba(125,211,252,.24), transparent 50%),
    linear-gradient(180deg,#c9f3ef 0%,#dff8f5 43%,#f7fffe 100%) !important;
  border-inline-end:1px solid rgba(15,118,110,.20) !important;
  box-shadow:14px 0 38px rgba(15,118,110,.13) !important;
}
html[dir="rtl"] .drt-sidebar{
  border-inline-end:0 !important;
  border-inline-start:1px solid rgba(15,118,110,.20) !important;
  box-shadow:-14px 0 38px rgba(15,118,110,.13) !important;
}
.drt-sidebar::before{
  background:
    linear-gradient(180deg,rgba(255,255,255,.50),transparent 34%),
    linear-gradient(90deg,rgba(15,118,110,.10),transparent 38%) !important;
}
html[dir="rtl"] .drt-sidebar::before{
  background:
    linear-gradient(180deg,rgba(255,255,255,.50),transparent 34%),
    linear-gradient(270deg,rgba(15,118,110,.10),transparent 38%) !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  background:rgba(255,255,255,.64) !important;
  border-color:rgba(15,118,110,.18) !important;
  box-shadow:0 10px 26px rgba(15,118,110,.055) !important;
}
.drt-sidebar .drt-nav-label{
  color:#0f766e !important;
}
.drt-sidebar .drt-nav-item{
  color:#245160 !important;
}
.drt-sidebar .drt-nav-item svg{
  color:#3d7f8a !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.86) !important;
  border-color:rgba(15,118,110,.20) !important;
  color:#0f766e !important;
  box-shadow:0 10px 22px rgba(15,118,110,.08) !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,#0f9f97,#0891b2) !important;
  border-color:rgba(255,255,255,.82) !important;
  color:#fff !important;
  box-shadow:0 14px 28px rgba(8,145,178,.20) !important;
}
.drt-sidebar .drt-nav-item.is-active::before{
  background:#ccfbf1 !important;
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#fff !important;
}
.drt-sidebar .drt-nav-badge{
  background:#dffbf6 !important;
  color:#0f766e !important;
  border:1px solid rgba(15,118,110,.12);
}
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{
  background:rgba(255,255,255,.22) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.28);
}

/* Topbar and page title: clearer identity without high saturation. */
.drt-topbar{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(236,253,245,.92)) !important;
  border-bottom-color:rgba(15,118,110,.20) !important;
  box-shadow:0 8px 24px rgba(15,118,110,.055) !important;
}
.drt-topbar::before{
  background:linear-gradient(90deg,#0f9f97,#6ee7d8,#93c5fd) !important;
  height:4px !important;
}
.drt-topbar--compact-title .drt-topbar-page-title{
  color:#0f766e !important;
  font-weight:950 !important;
}
.drt-page-hero{
  position:relative;
  overflow:hidden;
  border-color:rgba(15,118,110,.20) !important;
  background:
    radial-gradient(620px circle at 0 0, rgba(15,159,151,.16), transparent 52%),
    linear-gradient(135deg,#ffffff 0%,#effefb 100%) !important;
  box-shadow:0 12px 32px rgba(15,118,110,.065) !important;
}
html[dir="rtl"] .drt-page-hero{
  background:
    radial-gradient(620px circle at 100% 0, rgba(15,159,151,.16), transparent 52%),
    linear-gradient(135deg,#ffffff 0%,#effefb 100%) !important;
}
.drt-page-hero::before{
  content:"";
  position:absolute;
  inset-block:0;
  inset-inline-start:0;
  width:6px;
  background:linear-gradient(180deg,#0f9f97,#93c5fd);
}
.drt-page-hero-icon{
  background:linear-gradient(135deg,#ecfeff,#ffffff) !important;
  border-color:rgba(15,118,110,.22) !important;
  color:#0f766e !important;
}
.drt-page-kicker{ color:#0f766e !important; font-weight:950 !important; }
.drt-page-hero h1{ color:#12343f !important; }

/* Reports: replace the nested card feeling with separated work zones. */
.drt-report-page{
  display:grid;
  gap:1.15rem;
}
.drt-report-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding:1.12rem !important;
  border:1px solid rgba(15,118,110,.18) !important;
  border-radius:1.4rem !important;
  background:
    radial-gradient(720px circle at 0 0, rgba(15,159,151,.15), transparent 46%),
    linear-gradient(135deg,#fff,#f0fdfa) !important;
  box-shadow:0 10px 30px rgba(15,118,110,.055) !important;
}
html[dir="rtl"] .drt-report-hero{
  background:
    radial-gradient(720px circle at 100% 0, rgba(15,159,151,.15), transparent 46%),
    linear-gradient(135deg,#fff,#f0fdfa) !important;
}
.drt-report-kicker{
  color:#0f766e;
  font-size:.74rem;
  font-weight:950;
  line-height:1.45;
}
.drt-report-hero h1{
  margin:.08rem 0 0;
  color:#12343f;
  font-size:1.35rem;
  font-weight:950;
  line-height:1.45;
}
.drt-report-hero p{
  margin:.18rem 0 0;
  color:#58727c;
  font-size:.88rem;
  font-weight:750;
  line-height:1.7;
}
.drt-report-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.5rem;
}
.drt-report-filter-panel{
  padding:1rem !important;
  border:1px solid rgba(148,163,184,.22) !important;
  border-radius:1.25rem !important;
  background:linear-gradient(135deg,#ffffff,#f8fafc) !important;
  box-shadow:none !important;
}
.drt-report-panel-head,
.drt-report-section-head,
.drt-report-mini-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
}
.drt-report-panel-head p,
.drt-report-section-head p,
.drt-report-mini-head p{
  margin:.15rem 0 0;
  color:#64748b;
  font-size:.8rem;
  font-weight:750;
  line-height:1.55;
}
.drt-report-section-title,
.drt-report-mini-title{
  color:#143943;
  font-size:.95rem;
  font-weight:950;
  line-height:1.4;
}
.drt-report-filter-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:.75rem;
  margin-top:.9rem;
}
.drt-report-field{ grid-column:span 2; }
.drt-report-field--branch,
.drt-report-field--doctor{ grid-column:span 3; }
.drt-report-field .label{ color:#475569; }
.drt-report-results{
  display:grid;
  gap:1rem;
}
.drt-report-kpi-grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:.75rem;
}
@media (min-width:760px){ .drt-report-kpi-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1180px){ .drt-report-kpi-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.drt-report-kpi{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(203,213,225,.70);
  border-radius:1.12rem;
  background:#fff;
  padding:.95rem;
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-report-kpi::before{
  content:"";
  position:absolute;
  inset-block:.75rem;
  inset-inline-start:0;
  width:4px;
  border-radius:999px;
  background:#0f9f97;
}
.drt-report-kpi--patients{ background:linear-gradient(135deg,#fff,#eff6ff); }
.drt-report-kpi--treatments{ background:linear-gradient(135deg,#fff,#f0fdf4); }
.drt-report-kpi--revenue{ background:linear-gradient(135deg,#fff,#f0fdfa); }
.drt-report-kpi--cheque{ background:linear-gradient(135deg,#fff,#fffbeb); }
.drt-report-kpi span{
  display:block;
  color:#64748b;
  font-size:.74rem;
  font-weight:950;
}
.drt-report-kpi strong{
  display:block;
  margin-top:.2rem;
  color:#102a34;
  font-size:1.08rem;
  font-weight:950;
  line-height:1.35;
}
.drt-report-kpi small{
  display:block;
  margin-top:.24rem;
  color:#64748b;
  font-size:.72rem;
  font-weight:800;
  line-height:1.45;
}
.drt-report-section{
  border:1px solid rgba(203,213,225,.70);
  border-radius:1.32rem;
  background:#fff;
  padding:1rem;
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-report-section--finance{
  background:linear-gradient(135deg,#ffffff,#f0fdfa 140%);
  border-color:rgba(15,118,110,.16);
}
.drt-report-section--clinic{
  background:linear-gradient(135deg,#ffffff,#f8fafc 125%);
}
.drt-report-section--trend{
  background:linear-gradient(135deg,#ffffff,#eef6ff 145%);
  border-color:rgba(59,130,246,.14);
}
.drt-report-section-chip{
  flex:0 0 auto;
  border:1px solid rgba(15,118,110,.16);
  border-radius:999px;
  background:#ecfeff;
  color:#0f766e;
  padding:.35rem .65rem;
  font-size:.74rem;
  font-weight:900;
}
.drt-report-finance-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(18rem,.34fr);
  gap:.85rem;
  align-items:start;
  margin-top:.85rem;
}
.drt-report-payment-list{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:.65rem;
}
@media (min-width:760px){ .drt-report-payment-list{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1180px){ .drt-report-payment-list{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.drt-report-payment-card,
.drt-report-status-card{
  border:1px solid rgba(203,213,225,.70);
  border-radius:1rem;
  background:rgba(255,255,255,.76);
  padding:.8rem;
  box-shadow:none;
}
.drt-report-payment-card strong,
.drt-report-status-card strong{
  display:block;
  margin-top:.45rem;
  color:#0f172a;
  font-size:.93rem;
  font-weight:950;
  line-height:1.35;
}
.drt-report-payment-card small,
.drt-report-status-card small{
  display:block;
  margin-top:.18rem;
  color:#64748b;
  font-size:.72rem;
  font-weight:850;
}
.drt-report-cheque-panel{
  border:1px solid rgba(15,118,110,.14);
  border-radius:1.12rem;
  background:rgba(255,255,255,.76);
  padding:.9rem;
}
.drt-report-status-list{
  display:grid;
  gap:.55rem;
  margin-top:.75rem;
}
.drt-report-status-card{
  display:block;
  transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
.drt-report-status-card:hover{
  transform:translateY(-1px);
  border-color:rgba(15,118,110,.28);
  background:#fff;
}
.drt-report-status-card span{
  display:block;
  color:#475569;
  font-size:.76rem;
  font-weight:950;
}
.drt-report-status-card.is-warning{ background:#fffbeb; border-color:#fde68a; }
.drt-report-status-card.is-success{ background:#f0fdf4; border-color:#bbf7d0; }
.drt-report-status-card.is-danger{ background:#fff1f2; border-color:#fecdd3; }
.drt-report-table-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.85rem;
  margin-top:.85rem;
}
.drt-report-table-panel{
  min-width:0;
  border:1px solid rgba(203,213,225,.62);
  border-radius:1.1rem;
  background:rgba(255,255,255,.72);
  padding:.85rem;
}
.drt-report-table-wrap{
  margin-top:.65rem;
  overflow:auto;
  border:1px solid rgba(226,232,240,.90);
  border-radius:.95rem;
  background:#fff;
}
.drt-report-table-wrap--wide{ margin-top:.85rem; }
.drt-report-table{
  width:100%;
  min-width:620px;
  border-collapse:separate;
  border-spacing:0;
  font-size:.83rem;
}
.drt-report-table--compact{ min-width:480px; }
.drt-report-table--wide{ min-width:760px; }
.drt-report-table th,
.drt-report-table td{
  padding:.72rem;
  border-bottom:1px solid #eef2f7;
  text-align:start;
  vertical-align:middle;
}
.drt-report-table thead th{
  background:#f8fafc;
  color:#64748b;
  font-size:.72rem;
  font-weight:950;
}
.drt-report-table tbody tr:last-child td{ border-bottom:0; }
.drt-report-table tbody tr:hover td{ background:#fbfdff; }
.drt-report-table-empty,
.drt-report-empty{
  text-align:center !important;
  color:#64748b;
  padding:1.35rem !important;
  font-size:.84rem;
  font-weight:850;
}
.drt-report-text-link{
  color:#0f766e;
  font-size:.75rem;
  font-weight:950;
  white-space:nowrap;
}
.drt-report-help-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border:1px dashed rgba(15,118,110,.22);
  border-radius:1.1rem;
  background:#f7fffd;
  padding:.9rem 1rem;
}
.drt-report-help-strip strong,
.drt-report-help-strip span{
  display:block;
}
.drt-report-help-strip strong{
  color:#143943;
  font-size:.86rem;
  font-weight:950;
}
.drt-report-help-strip span{
  margin-top:.14rem;
  color:#64748b;
  font-size:.78rem;
  font-weight:750;
  line-height:1.55;
}
.drt-report-help-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  flex:0 0 auto;
}

/* Laboratory: more separated zones and calmer cards. */
.drt-lab-page{
  display:grid;
  gap:1.1rem !important;
}
.drt-lab-brief{
  border-color:rgba(15,118,110,.18) !important;
  background:
    radial-gradient(700px circle at 0 0, rgba(20,184,166,.16), transparent 48%),
    linear-gradient(135deg,#ffffff,#f0fdfa) !important;
  box-shadow:0 10px 28px rgba(15,118,110,.055) !important;
}
html[dir="rtl"] .drt-lab-brief{
  background:
    radial-gradient(700px circle at 100% 0, rgba(20,184,166,.16), transparent 48%),
    linear-gradient(135deg,#ffffff,#f0fdfa) !important;
}
.drt-lab-zone{
  border:1px solid rgba(203,213,225,.68);
  border-radius:1.35rem;
  background:#fff;
  padding:1rem;
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-lab-zone--overview{
  background:linear-gradient(135deg,#ffffff,#f0fdfa 145%);
  border-color:rgba(15,118,110,.16);
}
.drt-lab-zone--priority{
  background:linear-gradient(135deg,#ffffff,#fff7ed 145%);
  border-color:rgba(251,146,60,.18);
}
.drt-lab-zone--cases{
  background:linear-gradient(135deg,#ffffff,#f8fafc 140%);
}
.drt-lab-zone-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:.8rem;
  padding-bottom:.75rem;
  border-bottom:1px solid rgba(226,232,240,.86);
}
.drt-lab-zone-title{
  color:#143943;
  font-size:.95rem;
  font-weight:950;
  line-height:1.4;
}
.drt-lab-zone-head p{
  margin:.12rem 0 0;
  color:#64748b;
  font-size:.8rem;
  font-weight:760;
  line-height:1.55;
}
.drt-lab-zone .drt-lab-kpis,
.drt-lab-zone .drt-lab-filter-card,
.drt-lab-zone .drt-lab-case-list,
.drt-lab-zone .drt-lab-priority-panel{
  margin:0 !important;
}
.drt-lab-zone .drt-lab-filter-card,
.drt-lab-zone .drt-lab-case-list,
.drt-lab-zone .drt-lab-priority-panel{
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
}
.drt-lab-zone .drt-lab-filter-card{
  padding-bottom:.9rem !important;
  border-bottom:1px solid rgba(226,232,240,.86) !important;
}
.drt-lab-case-list{
  gap:.85rem !important;
}
.drt-lab-case{
  border-color:rgba(203,213,225,.78) !important;
  border-radius:1.18rem !important;
  box-shadow:0 1px 0 rgba(15,23,42,.035) !important;
}
.drt-lab-stage-grid{
  border-top:1px solid rgba(226,232,240,.86);
  padding-top:.85rem;
}
.drt-lab-stage{
  background:rgba(255,255,255,.78) !important;
}
.drt-lab-action-panel{
  background:#fbfdff !important;
}

@media (max-width:1180px){
  .drt-report-filter-grid{ grid-template-columns:repeat(6,minmax(0,1fr)); }
  .drt-report-field,
  .drt-report-field--branch,
  .drt-report-field--doctor{ grid-column:span 3; }
  .drt-report-finance-grid,
  .drt-report-table-grid{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  .drt-report-hero,
  .drt-report-help-strip,
  .drt-report-panel-head,
  .drt-report-section-head,
  .drt-report-mini-head,
  .drt-lab-zone-head{
    flex-direction:column;
    align-items:stretch;
  }
  .drt-report-actions,
  .drt-report-help-actions{ justify-content:flex-start; }
  .drt-report-filter-grid{ grid-template-columns:1fr; }
  .drt-report-field,
  .drt-report-field--branch,
  .drt-report-field--doctor{ grid-column:auto; }
}

/* ------------------------------------------------------------------
   Section distinction pass: make each row/zone feel like a separate
   work area while keeping dental colors soft and low-saturation.
------------------------------------------------------------------ */
:root{
  --drt-zone-border:#c8e8e5;
  --drt-zone-shadow:0 14px 34px rgba(15,118,110,.065);
  --drt-zone-soft:#f5fffd;
  --drt-zone-soft-blue:#f3f8ff;
  --drt-zone-soft-mint:#effefb;
  --drt-zone-soft-amber:#fffaf0;
  --drt-zone-text:#12343f;
}

/* Sidebar: stronger turquoise identity, still soft for dental clinic UI. */
.drt-sidebar{
  background:
    radial-gradient(640px circle at 16% -6%, rgba(255,255,255,.72), transparent 42%),
    radial-gradient(520px circle at 90% 18%, rgba(103,232,249,.28), transparent 50%),
    linear-gradient(180deg,#9ee8e1 0%,#c7f4ef 46%,#eefefb 100%) !important;
  border-inline-end:1px solid rgba(15,118,110,.28) !important;
  box-shadow:16px 0 40px rgba(15,118,110,.16) !important;
}
html[dir="rtl"] .drt-sidebar{
  border-inline-end:0 !important;
  border-inline-start:1px solid rgba(15,118,110,.28) !important;
  box-shadow:-16px 0 40px rgba(15,118,110,.16) !important;
}
.drt-sidebar .drt-nav-section,
.drt-sidebar .drt-user-card{
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(15,118,110,.22) !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,#0d9488,#0891b2) !important;
  box-shadow:0 16px 30px rgba(8,145,178,.22) !important;
}

/* Page titles: clearer color identity and more visible title band. */
.drt-page-hero,
.drt-report-hero,
.drt-lab-brief,
.drt-ct-hero,
.drt-plist-hero,
.drt-fin-hero{
  border-width:1.5px !important;
  box-shadow:0 16px 36px rgba(15,118,110,.075) !important;
}
.drt-page-hero::after,
.drt-report-hero::after,
.drt-lab-brief::after,
.drt-ct-hero::after,
.drt-plist-hero::after,
.drt-fin-hero::after{
  content:"";
  position:absolute;
  inset-inline:1rem;
  bottom:0;
  height:3px;
  border-radius:999px 999px 0 0;
  background:linear-gradient(90deg,rgba(13,148,136,.70),rgba(125,211,252,.56),rgba(196,181,253,.38));
  pointer-events:none;
}
.drt-page-hero h1,
.drt-report-hero h1,
.drt-ct-hero h1,
.drt-plist-hero h1,
.drt-fin-hero h1{
  color:#0f3d46 !important;
}

/* Shared zone look for the redesigned panel pages. */
:where(
  .drt-report-filter-panel,
  .drt-report-kpi-grid,
  .drt-report-section,
  .drt-report-help-strip,
  .drt-lab-zone,
  .drt-lab-priority-panel,
  .drt-lab-filter-card,
  .drt-ct-panel,
  .drt-ct-guide,
  .drt-plist-toolbar,
  .drt-plist-results,
  .drt-billing-section,
  .drt-section-card,
  .drt-fin-filter-card,
  .drt-fin-panel,
  .drt-cheque-list-panel,
  .drt-cheque-side,
  .drt-account-card,
  .drt-scheduler-panel,
  .drt-scheduler-control-card
){
  position:relative;
  isolation:isolate;
}
:where(
  .drt-report-filter-panel,
  .drt-report-kpi-grid,
  .drt-report-section,
  .drt-report-help-strip,
  .drt-lab-zone,
  .drt-ct-panel,
  .drt-ct-guide,
  .drt-plist-toolbar,
  .drt-plist-results,
  .drt-billing-section,
  .drt-section-card,
  .drt-fin-filter-card,
  .drt-fin-panel,
  .drt-cheque-list-panel,
  .drt-cheque-side,
  .drt-account-card,
  .drt-scheduler-panel,
  .drt-scheduler-control-card
)::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset-block:1rem;
  inset-inline-start:0;
  width:6px;
  border-radius:999px;
  background:linear-gradient(180deg,#0d9488,#7dd3fc);
  opacity:.72;
}
html[dir="rtl"] :where(
  .drt-report-filter-panel,
  .drt-report-kpi-grid,
  .drt-report-section,
  .drt-report-help-strip,
  .drt-lab-zone,
  .drt-ct-panel,
  .drt-ct-guide,
  .drt-plist-toolbar,
  .drt-plist-results,
  .drt-billing-section,
  .drt-section-card,
  .drt-fin-filter-card,
  .drt-fin-panel,
  .drt-cheque-list-panel,
  .drt-cheque-side,
  .drt-account-card,
  .drt-scheduler-panel,
  .drt-scheduler-control-card
)::before{
  inset-inline-start:auto;
  inset-inline-end:0;
}

/* Reports: separated rows instead of one continuous visual surface. */
.drt-report-page{ gap:1.35rem !important; }
.drt-report-filter-panel,
.drt-report-kpi-grid,
.drt-report-section,
.drt-report-help-strip{
  border:1.5px solid var(--drt-zone-border) !important;
  border-radius:1.55rem !important;
  box-shadow:var(--drt-zone-shadow) !important;
}
.drt-report-filter-panel{
  background:linear-gradient(135deg,#ffffff 0%,#f1fbff 100%) !important;
  padding:1.05rem 1.05rem 1.15rem !important;
}
.drt-report-kpi-grid{
  padding:1rem !important;
  background:linear-gradient(135deg,#ffffff 0%,#f5fffd 100%) !important;
}
.drt-report-section{
  padding:1.08rem !important;
  overflow:hidden;
}
.drt-report-section--finance{
  background:linear-gradient(135deg,#ffffff 0%,#edfffb 100%) !important;
  border-color:#bdebe4 !important;
}
.drt-report-section--clinic{
  background:linear-gradient(135deg,#ffffff 0%,#f4f8ff 100%) !important;
  border-color:#d4e4fb !important;
}
.drt-report-section--trend{
  background:linear-gradient(135deg,#ffffff 0%,#f8f5ff 100%) !important;
  border-color:#ddd6fe !important;
}
.drt-report-panel-head,
.drt-report-section-head,
.drt-report-mini-head{
  border:1px solid rgba(203,213,225,.78);
  border-radius:1.05rem;
  background:rgba(255,255,255,.72);
  padding:.78rem .9rem;
  margin-bottom:.9rem;
}
.drt-report-section--finance .drt-report-section-head{ background:linear-gradient(135deg,#ffffff,#ecfdf5); border-color:#c7f4df; }
.drt-report-section--clinic .drt-report-section-head{ background:linear-gradient(135deg,#ffffff,#eff6ff); border-color:#dbeafe; }
.drt-report-section--trend .drt-report-section-head{ background:linear-gradient(135deg,#ffffff,#f5f3ff); border-color:#e9d5ff; }
.drt-report-section-title,
.drt-report-mini-title{
  position:relative;
  padding-inline-start:.72rem;
  color:#0f3d46 !important;
}
.drt-report-section-title::before,
.drt-report-mini-title::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:.22rem;
  bottom:.22rem;
  width:4px;
  border-radius:999px;
  background:#0d9488;
}
.drt-report-payment-card:nth-child(4n+1),
.drt-report-table-panel:nth-child(4n+1),
.drt-report-status-card:nth-child(4n+1){ background:#ffffff !important; }
.drt-report-payment-card:nth-child(4n+2),
.drt-report-table-panel:nth-child(4n+2),
.drt-report-status-card:nth-child(4n+2){ background:#f8fffd !important; }
.drt-report-payment-card:nth-child(4n+3),
.drt-report-table-panel:nth-child(4n+3),
.drt-report-status-card:nth-child(4n+3){ background:#f7fbff !important; }
.drt-report-payment-card:nth-child(4n+4),
.drt-report-table-panel:nth-child(4n+4),
.drt-report-status-card:nth-child(4n+4){ background:#fffdf5 !important; }
.drt-report-table-wrap{
  background:#fff !important;
  border-color:#dceaf2 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.drt-report-table thead th{
  background:#eefdff !important;
  color:#0f5560 !important;
}
.drt-report-table tbody tr:nth-child(odd) td{ background:rgba(255,255,255,.66); }
.drt-report-table tbody tr:nth-child(even) td{ background:rgba(241,251,255,.62); }
.drt-report-table tbody tr:hover td{ background:#ecfeff !important; }

/* Lab: each operational area and each case row has clearer separation. */
.drt-lab-page{ gap:1.45rem !important; }
.drt-lab-zone{
  border-width:1.5px !important;
  border-radius:1.6rem !important;
  padding:1.1rem !important;
  box-shadow:var(--drt-zone-shadow) !important;
  overflow:hidden;
}
.drt-lab-zone--overview{
  background:linear-gradient(135deg,#ffffff 0%,#effefb 100%) !important;
  border-color:#bdebe4 !important;
}
.drt-lab-zone--priority{
  background:linear-gradient(135deg,#ffffff 0%,#fff8ed 100%) !important;
  border-color:#fed7aa !important;
}
.drt-lab-zone--cases{
  background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 100%) !important;
  border-color:#d6e6fb !important;
}
.drt-lab-zone-head,
.drt-lab-panel-head{
  border:1px solid rgba(203,213,225,.76) !important;
  border-radius:1.08rem !important;
  background:rgba(255,255,255,.76) !important;
  padding:.82rem .92rem !important;
  margin-bottom:1rem !important;
}
.drt-lab-zone--overview .drt-lab-zone-head{ background:linear-gradient(135deg,#ffffff,#ecfdf5) !important; border-color:#c7f4df !important; }
.drt-lab-zone--priority .drt-lab-zone-head,
.drt-lab-zone--priority .drt-lab-panel-head{ background:linear-gradient(135deg,#ffffff,#fff7ed) !important; border-color:#fed7aa !important; }
.drt-lab-zone--cases .drt-lab-zone-head{ background:linear-gradient(135deg,#ffffff,#eff6ff) !important; border-color:#dbeafe !important; }
.drt-lab-zone-title,
.drt-lab-panel-title{
  position:relative;
  padding-inline-start:.72rem;
  color:#0f3d46 !important;
}
.drt-lab-zone-title::before,
.drt-lab-panel-title::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:.22rem;
  bottom:.22rem;
  width:4px;
  border-radius:999px;
  background:#0d9488;
}
.drt-lab-zone--priority .drt-lab-panel-title::before{ background:#f59e0b; }
.drt-lab-filter-card{
  margin-bottom:1rem !important;
  padding:1rem !important;
  border:1px solid rgba(203,213,225,.80) !important;
  border-radius:1.15rem !important;
  background:rgba(255,255,255,.74) !important;
}
.drt-lab-case-list{ display:grid; gap:1rem !important; }
.drt-lab-case{
  position:relative;
  overflow:hidden;
  border-width:1.5px !important;
  border-radius:1.28rem !important;
  padding:1rem !important;
}
.drt-lab-case::before{
  content:"";
  position:absolute;
  inset-block:.85rem;
  inset-inline-start:0;
  width:5px;
  border-radius:999px;
  background:#67e8f9;
}
html[dir="rtl"] .drt-lab-case::before{ inset-inline-start:auto; inset-inline-end:0; }
.drt-lab-case:nth-child(4n+1){ background:linear-gradient(135deg,#ffffff,#f6fffd) !important; border-color:#c7eee8 !important; }
.drt-lab-case:nth-child(4n+2){ background:linear-gradient(135deg,#ffffff,#f4f8ff) !important; border-color:#dbeafe !important; }
.drt-lab-case:nth-child(4n+3){ background:linear-gradient(135deg,#ffffff,#fffaf0) !important; border-color:#fdecc8 !important; }
.drt-lab-case:nth-child(4n+4){ background:linear-gradient(135deg,#ffffff,#f8f5ff) !important; border-color:#e9d5ff !important; }
.drt-lab-case-head{
  padding-bottom:.85rem;
  border-bottom:1px solid rgba(226,232,240,.86);
}
.drt-lab-current-stage{
  background:rgba(255,255,255,.78) !important;
  border-color:rgba(15,118,110,.18) !important;
}
.drt-lab-stage-grid{
  margin-top:1rem !important;
  border-top:0 !important;
  padding-top:0 !important;
}
.drt-lab-stage{
  border-width:1px !important;
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-lab-stage:nth-child(4n+1){ background:#ffffff !important; }
.drt-lab-stage:nth-child(4n+2){ background:#f8fffd !important; }
.drt-lab-stage:nth-child(4n+3){ background:#f7fbff !important; }
.drt-lab-stage:nth-child(4n+4){ background:#fffdf5 !important; }
.drt-lab-action-panel{
  border-color:#cfe8f5 !important;
  background:linear-gradient(135deg,#ffffff,#f6fbff) !important;
}

@media (max-width:760px){
  .drt-report-filter-panel,
  .drt-report-kpi-grid,
  .drt-report-section,
  .drt-lab-zone{
    border-radius:1.25rem !important;
    padding:.9rem !important;
  }
  .drt-report-panel-head,
  .drt-report-section-head,
  .drt-report-mini-head,
  .drt-lab-zone-head,
  .drt-lab-panel-head{
    margin-bottom:.75rem !important;
  }
}

/* Scheduler treatment booking UX refresh: guided, visible, basket-style selection */
.drt-scheduler-modal-shell--wide{width:min(1180px,calc(100vw - 1.25rem)); margin-top:clamp(.4rem,2vh,1.25rem);}
.drt-scheduler-modal-card--guided{max-height:calc(100vh - 1rem); border-color:rgb(153 246 228); box-shadow:0 28px 80px rgb(15 23 42 / .22);}
.drt-scheduler-modal-head--guided{background:linear-gradient(135deg,rgb(240 253 250),rgb(239 246 255) 58%,#fff); border-bottom:1px solid rgb(204 251 241);}
.drt-scheduler-modal-body--guided{overflow:auto; background:linear-gradient(180deg,rgb(248 250 252),#fff 34%);}
.drt-scheduler-guided-layout{display:grid; grid-template-columns:21rem minmax(0,1fr); gap:1rem; align-items:start;}
.drt-scheduler-guided-patient,
.drt-scheduler-guided-action{border:1px solid rgb(226 232 240); border-radius:1.15rem; background:rgb(255 255 255 / .92); box-shadow:0 12px 30px rgb(15 23 42 / .06);}
.drt-scheduler-guided-patient{position:sticky; top:.1rem; padding:1rem; max-height:calc(100vh - 8.4rem); overflow:auto; border-color:rgb(186 230 253); background:linear-gradient(180deg,#fff,rgb(240 249 255 / .7));}
.drt-scheduler-guided-action{padding:1rem; border-color:rgb(153 246 228); background:linear-gradient(180deg,#fff,rgb(240 253 250 / .56));}
.drt-scheduler-step-mini{display:flex; align-items:flex-start; gap:.75rem;}
.drt-scheduler-step-mini > span{display:grid; place-items:center; width:2rem; height:2rem; flex:0 0 2rem; border-radius:.9rem; background:linear-gradient(135deg,#0d9488,#38bdf8); color:#fff; font-weight:950; box-shadow:0 10px 22px rgb(13 148 136 / .22);}
.drt-scheduler-step-mini h3{margin:0; color:#0f172a; font-size:1rem; font-weight:950;}
.drt-scheduler-step-mini p{margin:.15rem 0 0; color:#64748b; font-size:.78rem; line-height:1.25rem;}
.drt-scheduler-step-mini--action > span{background:linear-gradient(135deg,#14b8a6,#60a5fa);}
.drt-scheduler-selected-patient-card{border:1px solid rgb(204 251 241); border-radius:1rem; background:linear-gradient(135deg,#fff,rgb(240 253 250 / .75)); padding:.75rem;}
.drt-scheduler-action-switch{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem;}
.drt-scheduler-action-switch-btn{display:flex!important; flex-direction:column; align-items:flex-start; gap:.12rem; border-radius:1rem!important; padding:.75rem .85rem!important; text-align:inherit; background:#fff!important; border:1px solid rgb(226 232 240)!important; color:#334155!important;}
.drt-scheduler-action-switch-btn strong{font-size:.92rem; color:#0f172a; font-weight:950;}
.drt-scheduler-action-switch-btn span{font-size:.72rem; color:#64748b; font-weight:750;}
.drt-scheduler-action-switch-btn.is-active{border-color:rgb(20 184 166)!important; background:linear-gradient(135deg,rgb(240 253 250),#fff)!important; box-shadow:0 12px 26px rgb(13 148 136 / .12)!important;}
.drt-scheduler-checkup-card{display:grid; gap:1rem; border:1px solid rgb(186 230 253); border-radius:1rem; background:linear-gradient(135deg,#fff,rgb(240 249 255 / .65)); padding:1rem;}
.drt-scheduler-treatment-workspace{display:grid; grid-template-columns:minmax(0,1fr) 15.5rem; gap:1rem; align-items:start;}
.drt-scheduler-treatment-main{display:grid; gap:1rem; min-width:0;}
.drt-scheduler-subsection{position:relative; border:1px solid rgb(226 232 240); border-radius:1.1rem; background:#fff; box-shadow:0 10px 26px rgb(15 23 42 / .055); overflow:hidden;}
.drt-scheduler-subsection::before{content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:5px; background:rgb(20 184 166);}
.drt-scheduler-subsection--mode::before{background:rgb(59 130 246 / .78);}
.drt-scheduler-subsection--items::before{background:rgb(20 184 166 / .82);}
.drt-scheduler-subsection-head{display:flex; justify-content:space-between; gap:1rem; padding:.85rem 1rem .75rem; background:linear-gradient(135deg,rgb(248 250 252),#fff); border-bottom:1px solid rgb(241 245 249);}
.drt-scheduler-subsection-head h4{margin:0; color:#0f172a; font-size:.92rem; font-weight:950;}
.drt-scheduler-subsection-head p{margin:.15rem 0 0; color:#64748b; font-size:.75rem; line-height:1.15rem;}
.drt-scheduler-mode-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; padding:.85rem;}
.drt-scheduler-mode-tile{display:flex; align-items:flex-start; gap:.6rem; border:1px solid rgb(226 232 240); border-radius:.95rem; padding:.75rem; background:linear-gradient(135deg,#fff,rgb(248 250 252)); cursor:pointer; transition:.16s ease;}
.drt-scheduler-mode-tile:hover{border-color:rgb(125 211 252); transform:translateY(-1px); box-shadow:0 10px 20px rgb(14 165 233 / .09);}
.drt-scheduler-mode-tile input{margin-top:.18rem; accent-color:#0d9488;}
.drt-scheduler-mode-tile strong{display:block; color:#0f172a; font-size:.82rem; font-weight:950;}
.drt-scheduler-mode-tile small{display:block; margin-top:.18rem; color:#64748b; font-size:.72rem; line-height:1.05rem;}
.drt-scheduler-mode-tile:has(input:checked){border-color:rgb(20 184 166); background:linear-gradient(135deg,rgb(240 253 250),#fff); box-shadow:0 10px 22px rgb(20 184 166 / .12);}
.drt-scheduler-items-box--guided{border:0; border-radius:0; background:transparent; padding:.85rem; min-height:7rem;}
.drt-scheduler-patient-strip{display:flex; align-items:center; justify-content:space-between; gap:.75rem; border:1px solid rgb(204 251 241); border-radius:1rem; background:linear-gradient(135deg,rgb(240 253 250),#fff); padding:.75rem .85rem;}
.drt-scheduler-items-toolbar{display:flex; align-items:center; justify-content:space-between; gap:.75rem; border:1px dashed rgb(125 211 252); border-radius:.95rem; background:rgb(240 249 255 / .72); padding:.65rem .75rem; margin-top:.8rem;}
.drt-scheduler-items-list--guided{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.72rem; margin-top:.75rem;}
.drt-scheduler-item-card--guided{display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:.72rem; align-items:start; min-height:7.25rem; border-color:rgb(226 232 240); background:linear-gradient(135deg,#fff,rgb(248 250 252 / .86)); cursor:pointer; transition:.16s ease;}
.drt-scheduler-item-card--guided::before{background:rgb(148 163 184 / .55);}
.drt-scheduler-item-card--guided:hover{border-color:rgb(94 234 212); transform:translateY(-1px); box-shadow:0 12px 24px rgb(13 148 136 / .09);}
.drt-scheduler-item-card--guided.is-selected{border-color:rgb(20 184 166); background:linear-gradient(135deg,rgb(240 253 250),#fff); box-shadow:0 14px 28px rgb(13 148 136 / .13);}
.drt-scheduler-item-card--guided.is-selected::before{background:rgb(13 148 136);}
.drt-scheduler-item-card--guided > input[type="checkbox"]{margin-top:.25rem; width:1.1rem; height:1.1rem; accent-color:#0d9488;}
.drt-scheduler-item-main{min-width:0;}
.drt-scheduler-item-title-row{display:flex; align-items:flex-start; justify-content:space-between; gap:.6rem;}
.drt-scheduler-item-title-tooltip{position:relative; min-width:0; max-width:100%; outline:none;}
.drt-scheduler-item-title-tooltip::after{content:attr(data-tooltip); position:absolute; z-index:80; inset-inline-start:0; bottom:calc(100% + .5rem); width:max-content; max-width:min(24rem,70vw); padding:.52rem .65rem; border:1px solid rgb(45 212 191 / .45); border-radius:.75rem; background:rgb(15 23 42 / .96); color:#fff; font-size:.75rem; line-height:1.35; font-weight:750; white-space:normal; box-shadow:0 14px 30px rgb(15 23 42 / .24); opacity:0; visibility:hidden; transform:translateY(.25rem); transition:opacity .14s ease,transform .14s ease,visibility .14s ease; pointer-events:none; text-align:start;}
.drt-scheduler-item-title-tooltip::before{content:""; position:absolute; z-index:81; inset-inline-start:1.25rem; bottom:calc(100% + .18rem); width:.58rem; height:.58rem; background:rgb(15 23 42 / .96); transform:rotate(45deg); opacity:0; visibility:hidden; transition:opacity .14s ease,visibility .14s ease; pointer-events:none;}
.drt-scheduler-item-title-tooltip:hover::after,
.drt-scheduler-item-title-tooltip:focus::after{opacity:1; visibility:visible; transform:translateY(0);}
.drt-scheduler-item-title-tooltip:hover::before,
.drt-scheduler-item-title-tooltip:focus::before{opacity:1; visibility:visible; transform:rotate(45deg);}

.drt-scheduler-check-pill{flex:0 0 auto; border-radius:999px; padding:.18rem .5rem; background:rgb(241 245 249); color:#475569; font-size:.68rem; font-weight:900;}
.drt-scheduler-item-card--guided.is-selected .drt-scheduler-check-pill{background:rgb(204 251 241); color:#0f766e;}
.drt-scheduler-item-money{margin-top:.55rem; display:flex; flex-wrap:wrap; gap:.35rem .75rem; color:#475569; font-size:.72rem; line-height:1.05rem;}
.drt-scheduler-duration-box{display:grid; gap:.35rem; width:4.8rem; color:#64748b; font-size:.68rem; font-weight:900;}
.drt-scheduler-duration-box .input{width:100%; text-align:center;}
.drt-scheduler-review-panel{position:sticky; top:.1rem; display:grid; gap:.75rem; border:1px solid rgb(153 246 228); border-radius:1.1rem; background:linear-gradient(180deg,#fff,rgb(240 253 250 / .72)); padding:.9rem; box-shadow:0 16px 34px rgb(13 148 136 / .12);}
.drt-scheduler-review-head h4{margin:0; color:#0f172a; font-weight:950;}
.drt-scheduler-review-head p{margin:.12rem 0 0; color:#64748b; font-size:.74rem;}
.drt-scheduler-review-stats{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem;}
.drt-scheduler-review-stats > div{border:1px solid rgb(204 251 241); border-radius:.9rem; background:#fff; padding:.65rem;}
.drt-scheduler-review-stats span{display:block; color:#64748b; font-size:.68rem; font-weight:850;}
.drt-scheduler-review-stats strong{display:block; margin-top:.16rem; color:#0f766e; font-size:1.05rem; font-weight:950;}
.drt-scheduler-review-time{border:1px solid rgb(219 234 254); border-radius:.95rem; background:linear-gradient(135deg,rgb(239 246 255),#fff); padding:.75rem;}
.drt-scheduler-review-time span{display:block; color:#64748b; font-size:.68rem; font-weight:850;}
.drt-scheduler-review-time strong{display:block; margin-top:.15rem; color:#0f172a; font-size:.88rem; font-weight:950;}
.drt-scheduler-review-time small{display:block; margin-top:.18rem; color:#64748b; font-size:.72rem; line-height:1rem;}
.drt-scheduler-review-empty{border:1px dashed rgb(203 213 225); border-radius:.9rem; background:rgb(248 250 252); padding:.65rem; color:#64748b; font-size:.76rem; line-height:1.15rem;}
.drt-scheduler-review-link{color:#64748b; font-size:.73rem; line-height:1.1rem; text-align:center;}
.drt-scheduler-review-link a{color:#0f766e; text-decoration:underline; font-weight:850;}
@media (max-width:1100px){
  .drt-scheduler-guided-layout{grid-template-columns:1fr;}
  .drt-scheduler-guided-patient{position:relative; top:auto; max-height:none;}
  .drt-scheduler-treatment-workspace{grid-template-columns:1fr;}
  .drt-scheduler-review-panel{position:relative; top:auto;}
}
@media (max-width:760px){
  .drt-scheduler-modal-shell--wide{width:calc(100vw - .7rem); margin-top:.35rem;}
  .drt-scheduler-modal-body--guided{padding:.7rem;}
  .drt-scheduler-guided-action,.drt-scheduler-guided-patient{padding:.78rem; border-radius:1rem;}
  .drt-scheduler-action-switch,.drt-scheduler-mode-grid,.drt-scheduler-items-list--guided{grid-template-columns:1fr;}
  .drt-scheduler-item-card--guided{grid-template-columns:auto minmax(0,1fr);}
  .drt-scheduler-duration-box{grid-column:2; width:7rem;}
  .drt-scheduler-items-toolbar{align-items:flex-start; flex-direction:column;}
}

/* ------------------------------------------------------------------
   Treatment plan documents - nurse and patient plan attachments
------------------------------------------------------------------ */
.drt-plan-docs{
  --drt-plan-doc-primary:#0f766e;
  --drt-plan-doc-soft:rgb(240 253 250);
  --drt-plan-doc-border:rgb(153 246 228);
  --drt-plan-doc-pdf:#ef4444;
  --drt-plan-doc-image:#0ea5e9;
  position:relative;
  overflow:hidden;
  border:1px solid var(--drt-plan-doc-border);
  background:
    radial-gradient(circle at top left, rgb(204 251 241 / .72), transparent 18rem),
    linear-gradient(180deg,#fff,rgb(240 253 250 / .42));
  border-radius:1.2rem;
  padding:.9rem;
  box-shadow:0 14px 34px rgb(15 23 42 / .055);
}
[dir="rtl"] .drt-plan-docs{
  background:
    radial-gradient(circle at top right, rgb(204 251 241 / .72), transparent 18rem),
    linear-gradient(180deg,#fff,rgb(240 253 250 / .42));
}
.drt-plan-docs::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:5px;
  background:linear-gradient(180deg,#14b8a6,#38bdf8);
}
.drt-plan-docs__hero{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  padding:.2rem .15rem .85rem;
  border-bottom:1px solid rgb(153 246 228 / .62);
}
@media (min-width:760px){.drt-plan-docs__hero{flex-direction:row;align-items:flex-start;justify-content:space-between;}}
.drt-plan-docs__titlewrap{display:flex;align-items:flex-start;gap:.75rem;min-width:0;}
.drt-plan-docs__icon{
  width:2.6rem;
  height:2.6rem;
  border-radius:1rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:linear-gradient(135deg,#0f766e,#67e8f9);
  color:#fff;
  font-weight:950;
  box-shadow:0 13px 26px rgb(13 148 136 / .18);
}
.drt-plan-docs__eyebrow{
  font-size:.7rem;
  line-height:1rem;
  font-weight:950;
  letter-spacing:.02em;
  color:#0f766e;
}
.drt-plan-docs__title{
  margin:0;
  font-size:1rem;
  line-height:1.35rem;
  font-weight:950;
  color:#0f172a;
}
.drt-plan-docs__subtitle{
  margin-top:.18rem;
  max-width:44rem;
  color:#64748b;
  font-size:.8rem;
  line-height:1.25rem;
}
.drt-plan-docs__count{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  border:1px solid rgb(153 246 228);
  background:rgb(255 255 255 / .82);
  color:#0f766e;
  border-radius:999px;
  padding:.32rem .65rem;
  font-size:.75rem;
  line-height:1rem;
  font-weight:950;
  white-space:nowrap;
}
.drt-plan-docs__message{
  margin-top:.8rem;
  border:1px solid rgb(125 211 252);
  background:rgb(240 249 255 / .8);
  color:#075985;
  border-radius:.95rem;
  padding:.65rem .75rem;
  font-size:.82rem;
  line-height:1.25rem;
  font-weight:800;
}
.drt-plan-docs__layout{display:grid;gap:.85rem;margin-top:.9rem;}
@media (min-width:1040px){.drt-plan-docs__layout{grid-template-columns:minmax(17rem,.34fr) minmax(0,1fr);align-items:start;}}
.drt-plan-docs__upload,
.drt-plan-docs__listbox{
  border:1px solid rgb(226 232 240);
  background:rgb(255 255 255 / .82);
  border-radius:1rem;
  padding:.8rem;
  box-shadow:0 8px 22px rgb(15 23 42 / .035);
}
.drt-plan-docs__upload{border-color:rgb(153 246 228);background:rgb(240 253 250 / .6);}
.drt-plan-docs__upload > summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  color:#0f172a;
  font-size:.86rem;
  line-height:1.2rem;
  font-weight:950;
}
.drt-plan-docs__upload > summary::-webkit-details-marker{display:none;}
.drt-plan-docs__upload > summary small{
  border:1px solid rgb(153 246 228);
  background:#fff;
  color:#0f766e;
  border-radius:999px;
  padding:.18rem .48rem;
  font-size:.66rem;
  line-height:.9rem;
  font-weight:900;
  white-space:nowrap;
}
.drt-plan-docs__upload > summary::after{
  content:"⌄";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.45rem;
  height:1.45rem;
  border-radius:999px;
  border:1px solid rgb(153 246 228);
  background:#fff;
  color:#0f766e;
  transition:transform 150ms ease;
}
.drt-plan-docs__upload[open] > summary::after{transform:rotate(180deg);}
.drt-plan-docs__form{display:grid;gap:.75rem;margin-top:.8rem;}
.drt-plan-docs__field,
.drt-plan-docs__dropzone{
  border:1px solid rgb(204 251 241);
  background:rgb(255 255 255 / .78);
  border-radius:.95rem;
  padding:.7rem;
}
.drt-plan-docs__field p,
.drt-plan-docs__dropzone p{
  margin-top:.35rem;
  color:#64748b;
  font-size:.72rem;
  line-height:1rem;
}
.drt-plan-docs__dropzone{border-style:dashed;background:rgb(255 255 255 / .88);}
.drt-plan-docs__dropzone input[type="file"]{background:#fff;}
.drt-plan-docs__listhead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:.75rem;
  padding-bottom:.7rem;
  border-bottom:1px solid rgb(226 232 240);
}
.drt-plan-docs__listhead strong{display:block;color:#0f172a;font-weight:950;font-size:.92rem;line-height:1.25rem;}
.drt-plan-docs__listhead span:not(.badge){display:block;margin-top:.12rem;color:#64748b;font-size:.74rem;line-height:1.05rem;}
.drt-plan-docs__list{display:grid;gap:.65rem;margin-top:.8rem;}
.drt-plan-docs__item{
  display:grid;
  gap:.65rem;
  border:1px solid rgb(226 232 240);
  background:linear-gradient(180deg,#fff,rgb(248 250 252 / .72));
  border-radius:.98rem;
  padding:.75rem;
}
@media (min-width:780px){.drt-plan-docs__item{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;}}
.drt-plan-docs__item--pdf{border-inline-start:4px solid var(--drt-plan-doc-pdf);}
.drt-plan-docs__item--image{border-inline-start:4px solid var(--drt-plan-doc-image);}
.drt-plan-docs__fileicon{
  width:2.55rem;
  height:2.55rem;
  border-radius:.9rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.62rem;
  line-height:.8rem;
  font-weight:950;
  color:#fff;
  background:#64748b;
  box-shadow:inset 0 0 0 1px rgb(255 255 255 / .38);
}
.drt-plan-docs__item--pdf .drt-plan-docs__fileicon{background:linear-gradient(135deg,#dc2626,#fb7185);}
.drt-plan-docs__item--image .drt-plan-docs__fileicon{background:linear-gradient(135deg,#0284c7,#38bdf8);}
.drt-plan-docs__filemain{min-width:0;}
.drt-plan-docs__filename{
  color:#0f172a;
  font-size:.88rem;
  line-height:1.24rem;
  font-weight:950;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.drt-plan-docs__meta{
  margin-top:.28rem;
  display:flex;
  flex-wrap:wrap;
  gap:.28rem .75rem;
  color:#64748b;
  font-size:.72rem;
  line-height:1.05rem;
}
.drt-plan-docs__actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:flex-start;}
@media (min-width:780px){.drt-plan-docs__actions{justify-content:flex-end;}}
.drt-plan-docs__empty{
  margin-top:.8rem;
  display:grid;
  gap:.2rem;
  border:1px dashed rgb(20 184 166 / .55);
  background:rgb(240 253 250 / .68);
  border-radius:1rem;
  padding:1rem;
  color:#475569;
}
.drt-plan-docs__empty strong{color:#0f766e;font-weight:950;}
.drt-plan-docs__empty span{font-size:.82rem;line-height:1.25rem;color:#64748b;}
@media (max-width:640px){
  .drt-plan-docs{padding:.75rem;}
  .drt-plan-docs__icon{width:2.25rem;height:2.25rem;border-radius:.82rem;}
  .drt-plan-docs__subtitle{font-size:.76rem;}
}

/* Clinic Today: smaller patient-card icons + clearer unit refresh affordance */
.drt-ct-focus-label svg,
.drt-ct-patient-meta svg,
.drt-ct-procedure-line svg,
.drt-ct-actions .btn svg,
.drt-ct-unit-choice .btn svg {
  width: .82rem !important;
  height: .82rem !important;
  flex: 0 0 auto;
}

.drt-ct-focus-label > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15rem;
  height: 1.15rem;
}

.drt-ct-avatar {
  width: 2rem;
  height: 2rem;
  border-radius: .72rem;
  font-size: .78rem;
}

.drt-ct-patient-line {
  gap: .52rem;
}

.drt-ct-patient-meta span {
  gap: .16rem;
}

.drt-ct-procedure-line {
  gap: .28rem;
}

.drt-ct-unit-icon,
.drt-ct-unit-choice-main > span {
  width: 1.42rem;
  height: 1.42rem;
  border-radius: .52rem;
}

.drt-ct-unit-icon svg,
.drt-ct-unit-choice-main > span svg {
  width: .82rem !important;
  height: .82rem !important;
}

/* Global UI simplification pass: flatter sections, fewer nested cards. */
.drt-ui-page-flat{
  display:grid;
  gap:1rem;
}
.drt-ui-hero-flat{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  border:1px solid #cde8ed;
  border-radius:1.15rem;
  background:linear-gradient(135deg,#ffffff,#f1fcfd);
  padding:1rem 1.1rem;
  box-shadow:0 1px 0 rgba(15,23,42,.04);
}
.drt-ui-hero-flat::before,
.drt-ui-section-flat::before,
.drt-lab-case-flat::before{
  content:"";
  position:absolute;
  inset-block:.75rem;
  inset-inline-start:0;
  width:4px;
  border-radius:999px;
  background:#17a2a6;
}
html[dir="rtl"] .drt-ui-hero-flat::before,
html[dir="rtl"] .drt-ui-section-flat::before,
html[dir="rtl"] .drt-lab-case-flat::before{
  inset-inline-start:auto;
  inset-inline-end:0;
}
.drt-ui-hero-flat--lab{border-color:#bae6e8;background:linear-gradient(135deg,#ffffff,#eefbfb);}
.drt-ui-hero-flat--reports{border-color:#cfe5ef;background:linear-gradient(135deg,#ffffff,#eef8fb);}
.drt-ui-hero-copy{min-width:0;display:grid;gap:.25rem;padding-inline-start:.35rem;}
.drt-ui-kicker,
.drt-ui-section-eyebrow{
  color:#0f766e;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.01em;
}
.drt-ui-hero-copy h2,
.drt-ui-section-head-flat h3{
  margin:0;
  color:#0f2f3a;
  font-size:1.08rem;
  line-height:1.45;
  font-weight:950;
}
.drt-ui-hero-copy p,
.drt-ui-section-head-flat p{
  margin:0;
  color:#64748b;
  font-size:.83rem;
  line-height:1.55;
  font-weight:750;
}
.drt-ui-hero-stats,
.drt-ui-hero-actions{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.5rem;
}
.drt-ui-hero-stats span{
  min-width:6rem;
  border:1px solid #dbe9ed;
  border-radius:.9rem;
  background:rgba(255,255,255,.76);
  padding:.5rem .65rem;
  color:#64748b;
  font-size:.72rem;
  font-weight:900;
}
.drt-ui-hero-stats strong{display:block;margin-top:.08rem;color:#0f2f3a;font-size:1.05rem;font-weight:950;}
.drt-ui-section-flat{
  position:relative;
  border:1px solid #d7e7ec;
  border-radius:1.08rem;
  background:#fff;
  padding:.95rem;
  box-shadow:none;
}
.drt-ui-section-flat--mint{background:linear-gradient(135deg,#fff,#f3fcfb);border-color:#cae8e5;}
.drt-ui-section-flat--blue{background:linear-gradient(135deg,#fff,#f5f9ff);border-color:#d8e6f5;}
.drt-ui-section-flat--green{background:linear-gradient(135deg,#fff,#f6fcf8);border-color:#d7eadc;}
.drt-ui-section-flat--warning{background:linear-gradient(135deg,#fff,#fffaf1);border-color:#f4dfba;}
.drt-ui-section-flat--purple{background:linear-gradient(135deg,#fff,#faf7ff);border-color:#e4d9f6;}
.drt-ui-section-flat--warning::before{background:#d97706;}
.drt-ui-section-flat--blue::before{background:#3b82a7;}
.drt-ui-section-flat--green::before{background:#3f9f6d;}
.drt-ui-section-flat--purple::before{background:#8b5fbf;}
.drt-ui-section-head-flat{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding-bottom:.75rem;
  margin-bottom:.85rem;
  border-bottom:1px solid rgba(203,213,225,.72);
}
.drt-ui-metric-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.55rem;
}
@media (min-width:760px){.drt-ui-metric-row{grid-template-columns:repeat(4,minmax(0,1fr));}.drt-ui-metric-row--six{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (min-width:1220px){.drt-ui-metric-row--six{grid-template-columns:repeat(6,minmax(0,1fr));}}
.drt-ui-metric{
  display:block;
  border:1px solid #dbe7ec;
  border-radius:.9rem;
  background:rgba(255,255,255,.82);
  padding:.68rem .72rem;
  box-shadow:none;
  transition:background .15s ease,border-color .15s ease;
}
.drt-ui-metric:hover,.drt-ui-metric.is-active{border-color:#7ccfd1;background:#f2ffff;}
.drt-ui-metric.is-danger-soft{background:#fff8f8;border-color:#f4d0d4;}
.drt-ui-metric.is-warning-soft,.drt-ui-metric.is-amber-soft{background:#fffcf4;border-color:#f1dfbd;}
.drt-ui-metric.is-blue-soft{background:#f6faff;border-color:#d6e6f7;}
.drt-ui-metric.is-mint-soft{background:#f3fcfb;border-color:#cae8e5;}
.drt-ui-metric span{display:block;color:#64748b;font-size:.72rem;font-weight:900;}
.drt-ui-metric strong{display:block;margin-top:.12rem;color:#102a34;font-size:1.15rem;font-weight:950;line-height:1.3;}
.drt-ui-metric small{display:block;margin-top:.14rem;color:#7b8ca0;font-size:.7rem;font-weight:800;line-height:1.35;}
.drt-ui-filter-bar{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:.7rem;
  align-items:end;
}
.drt-ui-filter-bar .drt-lab-field,
.drt-ui-filter-bar .drt-report-field{grid-column:span 2!important;display:grid;gap:.35rem;min-width:0;}
.drt-ui-filter-bar .drt-ui-field-wide{grid-column:span 4!important;}
.drt-ui-filter-action{grid-column:span 2;}
.drt-ui-filter-bar .label{margin:0;font-size:.75rem;}
.drt-ui-filter-bar .input,
.drt-ui-filter-bar .select{min-height:2.58rem;margin:0!important;box-shadow:none!important;}
@media (max-width:1120px){.drt-ui-filter-bar .drt-lab-field,.drt-ui-filter-bar .drt-report-field,.drt-ui-filter-bar .drt-ui-field-wide,.drt-ui-filter-action{grid-column:span 6!important;}}
@media (max-width:680px){.drt-ui-hero-flat,.drt-ui-section-head-flat{flex-direction:column;}.drt-ui-filter-bar{grid-template-columns:1fr;}.drt-ui-filter-bar .drt-lab-field,.drt-ui-filter-bar .drt-report-field,.drt-ui-filter-bar .drt-ui-field-wide,.drt-ui-filter-action{grid-column:auto!important;}.drt-ui-metric-row{grid-template-columns:1fr;}}
.drt-ui-inline-list{display:grid;gap:.5rem;}
.drt-ui-inline-alert-row{
  display:grid;
  grid-template-columns:auto minmax(9rem,1fr) minmax(9rem,1fr) minmax(8rem,1fr);
  align-items:center;
  gap:.6rem;
  border-block-start:1px solid rgba(226,232,240,.85);
  padding:.65rem .2rem;
}
.drt-ui-inline-alert-row:first-child{border-block-start:0;}
.drt-ui-inline-alert-row strong{color:#0f2f3a;font-size:.86rem;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.drt-ui-inline-alert-row small{color:#64748b;font-size:.76rem;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.drt-ui-inline-alert-row em{font-style:normal;color:#b42336;font-size:.76rem;font-weight:850;line-height:1.35;}
@media (max-width:900px){.drt-ui-inline-alert-row{grid-template-columns:1fr;align-items:start;}}
.drt-ui-list-flat{display:grid;gap:.85rem;}
.drt-lab-case-flat{
  position:relative;
  border:1px solid #d6e5ec;
  border-radius:1.08rem;
  background:#fff;
  padding:.95rem;
  box-shadow:none;
  overflow:hidden;
}
.drt-lab-case-flat.drt-lab-card-critical,.drt-lab-case-flat.drt-lab-card-overdue{border-color:#f3c4cc;background:#fffafa;}
.drt-lab-case-flat.drt-lab-card-due-soon{border-color:#efd6aa;background:#fffdf6;}
.drt-lab-case-flat-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding-bottom:.75rem;
  border-bottom:1px solid rgba(226,232,240,.86);
}
.drt-lab-case-flat-title{min-width:0;}
.drt-lab-case-flat-id{color:#0f2f3a;font-size:.98rem;font-weight:950;line-height:1.35;}
.drt-lab-case-flat-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem;}
.drt-lab-current-strip{
  display:grid;
  grid-template-columns:minmax(8rem,.75fr) minmax(8rem,1fr) minmax(12rem,1.25fr) minmax(8rem,1fr);
  gap:.75rem;
  align-items:center;
  padding:.72rem 0;
  border-bottom:1px solid rgba(226,232,240,.82);
}
.drt-lab-current-strip span{display:block;color:#7b8ca0;font-size:.7rem;font-weight:900;}
.drt-lab-current-strip strong{display:block;color:#0f2f3a;font-size:.82rem;font-weight:950;line-height:1.4;}
.drt-lab-current-strip small{display:block;margin-top:.1rem;color:inherit;font-size:.7rem;font-weight:900;}
.drt-lab-current-strip .is-danger{color:#be123c;}.drt-lab-current-strip .is-warning{color:#b45309;}
.drt-lab-current-strip-progress{height:.46rem;border-radius:999px;background:#e4edf2;overflow:hidden;}
.drt-lab-current-strip-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#14b8a6,#6b7280);}
.drt-ui-alert-strip{
  margin:.7rem 0 0;
  border:1px solid #dbe7ec;
  border-radius:.82rem;
  background:#f8fbfc;
  padding:.58rem .7rem;
  color:#475569;
  font-size:.8rem;
  font-weight:800;
  line-height:1.55;
}
.drt-ui-alert-strip.is-danger{border-color:#f1c4cc;background:#fff7f8;color:#be123c;}
.drt-ui-alert-strip.is-warning{border-color:#ecd6aa;background:#fffaf1;color:#a16207;}
.drt-lab-stage-track{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  overflow:hidden;
  margin-top:.78rem;
  border:1px solid #dbe7ec;
  border-radius:.96rem;
  background:#fff;
}
@media (min-width:780px){.drt-lab-stage-track{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:1240px){.drt-lab-stage-track{grid-template-columns:repeat(4,minmax(0,1fr));}}
.drt-lab-stage-segment{
  min-width:0;
  padding:.72rem;
  border-block-start:1px solid rgba(226,232,240,.86);
  background:#fff;
}
.drt-lab-stage-segment:nth-child(1){border-block-start:0;}
@media (min-width:780px){.drt-lab-stage-segment{border-block-start:0;border-inline-start:1px solid rgba(226,232,240,.86);}.drt-lab-stage-segment:nth-child(2n+1){border-inline-start:0;}.drt-lab-stage-segment:nth-child(n+3){border-block-start:1px solid rgba(226,232,240,.86);}}
@media (min-width:1240px){.drt-lab-stage-segment{border-block-start:0!important;}.drt-lab-stage-segment:not(:first-child){border-inline-start:1px solid rgba(226,232,240,.86)!important;}}
.drt-lab-stage-segment.is-done{background:#f7fcf8;}.drt-lab-stage-segment.is-active{background:#f5faff;}.drt-lab-stage-segment.is-danger,.drt-lab-stage-segment.drt-lab-card-overdue,.drt-lab-stage-segment.drt-lab-card-critical{background:#fff7f8;}.drt-lab-stage-segment.drt-lab-card-due-soon{background:#fffaf1;}
.drt-lab-stage-segment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem;}
.drt-lab-stage-segment-head strong{color:#102a34;font-size:.82rem;font-weight:950;line-height:1.35;}
.drt-lab-stage-segment dl{display:grid;gap:.28rem;margin:.58rem 0 0;}
.drt-lab-stage-segment dl div{display:flex;align-items:flex-start;justify-content:space-between;gap:.55rem;font-size:.72rem;line-height:1.35;}
.drt-lab-stage-segment dt{color:#8a99ad;font-weight:900;}
.drt-lab-stage-segment dd{margin:0;color:#334155;font-weight:850;text-align:end;}
.drt-lab-stage-segment-foot{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem;color:#64748b;font-size:.72rem;font-weight:900;}
.drt-lab-stage-segment-foot .is-danger{color:#be123c;}
.drt-lab-action-flat{
  margin-top:.78rem;
  border-top:1px solid rgba(226,232,240,.86);
  padding-top:.65rem;
}
.drt-lab-action-flat summary{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  cursor:pointer;
  color:#0f766e;
  font-weight:950;
  font-size:.82rem;
}
.drt-lab-action-flat-body{display:flex;flex-wrap:wrap;align-items:end;gap:.7rem;margin-top:.7rem;}
.drt-lab-action-inline{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem;min-width:15rem;}
.drt-lab-action-inline--wide{flex:1 1 24rem;}
.drt-lab-action-inline .label{margin:0;font-size:.72rem;flex-basis:100%;}
.drt-lab-action-inline .select,.drt-lab-action-inline .input{min-height:2.45rem;margin:0!important;box-shadow:none!important;}
.drt-lab-action-inline--wide .select{max-width:9rem;}
.drt-lab-action-inline--wide .input{flex:1 1 12rem;}
@media (max-width:840px){.drt-lab-case-flat-head,.drt-lab-current-strip{grid-template-columns:1fr;flex-direction:column;align-items:flex-start;}.drt-lab-current-strip{display:grid;}.drt-lab-case-flat-badges{justify-content:flex-start;}.drt-lab-action-inline{width:100%;}.drt-lab-action-inline .select,.drt-lab-action-inline .input,.drt-lab-action-inline .btn{width:100%;max-width:none;}}

/* Flattened reports view */
.drt-report-page--flat{gap:1rem!important;}
.drt-report-results-flat{display:grid;gap:1rem;}
.drt-report-filter-grid-flat .drt-report-field{grid-column:span 2!important;}
.drt-report-filter-grid-flat .drt-report-field--branch,.drt-report-filter-grid-flat .drt-report-field--doctor{grid-column:span 3!important;}
.drt-report-flat-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.36fr);gap:.9rem;align-items:start;}
.drt-ui-data-list{display:grid;gap:.45rem;}
.drt-ui-data-list--cards{grid-template-columns:repeat(1,minmax(0,1fr));}
@media (min-width:760px){.drt-ui-data-list--cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
.drt-ui-data-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  border:1px solid #dbe7ec;
  border-radius:.82rem;
  background:rgba(255,255,255,.84);
  padding:.62rem .7rem;
}
.drt-ui-data-row div{display:grid;gap:.18rem;}
.drt-ui-data-row small{color:#64748b;font-size:.72rem;font-weight:850;}
.drt-ui-data-row strong{color:#0f2f3a;font-size:.86rem;font-weight:950;text-align:end;}
.drt-ui-aside-flat{
  border:1px solid #dbe7ec;
  border-radius:.95rem;
  background:rgba(255,255,255,.76);
  padding:.75rem;
}
.drt-ui-aside-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.6rem;border-bottom:1px solid rgba(226,232,240,.86);}
.drt-ui-aside-head div{display:grid;gap:.16rem;}.drt-ui-aside-head strong{color:#0f2f3a;font-weight:950;}.drt-ui-aside-head span{color:#64748b;font-size:.76rem;font-weight:800;line-height:1.4;}
.drt-ui-status-rows{display:grid;gap:.45rem;margin-top:.6rem;}
.drt-ui-status-row{
  display:grid;
  grid-template-columns:minmax(5rem,.75fr) minmax(0,1fr) auto;
  align-items:center;
  gap:.5rem;
  border:1px solid #e2e8f0;
  border-radius:.75rem;
  background:#fff;
  padding:.5rem .58rem;
}
.drt-ui-status-row span{color:#475569;font-size:.76rem;font-weight:900;}.drt-ui-status-row strong{color:#0f2f3a;font-size:.78rem;font-weight:950;}.drt-ui-status-row small{color:#64748b;font-size:.7rem;font-weight:850;}
.drt-ui-status-row.is-danger{background:#fff7f8;border-color:#f1c4cc;}.drt-ui-status-row.is-warning{background:#fffaf1;border-color:#ecd6aa;}.drt-ui-status-row.is-success{background:#f5fcf7;border-color:#cdebd4;}
.drt-ui-table-grid-flat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;align-items:start;}
.drt-ui-table-block-flat{min-width:0;display:grid;gap:.55rem;}
.drt-ui-table-title{color:#0f2f3a;font-size:.86rem;font-weight:950;}
.drt-ui-table-wrap-flat{border:1px solid #dbe7ec!important;border-radius:.9rem!important;background:#fff!important;box-shadow:none!important;overflow:auto;}
.drt-ui-table-wrap-flat .drt-report-table thead th{background:#f2f8fa!important;color:#0f3d46!important;}
.drt-ui-table-wrap-flat .drt-report-table tbody tr:nth-child(odd) td{background:#fff!important;}
.drt-ui-table-wrap-flat .drt-report-table tbody tr:nth-child(even) td{background:#f8fbfc!important;}
.drt-ui-chip-soft{display:inline-flex;align-items:center;border:1px solid #cde8ed;border-radius:999px;background:#f2fbfc;color:#0f766e;padding:.35rem .65rem;font-size:.74rem;font-weight:900;white-space:nowrap;}
.drt-ui-help-flat{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px dashed #cde8ed;border-radius:1rem;background:#fbfeff;padding:.85rem .95rem;}
.drt-ui-help-flat div:first-child{display:grid;gap:.15rem;}.drt-ui-help-flat strong{color:#0f2f3a;font-weight:950;}.drt-ui-help-flat span{color:#64748b;font-size:.8rem;font-weight:800;line-height:1.5;}
@media (max-width:980px){.drt-report-flat-split,.drt-ui-table-grid-flat{grid-template-columns:1fr;}.drt-report-filter-grid-flat .drt-report-field,.drt-report-filter-grid-flat .drt-report-field--branch,.drt-report-filter-grid-flat .drt-report-field--doctor{grid-column:span 6!important;}}
@media (max-width:680px){.drt-report-filter-grid-flat .drt-report-field,.drt-report-filter-grid-flat .drt-report-field--branch,.drt-report-filter-grid-flat .drt-report-field--doctor{grid-column:auto!important;}.drt-ui-status-row{grid-template-columns:1fr;}.drt-ui-help-flat{flex-direction:column;align-items:flex-start;}}

/* UI clarity pass: stronger hierarchy without nested cards. */
.drt-ui-page-flat{
  gap:1.35rem;
}
.drt-ui-section-flat--clarity{
  position:relative;
  padding:0;
  overflow:hidden;
  border-color:#c7dde4;
  background:#fff;
  box-shadow:0 10px 22px rgba(15,23,42,.035);
}
.drt-ui-section-flat--clarity::before{
  inset-block:0;
  width:6px;
  border-radius:0;
  opacity:.95;
}
.drt-ui-section-flat--clarity[data-step]::after{
  content:attr(data-step);
  position:absolute;
  inset-block-start:.72rem;
  inset-inline-start:1rem;
  width:2.15rem;
  height:2.15rem;
  display:grid;
  place-items:center;
  border:1px solid rgba(15,118,110,.20);
  border-radius:.78rem;
  background:#fff;
  color:#0f766e;
  font-size:.78rem;
  font-weight:950;
  box-shadow:0 1px 0 rgba(15,23,42,.04);
  z-index:1;
}
html[dir="rtl"] .drt-ui-section-flat--clarity[data-step]::after{
  inset-inline-start:auto;
  inset-inline-end:1rem;
}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{
  min-height:3.6rem;
  margin:0;
  padding:.85rem 4rem .8rem 1rem;
  border-bottom:1px solid rgba(203,213,225,.75);
  background:linear-gradient(135deg,rgba(248,252,253,.98),rgba(255,255,255,.84));
}
html[dir="rtl"] .drt-ui-section-flat--clarity > .drt-ui-section-head-flat{
  padding:.85rem 1rem .8rem 4rem;
}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat h3{
  font-size:1.02rem;
}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat p{
  max-width:48rem;
}
.drt-ui-section-flat--clarity > .drt-ui-metric-row,
.drt-ui-section-flat--clarity > .drt-ui-filter-bar,
.drt-ui-section-flat--clarity > .drt-report-flat-split,
.drt-ui-section-flat--clarity > .drt-ui-table-grid-flat,
.drt-ui-section-flat--clarity > .drt-report-table-wrap,
.drt-ui-section-flat--clarity > .drt-ui-list-flat{
  margin:1rem;
}
.drt-ui-section-flat--clarity .drt-ui-metric{
  border-radius:.72rem;
  border-color:#d7e5eb;
  background:#fff;
  box-shadow:inset 0 3px 0 rgba(20,184,166,.09);
}
.drt-ui-section-flat--clarity .drt-ui-metric.is-active{
  border-color:#18a6aa;
  box-shadow:inset 0 3px 0 rgba(20,184,166,.42),0 0 0 2px rgba(20,184,166,.08);
}
.drt-ui-section-flat--clarity .drt-ui-metric strong{
  font-size:1.28rem;
}
.drt-ui-section-flat--clarity .drt-ui-filter-bar{
  border:1px solid #dbe7ec;
  border-radius:.95rem;
  background:#fbfeff;
  padding:.85rem;
}
.drt-ui-section-flat--list{
  background:#fbfeff;
}
.drt-lab-flat-list > .drt-ui-list-flat{
  gap:1rem;
}
.drt-lab-case-flat{
  border-radius:.86rem;
  border-color:#cfdfe7;
  background:#fff;
  padding:0;
}
.drt-lab-case-flat::before{
  inset-block:0;
  width:5px;
  border-radius:0;
}
.drt-lab-case-flat-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  padding:.85rem 1rem .78rem;
  background:#fbfeff;
  border-bottom:1px solid rgba(203,213,225,.8);
}
.drt-lab-case-flat-id{
  font-size:1.02rem;
}
.drt-lab-case-meta{
  margin-top:.28rem;
}
.drt-lab-case-meta span{
  background:#fff;
  border-color:#dce8ed;
}
.drt-lab-current-strip{
  margin:0;
  padding:.75rem 1rem;
  grid-template-columns:minmax(8rem,.75fr) minmax(8rem,1fr) minmax(12rem,1.2fr) minmax(8rem,.9fr);
  background:#fff;
}
.drt-lab-current-strip > div:not(.drt-lab-current-strip-progress){
  border-inline-start:3px solid #d8e8ee;
  padding-inline-start:.55rem;
}
html[dir="rtl"] .drt-lab-current-strip > div:not(.drt-lab-current-strip-progress){
  border-inline-start:0;
  border-inline-end:3px solid #d8e8ee;
  padding-inline-start:0;
  padding-inline-end:.55rem;
}
.drt-lab-current-strip > .is-danger{border-color:#f0a8b5!important;}
.drt-lab-current-strip > .is-warning{border-color:#ecc77d!important;}
.drt-lab-case-flat .drt-ui-alert-strip{
  margin:.8rem 1rem 0;
  border-radius:.7rem;
}
.drt-lab-stage-track{
  margin:1rem;
  gap:.68rem;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}
.drt-lab-stage-segment{
  position:relative;
  border:1px solid #d9e6ec!important;
  border-block-start:1px solid #d9e6ec!important;
  border-inline-start:1px solid #d9e6ec!important;
  border-radius:.78rem;
  background:#fff;
  padding:.72rem .72rem .68rem;
  box-shadow:inset 0 4px 0 #cbd5e1;
}
.drt-lab-stage-segment.is-done{background:#f7fcf8;box-shadow:inset 0 4px 0 #70c58a;}
.drt-lab-stage-segment.is-active{background:#f5fbff;box-shadow:inset 0 4px 0 #3b82a7;}
.drt-lab-stage-segment.is-danger,
.drt-lab-stage-segment.drt-lab-card-overdue,
.drt-lab-stage-segment.drt-lab-card-critical{background:#fff8f9;box-shadow:inset 0 4px 0 #e05267;border-color:#f0bcc5!important;}
.drt-lab-stage-segment.drt-lab-card-due-soon{background:#fffaf1;box-shadow:inset 0 4px 0 #e0a12d;border-color:#ecd3a0!important;}
.drt-lab-stage-segment-head{
  align-items:center;
}
.drt-lab-stage-label{
  min-width:0;
  display:flex;
  align-items:center;
  gap:.45rem;
}
.drt-lab-stage-no{
  flex:0 0 auto;
  width:1.55rem;
  height:1.55rem;
  display:grid;
  place-items:center;
  border-radius:.55rem;
  background:#eef6f8;
  color:#0f6670;
  font-size:.74rem;
  font-weight:950;
}
.drt-lab-stage-segment-head strong{
  font-size:.84rem;
}
.drt-lab-stage-segment dl{
  margin-top:.68rem;
  padding-top:.55rem;
  border-top:1px dashed rgba(148,163,184,.42);
}
.drt-lab-stage-segment dl div{
  padding:.1rem 0;
}
.drt-lab-action-flat{
  margin:0 1rem 1rem;
  padding:.72rem .8rem;
  border:1px dashed #cfe2e9;
  border-radius:.8rem;
  background:#fbfeff;
}
.drt-report-results-flat{
  gap:1.25rem;
}
.drt-report-page--flat .drt-ui-section-flat--clarity{
  margin-top:.15rem;
}
.drt-report-flat-split,
.drt-ui-table-grid-flat{
  gap:1rem;
}
.drt-ui-data-row,
.drt-ui-aside-flat,
.drt-ui-table-wrap-flat{
  border-radius:.72rem!important;
  border-color:#d7e5eb!important;
}
.drt-ui-data-row{
  background:#fff;
  box-shadow:inset 4px 0 0 rgba(20,184,166,.11);
}
html[dir="rtl"] .drt-ui-data-row{
  box-shadow:inset -4px 0 0 rgba(20,184,166,.11);
}
.drt-ui-table-block-flat{
  border:1px solid #dbe7ec;
  border-radius:.82rem;
  background:#fff;
  padding:.75rem;
}
.drt-ui-table-title{
  padding-bottom:.45rem;
  border-bottom:1px solid rgba(226,232,240,.78);
}
@media (max-width:840px){
  .drt-ui-section-flat--clarity > .drt-ui-section-head-flat{
    padding:3.15rem .9rem .8rem!important;
  }
  .drt-ui-section-flat--clarity[data-step]::after{
    inset-inline-start:.9rem;
  }
  html[dir="rtl"] .drt-ui-section-flat--clarity[data-step]::after{
    inset-inline-start:auto;
    inset-inline-end:.9rem;
  }
  .drt-lab-case-flat-head,
  .drt-lab-current-strip{
    grid-template-columns:1fr;
  }
}

/* UI clarity pass 3: row rhythm and light zebra highlighting across dense lists. */
:root{
  --drt-row-odd:#ffffff;
  --drt-row-even:#f3f8fb;
  --drt-row-even-strong:#edf6f8;
  --drt-row-border:#d2e2e9;
  --drt-row-hover:#eaf7f8;
  --drt-row-marker:#8bd6d7;
}

/* Make section headers read as real separators, not another card. */
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{
  background:linear-gradient(135deg,#eef8fa,#ffffff 72%);
  border-bottom-color:#bed5df;
}
.drt-ui-section-flat--warning.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{background:linear-gradient(135deg,#fff3df,#ffffff 72%);}
.drt-ui-section-flat--green.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{background:linear-gradient(135deg,#edf9f1,#ffffff 72%);}
.drt-ui-section-flat--blue.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{background:linear-gradient(135deg,#edf7ff,#ffffff 72%);}
.drt-ui-section-flat--purple.drt-ui-section-flat--clarity > .drt-ui-section-head-flat{background:linear-gradient(135deg,#f5efff,#ffffff 72%);}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat h3{color:#092f3a;}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat p{color:#526477;}

/* Dense list rhythm: every second row gets a very soft clinical tint. */
.drt-ui-inline-list > *:nth-child(even),
.drt-ui-data-list > *:nth-child(even),
.drt-ui-status-rows > *:nth-child(even),
.drt-lab-stage-summary-list > *:nth-child(even),
.drt-lab-delay-list > *:nth-child(even),
.drt-lab-stage-performance-list > *:nth-child(even),
.drt-plan-docs__list > *:nth-child(even),
.drt-account-access-list > *:nth-child(even){
  background:var(--drt-row-even) !important;
}
.drt-ui-inline-list > *:nth-child(odd),
.drt-ui-data-list > *:nth-child(odd),
.drt-ui-status-rows > *:nth-child(odd),
.drt-lab-stage-summary-list > *:nth-child(odd),
.drt-lab-delay-list > *:nth-child(odd),
.drt-lab-stage-performance-list > *:nth-child(odd),
.drt-plan-docs__list > *:nth-child(odd),
.drt-account-access-list > *:nth-child(odd){
  background:var(--drt-row-odd);
}
.drt-ui-inline-list > *:hover,
.drt-ui-data-list > *:hover,
.drt-ui-status-rows > *:hover,
.drt-lab-delay-list > *:hover,
.drt-plan-docs__list > *:hover{
  background:var(--drt-row-hover) !important;
}

/* Lab worklist: each case should feel like one row, with alternating row bands. */
.drt-lab-flat-list > .drt-ui-list-flat{
  gap:.72rem;
}
.drt-lab-flat-list > .drt-ui-list-flat > .drt-lab-case-flat:nth-child(odd):not(.drt-lab-card-critical):not(.drt-lab-card-overdue):not(.drt-lab-card-due-soon){
  background:#fff;
}
.drt-lab-flat-list > .drt-ui-list-flat > .drt-lab-case-flat:nth-child(even):not(.drt-lab-card-critical):not(.drt-lab-card-overdue):not(.drt-lab-card-due-soon){
  background:linear-gradient(180deg,#f4f9fb,#ffffff 60%);
}
.drt-lab-flat-list > .drt-ui-list-flat > .drt-lab-case-flat:nth-child(even):not(.drt-lab-card-critical):not(.drt-lab-card-overdue):not(.drt-lab-card-due-soon) .drt-lab-case-flat-head,
.drt-lab-flat-list > .drt-ui-list-flat > .drt-lab-case-flat:nth-child(even):not(.drt-lab-card-critical):not(.drt-lab-card-overdue):not(.drt-lab-card-due-soon) .drt-lab-current-strip{
  background:#f7fbfd;
}
.drt-lab-case-flat{
  border-color:var(--drt-row-border);
  box-shadow:0 1px 0 rgba(15,23,42,.035);
}
.drt-lab-case-flat + .drt-lab-case-flat{
  margin-top:.18rem;
}
.drt-lab-case-flat:hover{
  border-color:#9dced8;
  box-shadow:0 0 0 2px rgba(20,184,166,.055);
}

/* Lab timeline segments: four stages are easier to scan with alternating cells. */
.drt-lab-stage-track > .drt-lab-stage-segment:nth-child(even):not(.is-done):not(.is-active):not(.is-danger):not(.drt-lab-card-overdue):not(.drt-lab-card-critical):not(.drt-lab-card-due-soon){
  background:#f5f9fc;
}
.drt-lab-stage-track > .drt-lab-stage-segment:nth-child(odd):not(.is-done):not(.is-active):not(.is-danger):not(.drt-lab-card-overdue):not(.drt-lab-card-critical):not(.drt-lab-card-due-soon){
  background:#fff;
}
.drt-lab-stage-segment dl div:nth-child(even){
  background:rgba(241,248,251,.78);
  border-radius:.45rem;
  padding:.18rem .32rem;
}
.drt-lab-stage-segment dl div:nth-child(odd){
  padding:.18rem .32rem;
}

/* Reports and generic tables: stronger but still low-saturation zebra rows. */
.table tbody tr:nth-child(even) td,
.drt-report-table tbody tr:nth-child(even) td,
.drt-ui-table-wrap-flat .drt-report-table tbody tr:nth-child(even) td{
  background:var(--drt-row-even) !important;
}
.table tbody tr:nth-child(odd) td,
.drt-report-table tbody tr:nth-child(odd) td,
.drt-ui-table-wrap-flat .drt-report-table tbody tr:nth-child(odd) td{
  background:#fff !important;
}
.table tbody tr:hover td,
.drt-report-table tbody tr:hover td,
.drt-ui-table-wrap-flat .drt-report-table tbody tr:hover td{
  background:var(--drt-row-hover) !important;
}
.drt-ui-table-wrap-flat .drt-report-table tbody td,
.drt-report-table tbody td,
.table tbody td{
  border-bottom-color:#dbe7ec !important;
}

/* Reports data rows: make card-like rows scan as a list, not separate nested cards. */
.drt-ui-data-list{
  gap:.38rem;
}
.drt-ui-data-row,
.drt-ui-status-row{
  border-color:var(--drt-row-border) !important;
  box-shadow:inset 4px 0 0 rgba(20,184,166,.12);
}
html[dir="rtl"] .drt-ui-data-row,
html[dir="rtl"] .drt-ui-status-row{
  box-shadow:inset -4px 0 0 rgba(20,184,166,.12);
}
.drt-ui-data-row:nth-child(even),
.drt-ui-status-row:nth-child(even){
  box-shadow:inset 4px 0 0 rgba(59,130,167,.16);
}
html[dir="rtl"] .drt-ui-data-row:nth-child(even),
html[dir="rtl"] .drt-ui-status-row:nth-child(even){
  box-shadow:inset -4px 0 0 rgba(59,130,167,.16);
}
.drt-ui-status-row.is-danger,
.drt-ui-status-row.is-warning,
.drt-ui-status-row.is-success{
  box-shadow:none;
}

/* Make filter areas visibly separate without adding another heavy card. */
.drt-ui-section-flat--clarity .drt-ui-filter-bar{
  background:repeating-linear-gradient(135deg,#fbfeff 0,#fbfeff 12px,#f5fafc 12px,#f5fafc 24px);
  border-color:#cfe1e8;
}

/* Wider rhythm for cards that appear in grid rows across the panel. */
.drt-plist-list > *:nth-child(even),
.drt-cheque-list > *:nth-child(even),
.drt-ct-appointments > *:nth-child(even),
.drt-notify-list > *:nth-child(even){
  background:var(--drt-row-even) !important;
}
.drt-plist-list > *:nth-child(odd),
.drt-cheque-list > *:nth-child(odd),
.drt-ct-appointments > *:nth-child(odd),
.drt-notify-list > *:nth-child(odd){
  background:#fff;
}

/* ------------------------------------------------------------------
   UI simplification pass 4: real flattening.
   Goal: no card-inside-card feeling. Sections are simple bands; inner
   content is rows, strips and tables instead of nested boxes.
------------------------------------------------------------------ */
:root{
  --drt-flat-line:#dfe9ee;
  --drt-flat-line-strong:#c9dce3;
  --drt-flat-bg:#ffffff;
  --drt-flat-muted:#f8fbfc;
  --drt-flat-alt:#f5f9fb;
  --drt-flat-ink:#11323c;
  --drt-flat-teal:#0f766e;
}

/* Generic section flattening for the newer redesigned pages. */
.drt-ui-page-flat{
  gap:1rem !important;
}
.drt-ui-section-flat,
.drt-ui-section-flat--clarity,
.drt-lab-zone,
.drt-fin-panel,
.drt-lab-filter-card,
.drt-lab-priority-panel,
.drt-report-filter-panel-flat{
  box-shadow:none !important;
}
.drt-ui-section-flat,
.drt-ui-section-flat--clarity{
  border:1px solid var(--drt-flat-line) !important;
  border-radius:.95rem !important;
  background:var(--drt-flat-bg) !important;
  overflow:hidden !important;
  padding:0 !important;
}
.drt-ui-section-flat--clarity::before,
.drt-ui-section-flat--clarity::after{
  display:none !important;
}
.drt-ui-section-flat--clarity > .drt-ui-section-head-flat,
.drt-ui-section-head-flat{
  min-height:auto !important;
  padding:.78rem 1rem !important;
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  background:linear-gradient(90deg,#f7fbfc,#fff) !important;
  box-shadow:inset 4px 0 0 rgba(15,118,110,.42) !important;
}
html[dir="rtl"] .drt-ui-section-flat--clarity > .drt-ui-section-head-flat,
html[dir="rtl"] .drt-ui-section-head-flat{
  box-shadow:inset -4px 0 0 rgba(15,118,110,.42) !important;
}
.drt-ui-section-head-flat h3{
  font-size:.94rem !important;
  margin:0 !important;
  color:var(--drt-flat-ink) !important;
}
.drt-ui-section-head-flat p,
.drt-ui-section-eyebrow{
  font-size:.72rem !important;
  line-height:1.45 !important;
}
.drt-ui-section-eyebrow{
  color:#64748b !important;
  letter-spacing:0 !important;
}

/* Metrics become one stat strip instead of individual cards. */
.drt-ui-metric-row{
  display:grid !important;
  gap:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#fff !important;
}
.drt-ui-metric-row--six{ grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
.drt-ui-metric{
  min-height:auto !important;
  border:0 !important;
  border-inline-end:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  padding:.82rem .9rem !important;
  transform:none !important;
}
.drt-ui-metric:last-child{ border-inline-end:0 !important; }
.drt-ui-metric::before{ display:none !important; }
.drt-ui-metric.is-active,
.drt-ui-metric:hover{
  background:#f3faf9 !important;
  box-shadow:inset 0 -2px 0 rgba(15,118,110,.42) !important;
}
.drt-ui-metric strong{ font-size:1.18rem !important; line-height:1.45 !important; }
.drt-ui-metric small{ font-size:.7rem !important; }

/* Filter bars should read as toolbars, not boxes. */
.drt-ui-filter-bar,
.drt-ui-section-flat--clarity .drt-ui-filter-bar{
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fbfdfe !important;
  box-shadow:none !important;
  padding:.9rem 1rem !important;
}
.drt-ui-filter-bar .input,
.drt-ui-filter-bar .select,
.drt-lab-field .input,
.drt-lab-field .select,
.drt-report-field .input,
.drt-report-field .select{
  box-shadow:none !important;
  border-color:#d6e2e8 !important;
  background:#fff !important;
}

/* Lists become flat row groups. */
.drt-ui-list-flat,
.drt-ui-inline-list,
.drt-ui-data-list,
.drt-ui-status-rows{
  gap:0 !important;
  background:#fff !important;
}
.drt-ui-data-row,
.drt-ui-status-row,
.drt-ui-inline-alert-row,
.drt-lab-priority-card{
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  padding:.72rem 1rem !important;
}
.drt-ui-data-row:nth-child(even),
.drt-ui-status-row:nth-child(even),
.drt-ui-inline-alert-row:nth-child(even){
  background:var(--drt-flat-alt) !important;
}
.drt-ui-data-row:hover,
.drt-ui-status-row:hover,
.drt-ui-inline-alert-row:hover{
  background:#eef9f8 !important;
}

/* Lab page: one case = one flat record, inner elements = rows/strips. */
.drt-lab-page .drt-ui-hero-flat,
.drt-report-page .drt-ui-hero-flat,
.drt-lab-brief,
.drt-fin-page--reports .drt-fin-hero{
  border-radius:1rem !important;
  box-shadow:none !important;
}
.drt-lab-flat-list > .drt-ui-list-flat{
  gap:.7rem !important;
  padding:.9rem 1rem 1rem !important;
  background:#fff !important;
}
.drt-lab-case-flat{
  border:1px solid var(--drt-flat-line-strong) !important;
  border-radius:.85rem !important;
  background:#fff !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.drt-lab-flat-list > .drt-ui-list-flat > .drt-lab-case-flat:nth-child(even):not(.drt-lab-card-critical):not(.drt-lab-card-overdue):not(.drt-lab-card-due-soon){
  background:#fff !important;
}
.drt-lab-case-flat-head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:.75rem !important;
  padding:.8rem 1rem !important;
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  background:#fff !important;
}
.drt-lab-case-flat-id{ font-size:.95rem !important; }
.drt-lab-case-meta,
.drt-lab-case-date{ margin-top:.25rem !important; }
.drt-lab-current-strip{
  display:grid !important;
  grid-template-columns:1fr 1.4fr 1.2fr 1fr !important;
  gap:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fbfdfe !important;
  box-shadow:none !important;
}
.drt-lab-current-strip > div{
  padding:.72rem 1rem !important;
  border-inline-end:1px solid var(--drt-flat-line) !important;
}
.drt-lab-current-strip > div:last-child{ border-inline-end:0 !important; }
.drt-lab-current-strip-progress{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
}
.drt-lab-current-strip-progress span{
  display:block !important;
  height:.34rem !important;
  border-radius:999px !important;
}
.drt-ui-alert-strip{
  margin:0 !important;
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fffaf1 !important;
  padding:.66rem 1rem !important;
}

/* Lab stages as a compact table-like timeline, not four cards. */
.drt-lab-stage-track{
  display:block !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
}
.drt-lab-stage-segment,
.drt-lab-stage-track > .drt-lab-stage-segment:nth-child(even),
.drt-lab-stage-track > .drt-lab-stage-segment:nth-child(odd){
  display:grid !important;
  grid-template-columns:minmax(13rem,.9fr) minmax(18rem,1.6fr) minmax(8rem,.5fr) !important;
  gap:.75rem !important;
  align-items:center !important;
  border:0 !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  padding:.72rem 1rem !important;
}
.drt-lab-stage-track > .drt-lab-stage-segment:nth-child(even){
  background:var(--drt-flat-alt) !important;
}
.drt-lab-stage-segment.is-done,
.drt-lab-stage-segment.is-active,
.drt-lab-stage-segment.is-danger,
.drt-lab-stage-segment.drt-lab-card-overdue,
.drt-lab-stage-segment.drt-lab-card-critical,
.drt-lab-stage-segment.drt-lab-card-due-soon{
  box-shadow:inset 4px 0 0 var(--drt-flat-teal) !important;
}
html[dir="rtl"] .drt-lab-stage-segment.is-done,
html[dir="rtl"] .drt-lab-stage-segment.is-active,
html[dir="rtl"] .drt-lab-stage-segment.is-danger,
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-overdue,
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-critical,
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-due-soon{
  box-shadow:inset -4px 0 0 var(--drt-flat-teal) !important;
}
.drt-lab-stage-segment.is-done{ box-shadow:inset 4px 0 0 #16a34a !important; }
.drt-lab-stage-segment.is-active{ box-shadow:inset 4px 0 0 #0ea5e9 !important; }
.drt-lab-stage-segment.is-danger,
.drt-lab-stage-segment.drt-lab-card-overdue,
.drt-lab-stage-segment.drt-lab-card-critical{ box-shadow:inset 4px 0 0 #e11d48 !important; }
.drt-lab-stage-segment.drt-lab-card-due-soon{ box-shadow:inset 4px 0 0 #f59e0b !important; }
html[dir="rtl"] .drt-lab-stage-segment.is-done{ box-shadow:inset -4px 0 0 #16a34a !important; }
html[dir="rtl"] .drt-lab-stage-segment.is-active{ box-shadow:inset -4px 0 0 #0ea5e9 !important; }
html[dir="rtl"] .drt-lab-stage-segment.is-danger,
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-overdue,
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-critical{ box-shadow:inset -4px 0 0 #e11d48 !important; }
html[dir="rtl"] .drt-lab-stage-segment.drt-lab-card-due-soon{ box-shadow:inset -4px 0 0 #f59e0b !important; }
.drt-lab-stage-segment-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:.6rem !important;
}
.drt-lab-stage-segment dl{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:.45rem !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
.drt-lab-stage-segment dl div,
.drt-lab-stage-segment dl div:nth-child(even),
.drt-lab-stage-segment dl div:nth-child(odd){
  display:block !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
}
.drt-lab-stage-segment dl dt{ font-size:.68rem !important; color:#8796a8 !important; }
.drt-lab-stage-segment dl dd{ margin-top:.12rem !important; font-size:.72rem !important; }
.drt-lab-stage-segment-foot{
  display:flex !important;
  justify-content:flex-end !important;
  gap:.5rem !important;
  margin:0 !important;
}
.drt-lab-action-flat{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
}
.drt-lab-action-flat > summary{
  padding:.68rem 1rem !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  background:#fbfdfe !important;
}
.drt-lab-action-flat-body{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:end !important;
  gap:.65rem !important;
  padding:.75rem 1rem !important;
  background:#fff !important;
}
.drt-lab-action-inline,
.drt-lab-action-inline--wide{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:end !important;
  gap:.5rem !important;
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
}
.drt-lab-action-inline .label{
  width:100%;
  margin-bottom:.15rem !important;
}

/* Reports: stat strips and row lists instead of nested cards. */
.drt-report-results-flat{
  display:grid !important;
  gap:1rem !important;
}
.drt-report-flat-split{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(18rem,.42fr) !important;
  gap:0 !important;
  border-top:1px solid var(--drt-flat-line) !important;
}
.drt-report-flat-split > *{
  border:0 !important;
  border-inline-end:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.drt-report-flat-split > *:last-child{ border-inline-end:0 !important; }
.drt-ui-aside-flat{
  background:#fff !important;
  padding:0 !important;
}
.drt-ui-aside-head{
  padding:.72rem 1rem !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  background:#fbfdfe !important;
}
.drt-ui-table-grid-flat{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:0 !important;
  border-top:1px solid var(--drt-flat-line) !important;
}
.drt-ui-table-block-flat{
  border:0 !important;
  border-inline-end:1px solid var(--drt-flat-line) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  padding:0 !important;
}
.drt-ui-table-block-flat:last-child{ border-inline-end:0 !important; }
.drt-ui-table-title{
  padding:.68rem 1rem !important;
  border-bottom:1px solid var(--drt-flat-line) !important;
  background:#fbfdfe !important;
  font-size:.82rem !important;
}
.drt-report-table-wrap,
.drt-ui-table-wrap-flat{
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}
.drt-report-table th,
.drt-report-table td{
  padding:.64rem .85rem !important;
}
.drt-ui-help-flat{
  border:1px solid var(--drt-flat-line) !important;
  border-radius:.85rem !important;
  background:#fbfdfe !important;
  box-shadow:none !important;
}

/* Avoid globally making all ordinary pages look like nested tinted cards. */
.drt-plist-list > *:nth-child(even),
.drt-cheque-list > *:nth-child(even),
.drt-ct-appointments > *:nth-child(even),
.drt-notify-list > *:nth-child(even){
  background:#fff !important;
}
.drt-plist-list > *,
.drt-cheque-list > *,
.drt-ct-appointments > *,
.drt-notify-list > *{
  box-shadow:none !important;
}

@media (max-width:1180px){
  .drt-ui-metric-row,
  .drt-ui-metric-row--six{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .drt-report-flat-split,
  .drt-ui-table-grid-flat{ grid-template-columns:1fr !important; }
  .drt-report-flat-split > *,
  .drt-ui-table-block-flat{ border-inline-end:0 !important; border-bottom:1px solid var(--drt-flat-line) !important; }
  .drt-report-flat-split > *:last-child,
  .drt-ui-table-block-flat:last-child{ border-bottom:0 !important; }
  .drt-lab-stage-segment,
  .drt-lab-stage-track > .drt-lab-stage-segment:nth-child(even),
  .drt-lab-stage-track > .drt-lab-stage-segment:nth-child(odd){
    grid-template-columns:1fr !important;
    gap:.55rem !important;
  }
  .drt-lab-stage-segment dl{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:760px){
  .drt-ui-metric-row,
  .drt-ui-metric-row--six{ grid-template-columns:1fr !important; }
  .drt-ui-metric{ border-inline-end:0 !important; border-bottom:1px solid var(--drt-flat-line) !important; }
  .drt-lab-case-flat-head,
  .drt-lab-current-strip{ grid-template-columns:1fr !important; }
  .drt-lab-current-strip > div{ border-inline-end:0 !important; border-bottom:1px solid var(--drt-flat-line) !important; }
  .drt-lab-stage-segment dl{ grid-template-columns:1fr !important; }
}

/* --------------------------------------------------------------------------
   Clarity Architecture v1
   Goal: fewer nested cards, clearer rows, stronger visual hierarchy.
   Applied first to Lab and Reports.
   -------------------------------------------------------------------------- */
:root{
  --drt-arch-bg:#f6fbfb;
  --drt-arch-surface:#ffffff;
  --drt-arch-ink:#0f2f35;
  --drt-arch-muted:#60737a;
  --drt-arch-line:#d8e8e8;
  --drt-arch-soft:#edf8f8;
  --drt-arch-soft-2:#f8fcfc;
  --drt-arch-accent:#27b8b1;
  --drt-arch-blue:#3979b8;
  --drt-arch-success:#2f9e76;
  --drt-arch-warning:#b7791f;
  --drt-arch-danger:#c05656;
}
.drt-arch-page{
  display:flex;
  flex-direction:column;
  gap:1.1rem;
  color:var(--drt-arch-ink);
}
.drt-arch-hero{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
  padding:1.15rem 1.25rem;
  border:1px solid var(--drt-arch-line);
  border-inline-start:6px solid var(--drt-arch-accent);
  border-radius:22px;
  background:linear-gradient(135deg,#effcfc 0%,#ffffff 56%,#f6fbff 100%);
  box-shadow:0 12px 24px rgba(15,47,53,.055);
}
.drt-arch-hero--reports{ border-inline-start-color:#3b82b8; background:linear-gradient(135deg,#f2f8ff 0%,#ffffff 58%,#f4fbfa 100%); }
.drt-arch-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border-radius:999px;
  padding:.22rem .65rem;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.02em;
  color:#0f766e;
  background:#dff7f5;
}
.drt-arch-hero h2{
  margin:.45rem 0 .25rem;
  font-size:1.35rem;
  line-height:1.45;
  font-weight:900;
  color:#0d3440;
}
.drt-arch-hero p{ margin:0; color:var(--drt-arch-muted); font-size:.9rem; }
.drt-arch-hero-actions{ display:flex; gap:.55rem; flex-wrap:wrap; justify-content:flex-end; }
.drt-arch-band{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--drt-arch-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 18px rgba(15,47,53,.04);
}
.drt-arch-band--reports{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.drt-arch-stat{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:.35rem;
  min-height:96px;
  padding:.95rem 1rem .9rem;
  border-inline-end:1px solid var(--drt-arch-line);
  color:inherit;
  text-decoration:none;
  background:#fff;
}
.drt-arch-stat:last-child{ border-inline-end:0; }
.drt-arch-stat::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  inset-block:0;
  width:4px;
  background:var(--drt-arch-accent);
  opacity:.8;
}
.drt-arch-stat span{ color:var(--drt-arch-muted); font-size:.76rem; font-weight:800; }
.drt-arch-stat strong{ color:var(--drt-arch-ink); font-size:1.35rem; line-height:1; font-weight:950; }
.drt-arch-stat small{ color:#72868c; font-size:.74rem; line-height:1.45; }
.drt-arch-stat:hover,
.drt-arch-stat.is-active{ background:#effafa; }
.drt-arch-stat.is-danger::before{ background:var(--drt-arch-danger); }
.drt-arch-stat.is-warning::before{ background:var(--drt-arch-warning); }
.drt-arch-stat.is-muted::before{ background:#7c9aa0; }
.drt-arch-stat.is-info::before{ background:var(--drt-arch-blue); }
.drt-arch-stat.is-success::before{ background:var(--drt-arch-success); }
.drt-arch-section{
  border:1px solid var(--drt-arch-line);
  border-radius:20px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 10px 22px rgba(15,47,53,.045);
}
.drt-arch-section--alert{ border-color:#f0d4b2; background:#fffdf8; }
.drt-arch-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  padding:.95rem 1.05rem;
  background:linear-gradient(180deg,#f8ffff 0%,#fff 100%);
  border-bottom:1px solid var(--drt-arch-line);
}
.drt-arch-section-head span:not(.badge):not(.drt-lab-alert-pill):not(.drt-arch-chip){
  display:block;
  color:#0f766e;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.drt-arch-section-head h3{ margin:.15rem 0 0; font-size:1rem; font-weight:950; color:#123a42; }
.drt-arch-chip,
.drt-arch-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:2.35rem;
  border-radius:999px;
  padding:.3rem .65rem;
  background:#e7f8f7;
  color:#0f766e;
  font-size:.78rem;
  font-weight:900;
}
.drt-arch-alert-list{ display:flex; flex-direction:column; }
.drt-arch-alert-line{
  display:grid;
  grid-template-columns:auto minmax(190px,1.2fr) minmax(180px,1fr) minmax(220px,1.4fr);
  gap:.75rem;
  align-items:center;
  padding:.72rem 1.05rem;
  border-bottom:1px solid #f1dfc4;
  color:inherit;
  text-decoration:none;
}
.drt-arch-alert-line:nth-child(even){ background:#fff9ef; }
.drt-arch-alert-line:last-child{ border-bottom:0; }
.drt-arch-alert-line strong{ font-weight:900; }
.drt-arch-alert-line span{ color:#415b63; }
.drt-arch-alert-line small{ color:#8a5d18; }
.drt-arch-filter-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) minmax(220px,1.4fr) auto;
  gap:.75rem;
  align-items:end;
  padding:1rem;
  background:#fff;
}
.drt-arch-filter-grid--reports{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.drt-arch-field{ display:flex; flex-direction:column; gap:.3rem; }
.drt-arch-field--wide{ min-width:0; }
.drt-arch-field .label{ margin:0; color:#49646b; font-size:.75rem; font-weight:800; }
.drt-arch-case-list{ display:flex; flex-direction:column; }
.drt-arch-case{
  border-bottom:1px solid var(--drt-arch-line);
  background:#fff;
}
.drt-arch-case:nth-child(even){ background:#fbfefe; }
.drt-arch-case:last-child{ border-bottom:0; }
.drt-arch-case-grid{
  display:grid;
  grid-template-columns:minmax(230px,1.55fr) minmax(130px,.9fr) minmax(150px,1fr) minmax(180px,1.1fr) minmax(150px,1fr);
  gap:.9rem;
  align-items:center;
  padding:1rem 1.05rem;
}
.drt-arch-case-idblock{ display:flex; flex-direction:column; gap:.24rem; min-width:0; }
.drt-arch-case-id{ width:max-content; border-radius:999px; padding:.18rem .55rem; background:#e6f8f7; color:#0f766e; font-size:.74rem; font-weight:950; }
.drt-arch-case-idblock strong{ font-size:.98rem; font-weight:950; color:#123940; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.drt-arch-case-idblock small,
.drt-arch-case-idblock em{ font-style:normal; color:#668086; font-size:.76rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.drt-arch-case-cell{ display:flex; flex-direction:column; gap:.28rem; min-width:0; }
.drt-arch-case-cell > span:first-child{ color:#789096; font-size:.7rem; font-weight:900; }
.drt-arch-case-cell strong{ color:#1b4148; font-weight:900; font-size:.86rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.drt-arch-case-cell small{ color:#6f8388; font-size:.72rem; }
.drt-arch-case-cell.is-danger strong,
.drt-arch-case-cell.is-danger small{ color:var(--drt-arch-danger); }
.drt-arch-case-cell.is-warning strong,
.drt-arch-case-cell.is-warning small{ color:var(--drt-arch-warning); }
.drt-arch-pill-line{ display:flex; gap:.35rem; flex-wrap:wrap; }
.drt-arch-progress{
  height:6px;
  border-radius:999px;
  background:#e1eeee;
  overflow:hidden;
}
.drt-arch-progress i{ display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#3fc8bd,#2f80c2); }
.drt-arch-case-note{
  margin:0 1.05rem .85rem;
  padding:.62rem .85rem;
  border-radius:12px;
  background:#edfafa;
  color:#31575e;
  font-size:.82rem;
  border:1px solid #d5eeee;
}
.drt-arch-case-note.is-warning{ background:#fff8e8; border-color:#f1ddb1; color:#805a17; }
.drt-arch-case-note.is-danger{ background:#fff0f0; border-color:#f1c7c7; color:#9b2f2f; }
.drt-arch-details{ border-top:1px dashed #cfe1e1; }
.drt-arch-details > summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  cursor:pointer;
  list-style:none;
  padding:.72rem 1.05rem;
  color:#29565d;
  font-weight:900;
  background:rgba(239,250,250,.72);
}
.drt-arch-details > summary::-webkit-details-marker{ display:none; }
.drt-arch-details > summary small{ color:#71888e; font-weight:700; }
.drt-arch-details-body{ padding:.85rem 1.05rem 1rem; background:#fbffff; display:flex; flex-direction:column; gap:.85rem; }
.drt-arch-stage-table{ border:1px solid #dceaea; border-radius:14px; overflow:hidden; background:#fff; }
.drt-arch-stage-row{
  display:grid;
  grid-template-columns:36px minmax(130px,1.2fr) minmax(110px,.9fr) repeat(4,minmax(115px,1fr));
  gap:.55rem;
  align-items:center;
  padding:.65rem .75rem;
  border-bottom:1px solid #e8f0f0;
  font-size:.78rem;
}
.drt-arch-stage-row:nth-child(even){ background:#f8fcfc; }
.drt-arch-stage-row:last-child{ border-bottom:0; }
.drt-arch-stage-row.is-active{ box-shadow:inset 4px 0 0 #3b82b8; }
[dir="rtl"] .drt-arch-stage-row.is-active{ box-shadow:inset -4px 0 0 #3b82b8; }
.drt-arch-stage-row.is-done{ box-shadow:inset 4px 0 0 #2f9e76; }
[dir="rtl"] .drt-arch-stage-row.is-done{ box-shadow:inset -4px 0 0 #2f9e76; }
.drt-arch-stage-row.is-danger{ background:#fff7f7; }
.drt-arch-stage-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.65rem;
  height:1.65rem;
  border-radius:999px;
  background:#e7f8f7;
  color:#0f766e;
  font-weight:950;
}
.drt-arch-stage-row strong{ color:#163e45; font-size:.82rem; }
.drt-arch-stage-row small{ color:#657f85; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.drt-arch-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  align-items:end;
  padding:.75rem;
  border:1px solid #dceaea;
  border-radius:14px;
  background:#fff;
}
.drt-arch-action-form{ display:flex; flex-wrap:wrap; gap:.5rem; align-items:end; }
.drt-arch-action-form--wide{ flex:1 1 360px; }
.drt-arch-action-form .label{ width:100%; margin:0; font-size:.72rem; font-weight:850; color:#49646b; }
.drt-arch-results{ display:flex; flex-direction:column; gap:1.1rem; }
.drt-arch-two-pane{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(290px,.8fr);
  gap:0;
}
.drt-arch-list-table,
.drt-arch-table-card{
  min-width:0;
  border-inline-end:1px solid var(--drt-arch-line);
}
.drt-arch-two-pane > *:last-child{ border-inline-end:0; }
.drt-arch-list-title,
.drt-arch-table-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.75rem;
  padding:.75rem 1rem;
  border-bottom:1px solid #e7f0f0;
  background:#fbffff;
  color:#234b52;
  font-weight:950;
}
.drt-arch-list-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:.78rem 1rem;
  border-bottom:1px solid #eaf1f1;
  color:inherit;
  text-decoration:none;
}
.drt-arch-list-row:nth-child(even){ background:#fbfefe; }
.drt-arch-list-row:last-child{ border-bottom:0; }
.drt-arch-list-row > div{ display:flex; flex-direction:column; gap:.22rem; }
.drt-arch-list-row small{ color:#70868b; }
.drt-arch-list-row strong{ font-weight:950; color:#173d44; }
.drt-arch-list-row.is-warning{ background:#fffaf0; }
.drt-arch-list-row.is-danger{ background:#fff5f5; }
.drt-arch-list-row.is-success{ background:#f2fbf7; }
.drt-arch-table{ border-collapse:collapse !important; }
.drt-arch-table thead th{ background:#f4fbfb !important; color:#234b52 !important; font-weight:950 !important; border-bottom:1px solid #dceaea !important; }
.drt-arch-table tbody tr:nth-child(even){ background:#fbfefe; }
.drt-arch-table tbody td{ border-bottom:1px solid #eaf1f1 !important; }
.drt-arch-help-line{
  display:flex;
  align-items:center;
  gap:.75rem;
  flex-wrap:wrap;
  padding:.9rem 1rem;
  border:1px solid var(--drt-arch-line);
  border-radius:18px;
  background:#f8fcfc;
  color:#4c666c;
}
.drt-arch-help-line strong{ color:#153b42; }
.drt-arch-help-line span{ flex:1 1 360px; }

@media (max-width:1180px){
  .drt-arch-band,
  .drt-arch-band--reports{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .drt-arch-stat:nth-child(2n){ border-inline-end:0; }
  .drt-arch-case-grid{ grid-template-columns:1fr 1fr; align-items:start; }
  .drt-arch-stage-row{ grid-template-columns:32px minmax(120px,1fr) minmax(100px,1fr); }
  .drt-arch-stage-row small{ white-space:normal; }
  .drt-arch-filter-grid,
  .drt-arch-filter-grid--reports{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .drt-arch-filter-grid > button{ grid-column:1/-1; }
  .drt-arch-two-pane{ grid-template-columns:1fr; }
  .drt-arch-list-table,
  .drt-arch-table-card{ border-inline-end:0; border-bottom:1px solid var(--drt-arch-line); }
  .drt-arch-two-pane > *:last-child{ border-bottom:0; }
}
@media (max-width:760px){
  .drt-arch-hero{ flex-direction:column; }
  .drt-arch-hero-actions{ justify-content:flex-start; }
  .drt-arch-band,
  .drt-arch-band--reports,
  .drt-arch-filter-grid,
  .drt-arch-filter-grid--reports,
  .drt-arch-case-grid{ grid-template-columns:1fr; }
  .drt-arch-stat{ border-inline-end:0; border-bottom:1px solid var(--drt-arch-line); }
  .drt-arch-stat:last-child{ border-bottom:0; }
  .drt-arch-alert-line{ grid-template-columns:1fr; }
  .drt-arch-stage-row{ grid-template-columns:32px 1fr; }
  .drt-arch-stage-row > span:nth-child(3),
  .drt-arch-stage-row small{ grid-column:2; }
}

/* UI clarity architecture v3: lab cases use subtle alternating tone families so each case block is easier to distinguish. */
.drt-arch-page--lab .drt-arch-case-list{
  gap:1rem;
  padding:1rem;
  background:#f5fbfb;
}
.drt-arch-page--lab .drt-arch-case{
  --drt-lab-case-accent:#2fb7ad;
  --drt-lab-case-surface:#ffffff;
  --drt-lab-case-grid:#ffffff;
  --drt-lab-case-context:#eaf8f7;
  --drt-lab-case-subtle:#fbffff;
  --drt-lab-case-chip:#edfafa;
  --drt-lab-case-chip-border:#b9e6e2;
  --drt-lab-case-cell-border:#e5f0f0;
  position:relative;
  overflow:hidden;
  border:1px solid #cfe7e7;
  border-inline-start:8px solid var(--drt-lab-case-accent);
  border-radius:18px;
  background:var(--drt-lab-case-surface);
  box-shadow:0 8px 18px rgba(15,47,53,.045);
}
.drt-arch-page--lab .drt-arch-case.drt-lab-tone-a{
  --drt-lab-case-accent:#2fb7ad;
  --drt-lab-case-surface:#fcffff;
  --drt-lab-case-grid:#ffffff;
  --drt-lab-case-context:#eaf8f7;
  --drt-lab-case-subtle:#f7fcfc;
  --drt-lab-case-chip:#edfafa;
  --drt-lab-case-chip-border:#b9e6e2;
}
.drt-arch-page--lab .drt-arch-case.drt-lab-tone-b{
  --drt-lab-case-accent:#5a9bd6;
  --drt-lab-case-surface:#fcfdff;
  --drt-lab-case-grid:#ffffff;
  --drt-lab-case-context:#edf5fd;
  --drt-lab-case-subtle:#f7faff;
  --drt-lab-case-chip:#eef5fd;
  --drt-lab-case-chip-border:#c9ddf3;
}
.drt-arch-page--lab .drt-arch-case.drt-lab-tone-c{
  --drt-lab-case-accent:#62b88e;
  --drt-lab-case-surface:#fcfffd;
  --drt-lab-case-grid:#ffffff;
  --drt-lab-case-context:#edf9f1;
  --drt-lab-case-subtle:#f7fcf8;
  --drt-lab-case-chip:#edf8f1;
  --drt-lab-case-chip-border:#c8e6d3;
}
.drt-arch-page--lab .drt-arch-case.drt-lab-tone-d{
  --drt-lab-case-accent:#b792c9;
  --drt-lab-case-surface:#fefcff;
  --drt-lab-case-grid:#ffffff;
  --drt-lab-case-context:#f5effa;
  --drt-lab-case-subtle:#faf7fc;
  --drt-lab-case-chip:#f4eef9;
  --drt-lab-case-chip-border:#e1d2eb;
}
.drt-arch-page--lab .drt-arch-case.is-warning,
.drt-arch-page--lab .drt-arch-case.drt-lab-card-warning{
  border-inline-start-color:#d89b30;
}
.drt-arch-page--lab .drt-arch-case.is-danger,
.drt-arch-page--lab .drt-arch-case.drt-lab-card-danger{
  border-inline-start-color:#d95f5f;
}
.drt-arch-page--lab .drt-arch-case-grid{
  grid-template-columns:minmax(250px,1.6fr) minmax(120px,.85fr) minmax(145px,1fr) minmax(175px,1.05fr) minmax(145px,1fr);
  padding:1rem 1.1rem;
  background:var(--drt-lab-case-grid);
  border-bottom:1px solid #e2eeee;
}
.drt-arch-page--lab .drt-arch-case-id{
  border:1px solid var(--drt-lab-case-chip-border);
  background:var(--drt-lab-case-chip);
}
.drt-arch-page--lab .drt-arch-case-cell{
  padding-inline-start:.75rem;
  border-inline-start:1px solid var(--drt-lab-case-cell-border);
}
.drt-arch-page--lab .drt-arch-case-note{
  margin:0;
  border-width:0 0 1px 0;
  border-radius:0;
  padding:.62rem 1.1rem;
  background:var(--drt-lab-case-subtle);
}
.drt-lab-case-workbench{
  display:block;
  padding:0;
  background:var(--drt-lab-case-subtle);
}
.drt-lab-case-context{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  padding:.72rem 1.1rem;
  background:var(--drt-lab-case-context);
  border-bottom:1px solid #d3eaea;
}
.drt-lab-case-context div{
  display:flex;
  gap:.55rem;
  align-items:center;
  min-width:0;
}
.drt-lab-case-context span{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.22rem .62rem;
  background:#fff;
  border:1px solid var(--drt-lab-case-chip-border);
  color:#0f766e;
  font-size:.73rem;
  font-weight:950;
}
.drt-lab-case-context strong{
  min-width:0;
  color:#133e45;
  font-size:.9rem;
  font-weight:950;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.drt-lab-case-context small{
  color:#557176;
  font-size:.76rem;
  font-weight:750;
  white-space:nowrap;
}
.drt-arch-page--lab .drt-arch-stage-table{
  border:0;
  border-radius:0;
  background:transparent;
}
.drt-arch-page--lab .drt-arch-stage-row{
  grid-template-columns:34px minmax(135px,1.15fr) minmax(110px,.85fr) repeat(4,minmax(115px,1fr));
  padding:.68rem 1.1rem;
  border-bottom:1px solid #e6f1f1;
  background:#fff;
}
.drt-arch-page--lab .drt-arch-stage-row:nth-child(even){
  background:var(--drt-lab-case-subtle);
}
.drt-arch-page--lab .drt-arch-stage-row.is-active{
  background:#f0f9ff;
  box-shadow:inset 4px 0 0 #3b82b8;
}
[dir="rtl"] .drt-arch-page--lab .drt-arch-stage-row.is-active{
  box-shadow:inset -4px 0 0 #3b82b8;
}
.drt-arch-page--lab .drt-arch-stage-row.is-done{
  background:#f2fbf7;
  box-shadow:inset 4px 0 0 #2f9e76;
}
[dir="rtl"] .drt-arch-page--lab .drt-arch-stage-row.is-done{
  box-shadow:inset -4px 0 0 #2f9e76;
}
.drt-arch-page--lab .drt-arch-stage-row.is-danger{
  background:#fff5f5;
}
.drt-arch-page--lab .drt-arch-actions{
  border:0;
  border-radius:0;
  margin:0;
  padding:.85rem 1.1rem;
  background:var(--drt-lab-case-subtle);
  border-top:1px solid #dceeee;
}
.drt-arch-page--lab .drt-arch-action-form{
  padding:.25rem 0;
}
.drt-arch-page--lab .drt-arch-details,
.drt-arch-page--lab .drt-arch-details-body{
  border:0;
  padding:0;
  background:transparent;
}

@media (max-width: 980px){
  .drt-arch-page--lab .drt-arch-case-grid{
    grid-template-columns:1fr 1fr;
  }
  .drt-arch-page--lab .drt-arch-stage-row{
    grid-template-columns:34px minmax(140px,1fr) minmax(110px,.75fr);
  }
  .drt-arch-page--lab .drt-arch-stage-row small{
    grid-column:2 / -1;
  }
  .drt-lab-case-context{
    align-items:flex-start;
    flex-direction:column;
    gap:.35rem;
  }
}
@media (max-width: 640px){
  .drt-arch-page--lab .drt-arch-case-list{ padding:.7rem; }
  .drt-arch-page--lab .drt-arch-case-grid{ grid-template-columns:1fr; }
  .drt-arch-page--lab .drt-arch-case-cell{
    padding-inline-start:0;
    border-inline-start:0;
  }
  .drt-arch-page--lab .drt-arch-stage-row{
    grid-template-columns:34px 1fr;
  }
  .drt-arch-page--lab .drt-arch-stage-row > span:nth-child(3),
  .drt-arch-page--lab .drt-arch-stage-row small{
    grid-column:2;
  }
}


/* Global panel body separation pass: keep sidebar/topbar on their own layers,
   and place the main page body on a clean independent surface. */
[data-drt-sidebar]{
  background:#edf4f6;
}
.drt-main{
  min-height:100vh;
  background:#edf4f6;
}
.drt-main-stage{
  padding:1rem;
  background:#edf4f6;
}
.drt-page-surface{
  background:#fff;
  border:1px solid #d9e7ea;
  border-radius:1.5rem;
  box-shadow:0 18px 40px rgba(15, 47, 53, .06);
  min-height:calc(100vh - 6.75rem);
}
.drt-page-shell{
  position:relative;
}
.drt-page-shell > *:last-child{ margin-bottom:0; }
.drt-topbar{
  margin:0;
}
@media (min-width: 1024px){
  .drt-main-stage{
    padding:1.1rem 1.25rem 1.35rem;
  }
  .drt-page-surface{
    border-radius:1.75rem;
  }
}
@media (max-width: 767px){
  .drt-main-stage{
    padding:.75rem;
  }
  .drt-page-surface{
    border-radius:1.1rem;
    min-height:calc(100vh - 5.75rem);
  }
}


/* Sky-blue theme refinement: replace turquoise accents with a softer clinical sky-blue palette. */
[data-drt-sidebar],
.drt-main,
.drt-main-stage{
  background:#edf4fb;
}
.drt-page-surface{
  border-color:#d6e5f5;
  box-shadow:0 18px 40px rgba(37, 99, 235, .07);
}
.drt-sidebar{
  background:linear-gradient(180deg,#eaf4ff 0%,#dceefe 100%) !important;
  border-color:#cfe0f1 !important;
}
.drt-sidebar::before{
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(219,234,254,.25)) !important;
}
.drt-sidebar .text-slate-600,
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label{
  color:#5f7894 !important;
}
.drt-sidebar .text-slate-900,
.drt-sidebar .drt-user-name{
  color:#183b63 !important;
}
.drt-sidebar .drt-accent-soft{
  background:linear-gradient(135deg,#eff6ff,#ffffff) !important;
  border-color:rgba(96,165,250,.28) !important;
}
.drt-sidebar .drt-accent-text{
  color:#3b82f6 !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  background:rgba(255,255,255,.68) !important;
  border-color:rgba(148,180,214,.32) !important;
  box-shadow:0 12px 26px rgba(59,130,246,.05) !important;
}
.drt-sidebar .drt-user-link,
.drt-sidebar form button{
  color:#456887 !important;
  border-color:rgba(148,180,214,.36) !important;
}
.drt-sidebar .drt-user-link:hover,
.drt-sidebar form button:hover{
  background:rgba(255,255,255,.92) !important;
  color:#2563eb !important;
}
.drt-sidebar .drt-nav-item{
  color:#375a79 !important;
  border-color:transparent !important;
}
.drt-sidebar .drt-nav-item svg{
  color:#5b8fc5 !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.9) !important;
  border-color:rgba(96,165,250,.22) !important;
  color:#2563eb !important;
  box-shadow:0 10px 20px rgba(96,165,250,.08) !important;
}
.drt-sidebar .drt-nav-item:hover svg{
  color:#2563eb !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,#60a5fa,#38bdf8) !important;
  border-color:rgba(255,255,255,.86) !important;
  color:#fff !important;
  box-shadow:0 14px 28px rgba(59,130,246,.18) !important;
}
.drt-sidebar .drt-nav-item.is-active::before{
  background:#dbeafe !important;
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#fff !important;
}
.drt-sidebar .drt-nav-badge{
  background:#e8f2fe !important;
  color:#2563eb !important;
  border:1px solid rgba(96,165,250,.16);
}
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{
  background:rgba(255,255,255,.22) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.28);
}
.drt-sidebar .drt-scrollbar::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#93c5fd,#7dd3fc) !important;
}
.drt-topbar{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.95)) !important;
  border-bottom-color:rgba(96,165,250,.20) !important;
  box-shadow:0 8px 24px rgba(59,130,246,.06) !important;
}
.drt-topbar::before{
  background:linear-gradient(90deg,#60a5fa,#7dd3fc,#bfdbfe) !important;
}
.drt-topbar--compact-title .drt-topbar-page-title,
.drt-page-kicker{
  color:#2563eb !important;
}
.drt-page-hero{
  border-color:rgba(96,165,250,.18) !important;
  background:
    radial-gradient(620px circle at 0 0, rgba(96,165,250,.14), transparent 52%),
    linear-gradient(135deg,#ffffff 0%,#f3f8ff 100%) !important;
  box-shadow:0 12px 32px rgba(59,130,246,.06) !important;
}
html[dir="rtl"] .drt-page-hero{
  background:
    radial-gradient(620px circle at 100% 0, rgba(96,165,250,.14), transparent 52%),
    linear-gradient(135deg,#ffffff 0%,#f3f8ff 100%) !important;
}
.drt-page-hero::before{
  background:linear-gradient(180deg,#60a5fa,#7dd3fc) !important;
}
.drt-page-hero-icon{
  background:linear-gradient(135deg,#eff6ff,#ffffff) !important;
  border-color:rgba(96,165,250,.22) !important;
  color:#2563eb !important;
}
.drt-page-hero h1,
.drt-topbar .text-slate-900{
  color:#153a66 !important;
}


/* Distinct shell layering pass: sidebar, topbar, and page body are three clearly separated surfaces. */
[data-drt-sidebar],
.drt-main{
  background:#edf4fb;
}
.drt-topbar-stage{
  padding:1rem 1rem 0;
  background:#edf4fb;
}
.drt-topbar{
  border:1px solid #d7e6f6;
  border-radius:1.25rem;
  overflow:hidden;
}
.drt-main-stage{
  padding:.9rem 1rem 1.25rem;
  background:#edf4fb;
}
.drt-page-surface{
  background:#fff;
  border:1px solid #d6e5f5;
  border-radius:1.6rem;
  box-shadow:0 16px 36px rgba(37, 99, 235, .06);
  min-height:calc(100vh - 7rem);
}
@media (min-width: 1024px){
  .drt-topbar-stage{
    padding:1.1rem 1.25rem 0;
  }
  .drt-main-stage{
    padding:.95rem 1.25rem 1.35rem;
  }
  .drt-topbar{
    border-radius:1.4rem;
  }
  .drt-page-surface{
    border-radius:1.8rem;
  }
}
@media (max-width: 767px){
  .drt-topbar-stage{
    padding:.75rem .75rem 0;
  }
  .drt-main-stage{
    padding:.72rem .75rem 1rem;
  }
  .drt-topbar{
    border-radius:1rem;
  }
  .drt-page-surface{
    border-radius:1.05rem;
    min-height:calc(100vh - 5.85rem);
  }
}


/* Strong shell separation pass: make sidebar, topbar, and page body visually distinct with different surfaces. */
[data-drt-sidebar]{
  background:#eaf1fb !important;
}
.drt-main{
  background:#f4f7fc !important;
}
.drt-topbar-stage{
  padding:1rem 1rem .6rem !important;
  background:#f4f7fc !important;
}
.drt-topbar{
  background:linear-gradient(135deg,#ffffff 0%,#eef5ff 100%) !important;
  border:1px solid #d8e4f3 !important;
  border-radius:1.35rem !important;
  box-shadow:0 10px 24px rgba(15,23,42,.06) !important;
}
.drt-main-stage{
  padding:0 1rem 1.25rem !important;
  background:#f4f7fc !important;
}
.drt-page-surface{
  background:#ffffff !important;
  border:1px solid #e2eaf5 !important;
  border-radius:1.75rem !important;
  box-shadow:0 20px 42px rgba(15,23,42,.055) !important;
  min-height:calc(100vh - 7.5rem) !important;
}
@media (min-width: 1024px){
  .drt-topbar-stage{
    padding:1.1rem 1.25rem .75rem !important;
  }
  .drt-main-stage{
    padding:0 1.25rem 1.35rem !important;
  }
  .drt-topbar{
    border-radius:1.45rem !important;
  }
  .drt-page-surface{
    border-radius:1.9rem !important;
  }
}
@media (max-width: 767px){
  .drt-topbar-stage{
    padding:.75rem .75rem .5rem !important;
  }
  .drt-main-stage{
    padding:0 .75rem 1rem !important;
  }
  .drt-topbar{
    border-radius:1rem !important;
  }
  .drt-page-surface{
    border-radius:1.1rem !important;
    min-height:calc(100vh - 6rem) !important;
  }
}


/* Clean separated shell pass:
   Real separation by layout, flat surfaces, solid gutters, and border lines.
   No shadow-heavy card treatment for sidebar/topbar/body shell. */
[data-drt-sidebar]{
  background:#eef5fc !important;
}
.drt-sidebar{
  box-shadow:none !important;
  border-color:#cfdff0 !important;
}
html[dir="rtl"] .drt-sidebar{
  box-shadow:none !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section,
.drt-sidebar .drt-nav-item:hover,
.drt-sidebar .drt-nav-item.is-active{
  box-shadow:none !important;
}

.drt-main{
  min-height:100vh !important;
  background:#f6f8fb !important;
}

.drt-topbar-stage{
  padding:0 !important;
  background:#eaf2fb !important;
  border-bottom:1px solid #d7e3f0 !important;
}

.drt-topbar{
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#eaf2fb !important;
  overflow:visible !important;
}
.drt-topbar::before{
  display:none !important;
}
.drt-topbar > div{
  min-height:4.25rem;
}

.drt-main-stage{
  padding:1.25rem !important;
  background:#f6f8fb !important;
}

.drt-page-surface{
  background:#fff !important;
  border:1px solid #dfe8f2 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:calc(100vh - 6.75rem) !important;
}

/* Keep page header readable but remove the extra elevated-card feeling from the shell. */
.drt-page-hero{
  box-shadow:none !important;
}

/* Mobile keeps the same separation without rounded/shadow card shell. */
@media (max-width: 767px){
  .drt-topbar-stage{
    padding:0 !important;
  }
  .drt-topbar{
    border-radius:0 !important;
  }
  .drt-main-stage{
    padding:.75rem !important;
  }
  .drt-page-surface{
    border-radius:0 !important;
    min-height:calc(100vh - 5.75rem) !important;
  }
}

@media (min-width: 1024px){
  .drt-main-stage{
    padding:1.35rem !important;
  }
  .drt-page-surface{
    border-radius:0 !important;
  }
}


/* Distinct header vs sidebar colors pass:
   sidebar and topbar get clearly different surfaces while body stays neutral. */
[data-drt-sidebar]{
  background:#dcecff !important;
}
.drt-sidebar{
  background:linear-gradient(180deg,#dcecff 0%,#cfe5ff 100%) !important;
  border-color:#bdd6f5 !important;
}
.drt-sidebar::before{
  background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.08)) !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  background:rgba(255,255,255,.5) !important;
  border-color:rgba(120,160,210,.28) !important;
}
.drt-sidebar .text-slate-900,
.drt-sidebar .drt-user-name{
  color:#153a66 !important;
}
.drt-sidebar .text-slate-600,
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label,
.drt-sidebar .drt-nav-item{
  color:#44627f !important;
}
.drt-sidebar .drt-nav-item svg{
  color:#5e86b4 !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.82) !important;
  border-color:rgba(120,160,210,.25) !important;
  color:#1d4f82 !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:#5ba2e8 !important;
  border-color:#4d94dc !important;
  color:#fff !important;
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#fff !important;
}
.drt-sidebar .drt-nav-badge{
  background:#edf5ff !important;
  color:#245b94 !important;
  border-color:#c7dcf7 !important;
}
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{
  background:rgba(255,255,255,.24) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.28) !important;
}

.drt-topbar-stage{
  background:#f5f7fa !important;
  border-bottom:1px solid #dde5ee !important;
}
.drt-topbar{
  background:#f5f7fa !important;
}
.drt-topbar .drt-topbar-page-title,
.drt-topbar .text-slate-900{
  color:#213547 !important;
}
.drt-topbar .text-slate-500{
  color:#6c7c8c !important;
}
.drt-topbar .drt-topbar-pill{
  background:#ffffff !important;
  border-color:#d8e1ea !important;
  color:#365068 !important;
}
.drt-topbar .drt-topbar-pill:hover{
  background:#eef2f6 !important;
  color:#213547 !important;
}
.drt-topbar .drt-accent-soft{
  background:#ffffff !important;
  border-color:#d8e1ea !important;
}
.drt-topbar .drt-accent-text,
.drt-topbar--compact-title .drt-topbar-page-title{
  color:#4b6b88 !important;
}


/* Final shell distinction pass: sidebar and topbar must look unquestionably separate. */
[data-drt-sidebar]{
  background:#cfe4ff !important;
}
.drt-sidebar{
  background:#cfe4ff !important;
  border-color:#b5cff1 !important;
}
.drt-sidebar::before{
  display:none !important;
}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  background:rgba(255,255,255,.44) !important;
  border-color:rgba(112,149,197,.32) !important;
}
.drt-sidebar .drt-user-name,
.drt-sidebar .text-slate-900{
  color:#12385e !important;
}
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label,
.drt-sidebar .drt-nav-item,
.drt-sidebar .text-slate-600{
  color:#3f5f80 !important;
}
.drt-sidebar .drt-nav-item svg{
  color:#5b80a8 !important;
}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.78) !important;
  color:#184a7a !important;
  border-color:rgba(112,149,197,.28) !important;
}
.drt-sidebar .drt-nav-item.is-active{
  background:#4d8fda !important;
  border-color:#407ec6 !important;
  color:#fff !important;
}
.drt-sidebar .drt-nav-item.is-active svg{
  color:#fff !important;
}
.drt-sidebar .drt-nav-badge{
  background:#e8f1fc !important;
  color:#215387 !important;
  border-color:#bdd3ee !important;
}
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{
  background:rgba(255,255,255,.22) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.3) !important;
}

.drt-main{
  background:#f6f8fb !important;
}
.drt-topbar-stage{
  background:#f2f4f7 !important;
  border-bottom:1px solid #d8dee6 !important;
}
.drt-topbar{
  background:#f2f4f7 !important;
}
.drt-topbar .drt-topbar-page-title,
.drt-topbar .text-slate-900{
  color:#273548 !important;
}
.drt-topbar .text-slate-500{
  color:#6f7d8d !important;
}
.drt-topbar .drt-topbar-pill{
  background:#ffffff !important;
  border-color:#d7dee6 !important;
  color:#44566a !important;
}
.drt-topbar .drt-topbar-pill:hover{
  background:#eceff3 !important;
  color:#273548 !important;
}
.drt-topbar .drt-accent-soft{
  background:#ffffff !important;
  border-color:#d7dee6 !important;
}
.drt-topbar .drt-accent-text,
.drt-topbar--compact-title .drt-topbar-page-title,
.drt-page-kicker{
  color:#5d7288 !important;
}

.drt-page-surface{
  border-color:#dfe6ef !important;
}


/* ------------------------------------------------------------------
   Global Lab-style UI system pass
   Goal: extend the clearer Lab case-block language to the whole panel:
   - flatter surfaces
   - clear section headers
   - row/block based content
   - soft alternating tones
   - minimal shadows
   - consistent sky-blue clinical palette
------------------------------------------------------------------- */
.drt-page-surface{
  --drt-ui-ink:#213547;
  --drt-ui-muted:#687b8f;
  --drt-ui-border:#dfe8f2;
  --drt-ui-border-strong:#cfddec;
  --drt-ui-soft:#f7faff;
  --drt-ui-soft-2:#f4f8fd;
  --drt-ui-blue:#4d8fda;
  --drt-ui-blue-soft:#eaf4ff;
  --drt-ui-green-soft:#edf9f3;
  --drt-ui-violet-soft:#f6f0fb;
  --drt-ui-amber-soft:#fff8e8;
}

/* Reset heavy elevated cards inside the page body. */
.drt-page-surface :where(
  .card,
  .drt-section-card,
  .drt-booking-panel,
  .drt-choice-card,
  .drt-patient-hero,
  .drt-patient-kpi,
  .drt-patient-summary,
  .drt-plan-card,
  .drt-billing-card,
  .drt-billing-summary-card,
  .drt-billing-action-panel,
  .drt-billing-payment-panel,
  .drt-cheque-list-panel,
  .drt-cheque-card,
  .drt-fin-hero,
  .drt-fin-filter-card,
  .drt-fin-panel,
  .drt-fin-status-card,
  .drt-ct-hero,
  .drt-ct-panel,
  .drt-ct-kpi,
  .drt-ct-focus-card,
  .drt-ct-units-panel,
  .drt-ct-unit,
  .drt-ct-appt,
  .drt-scheduler-hero,
  .drt-scheduler-control-card,
  .drt-scheduler-board-shell,
  .drt-scheduler-panel,
  .drt-scheduler-item-card,
  .drt-scheduler-selected-patient-card,
  .drt-scheduler-review-panel,
  .drt-scheduler-subsection,
  .drt-slot-panel,
  .drt-slot-card,
  .drt-plist-hero,
  .drt-plist-search-box,
  .drt-plist-card,
  .drt-plist-kpi,
  .drt-account-hero,
  .drt-account-card,
  .drt-notify-hero,
  .drt-notify-card,
  .drt-notify-panel,
  .drt-lab-brief,
  .drt-lab-filter-card,
  .drt-lab-table-card,
  .drt-lab-delay-card,
  .drt-lab-side-panel,
  .drt-lab-settings-card,
  .drt-lab-switch-card
){
  box-shadow:none !important;
  border-color:var(--drt-ui-border) !important;
}

/* Shared flat section surface. */
.drt-page-surface :where(
  .card,
  .drt-section-card,
  .drt-booking-panel,
  .drt-fin-panel,
  .drt-ct-panel,
  .drt-scheduler-panel,
  .drt-slot-panel,
  .drt-lab-table-card,
  .drt-lab-filter-card,
  .drt-account-card,
  .drt-billing-section
){
  background:#fff !important;
  border:1px solid var(--drt-ui-border) !important;
  border-radius:1rem !important;
}

/* Hero/title blocks use a calm flat band, closer to the Lab worklist language. */
.drt-page-surface :where(
  .drt-page-hero,
  .drt-patient-hero,
  .drt-fin-hero,
  .drt-ct-hero,
  .drt-scheduler-hero,
  .drt-plist-hero,
  .drt-account-hero,
  .drt-lab-brief
){
  background:linear-gradient(90deg,#ffffff 0%,#f3f8ff 100%) !important;
  border:1px solid var(--drt-ui-border-strong) !important;
  border-inline-start:6px solid var(--drt-ui-blue) !important;
  border-radius:1rem !important;
  box-shadow:none !important;
}

/* RTL keeps the accent on the reading start edge. */
html[dir="rtl"] .drt-page-surface :where(
  .drt-page-hero,
  .drt-patient-hero,
  .drt-fin-hero,
  .drt-ct-hero,
  .drt-scheduler-hero,
  .drt-plist-hero,
  .drt-account-hero,
  .drt-lab-brief
){
  border-inline-start:6px solid var(--drt-ui-blue) !important;
}

/* Icon blocks become simple, not floating. */
.drt-page-surface :where(
  .drt-page-hero-icon,
  .drt-ct-hero-icon,
  .drt-plist-hero-icon,
  .drt-scheduler-icon,
  .drt-account-card-icon,
  .drt-section-dot,
  .drt-section-icon,
  .drt-toolbar-icon,
  .drt-ct-toolbar-icon
){
  box-shadow:none !important;
  background:#fff !important;
  border:1px solid var(--drt-ui-border) !important;
  color:var(--drt-ui-blue) !important;
}

/* Kpis/stat blocks use the same connected strip feeling as Lab metrics. */
.drt-page-surface :where(
  .drt-patient-kpis,
  .drt-plist-kpis,
  .drt-plist-metrics,
  .drt-ct-kpis,
  .drt-scheduler-stats,
  .drt-lab-kpis,
  .drt-billing-summary-grid,
  .drt-fin-status-list,
  .drt-arch-band
){
  gap:.65rem !important;
}

.drt-page-surface :where(
  .drt-patient-kpi,
  .drt-plist-kpi,
  .drt-ct-kpi,
  .drt-scheduler-stat,
  .drt-lab-kpi,
  .drt-billing-summary-card,
  .drt-fin-status-card,
  .drt-arch-stat
){
  background:#fff !important;
  border:1px solid var(--drt-ui-border) !important;
  border-radius:.9rem !important;
  box-shadow:none !important;
}

/* Work rows / list items use soft case-block tones. */
.drt-page-surface :where(
  .drt-plist-card,
  .drt-ct-appt,
  .drt-cheque-card,
  .drt-document-item,
  .drt-plan-docs__item,
  .drt-scheduler-item-card,
  .drt-scheduler-mode-tile,
  .drt-slot-card,
  .drt-lab-delay-card,
  .drt-account-access-list,
  .drt-access-item,
  .drt-billing-invoice,
  .drt-compact-item
){
  border:1px solid var(--drt-ui-border) !important;
  border-inline-start:5px solid var(--drt-ui-blue) !important;
  border-radius:.95rem !important;
  box-shadow:none !important;
  background:#fff !important;
}

/* Alternating row families, inspired by Lab case tones. */
.drt-page-surface :where(
  .drt-plist-list,
  .drt-ct-appt-list,
  .drt-cheque-list,
  .drt-documents-list,
  .drt-plan-docs__list,
  .drt-scheduler-items-list,
  .drt-slot-grid,
  .drt-lab-delay-list,
  .drt-billing-invoice-list
) > :nth-child(4n+1){
  background:#ffffff !important;
}
.drt-page-surface :where(
  .drt-plist-list,
  .drt-ct-appt-list,
  .drt-cheque-list,
  .drt-documents-list,
  .drt-plan-docs__list,
  .drt-scheduler-items-list,
  .drt-slot-grid,
  .drt-lab-delay-list,
  .drt-billing-invoice-list
) > :nth-child(4n+2){
  background:var(--drt-ui-blue-soft) !important;
}
.drt-page-surface :where(
  .drt-plist-list,
  .drt-ct-appt-list,
  .drt-cheque-list,
  .drt-documents-list,
  .drt-plan-docs__list,
  .drt-scheduler-items-list,
  .drt-slot-grid,
  .drt-lab-delay-list,
  .drt-billing-invoice-list
) > :nth-child(4n+3){
  background:var(--drt-ui-green-soft) !important;
}
.drt-page-surface :where(
  .drt-plist-list,
  .drt-ct-appt-list,
  .drt-cheque-list,
  .drt-documents-list,
  .drt-plan-docs__list,
  .drt-scheduler-items-list,
  .drt-slot-grid,
  .drt-lab-delay-list,
  .drt-billing-invoice-list
) > :nth-child(4n+4){
  background:var(--drt-ui-violet-soft) !important;
}

/* Tables become flat row-based sections. */
.drt-page-surface :where(
  .table,
  .drt-fin-table,
  .drt-lab-table,
  .drt-scheduler-table,
  .drt-report-table,
  .drt-arch-table,
  .drt-arch-list-table
){
  border:1px solid var(--drt-ui-border) !important;
  border-radius:.95rem !important;
  box-shadow:none !important;
  background:#fff !important;
}

.drt-page-surface :where(
  .table,
  .drt-fin-table,
  .drt-lab-table,
  .drt-scheduler-table,
  .drt-report-table,
  .drt-arch-table,
  .drt-arch-list-table
) thead th{
  background:#eef5fc !important;
  color:#334e68 !important;
  border-bottom:1px solid var(--drt-ui-border-strong) !important;
}

.drt-page-surface :where(
  .table,
  .drt-fin-table,
  .drt-lab-table,
  .drt-scheduler-table,
  .drt-report-table,
  .drt-arch-table,
  .drt-arch-list-table
) tbody tr:nth-child(even) td{
  background:#f7faff !important;
}

.drt-page-surface :where(
  .table,
  .drt-fin-table,
  .drt-lab-table,
  .drt-scheduler-table,
  .drt-report-table,
  .drt-arch-table,
  .drt-arch-list-table
) tbody tr:hover td{
  background:#eef5fc !important;
}

/* Section headings become simpler and more consistent. */
.drt-page-surface :where(
  .drt-section-head,
  .drt-fin-section-head,
  .drt-ct-section-head,
  .drt-scheduler-subsection-head,
  .drt-lab-panel-head,
  .drt-arch-section-head
){
  border-bottom:1px solid var(--drt-ui-border) !important;
  padding-bottom:.7rem !important;
  margin-bottom:.85rem !important;
}

.drt-page-surface :where(
  .drt-section-head h3,
  .drt-fin-section-title,
  .drt-ct-section-head h3,
  .drt-scheduler-subsection-head h3,
  .drt-lab-panel-title,
  .drt-arch-section-head h3
){
  color:var(--drt-ui-ink) !important;
}

/* Forms / filters use connected rows instead of floating cards. */
.drt-page-surface :where(
  .drt-fin-filter-card,
  .drt-lab-filter-card,
  .drt-cheque-list-panel,
  .drt-scheduler-control-card,
  .drt-plist-search-box,
  .drt-booking-panel
){
  background:#fff !important;
  border:1px solid var(--drt-ui-border) !important;
  border-radius:1rem !important;
  box-shadow:none !important;
}

/* Inputs match the flat system. */
.drt-page-surface :where(.input,.select,textarea){
  border-color:#d8e3ef !important;
  background:#fff !important;
}
.drt-page-surface :where(.input,.select,textarea):focus{
  border-color:#8db8e8 !important;
  box-shadow:0 0 0 3px rgba(77,143,218,.10) !important;
}

/* Keep modals readable but less heavy. */
.drt-page-surface :where(
  .drt-scheduler-modal-card,
  .drt-ct-modal-card
){
  box-shadow:none !important;
  border:1px solid var(--drt-ui-border-strong) !important;
  border-radius:1rem !important;
}

/* Page body itself stays clean and separated from shell. */
.drt-page-surface{
  box-shadow:none !important;
  border-color:#dfe6ef !important;
}


/* Audit page: tabs, filters, pagination and row-based history layout. */
.drt-arch-page--audit{
  display:grid;
  gap:1rem;
}
.drt-arch-hero--audit{
  background:linear-gradient(90deg,#fff,#f3f8ff) !important;
}
.drt-arch-band--audit{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.drt-audit-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}
.drt-audit-tab{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  min-height:2.45rem;
  border:1px solid #dfe8f2;
  border-radius:.85rem;
  background:#fff;
  padding:.45rem .75rem;
  color:#365068;
  text-decoration:none;
  font-size:.82rem;
  font-weight:900;
}
.drt-audit-tab:hover{
  background:#f3f8ff;
  border-color:#cbdff4;
  color:#245b94;
}
.drt-audit-tab.is-active{
  background:#cfe4ff;
  border-color:#9fc3ed;
  color:#12385e;
}
.drt-audit-tab strong{
  display:inline-flex;
  min-width:1.55rem;
  height:1.55rem;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:inherit;
  font-size:.74rem;
}
.drt-audit-filter-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:.75rem;
  align-items:end;
}
.drt-audit-field--search{
  grid-column:span 2;
}
.drt-audit-list{
  display:flex;
  flex-direction:column;
  gap:.8rem;
}
.drt-audit-event{
  border:1px solid #dfe8f2;
  border-inline-start:5px solid #4d8fda;
  border-radius:1rem;
  background:#fff;
  overflow:hidden;
}
.drt-audit-event:nth-child(4n+2){ background:#eaf4ff; }
.drt-audit-event:nth-child(4n+3){ background:#edf9f3; }
.drt-audit-event:nth-child(4n+4){ background:#f6f0fb; }
.drt-audit-event-main{
  padding:.9rem 1rem;
}
.drt-audit-event-top{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.45rem;
}
.drt-audit-id{
  display:inline-flex;
  align-items:center;
  min-height:1.45rem;
  border-radius:999px;
  border:1px solid #c7dcf7;
  background:#fff;
  color:#245b94;
  padding:.1rem .5rem;
  font-size:.72rem;
  font-weight:950;
}
.drt-audit-message{
  margin-top:.55rem;
  color:#213547;
  font-size:.92rem;
  font-weight:950;
  line-height:1.55;
}
.drt-audit-meta-line{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .9rem;
  margin-top:.35rem;
  color:#687b8f;
  font-size:.76rem;
  font-weight:800;
}
.drt-audit-details{
  border-top:1px solid rgba(215,226,238,.9);
  background:rgba(255,255,255,.5);
  padding:.65rem 1rem;
}
.drt-audit-details summary{
  cursor:pointer;
  color:#4b647c;
  font-size:.78rem;
  font-weight:900;
}
.drt-audit-details pre{
  margin:.55rem 0 0;
  max-height:18rem;
  overflow:auto;
  white-space:pre-wrap;
  color:#4b647c;
  font-size:.74rem;
  line-height:1.65;
}
.drt-audit-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-top:1rem;
  border-top:1px solid #dfe8f2;
  padding-top:.9rem;
}
.drt-audit-page-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.35rem;
}
.drt-audit-page,
.drt-audit-page-gap{
  display:inline-flex;
  min-width:2rem;
  height:2rem;
  align-items:center;
  justify-content:center;
  border:1px solid #dfe8f2;
  border-radius:.7rem;
  background:#fff;
  color:#365068;
  font-size:.8rem;
  font-weight:900;
  text-decoration:none;
}
.drt-audit-page:hover{
  background:#f3f8ff;
  border-color:#cbdff4;
}
.drt-audit-page.is-active{
  background:#4d8fda;
  border-color:#407ec6;
  color:#fff;
}
.drt-audit-page-gap{
  border-color:transparent;
  background:transparent;
}
.drt-audit-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
}
.btn.is-disabled{
  opacity:.45;
  cursor:not-allowed;
  pointer-events:none;
}
@media (max-width: 1180px){
  .drt-audit-filter-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .drt-audit-field--search{
    grid-column:span 3;
  }
  .drt-arch-band--audit{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 720px){
  .drt-audit-filter-grid,
  .drt-audit-summary-grid,
  .drt-arch-band--audit{
    grid-template-columns:1fr;
  }
  .drt-audit-field--search{
    grid-column:span 1;
  }
  .drt-audit-pagination{
    align-items:stretch;
    flex-direction:column;
  }
}


/* Clinic Today layout fix: remove the old two-column page that created an empty-looking side area.
   Side information now sits above the full-width queue, so the appointment list uses the page width. */
.drt-ct-page{
  width:100%;
  max-width:none !important;
}
.drt-ct-layout{
  display:block !important;
}
.drt-ct-main-col,
.drt-ct-side-col{
  display:block !important;
  min-width:0;
}
.drt-ct-side-col{
  position:static !important;
}
.drt-ct-overview-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(18rem,.75fr);
  gap:1rem;
  align-items:start;
}
.drt-ct-overview-grid .drt-ct-units-panel{
  align-self:stretch;
}
.drt-ct-flow-panel{
  margin-top:0;
}
.drt-ct-guide--inline ul{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.65rem;
}
.drt-ct-guide--inline li{
  min-height:100%;
}
@media (max-width: 1180px){
  .drt-ct-overview-grid{
    grid-template-columns:1fr;
  }
  .drt-ct-guide--inline ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 640px){
  .drt-ct-guide--inline ul{
    grid-template-columns:1fr;
  }
}


/* Lab manager quality score refinement:
   Score is separated from stage completion and shown as a completed-stage review row. */
.drt-arch-page--lab .drt-lab-stage-score{
  color:#245b94;
  font-weight:900;
}
.drt-arch-page--lab .drt-lab-stage-score strong{
  display:inline-flex;
  align-items:center;
  min-height:1.35rem;
  border:1px solid #bdd3ee;
  border-radius:999px;
  background:#fff;
  color:#174a7d;
  padding:.05rem .45rem;
  font-size:.74rem;
}
.drt-arch-page--lab .drt-lab-stage-score-notes{
  grid-column:2 / -1;
  color:#5e7187;
}
.drt-arch-page--lab .drt-lab-rating-form{
  grid-column:2 / -1;
  display:grid;
  grid-template-columns:minmax(130px,.7fr) minmax(115px,.65fr) minmax(170px,1fr) auto;
  align-items:end;
  gap:.5rem;
  margin-top:.25rem;
  padding:.65rem;
  border:1px solid #dbe7f4;
  border-radius:.85rem;
  background:rgba(255,255,255,.72);
}
.drt-arch-page--lab .drt-lab-rating-form .label{
  margin:0;
}
.drt-arch-page--lab .drt-lab-complete-note{
  color:#5f7184;
  font-size:.75rem;
  font-weight:800;
  line-height:1.55;
}
@media (max-width: 860px){
  .drt-arch-page--lab .drt-lab-rating-form{
    grid-template-columns:1fr;
  }
}
@media (max-width: 640px){
  .drt-arch-page--lab .drt-lab-stage-score-notes,
  .drt-arch-page--lab .drt-lab-rating-form{
    grid-column:1 / -1;
  }
}

/* Manager performance dashboard */
.drt-performance-hero{ border-inline-start-color:#7c3aed; background:linear-gradient(135deg,#faf5ff 0%,#ffffff 58%,#f0fdfa 100%); }
.drt-performance-filter-grid{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.drt-performance-kpis{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.drt-performance-table td small{ display:block; margin-top:.18rem; color:#64748b; font-size:.72rem; }
.drt-performance-table .badge{ margin:.08rem .08rem; }
.drt-performance-section .drt-arch-two-pane{ align-items:start; }
@media (max-width:1180px){
  .drt-performance-filter-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .drt-performance-kpis{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px){
  .drt-performance-filter-grid,
  .drt-performance-kpis{ grid-template-columns:1fr; }
}

/* ------------------------------------------------------------------
   Patient portal refresh: modern patient profile, dashboard, and lab timeline
   Scope only patient_portal templates; no business-flow dependency.
------------------------------------------------------------------ */
.drt-portal-body{
  min-height:100vh;
  color:#0f172a;
  background:
    radial-gradient(900px circle at 10% -10%, rgba(20,184,166,.16), transparent 45%),
    radial-gradient(760px circle at 92% 8%, rgba(59,130,246,.11), transparent 42%),
    linear-gradient(180deg,#f8fbff 0%,#f6faf9 52%,#f8fafc 100%);
}
html[dir="rtl"] .drt-portal-body{
  background:
    radial-gradient(900px circle at 90% -10%, rgba(20,184,166,.16), transparent 45%),
    radial-gradient(760px circle at 8% 8%, rgba(59,130,246,.11), transparent 42%),
    linear-gradient(180deg,#f8fbff 0%,#f6faf9 52%,#f8fafc 100%);
}
.drt-portal-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid rgba(203,213,225,.68);
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.drt-portal-topbar{
  width:min(1180px, calc(100% - 2rem));
  margin-inline:auto;
  min-height:4.15rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.drt-portal-brand{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  color:#0f172a;
  text-decoration:none;
  font-size:1.05rem;
  font-weight:950;
  letter-spacing:-.02em;
}
.drt-portal-brand strong{ color:#0f766e; }
.drt-portal-brand-mark{
  width:2.2rem;
  height:2.2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.9rem;
  color:#fff;
  background:linear-gradient(135deg,#0f766e,#38bdf8);
  box-shadow:0 14px 28px rgba(13,148,136,.22);
  font-weight:950;
  line-height:1;
}
.drt-portal-top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:.55rem;
  min-width:0;
}
.drt-portal-home-link,
.drt-portal-logout,
.drt-portal-patient-pill{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  min-height:2.45rem;
  border:1px solid rgba(226,232,240,.92);
  border-radius:999px;
  background:rgba(255,255,255,.76);
  color:#475569;
  padding:.45rem .75rem;
  font-size:.78rem;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 1px 0 rgba(15,23,42,.025);
}
.drt-portal-home-link:hover,
.drt-portal-logout:hover{ border-color:rgba(20,184,166,.32); color:#0f766e; background:#fff; }
.drt-portal-logout{ color:#be123c; }
.drt-portal-logout:hover{ border-color:#fecdd3; color:#be123c; background:#fff1f2; }
.drt-portal-mini-avatar{
  width:1.7rem;
  height:1.7rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ccfbf1;
  color:#0f766e;
  font-weight:950;
  text-transform:uppercase;
}
.drt-portal-patient-pill-text{ display:grid; gap:.02rem; min-width:0; }
.drt-portal-patient-pill-text strong,
.drt-portal-patient-pill-text small{
  max-width:14rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.drt-portal-patient-pill-text strong{ color:#0f172a; font-size:.78rem; line-height:1.05rem; }
.drt-portal-patient-pill-text small{ color:#64748b; font-size:.68rem; line-height:.9rem; }
.drt-portal-nav{
  width:min(1180px, calc(100% - 2rem));
  margin-inline:auto;
  padding:0 0 .8rem;
  display:flex;
  align-items:center;
  gap:.42rem;
  overflow-x:auto;
  scrollbar-width:thin;
}
.drt-portal-nav-item{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  min-height:2.35rem;
  border:1px solid transparent;
  border-radius:999px;
  padding:.46rem .78rem;
  color:#475569;
  background:transparent;
  text-decoration:none;
  font-size:.8rem;
  line-height:1rem;
  font-weight:900;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
.drt-portal-nav-item svg{ color:#94a3b8; }
.drt-portal-nav-item:hover{
  transform:translateY(-1px);
  border-color:rgba(226,232,240,.95);
  background:#fff;
  color:#0f172a;
}
.drt-portal-nav-item.is-active{
  border-color:rgba(20,184,166,.25);
  background:linear-gradient(135deg,#fff,#ecfdf5);
  color:#0f766e;
  box-shadow:0 10px 24px rgba(13,148,136,.09);
}
.drt-portal-nav-item.is-active svg{ color:#0f766e; }
.drt-portal-nav-book{
  border-color:rgba(59,130,246,.16);
  background:#eff6ff;
  color:#1d4ed8;
}
.drt-portal-main{
  width:min(1180px, calc(100% - 2rem));
  margin-inline:auto;
  padding:1.25rem 0 2.5rem;
}
.drt-portal-messages{ display:grid; gap:.65rem; margin-bottom:1rem; }

.drt-portal-kicker{
  color:#0f766e;
  font-size:.78rem;
  line-height:1.1rem;
  font-weight:950;
}
.drt-portal-dashboard-hero,
.drt-portal-profile-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  border:1px solid rgb(204 251 241);
  border-radius:1.45rem;
  padding:1.1rem;
  background:
    radial-gradient(540px circle at 0% 0%, rgba(45,212,191,.24), transparent 55%),
    radial-gradient(520px circle at 100% 20%, rgba(191,219,254,.48), transparent 55%),
    linear-gradient(135deg,rgba(255,255,255,.97),rgba(248,250,252,.94));
  box-shadow:0 24px 60px rgba(15,23,42,.07);
}
html[dir="rtl"] .drt-portal-dashboard-hero,
html[dir="rtl"] .drt-portal-profile-hero{
  background:
    radial-gradient(540px circle at 100% 0%, rgba(45,212,191,.24), transparent 55%),
    radial-gradient(520px circle at 0% 20%, rgba(191,219,254,.48), transparent 55%),
    linear-gradient(225deg,rgba(255,255,255,.97),rgba(248,250,252,.94));
}
.drt-portal-dashboard-copy,
.drt-portal-profile-hero-main{ min-width:0; flex:1 1 auto; }
.drt-portal-dashboard-hero h1,
.drt-portal-profile-hero h1{
  margin:.12rem 0 0;
  color:#0f172a;
  font-size:clamp(1.25rem, 2.2vw, 1.9rem);
  line-height:1.45;
  font-weight:950;
  letter-spacing:-.02em;
}
.drt-portal-dashboard-hero p,
.drt-portal-profile-hero p{
  margin:.2rem 0 0;
  color:#64748b;
  font-size:.9rem;
  line-height:1.85;
}
.drt-portal-hero-meta{
  margin-top:.8rem;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.drt-portal-hero-meta span{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(20,184,166,.16);
  background:rgba(255,255,255,.76);
  color:#334155;
  border-radius:999px;
  padding:.35rem .65rem;
  font-size:.74rem;
  font-weight:900;
}
.drt-portal-dashboard-actions,
.drt-portal-profile-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.5rem;
  flex:0 0 auto;
}
html[dir="rtl"] .drt-portal-dashboard-actions,
html[dir="rtl"] .drt-portal-profile-actions{ justify-content:flex-start; }
.drt-portal-profile-avatar{
  width:4rem;
  height:4rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:1.35rem;
  background:linear-gradient(135deg,#0f766e,#38bdf8);
  color:#fff;
  font-size:1.55rem;
  font-weight:950;
  text-transform:uppercase;
  box-shadow:0 16px 34px rgba(13,148,136,.22);
}

.drt-portal-alert-panel{
  margin-top:1rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border:1px solid rgb(226 232 240);
  border-radius:1.1rem;
  background:rgba(255,255,255,.88);
  color:#334155;
  padding:.9rem 1rem;
  box-shadow:0 10px 26px rgba(15,23,42,.045);
  font-size:.9rem;
  line-height:1.65;
}
.drt-portal-alert-panel.is-danger{ border-color:#fecdd3; background:#fff1f2; color:#be123c; }
.drt-portal-alert-panel.is-info{ border-color:#bfdbfe; background:#eff6ff; color:#1e40af; }

.drt-portal-summary-grid{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.drt-portal-summary-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.8rem;
  border:1px solid rgb(226 232 240);
  border-radius:1.25rem;
  background:#fff;
  padding:1rem;
  box-shadow:0 16px 38px rgba(15,23,42,.055);
}
.drt-portal-summary-card::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:5px;
  background:#14b8a6;
}
.drt-portal-summary-card.is-billing::before{ background:#22c55e; }
.drt-portal-summary-card.is-appointment{ background:linear-gradient(180deg,#fff,#f0f9ff); border-color:#bae6fd; }
.drt-portal-summary-card.is-billing{ background:linear-gradient(180deg,#fff,#f0fdf4); border-color:#bbf7d0; }
.drt-portal-summary-icon{
  width:2.75rem;
  height:2.75rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:1rem;
  background:#fff;
  color:#0f766e;
  border:1px solid rgba(20,184,166,.18);
}
.drt-portal-summary-card.is-billing .drt-portal-summary-icon{ color:#16a34a; border-color:#bbf7d0; }
.drt-portal-summary-content{ display:grid; gap:.15rem; min-width:0; }
.drt-portal-summary-content span,
.drt-portal-money-card span{ color:#64748b; font-size:.76rem; font-weight:900; }
.drt-portal-summary-content strong{
  color:#0f172a;
  font-size:1rem;
  line-height:1.35rem;
  font-weight:950;
  overflow-wrap:anywhere;
}
.drt-portal-summary-content small{ color:#64748b; font-size:.78rem; line-height:1.25rem; }
.drt-portal-summary-card > a{
  align-self:end;
  color:#0f766e;
  font-size:.76rem;
  font-weight:950;
  text-decoration:none;
  white-space:nowrap;
}
.drt-portal-summary-card > a:hover{ text-decoration:underline; }
.drt-portal-money-grid{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
}
.drt-portal-money-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgb(226 232 240);
  border-radius:1rem;
  background:rgba(255,255,255,.86);
  padding:.8rem .9rem;
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.drt-portal-money-card::before{ content:""; position:absolute; inset-inline-start:0; top:.75rem; bottom:.75rem; width:4px; border-radius:999px; background:#cbd5e1; }
.drt-portal-money-card.is-debt::before{ background:#f43f5e; }
.drt-portal-money-card strong{ display:block; margin-top:.16rem; color:#0f172a; font-size:1rem; line-height:1.35rem; font-weight:950; overflow-wrap:anywhere; }
.drt-portal-money-card small{ color:#94a3b8; font-size:.68rem; font-weight:900; }
.drt-portal-money-card.is-debt{ background:#fff1f2; border-color:#fecdd3; }
.drt-portal-money-card.is-debt strong,
.drt-portal-money-card.is-debt span{ color:#be123c; }

.drt-portal-panel-card{
  border:1px solid rgba(226,232,240,.92);
  border-radius:1.25rem;
  background:rgba(255,255,255,.93);
  padding:1rem;
  box-shadow:0 16px 40px rgba(15,23,42,.055);
}
.drt-portal-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
}
.drt-portal-panel-head.compact{ border-bottom:1px solid #f1f5f9; padding-bottom:.85rem; }
.drt-portal-panel-titleline{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  min-width:0;
}
.drt-portal-panel-icon{
  width:2.55rem;
  height:2.55rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:1rem;
  border:1px solid rgba(20,184,166,.18);
  background:#ecfdf5;
  color:#0f766e;
}
.drt-portal-panel-icon.secure{ background:#eff6ff; color:#1d4ed8; border-color:#bfdbfe; }
.drt-portal-panel-icon.lab{ background:#ecfeff; color:#0891b2; border-color:#a5f3fc; }
.drt-portal-panel-head h2{
  margin:0;
  color:#0f172a;
  font-size:1rem;
  line-height:1.4rem;
  font-weight:950;
}
.drt-portal-panel-head p{
  margin:.18rem 0 0;
  color:#64748b;
  font-size:.82rem;
  line-height:1.45rem;
}
.drt-portal-panel-actions{ display:flex; flex-wrap:wrap; gap:.45rem; justify-content:flex-end; }

.drt-portal-filter-form{
  margin-top:1rem;
  display:grid;
  grid-template-columns:minmax(13rem,1.15fr) minmax(10rem,.75fr) minmax(17rem,1fr) auto;
  gap:.75rem;
  align-items:end;
}
.drt-portal-date-pair{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
.drt-portal-filter-actions{ display:flex; gap:.45rem; align-items:center; }

.drt-portal-timeline-list{ display:grid; gap:.65rem; }
.drt-portal-timeline-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:flex-start;
  gap:.75rem;
  border:1px solid #e2e8f0;
  border-radius:1rem;
  background:#fff;
  padding:.85rem;
  box-shadow:0 1px 0 rgba(15,23,42,.025);
}
.drt-portal-timeline-row:hover{ border-color:rgba(20,184,166,.22); box-shadow:0 12px 28px rgba(15,23,42,.055); }
.drt-portal-timeline-marker{
  margin-top:.35rem;
  width:.75rem;
  height:.75rem;
  border-radius:999px;
  background:#94a3b8;
  box-shadow:0 0 0 5px #f1f5f9;
}
.drt-portal-timeline-marker.is-appointment{ background:#0ea5e9; box-shadow:0 0 0 5px #e0f2fe; }
.drt-portal-timeline-marker.is-plan{ background:#8b5cf6; box-shadow:0 0 0 5px #ede9fe; }
.drt-portal-timeline-marker.is-invoice{ background:#f59e0b; box-shadow:0 0 0 5px #fef3c7; }
.drt-portal-timeline-marker.is-payment{ background:#22c55e; box-shadow:0 0 0 5px #dcfce7; }
.drt-portal-timeline-title{ color:#0f172a; font-size:.9rem; line-height:1.45rem; font-weight:950; }
.drt-portal-timeline-meta{ margin-top:.18rem; color:#64748b; font-size:.8rem; line-height:1.35rem; }
.drt-portal-pagination{
  margin-top:1rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  color:#64748b;
  font-size:.85rem;
}
.drt-portal-empty-state{
  border:1px dashed #cbd5e1;
  border-radius:1rem;
  background:#f8fafc;
  color:#64748b;
  padding:1rem;
  text-align:center;
  font-size:.88rem;
  line-height:1.65;
}

.drt-portal-profile-status-grid{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
}
.drt-portal-status-card{
  position:relative;
  overflow:hidden;
  border:1px solid #e2e8f0;
  border-radius:1rem;
  background:#fff;
  padding:.8rem .9rem;
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.drt-portal-status-card::before{ content:""; position:absolute; inset-inline-start:0; top:.75rem; bottom:.75rem; width:4px; border-radius:999px; background:#cbd5e1; }
.drt-portal-status-card.is-ok::before{ background:#22c55e; }
.drt-portal-status-card.is-warn::before{ background:#f59e0b; }
.drt-portal-status-card span{ display:block; color:#64748b; font-size:.74rem; font-weight:900; }
.drt-portal-status-card strong{ display:block; margin-top:.16rem; color:#0f172a; font-size:.88rem; line-height:1.35rem; font-weight:950; overflow-wrap:anywhere; }
.drt-portal-profile-layout{
  margin-top:1rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(18rem,22rem);
  gap:1rem;
  align-items:start;
}
.drt-portal-profile-main,
.drt-portal-profile-side{ min-width:0; }
.drt-portal-profile-side .sticky-card{ position:sticky; top:9.25rem; }
.drt-portal-form-section{
  margin-top:1rem;
  border:1px solid #e2e8f0;
  border-radius:1.05rem;
  background:linear-gradient(180deg,#fff,#f8fafc);
  padding:.9rem;
}
.drt-portal-form-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  padding-bottom:.75rem;
  border-bottom:1px solid #f1f5f9;
}
.drt-portal-form-section-head strong{ color:#0f172a; font-size:.9rem; font-weight:950; }
.drt-portal-form-section-head span{ color:#64748b; font-size:.76rem; line-height:1.45rem; text-align:end; }
html[dir="rtl"] .drt-portal-form-section-head span{ text-align:start; }
.drt-portal-fields{
  margin-top:.85rem;
  display:grid;
  gap:.8rem;
}
.drt-portal-fields.two-cols{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.drt-portal-fields.compact{ margin-top:0; gap:.75rem; }
.drt-portal-field{ display:grid; gap:.38rem; }
.drt-portal-field.full{ grid-column:1 / -1; }
.drt-portal-password-state{
  margin-top:1rem;
  border:1px solid #fde68a;
  border-radius:1rem;
  background:#fffbeb;
  padding:.85rem;
  display:grid;
  gap:.18rem;
}
.drt-portal-password-state.is-ok{ border-color:#bbf7d0; background:#f0fdf4; }
.drt-portal-password-state strong{ color:#0f172a; font-size:.9rem; font-weight:950; }
.drt-portal-password-state span{ color:#64748b; font-size:.78rem; line-height:1.55; }
.drt-portal-side-note{
  margin-top:.85rem;
  border:1px solid #e2e8f0;
  border-radius:.95rem;
  background:#f8fafc;
  color:#64748b;
  padding:.75rem;
  font-size:.78rem;
  line-height:1.7;
}

.drt-portal-lab-card{
  position:relative;
  overflow:hidden;
  border:1px solid #a5f3fc;
  border-radius:1.25rem;
  background:
    radial-gradient(500px circle at 0% 0%, rgba(165,243,252,.34), transparent 54%),
    linear-gradient(180deg,#fff,#f0fdfa);
  padding:1rem;
  box-shadow:0 18px 42px rgba(15,23,42,.055);
}
html[dir="rtl"] .drt-portal-lab-card{
  background:
    radial-gradient(500px circle at 100% 0%, rgba(165,243,252,.34), transparent 54%),
    linear-gradient(180deg,#fff,#f0fdfa);
}
.drt-portal-lab-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:2rem;
  height:2rem;
  border-radius:999px;
  background:#fff;
  border:1px solid #a5f3fc;
  color:#0891b2;
  font-size:.8rem;
  font-weight:950;
}
.drt-portal-lab-list{ margin-top:1rem; display:grid; gap:1rem; }
.drt-portal-lab-case{
  border:1px solid rgba(226,232,240,.95);
  border-radius:1.15rem;
  background:rgba(255,255,255,.9);
  padding:.95rem;
  box-shadow:0 10px 26px rgba(15,23,42,.045);
}
.drt-portal-lab-case-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
}
.drt-portal-lab-case-title{ display:flex; flex-wrap:wrap; align-items:center; gap:.45rem; }
.drt-portal-lab-case-title strong{ color:#0f172a; font-size:.95rem; font-weight:950; }
.drt-portal-lab-case-meta{ margin-top:.16rem; color:#64748b; font-size:.82rem; line-height:1.35rem; }
.drt-portal-lab-updated{ color:#64748b; font-size:.78rem; line-height:1.2rem; white-space:nowrap; }
.drt-portal-lab-progress-wrap{ margin-top:.95rem; }
.drt-portal-lab-progress-text{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.35rem; color:#64748b; font-size:.75rem; font-weight:900; }
.drt-portal-lab-progress-text strong{ color:#0f766e; }
.drt-portal-lab-progress{ height:.58rem; overflow:hidden; border-radius:999px; background:#e2e8f0; }
.drt-portal-lab-progress > div{ height:100%; border-radius:999px; background:linear-gradient(90deg,#14b8a6,#22c55e); }
.drt-portal-lab-stages{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.65rem;
}
.drt-portal-lab-stage{
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.6rem;
  border:1px solid #e2e8f0;
  border-radius:1rem;
  background:#f8fafc;
  padding:.75rem;
}
.drt-portal-lab-stage.is-current{ box-shadow:0 0 0 4px rgba(59,130,246,.08); }
.drt-portal-lab-stage.is-done{ border-color:#bbf7d0; background:#f0fdf4; }
.drt-portal-lab-stage.is-active{ border-color:#bfdbfe; background:#eff6ff; }
.drt-portal-lab-stage.is-overdue{ border-color:#fecdd3; background:#fff1f2; }
.drt-portal-lab-stage-index{
  width:1.7rem;
  height:1.7rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.7rem;
  background:#fff;
  color:#475569;
  border:1px solid #e2e8f0;
  font-size:.75rem;
  font-weight:950;
}
.drt-portal-lab-stage.is-done .drt-portal-lab-stage-index{ background:#22c55e; border-color:#22c55e; color:#fff; }
.drt-portal-lab-stage.is-active .drt-portal-lab-stage-index{ background:#2563eb; border-color:#2563eb; color:#fff; }
.drt-portal-lab-stage.is-overdue .drt-portal-lab-stage-index{ background:#e11d48; border-color:#e11d48; color:#fff; }
.drt-portal-lab-stage-title{ color:#0f172a; font-size:.82rem; line-height:1.2rem; font-weight:950; }
.drt-portal-lab-stage-meta{ margin-top:.12rem; color:#64748b; font-size:.72rem; line-height:1rem; font-weight:800; }
.drt-portal-lab-stage-date{ margin-top:.45rem; color:#64748b; font-size:.7rem; line-height:1rem; }
.drt-portal-stage-badge{
  grid-column:1 / -1;
  justify-self:start;
  display:inline-flex;
  align-items:center;
  border:1px solid #e2e8f0;
  border-radius:999px;
  background:#fff;
  color:#64748b;
  padding:.18rem .52rem;
  font-size:.68rem;
  font-weight:950;
}
.drt-portal-stage-badge.is-done{ border-color:#bbf7d0; background:#dcfce7; color:#15803d; }
.drt-portal-stage-badge.is-active{ border-color:#bfdbfe; background:#dbeafe; color:#1d4ed8; }
.drt-portal-stage-badge.is-late{ border-color:#fecdd3; background:#ffe4e6; color:#be123c; }
.drt-portal-lab-sms{
  margin-top:.8rem;
  border:1px solid #e2e8f0;
  border-radius:.95rem;
  background:#f8fafc;
  color:#64748b;
  padding:.75rem;
  font-size:.75rem;
  line-height:1.55;
}
.drt-portal-lab-sms strong{ color:#334155; }

@media (max-width: 1040px){
  .drt-portal-summary-grid,
  .drt-portal-profile-layout{ grid-template-columns:1fr; }
  .drt-portal-profile-side .sticky-card{ position:static; }
  .drt-portal-money-grid,
  .drt-portal-profile-status-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .drt-portal-filter-form{ grid-template-columns:1fr 1fr; }
  .drt-portal-filter-search,
  .drt-portal-filter-actions{ grid-column:1 / -1; }
  .drt-portal-lab-stages{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px){
  .drt-portal-topbar{ width:min(100% - 1rem, 1180px); min-height:3.75rem; }
  .drt-portal-main,
  .drt-portal-nav{ width:min(100% - 1rem, 1180px); }
  .drt-portal-patient-pill-text,
  .drt-portal-home-link span,
  .drt-portal-logout span{ display:none; }
  .drt-portal-dashboard-hero,
  .drt-portal-profile-hero{ flex-direction:column; border-radius:1.2rem; }
  .drt-portal-dashboard-actions,
  .drt-portal-profile-actions{ width:100%; justify-content:flex-start; }
  .drt-portal-dashboard-actions .btn,
  .drt-portal-profile-actions .btn{ flex:1 1 auto; }
  .drt-portal-summary-card{ grid-template-columns:auto minmax(0,1fr); }
  .drt-portal-summary-card > a{ grid-column:1 / -1; justify-self:start; }
  .drt-portal-money-grid,
  .drt-portal-profile-status-grid,
  .drt-portal-filter-form,
  .drt-portal-fields.two-cols,
  .drt-portal-lab-stages{ grid-template-columns:1fr; }
  .drt-portal-date-pair{ grid-template-columns:1fr; }
  .drt-portal-panel-head,
  .drt-portal-form-section-head,
  .drt-portal-alert-panel,
  .drt-portal-lab-case-head{ flex-direction:column; align-items:flex-start; }
  .drt-portal-panel-actions,
  .drt-portal-filter-actions{ width:100%; }
  .drt-portal-panel-actions .btn,
  .drt-portal-filter-actions .btn,
  .drt-portal-alert-panel .btn{ flex:1 1 auto; justify-content:center; }
  .drt-portal-timeline-row{ grid-template-columns:auto minmax(0,1fr); }
  .drt-portal-timeline-row .badge{ grid-column:2; justify-self:start; }
  .drt-portal-pagination{ align-items:flex-start; flex-direction:column; }
}

/* Panel workflow phase 2: quick actions, global search, saved filters */
.drt-topbar-search{
  align-items:center;gap:.45rem;min-width:18rem;max-width:26rem;height:2.5rem;padding:0 .75rem;border:1px solid #d8e8e8;border-radius:999px;background:rgba(255,255,255,.82);color:#587177;box-shadow:0 10px 30px rgba(15,47,53,.05);
}
.drt-topbar-search input{width:100%;border:0;background:transparent;outline:0;font-size:.86rem;color:#0f2f35;}
.drt-topbar-search input::placeholder{color:#7b949a;}
.drt-topbar-details>summary::-webkit-details-marker{display:none;}
.drt-topbar-menu{position:absolute;inset-inline-end:0;top:calc(100% + .55rem);z-index:60;min-width:18rem;max-width:min(26rem,92vw);padding:.55rem;border:1px solid #d8e8e8;border-radius:1rem;background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(15,47,53,.16);}
.drt-topbar-menu--wide{min-width:22rem;}
.drt-topbar-menu--notify{min-width:21rem;}
.drt-topbar-menu-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.4rem .45rem .65rem;border-bottom:1px solid #e8f2f2;margin-bottom:.35rem;}
.drt-topbar-menu-head strong{font-size:.86rem;color:#123a42;}
.drt-topbar-menu-head a{font-size:.75rem;font-weight:900;color:#178b84;}
.drt-topbar-menu-row{display:flex;align-items:flex-start;gap:.65rem;padding:.65rem;border-radius:.85rem;color:#163d44;text-decoration:none;}
.drt-topbar-menu-row:hover{background:#edf8f8;}
.drt-topbar-menu-row>span:first-child{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:.75rem;background:#e7f7f5;color:#14918a;flex:0 0 auto;}
.drt-topbar-menu-row strong{display:block;font-size:.84rem;line-height:1.25;color:#123a42;}
.drt-topbar-menu-row small{display:block;margin-top:.1rem;font-size:.72rem;line-height:1.35;color:#667d83;}
.drt-topbar-menu-row.is-danger>span:first-child{background:#fff1f2;color:#be123c;}
.drt-topbar-menu-row.is-warning>span:first-child{background:#fffbeb;color:#b45309;}
.drt-topbar-menu-empty{padding:1rem;text-align:center;color:#6b8086;font-size:.84rem;}

.drt-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1rem;}
.drt-quick-card{position:relative;display:flex;min-height:8.5rem;flex-direction:column;gap:.55rem;padding:1rem;border:1px solid #d8e8e8;border-radius:1.15rem;background:linear-gradient(135deg,#ffffff,#f7fcfc);box-shadow:0 18px 45px rgba(15,47,53,.06);text-decoration:none;color:#123a42;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.drt-quick-card::after{content:"";position:absolute;inset:auto -2.5rem -2.5rem auto;width:6rem;height:6rem;border-radius:999px;background:rgba(39,184,177,.1);}
.drt-quick-card:hover{transform:translateY(-2px);box-shadow:0 24px 60px rgba(15,47,53,.1);border-color:#bde3e0;}
.drt-quick-icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.9rem;background:#e8f8f6;color:#14918a;}
.drt-quick-card strong{font-size:.95rem;font-weight:950;line-height:1.25;}
.drt-quick-card small{font-size:.78rem;line-height:1.55;color:#657b82;}
.drt-quick-card.is-blue .drt-quick-icon{background:#eff6ff;color:#2563eb;}
.drt-quick-card.is-cyan .drt-quick-icon{background:#ecfeff;color:#0891b2;}
.drt-quick-card.is-indigo .drt-quick-icon{background:#eef2ff;color:#4f46e5;}
.drt-quick-card.is-rose .drt-quick-icon{background:#fff1f2;color:#e11d48;}
.drt-quick-card.is-amber .drt-quick-icon{background:#fffbeb;color:#d97706;}
.drt-quick-card.is-violet .drt-quick-icon{background:#f5f3ff;color:#7c3aed;}
.drt-quick-card.is-emerald .drt-quick-icon,.drt-quick-card.is-teal .drt-quick-icon{background:#ecfdf5;color:#059669;}

.drt-search-page{--drt-search-ink:#0f2f35;--drt-search-muted:#60737a;--drt-search-line:#d8e8e8;--drt-search-soft:#edf8f8;display:flex;flex-direction:column;gap:1rem;color:var(--drt-search-ink);}
.drt-search-hero{border-inline-start-color:#27b8b1;background:linear-gradient(135deg,#effafa,#ffffff 58%,#f8fcfc);}
.drt-search-card{padding:1rem;border:1px solid var(--drt-search-line);border-radius:1.25rem;background:#fff;box-shadow:0 18px 50px rgba(15,47,53,.06);}
.drt-search-form{display:flex;align-items:center;gap:.75rem;}
.drt-search-input-wrap{flex:1;display:flex;align-items:center;gap:.7rem;padding:.15rem .9rem;border:1px solid var(--drt-search-line);border-radius:1rem;background:#f8fcfc;color:#60737a;}
.drt-search-input{width:100%;height:2.9rem;border:0;background:transparent;outline:0;font-size:.98rem;color:#123a42;}
.drt-search-results{display:flex;flex-direction:column;gap:1rem;}
.drt-search-empty{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:1px dashed #cce2e2;border-radius:1.2rem;background:#f8fcfc;color:#60737a;}
.drt-search-empty strong{display:block;color:#123a42;margin-bottom:.15rem;}
.drt-search-empty p{margin:0;font-size:.84rem;}
.drt-search-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:1rem;background:#e8f8f6;color:#14918a;}
.drt-search-summary{display:inline-flex;align-self:flex-start;align-items:center;gap:.4rem;padding:.45rem .7rem;border-radius:999px;background:#e8f8f6;color:#127c76;font-size:.82rem;font-weight:900;}
.drt-search-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
.drt-search-group{border:1px solid var(--drt-search-line);border-radius:1.2rem;background:#fff;overflow:hidden;box-shadow:0 16px 45px rgba(15,47,53,.05);}
.drt-search-group header{display:flex;align-items:center;gap:.55rem;padding:.85rem 1rem;border-bottom:1px solid #e6f0f0;background:#f8fcfc;}
.drt-search-group header span{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:.75rem;background:#e8f8f6;color:#14918a;}
.drt-search-group header strong{flex:1;font-size:.9rem;font-weight:950;}
.drt-search-group header small{font-size:.72rem;color:#60737a;font-weight:900;}
.drt-search-list{display:flex;flex-direction:column;}
.drt-search-result-row{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;border-bottom:1px solid #edf4f4;text-decoration:none;color:#123a42;}
.drt-search-result-row:last-child{border-bottom:0;}
.drt-search-result-row:hover{background:#f5fbfb;}
.drt-search-row-icon{display:inline-flex;align-items:center;justify-content:center;width:2.05rem;height:2.05rem;border-radius:.8rem;background:#edf8f8;color:#14918a;flex:0 0 auto;}
.drt-search-row-main{flex:1;min-width:0;}
.drt-search-row-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:900;}
.drt-search-row-main small{display:block;margin-top:.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;color:#60737a;}
.drt-search-row-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;}
.drt-search-row-meta em{font-style:normal;font-size:.68rem;font-weight:900;padding:.18rem .45rem;border-radius:999px;background:#edf8f8;color:#127c76;}
.drt-search-row-meta small{font-size:.7rem;color:#71868c;}

.drt-saved-filter-card{display:flex;align-items:stretch;gap:1rem;padding:1rem;border:1px solid #d8e8e8;border-radius:1.2rem;background:linear-gradient(135deg,#ffffff,#f8fcfc);box-shadow:0 16px 45px rgba(15,47,53,.05);}
.drt-saved-filter-head{min-width:12rem;display:flex;align-items:center;}
.drt-saved-filter-head strong{display:block;font-size:.92rem;font-weight:950;color:#123a42;}
.drt-saved-filter-head small{display:block;margin-top:.2rem;font-size:.74rem;color:#60737a;}
.drt-saved-filter-body{flex:1;display:flex;flex-direction:column;gap:.75rem;}
.drt-saved-filter-list{display:flex;flex-wrap:wrap;gap:.45rem;}
.drt-saved-filter-row{display:inline-flex;align-items:center;gap:.25rem;border:1px solid #cde5e4;border-radius:999px;background:#fff;overflow:hidden;}
.drt-saved-filter-link{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .65rem;color:#127c76;font-size:.8rem;font-weight:900;text-decoration:none;}
.drt-saved-filter-link em{font-style:normal;font-size:.65rem;color:#0f766e;background:#ecfdf5;border-radius:999px;padding:.1rem .35rem;}
.drt-icon-danger{border:0;background:transparent;color:#be123c;font-size:1rem;font-weight:900;padding:.2rem .55rem;cursor:pointer;}
.drt-icon-danger:hover{background:#fff1f2;}
.drt-saved-filter-empty{margin:0;color:#60737a;font-size:.84rem;}
.drt-saved-filter-form{display:grid;grid-template-columns:minmax(10rem,1fr) auto auto;gap:.5rem;align-items:center;}
.drt-saved-filter-check{display:inline-flex;align-items:center;gap:.35rem;color:#60737a;font-size:.8rem;font-weight:800;white-space:nowrap;}

.drt-smart-alert{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid #d8e8e8;border-radius:1.2rem;background:#f8fcfc;box-shadow:0 16px 45px rgba(15,47,53,.04);}
.drt-smart-alert-main{display:flex;align-items:center;gap:.8rem;}
.drt-smart-alert-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:1rem;background:#e8f8f6;color:#14918a;}
.drt-smart-alert strong{display:block;font-size:.95rem;font-weight:950;color:#123a42;}
.drt-smart-alert small{display:block;margin-top:.15rem;color:#60737a;font-size:.78rem;}
.drt-smart-alert.is-danger{border-color:#fecdd3;background:#fff7f8;}
.drt-smart-alert.is-danger .drt-smart-alert-icon{background:#ffe4e6;color:#be123c;}
.drt-smart-alert.is-warning{border-color:#fde68a;background:#fffdf3;}
.drt-smart-alert.is-warning .drt-smart-alert-icon{background:#fef3c7;color:#b45309;}
.drt-smart-alert.is-success{border-color:#bbf7d0;background:#f7fff9;}
.drt-smart-alert.is-success .drt-smart-alert-icon{background:#dcfce7;color:#16a34a;}

@media (max-width: 1180px){.drt-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.drt-search-group-grid{grid-template-columns:1fr;}}
@media (max-width: 720px){.drt-search-form{flex-direction:column;align-items:stretch;}.drt-saved-filter-card{flex-direction:column;}.drt-saved-filter-form{grid-template-columns:1fr;}.drt-smart-alert{flex-direction:column;align-items:flex-start;}.drt-quick-grid{grid-template-columns:1fr;padding:.75rem;}.drt-topbar-menu{inset-inline-end:-.5rem;}}

/* Search visibility fix: keep Global Search discoverable in sidebar, desktop topbar and mobile topbar. */
.drt-nav-hint{
  display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;padding:.12rem .38rem;border:1px solid rgba(20,145,138,.18);border-radius:999px;background:#eefafa;color:#127c76;font-size:.62rem;font-weight:950;line-height:1;white-space:nowrap;
}
.drt-topbar-search{position:relative;flex:1 1 17rem;min-width:14rem;max-width:28rem;}
.drt-topbar-search-kbd{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfe3e2;border-radius:.55rem;background:#f8fcfc;color:#6a8086;padding:.12rem .38rem;font-size:.64rem;font-weight:900;line-height:1;white-space:nowrap;}
.drt-topbar-search-link{background:#e8f8f6;color:#127c76;border-color:#bfe6e3;}
.drt-topbar-search-link:hover{background:#dcf6f3;color:#0f766e;}
@media (max-width: 1180px){.drt-topbar-search{min-width:12rem;max-width:20rem;}.drt-topbar-search-kbd{display:none;}}

/* Phase 17: final panel UI/UX polish */
.drt-skip-link{position:fixed;inset-block-start:.75rem;inset-inline-start:.75rem;z-index:1000;transform:translateY(-140%);border-radius:999px;background:#0f766e;color:#fff;padding:.55rem .9rem;font-size:.82rem;font-weight:950;box-shadow:0 18px 40px rgba(15,118,110,.25);transition:transform .16s ease;}
.drt-skip-link:focus{transform:translateY(0);outline:3px solid rgba(20,184,166,.35);outline-offset:3px;}
#drt-main-content:focus{outline:0;}
.drt-page-surface{background:radial-gradient(circle at top right,rgba(20,184,166,.10),transparent 32rem),linear-gradient(180deg,#fbfefe,#f8fafc 34rem);}
.drt-topbar-pill,.drt-nav-item,.btn,.input,.select{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background-color .16s ease;}
.drt-topbar-pill:hover,.drt-nav-item:hover,.btn:hover{transform:translateY(-1px);}
.input:focus,.select:focus,.drt-topbar-search:focus-within,.drt-final-search-input:focus-within{outline:0;border-color:#14b8a6!important;box-shadow:0 0 0 4px rgba(20,184,166,.13)!important;}
.drt-nav-item.is-active{box-shadow:inset 0 0 0 1px rgba(20,184,166,.18),0 10px 24px rgba(15,118,110,.08);}
.drt-sidebar{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(240,253,250,.84));backdrop-filter:blur(16px);}
.drt-main-stage{background:radial-gradient(circle at 8% 0%,rgba(14,165,233,.09),transparent 28rem),radial-gradient(circle at 92% 10%,rgba(16,185,129,.12),transparent 30rem);}

.drt-final-page{--drt-final-ink:#0f172a;--drt-final-muted:#64748b;--drt-final-line:#dbe8e8;--drt-final-soft:#f0fdfa;--drt-final-accent:#0f766e;display:flex;flex-direction:column;gap:1rem;color:var(--drt-final-ink);}
.drt-final-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;overflow:hidden;border:1px solid rgba(203,228,226,.95);border-radius:1.55rem;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,253,250,.84) 62%,rgba(236,254,255,.72));padding:1.15rem;box-shadow:0 24px 70px rgba(15,47,53,.08);}
.drt-final-hero::after{content:"";position:absolute;inset:auto -4rem -5rem auto;width:14rem;height:14rem;border-radius:999px;background:radial-gradient(circle,rgba(20,184,166,.16),transparent 68%);pointer-events:none;}
.drt-final-hero-main{position:relative;z-index:1;display:flex;align-items:center;gap:.95rem;min-width:0;}
.drt-final-hero-icon{display:inline-flex;align-items:center;justify-content:center;width:3.35rem;height:3.35rem;flex:0 0 auto;border-radius:1.15rem;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;box-shadow:0 18px 38px rgba(15,118,110,.24);}
.drt-final-kicker{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;background:rgba(15,118,110,.09);color:#0f766e;padding:.22rem .65rem;font-size:.72rem;font-weight:950;line-height:1.2;}
.drt-final-hero h2{margin:.35rem 0 .15rem;color:#0f172a;font-size:clamp(1.35rem,2vw,2.15rem);font-weight:950;letter-spacing:-.035em;line-height:1.12;}
.drt-final-hero p{margin:0;max-width:44rem;color:#516872;font-size:.91rem;font-weight:800;line-height:1.65;}
.drt-final-hero-actions{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap;}
.drt-final-hero-actions .btn{box-shadow:0 12px 30px rgba(15,47,53,.08);}
.drt-final-hero--patient .drt-final-hero-icon{background:linear-gradient(135deg,#0891b2,#14b8a6);}
.drt-final-hero--treatment .drt-final-hero-icon{background:linear-gradient(135deg,#7c3aed,#14b8a6);}

.drt-final-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;}
.drt-final-metric-grid.is-four{grid-template-columns:repeat(4,minmax(0,1fr));}
.drt-final-metric-card{display:flex;gap:.78rem;align-items:flex-start;border:1px solid var(--drt-final-line);border-radius:1.25rem;background:rgba(255,255,255,.92);padding:1rem;box-shadow:0 18px 42px rgba(15,47,53,.055);}
.drt-final-metric-icon{display:inline-flex;align-items:center;justify-content:center;width:2.55rem;height:2.55rem;flex:0 0 auto;border-radius:.95rem;background:#ecfdf5;color:#047857;}
.drt-final-metric-card.is-info .drt-final-metric-icon{background:#ecfeff;color:#0891b2;}.drt-final-metric-card.is-warning .drt-final-metric-icon{background:#fffbeb;color:#b45309;}.drt-final-metric-card.is-success .drt-final-metric-icon{background:#dcfce7;color:#15803d;}
.drt-final-metric-card small{display:block;color:#64748b;font-size:.74rem;font-weight:950;line-height:1.2;}.drt-final-metric-card strong{display:block;margin-top:.26rem;color:#0f172a;font-size:1.45rem;font-weight:950;line-height:1.1;letter-spacing:-.025em;}.drt-final-metric-card em{display:block;margin-top:.45rem;color:#64748b;font-size:.73rem;font-weight:850;font-style:normal;line-height:1.45;}
.drt-final-panel{border:1px solid var(--drt-final-line);border-radius:1.35rem;background:rgba(255,255,255,.94);box-shadow:0 18px 48px rgba(15,47,53,.06);padding:1rem;}
.drt-final-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem;}.drt-final-panel-head span{display:inline-flex;color:#0f766e;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em;}.drt-final-panel-head h3{margin:.16rem 0 0;color:#0f172a;font-size:1rem;font-weight:950;}.drt-final-panel-head p{margin:.16rem 0 0;color:#64748b;font-size:.8rem;font-weight:800;line-height:1.55;}.drt-final-chip{display:inline-flex;align-items:center;min-height:2rem;border:1px solid #ccfbf1;border-radius:999px;background:#f0fdfa;color:#0f766e;padding:.3rem .72rem;font-size:.74rem;font-weight:950;white-space:nowrap;}
.drt-final-chart-mount{min-height:188px;border:1px solid #e2e8f0;border-radius:1rem;background:linear-gradient(180deg,#fff,#f8fafc);padding:.35rem;}.drt-final-bars rect{fill:#0f766e;opacity:.88;transition:opacity .16s ease,transform .16s ease;}.drt-final-bars rect:hover{opacity:1;}.drt-final-legend{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.65rem;color:#64748b;font-size:.74rem;font-weight:900;}.drt-final-legend span{display:inline-flex;align-items:center;gap:.4rem;}.drt-final-legend i{width:.55rem;height:.55rem;border-radius:999px;background:#0f766e;}.drt-chart-tip{position:fixed;z-index:60;border:1px solid #dbe8e8;border-radius:.8rem;background:#fff;color:#334155;padding:.35rem .55rem;font-size:.75rem;font-weight:900;box-shadow:0 18px 40px rgba(15,23,42,.14);}
.drt-final-alert{display:grid;gap:.3rem;border:1px solid #fde68a;border-radius:1.2rem;background:#fffbeb;color:#92400e;padding:1rem;}.drt-final-alert strong{font-size:.95rem;font-weight:950;}.drt-final-alert span{font-size:.82rem;font-weight:850;line-height:1.55;}
.drt-patient-search-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);gap:1rem;align-items:center;}.drt-patient-search-copy{display:flex;align-items:flex-start;gap:.8rem;}.drt-final-panel-icon{display:inline-flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;flex:0 0 auto;border-radius:1rem;background:#ecfeff;color:#0891b2;}.drt-patient-search-copy h3{margin:0;color:#0f172a;font-size:1rem;font-weight:950;}.drt-patient-search-copy p{margin:.2rem 0 0;color:#64748b;font-size:.82rem;font-weight:800;line-height:1.6;}.drt-patient-search-form{display:grid;gap:.45rem;}.drt-final-search-input{display:flex;align-items:center;gap:.65rem;border:1px solid #dbe8e8;border-radius:1rem;background:#f8fafc;padding:0 .8rem;}.drt-final-search-input .input{border:0;background:transparent;box-shadow:none!important;padding-inline:.1rem;}.drt-patient-search-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;color:#64748b;font-size:.74rem;font-weight:850;}.drt-patient-search-meta strong{color:#0f766e;}.drt-patient-search-meta em{font-style:normal;color:#0891b2;}.drt-patient-result-shell{display:block;}.drt-final-empty{display:grid;place-items:center;gap:.35rem;min-height:13rem;border:1px dashed #cbd5e1;border-radius:1.35rem;background:linear-gradient(135deg,#fff,#f8fafc);padding:1.5rem;text-align:center;}.drt-final-empty span{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:1rem;background:#e0f2fe;color:#0891b2;}.drt-final-empty strong{color:#0f172a;font-size:1rem;font-weight:950;}.drt-final-empty p{margin:0;color:#64748b;font-size:.84rem;font-weight:800;line-height:1.55;}.drt-final-empty--small{min-height:8rem;}

.drt-final-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;}.drt-final-step-grid article{display:flex;align-items:center;gap:.7rem;border:1px solid var(--drt-final-line,#dbe8e8);border-radius:1.1rem;background:rgba(255,255,255,.88);padding:.85rem;box-shadow:0 14px 36px rgba(15,47,53,.045);}.drt-final-step-grid span{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;flex:0 0 auto;border-radius:.8rem;background:#f0fdfa;color:#0f766e;font-size:.85rem;font-weight:950;}.drt-final-step-grid strong{display:block;color:#0f172a;font-size:.85rem;font-weight:950;line-height:1.3;}.drt-final-step-grid small{display:block;margin-top:.06rem;color:#64748b;font-size:.7rem;font-weight:850;line-height:1.35;}.drt-treatment-layout{display:grid;grid-template-columns:minmax(20rem,5fr) minmax(0,7fr);gap:1rem;}.drt-treatment-card{padding:1rem;}.drt-treatment-card--patient{position:sticky;top:5.25rem;align-self:start;}.drt-treatment-card--slots{min-height:28rem;}.drt-treatment-card .alert{border-radius:1rem;}.drt-treatment-card #slots{border:1px solid #e2e8f0;border-radius:1.1rem;background:#f8fafc;padding:.75rem;min-height:12rem;}
.drt-scheduler-guide{margin-block:.35rem .9rem;}.drt-scheduler-guide article{background:linear-gradient(135deg,#fff,#f8fafc);}
.drt-final-command-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;}.drt-final-command-card{display:flex;align-items:flex-start;gap:.75rem;border:1px solid #dbe8e8;border-radius:1.2rem;background:#fff;padding:1rem;box-shadow:0 18px 45px rgba(15,47,53,.055);}.drt-final-command-card>span{display:inline-flex;align-items:center;justify-content:center;width:2.55rem;height:2.55rem;flex:0 0 auto;border-radius:.95rem;background:#ecfeff;color:#0891b2;}.drt-final-command-card.is-primary>span{background:#eff6ff;color:#2563eb;}.drt-final-command-card.is-success>span{background:#dcfce7;color:#15803d;}.drt-final-command-card.is-warning>span{background:#fffbeb;color:#b45309;}.drt-final-command-card.is-muted>span{background:#f1f5f9;color:#475569;}.drt-final-command-card small{display:block;color:#64748b;font-size:.72rem;font-weight:950;}.drt-final-command-card strong{display:block;margin-top:.25rem;color:#0f172a;font-size:1.35rem;font-weight:950;letter-spacing:-.025em;}.drt-final-command-card em{display:block;margin-top:.38rem;color:#64748b;font-size:.72rem;font-style:normal;font-weight:850;line-height:1.45;}
.drt-arch-case,.drt-arch-section,.drt-arch-stat,.drt-scheduler-control-card,.drt-scheduler-board-shell,.drt-ct-hero,.drt-ct-toolbar{box-shadow:0 18px 50px rgba(15,47,53,.055);}.drt-arch-case:hover,.drt-arch-stat:hover{transform:translateY(-1px);box-shadow:0 24px 64px rgba(15,47,53,.09);}.drt-arch-case,.drt-arch-stat{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;}.drt-arch-filter-grid .btn,.drt-scheduler-actions .btn,.drt-ct-hero-actions .btn{display:inline-flex;align-items:center;gap:.4rem;justify-content:center;}

@media (max-width:1180px){.drt-final-metric-grid.is-four,.drt-final-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.drt-treatment-layout{grid-template-columns:1fr;}.drt-treatment-card--patient{position:static;}.drt-patient-search-panel{grid-template-columns:1fr;}}
@media (max-width:820px){.drt-final-hero,.drt-final-panel-head{flex-direction:column;align-items:flex-start;}.drt-final-hero-actions{width:100%;justify-content:flex-start;}.drt-final-hero-actions .btn{flex:1 1 auto;justify-content:center;}.drt-final-metric-grid,.drt-final-metric-grid.is-four,.drt-final-command-grid,.drt-final-step-grid{grid-template-columns:1fr;}.drt-final-step-grid article{min-height:auto;}.drt-patient-search-copy{align-items:center;}.drt-final-page{gap:.85rem;}}
@media (max-width:560px){.drt-final-hero{border-radius:1.2rem;padding:.95rem;}.drt-final-hero-main{align-items:flex-start;}.drt-final-hero-icon{width:3rem;height:3rem;}.drt-final-panel,.drt-final-metric-card,.drt-final-command-card{border-radius:1.1rem;}.drt-patient-search-meta{align-items:flex-start;flex-direction:column;}.drt-treatment-card #slots{padding:.6rem;}}


/* Pre-release polish: vibrant panel chrome, public website, catalog and help flows. */
[data-drt-sidebar]{
  --drt-accent: 236 72 153;
  background: radial-gradient(circle at 0% 0%, rgba(236,72,153,.14), transparent 32rem), radial-gradient(circle at 100% 6%, rgba(14,165,233,.15), transparent 32rem), #f8fafc;
}
.drt-sidebar{
  background: linear-gradient(165deg,#441070 0%,#7e22ce 34%,#ec4899 66%,#f97316 100%) !important;
  border-color: rgba(255,255,255,.22) !important;
  color:#fff;
  box-shadow: 18px 0 48px rgba(126,34,206,.22) !important;
}
html[dir="rtl"] .drt-sidebar{ box-shadow:-18px 0 48px rgba(126,34,206,.22) !important; }
.drt-sidebar::before{background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.22),transparent 18rem),radial-gradient(circle at 82% 18%,rgba(34,211,238,.22),transparent 18rem)!important;opacity:1!important;}
.drt-sidebar .text-slate-900,.drt-sidebar .drt-user-name,.drt-sidebar .text-xl{color:#fff!important;}
.drt-sidebar .text-slate-600,.drt-sidebar .drt-user-meta,.drt-sidebar .drt-nav-label{color:rgba(255,255,255,.78)!important;}
.drt-sidebar .drt-user-card,.drt-sidebar .drt-nav-section{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.20)!important;box-shadow:0 18px 34px rgba(30,5,55,.18)!important;}
.drt-sidebar .drt-nav-item{color:rgba(255,255,255,.88)!important;border-color:transparent!important;background:transparent!important;}
.drt-sidebar .drt-nav-item svg{color:rgba(255,255,255,.74)!important;}
.drt-sidebar .drt-nav-item:hover{background:rgba(255,255,255,.17)!important;color:#fff!important;}
.drt-sidebar .drt-nav-item.is-active{background:#fff!important;color:#701a75!important;box-shadow:0 16px 34px rgba(40,7,65,.24)!important;}
.drt-sidebar .drt-nav-item.is-active svg{color:#db2777!important;}
.drt-sidebar .drt-accent-soft,.drt-sidebar .drt-user-avatar{background:rgba(255,255,255,.20)!important;color:#fff!important;}
.drt-sidebar .drt-user-link,.drt-sidebar form button{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;}
.drt-sidebar .drt-nav-badge{background:#fff!important;color:#db2777!important;}
.drt-sidebar .drt-nav-hint{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important;}
.drt-topbar{
  background:linear-gradient(135deg,#0ea5e9 0%,#14b8a6 42%,#a855f7 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:0 20px 50px rgba(14,165,233,.20)!important;
}
.drt-topbar::before{background:radial-gradient(circle at 18% 0%,rgba(255,255,255,.28),transparent 16rem),radial-gradient(circle at 85% 0%,rgba(251,191,36,.22),transparent 14rem)!important;}
.drt-topbar .text-slate-900,.drt-topbar .drt-topbar-page-title{color:#fff!important;}
.drt-topbar .text-slate-500,.drt-topbar .text-xs{color:rgba(255,255,255,.82)!important;}
.drt-topbar .drt-accent-soft{background:rgba(255,255,255,.18)!important;color:#fff!important;}
.drt-topbar .drt-accent-bg{background:#fde047!important;}
.drt-topbar-pill,.drt-topbar-search{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;}
.drt-topbar-pill:hover,.drt-topbar-search:focus-within{background:rgba(255,255,255,.24)!important;}
.drt-topbar-search input{color:#fff!important;}.drt-topbar-search input::placeholder{color:rgba(255,255,255,.75)!important;}.drt-topbar-search-kbd{background:rgba(255,255,255,.22)!important;color:#fff!important;border-color:rgba(255,255,255,.28)!important;}

.drt-public-hero{position:relative;overflow:hidden;border:1px solid rgba(15,118,110,.16);border-radius:2rem;background:linear-gradient(135deg,#ecfeff 0%,#f0fdf4 42%,#fff7ed 100%);padding:clamp(1.4rem,4vw,3rem);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(18rem,.9fr);gap:1.5rem;align-items:center;box-shadow:0 28px 80px rgba(15,47,53,.10);}.drt-public-hero::after{content:"";position:absolute;inset:auto -6rem -8rem auto;width:20rem;height:20rem;border-radius:999px;background:radial-gradient(circle,rgba(236,72,153,.20),transparent 68%);pointer-events:none;}.drt-public-kicker{display:inline-flex;width:max-content;border-radius:999px;background:#fff;color:#0f766e;border:1px solid rgba(20,184,166,.25);padding:.32rem .75rem;font-size:.78rem;font-weight:950;}.drt-public-hero h1{margin:.9rem 0 0;color:#0f172a;font-size:clamp(2rem,4vw,4.3rem);line-height:1.08;font-weight:950;letter-spacing:-.055em;}.drt-public-hero p{margin:1rem 0 0;max-width:48rem;color:#475569;font-size:1rem;line-height:1.9;font-weight:750;}.drt-public-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.35rem;}.drt-public-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:1rem;padding:.82rem 1.08rem;font-size:.9rem;font-weight:950;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,background .16s ease;}.drt-public-btn:hover{transform:translateY(-1px);}.drt-public-btn--dark{background:#0f172a;color:#fff;box-shadow:0 16px 36px rgba(15,23,42,.18);}.drt-public-btn--light{background:#fff;color:#0f766e;border:1px solid #ccfbf1;}.drt-public-btn--outline{background:rgba(255,255,255,.55);color:#334155;border:1px solid #cbd5e1;}.drt-public-hero__board{position:relative;z-index:1;border:1px solid rgba(255,255,255,.7);border-radius:1.5rem;background:rgba(255,255,255,.70);backdrop-filter:blur(16px);padding:1rem;box-shadow:0 24px 60px rgba(15,47,53,.10);}.drt-public-board-card{border-radius:1.25rem;background:linear-gradient(135deg,#0f172a,#155e75);color:#fff;padding:1.1rem;}.drt-public-board-card span{display:block;color:#a7f3d0;font-size:.75rem;font-weight:950;}.drt-public-board-card strong{display:block;margin-top:.25rem;font-size:1.15rem;font-weight:950;}.drt-public-board-card small{display:block;margin-top:.45rem;color:rgba(255,255,255,.78);line-height:1.6;font-weight:750;}.drt-public-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.75rem;}.drt-public-board-grid div{border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.82rem;}.drt-public-board-grid strong{display:block;color:#0f172a;font-size:.86rem;font-weight:950;}.drt-public-board-grid small{display:block;margin-top:.22rem;color:#64748b;font-size:.74rem;font-weight:800;line-height:1.5;}.drt-public-section{margin-top:3rem;}.drt-public-section-head{max-width:48rem;}.drt-public-section-head span,.drt-public-catalog-cta span{display:inline-flex;color:#0f766e;font-size:.78rem;font-weight:950;}.drt-public-section-head h2,.drt-public-catalog-cta h2{margin:.38rem 0 0;color:#0f172a;font-size:clamp(1.45rem,2.4vw,2.35rem);line-height:1.25;font-weight:950;letter-spacing:-.035em;}.drt-public-section-head p,.drt-public-catalog-cta p{margin:.55rem 0 0;color:#64748b;font-size:.95rem;line-height:1.85;font-weight:750;}.drt-public-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem;}.drt-public-feature-grid article{border:1px solid #e2e8f0;border-radius:1.35rem;background:#fff;padding:1.05rem;box-shadow:0 18px 45px rgba(15,47,53,.055);}.drt-public-feature-grid article>span{display:inline-flex;width:2.6rem;height:2.6rem;align-items:center;justify-content:center;border-radius:1rem;background:linear-gradient(135deg,#ecfeff,#f0fdf4);color:#0f766e;}.drt-public-feature-grid h3{margin:.8rem 0 .3rem;color:#0f172a;font-size:1rem;font-weight:950;}.drt-public-feature-grid p{margin:0;color:#64748b;font-size:.84rem;line-height:1.75;font-weight:760;}.drt-public-flow-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-top:1.2rem;}.drt-public-flow-row div{position:relative;border:1px solid #dbeafe;border-radius:1.15rem;background:#fff;padding:1rem;box-shadow:0 16px 38px rgba(30,64,175,.045);}.drt-public-flow-row strong{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:.8rem;background:#2563eb;color:#fff;font-weight:950;}.drt-public-flow-row span{display:block;margin-top:.65rem;color:#334155;font-size:.83rem;font-weight:900;line-height:1.55;}.drt-public-split{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}.drt-public-card{border:1px solid #e2e8f0;border-radius:1.5rem;background:#fff;padding:1.35rem;box-shadow:0 20px 52px rgba(15,47,53,.06);}.drt-public-card.is-dark{background:linear-gradient(135deg,#0f172a,#134e4a);color:#fff;}.drt-public-card h2{margin:.65rem 0;color:inherit;font-size:1.45rem;font-weight:950;line-height:1.3;}.drt-public-card ul{margin:.8rem 0 0;padding:0;list-style:none;display:grid;gap:.55rem;}.drt-public-card li{color:#64748b;font-size:.9rem;line-height:1.7;font-weight:760;}.drt-public-card li::before{content:"✓";margin-inline-end:.45rem;color:#10b981;font-weight:950;}.drt-public-card.is-dark li{color:rgba(255,255,255,.82);}.drt-public-link{display:inline-flex;margin-top:1rem;color:#0f766e;font-weight:950;text-decoration:none;}.drt-public-link.is-light{color:#a7f3d0;}.drt-public-catalog-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #fed7aa;border-radius:1.5rem;background:linear-gradient(135deg,#fff7ed,#fff,#ecfeff);padding:1.4rem;box-shadow:0 20px 56px rgba(249,115,22,.08);}.drt-public-hero--catalog{grid-template-columns:1fr;}
.drt-help-flow{border:1px solid #dbeafe;border-radius:1.35rem;background:linear-gradient(135deg,#fff,#f8fafc);padding:1rem;box-shadow:0 18px 45px rgba(15,47,53,.05);}.drt-help-flow h4{margin:0;color:#0f172a;font-size:1rem;font-weight:950;}.drt-help-flow-steps{display:flex;align-items:stretch;gap:.45rem;margin-top:.85rem;overflow-x:auto;padding-bottom:.15rem;}.drt-help-flow-step{position:relative;display:grid;gap:.45rem;min-width:8.5rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:.75rem;}.drt-help-flow-step:not(:last-child)::after{content:"";position:absolute;top:50%;inset-inline-end:-.42rem;width:.42rem;height:2px;background:#67e8f9;}.drt-help-flow-step span{display:inline-flex;width:1.7rem;height:1.7rem;align-items:center;justify-content:center;border-radius:.65rem;background:#ecfeff;color:#0891b2;font-weight:950;}.drt-help-flow-step strong{color:#334155;font-size:.78rem;line-height:1.55;font-weight:900;}
@media (max-width:1024px){.drt-public-hero,.drt-public-split{grid-template-columns:1fr;}.drt-public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.drt-public-flow-row{grid-template-columns:repeat(2,minmax(0,1fr));}.drt-public-catalog-cta{align-items:flex-start;flex-direction:column;}}
@media (max-width:640px){.drt-public-hero{border-radius:1.4rem;padding:1.15rem;}.drt-public-feature-grid,.drt-public-flow-row,.drt-public-board-grid{grid-template-columns:1fr;}.drt-public-btn{width:100%;}.drt-public-hero__actions{width:100%;}.drt-help-flow-steps{display:grid;grid-template-columns:1fr;overflow:visible;}.drt-help-flow-step{min-width:0;}.drt-help-flow-step::after{display:none;}}


/* ------------------------------------------------------------------
   Pre-final theme correction: clinical blue/green palette.
   Bright, fresh and still readable for long daily use.
------------------------------------------------------------------ */
:root{
  --drt-brand-navy:#063a5b;
  --drt-brand-blue:#0284c7;
  --drt-brand-sky:#38bdf8;
  --drt-brand-teal:#0f766e;
  --drt-brand-emerald:#10b981;
  --drt-brand-mint:#d1fae5;
  --drt-primary: rgb(2 132 199);
  --drt-primary-dark: rgb(3 105 161);
  --drt-success: rgb(16 185 129);
}
body:has([data-drt-sidebar]){
  background:
    radial-gradient(760px circle at 14% -7%, rgba(56,189,248,.22), transparent 56%),
    radial-gradient(760px circle at 86% -6%, rgba(16,185,129,.18), transparent 58%),
    linear-gradient(180deg,#f0f9ff 0%,#f8fafc 48%,#ecfeff 100%);
}
html[dir="rtl"] body:has([data-drt-sidebar]){
  background:
    radial-gradient(760px circle at 86% -7%, rgba(56,189,248,.22), transparent 56%),
    radial-gradient(760px circle at 14% -6%, rgba(16,185,129,.18), transparent 58%),
    linear-gradient(180deg,#f0f9ff 0%,#f8fafc 48%,#ecfeff 100%);
}
.drt-sidebar{
  color:#fff;
  background:
    radial-gradient(460px circle at 18% 0%, rgba(45,212,191,.34), transparent 46%),
    radial-gradient(520px circle at 82% 8%, rgba(56,189,248,.34), transparent 44%),
    linear-gradient(180deg,#075985 0%,#0f766e 52%,#065f46 100%) !important;
  box-shadow:18px 0 48px rgba(3,105,161,.18) !important;
}
html[dir="rtl"] .drt-sidebar{box-shadow:-18px 0 48px rgba(3,105,161,.18) !important;}
.drt-sidebar::before{
  opacity:.72 !important;
  background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.02) 48%,rgba(255,255,255,.12)) !important;
  filter:none !important;
}
.drt-sidebar-scroll{scrollbar-color:rgba(255,255,255,.38) transparent;}
.drt-user-card,
.drt-nav-section{
  border-color:rgba(255,255,255,.20) !important;
  background:rgba(255,255,255,.12) !important;
  box-shadow:0 14px 34px rgba(6,58,91,.14) !important;
}
.drt-user-avatar{
  background:rgba(255,255,255,.18) !important;
  color:#d1fae5 !important;
  border-color:rgba(255,255,255,.24) !important;
}
.drt-user-name{color:#ffffff !important;}
.drt-user-meta,.drt-nav-label{color:rgba(236,253,245,.78) !important;}
.drt-user-link{
  background:rgba(255,255,255,.12) !important;
  border-color:rgba(255,255,255,.20) !important;
  color:#cffafe !important;
}
.drt-user-link:hover{background:#fff !important;color:#0f766e !important;}
.drt-nav-item{
  color:rgba(240,253,250,.88) !important;
  border-color:transparent !important;
}
.drt-nav-item svg{color:rgba(207,250,254,.74) !important;}
.drt-nav-item:hover{
  background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.22) !important;
  color:#fff !important;
  box-shadow:0 12px 26px rgba(6,58,91,.16) !important;
}
.drt-nav-item.is-active{
  background:linear-gradient(135deg,#ffffff 0%,#ecfeff 42%,#d1fae5 100%) !important;
  border-color:rgba(255,255,255,.75) !important;
  color:#064e3b !important;
  box-shadow:0 16px 34px rgba(2,132,199,.22) !important;
}
.drt-nav-item.is-active svg{color:#0284c7 !important;}
.drt-nav-item.is-active::before{background:linear-gradient(180deg,#0284c7,#10b981) !important;}
.drt-nav-badge{background:rgba(255,255,255,.18) !important;color:#ecfeff !important;}
.drt-nav-item.is-active .drt-nav-badge{background:#dcfce7 !important;color:#047857 !important;}
.drt-nav-badge.danger{background:#fee2e2 !important;color:#b91c1c !important;}
.drt-topbar{
  color:#fff;
  border-bottom:0 !important;
  background:
    radial-gradient(520px circle at 14% -120%, rgba(125,211,252,.48), transparent 58%),
    linear-gradient(90deg,#0284c7 0%,#0f766e 55%,#10b981 100%) !important;
  box-shadow:0 18px 44px rgba(3,105,161,.16) !important;
}
html[dir="rtl"] .drt-topbar{
  background:
    radial-gradient(520px circle at 86% -120%, rgba(125,211,252,.48), transparent 58%),
    linear-gradient(270deg,#0284c7 0%,#0f766e 55%,#10b981 100%) !important;
}
.drt-topbar .text-slate-900,
.drt-topbar .text-slate-700,
.drt-topbar .text-slate-600,
.drt-topbar .text-slate-500,
.drt-topbar .text-slate-400{color:rgba(255,255,255,.92) !important;}
.drt-topbar-pill,
.drt-topbar select.drt-topbar-pill,
.drt-topbar input.drt-topbar-pill{
  background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.26) !important;
  color:#fff !important;
  box-shadow:0 10px 22px rgba(6,58,91,.10) !important;
}
.drt-topbar-pill::placeholder{color:rgba(255,255,255,.75) !important;}
.drt-topbar-pill:hover,.drt-topbar-pill:focus{
  background:rgba(255,255,255,.24) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.42) !important;
}
.drt-topbar .drt-accent-soft{background:rgba(255,255,255,.18) !important;color:#ecfeff !important;}
.drt-page-hero,
.drt-patient-hero,
.drt-manager-command,
.drt-scheduler-hero,
.drt-treatment-hero{
  background:
    radial-gradient(520px circle at 10% 0%, rgba(56,189,248,.17), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#ecfeff 44%,#f0fdf4 100%) !important;
  border-color:rgba(14,165,233,.18) !important;
}
html[dir="rtl"] .drt-page-hero,
html[dir="rtl"] .drt-patient-hero,
html[dir="rtl"] .drt-manager-command,
html[dir="rtl"] .drt-scheduler-hero,
html[dir="rtl"] .drt-treatment-hero{
  background:
    radial-gradient(520px circle at 90% 0%, rgba(56,189,248,.17), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#ecfeff 44%,#f0fdf4 100%) !important;
}
.btn-primary,
.drt-public-btn--dark{
  background:linear-gradient(135deg,#0284c7,#0f766e 62%,#10b981) !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(2,132,199,.24) !important;
}
.btn-primary:hover,.drt-public-btn--dark:hover{filter:saturate(1.08) brightness(1.02);}

/* Public website blue/green theme */
.drt-public-header,
body > header.sticky.top-0{
  background:rgba(255,255,255,.90) !important;
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(14,165,233,.14);
  box-shadow:0 12px 34px rgba(2,132,199,.08) !important;
}
body > header a:hover{color:#0284c7 !important;}
body > header .text-blue-600{color:#0284c7 !important;}
body > header a[href*="/panel/login"],
body > header a[href$="/panel/login/"]{
  background:linear-gradient(135deg,#0284c7,#0f766e 60%,#10b981) !important;
  color:#fff !important;
}
body > header a[href*="/booking"]{
  background:#e0f2fe !important;
  color:#075985 !important;
}
.drt-public-hero{
  border-color:rgba(14,165,233,.18) !important;
  background:
    radial-gradient(700px circle at 12% -10%, rgba(56,189,248,.30), transparent 54%),
    radial-gradient(680px circle at 90% 8%, rgba(16,185,129,.24), transparent 56%),
    linear-gradient(135deg,#f0f9ff 0%,#ecfeff 42%,#f0fdf4 100%) !important;
  box-shadow:0 30px 86px rgba(2,132,199,.12) !important;
}
html[dir="rtl"] .drt-public-hero{
  background:
    radial-gradient(700px circle at 88% -10%, rgba(56,189,248,.30), transparent 54%),
    radial-gradient(680px circle at 10% 8%, rgba(16,185,129,.24), transparent 56%),
    linear-gradient(135deg,#f0f9ff 0%,#ecfeff 42%,#f0fdf4 100%) !important;
}
.drt-public-hero::after{background:radial-gradient(circle,rgba(14,165,233,.20),transparent 68%) !important;}
.drt-public-kicker,
.drt-public-section-head span,
.drt-public-catalog-cta span{color:#0284c7 !important;background:#ecfeff;border-color:rgba(14,165,233,.20);}
.drt-public-btn--light{color:#0f766e !important;border-color:#99f6e4 !important;background:#fff !important;}
.drt-public-btn--outline{border-color:#bae6fd !important;color:#075985 !important;background:rgba(255,255,255,.72) !important;}
.drt-public-board-card,
.drt-public-card.is-dark{
  background:linear-gradient(135deg,#075985,#0f766e 62%,#047857) !important;
}
.drt-public-feature-grid article>span{background:linear-gradient(135deg,#e0f2fe,#d1fae5) !important;color:#0284c7 !important;}
.drt-public-feature-grid article:hover{border-color:#bae6fd;box-shadow:0 22px 60px rgba(2,132,199,.10);}
.drt-public-flow-row div{border-color:#bae6fd !important;box-shadow:0 16px 38px rgba(2,132,199,.07) !important;}
.drt-public-flow-row strong{background:linear-gradient(135deg,#0284c7,#10b981) !important;}
.drt-public-catalog-cta{
  border-color:#bae6fd !important;
  background:linear-gradient(135deg,#f0f9ff,#ffffff,#ecfdf5) !important;
  box-shadow:0 22px 60px rgba(2,132,199,.09) !important;
}
.drt-public-card li::before{color:#0284c7 !important;}
.drt-public-link{color:#0284c7 !important;}
.drt-public-link.is-light{color:#bbf7d0 !important;}

/* Rich public catalog page */
.drt-catalog-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-top:1.2rem;}
.drt-catalog-matrix article{border:1px solid #dbeafe;border-radius:1.35rem;background:#fff;padding:1rem;box-shadow:0 16px 44px rgba(2,132,199,.06);}
.drt-catalog-matrix h3{margin:0 0 .55rem;color:#075985;font-size:.98rem;font-weight:950;}
.drt-catalog-matrix ul{margin:0;padding:0;list-style:none;display:grid;gap:.42rem;}
.drt-catalog-matrix li{color:#475569;font-size:.82rem;line-height:1.7;font-weight:760;}
.drt-catalog-matrix li::before{content:"";display:inline-block;width:.42rem;height:.42rem;border-radius:999px;background:#10b981;margin-inline-end:.45rem;vertical-align:middle;}
.drt-catalog-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:1rem;overflow:hidden;border:1px solid #dbeafe;border-radius:1.2rem;background:#fff;box-shadow:0 18px 48px rgba(2,132,199,.06);}
.drt-catalog-table th,.drt-catalog-table td{padding:.82rem .9rem;border-bottom:1px solid #e0f2fe;text-align:start;font-size:.84rem;line-height:1.7;}
.drt-catalog-table th{background:#f0f9ff;color:#075985;font-weight:950;}
.drt-catalog-table td{color:#475569;font-weight:760;}
.drt-catalog-table tr:last-child td{border-bottom:0;}
.drt-catalog-stack{display:grid;gap:.8rem;margin-top:1rem;}
.drt-catalog-stack .item{display:grid;grid-template-columns:auto 1fr;gap:.75rem;border:1px solid #dbeafe;border-radius:1.2rem;background:#fff;padding:1rem;box-shadow:0 14px 40px rgba(2,132,199,.055);}
.drt-catalog-stack .num{width:2.15rem;height:2.15rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.8rem;background:linear-gradient(135deg,#0284c7,#10b981);color:#fff;font-weight:950;}
.drt-catalog-stack h3{margin:0;color:#0f172a;font-size:.98rem;font-weight:950;}.drt-catalog-stack p{margin:.25rem 0 0;color:#64748b;font-size:.84rem;line-height:1.75;font-weight:760;}
@media (max-width:1024px){.drt-catalog-matrix{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.drt-catalog-matrix{grid-template-columns:1fr;}.drt-catalog-table{display:block;overflow:auto;}.drt-catalog-stack .item{grid-template-columns:1fr;}}


/* DrTime final blue-primary visual system */
:root{
  --drt-primary: rgb(37 99 235);       /* blue-600 */
  --drt-primary-dark: rgb(30 64 175);  /* blue-800 */
  --drt-success: rgb(16 185 129);      /* emerald-500 as secondary/accent */
}
[data-accent="blue"], body, html{
  --drt-accent: 37 99 235 !important;        /* primary blue */
  --drt-accent-soft: 239 246 255 !important; /* blue-50 */
  --drt-secondary: 16 185 129;               /* green accent */
  --drt-secondary-soft: 236 253 245;
}
.btn-primary,
.drt-public-btn--dark{
  background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 58%,#0ea5e9 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(37,99,235,.24) !important;
}
.btn-primary:hover,.drt-public-btn--dark:hover{filter:saturate(1.08) brightness(1.02);}

/* Panel shell: blue is dominant, green is only a small accent. */
.drt-sidebar{
  background:
    radial-gradient(720px circle at 18% -8%, rgba(125,211,252,.26), transparent 48%),
    linear-gradient(180deg,#0b1f52 0%,#123d8a 46%,#0f4fa8 100%) !important;
  border-inline-end:1px solid rgba(191,219,254,.20) !important;
  box-shadow:16px 0 48px rgba(15,23,42,.22) !important;
}
html[dir="rtl"] .drt-sidebar{
  background:
    radial-gradient(720px circle at 82% -8%, rgba(125,211,252,.26), transparent 48%),
    linear-gradient(180deg,#0b1f52 0%,#123d8a 46%,#0f4fa8 100%) !important;
  box-shadow:-16px 0 48px rgba(15,23,42,.22) !important;
}
.drt-sidebar::before{
  background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 40%) !important;
  opacity:1 !important;
}
.drt-sidebar .text-slate-900,
.drt-sidebar .drt-user-name{color:#f8fbff !important;}
.drt-sidebar .text-slate-600,
.drt-sidebar .drt-user-meta,
.drt-sidebar .drt-nav-label{color:#c8d7ee !important;}
.drt-sidebar .drt-accent-soft{
  background:rgba(96,165,250,.16) !important;
  border:1px solid rgba(147,197,253,.22) !important;
}
.drt-sidebar .drt-accent-text{color:#bfdbfe !important;}
.drt-sidebar .drt-user-card,
.drt-sidebar .drt-nav-section{
  border-color:rgba(191,219,254,.18) !important;
  background:rgba(255,255,255,.07) !important;
  box-shadow:none !important;
  backdrop-filter:blur(12px);
}
.drt-sidebar .drt-user-link,
.drt-sidebar form button{
  border-color:rgba(191,219,254,.24) !important;
  background:rgba(255,255,255,.08) !important;
  color:#dbeafe !important;
}
.drt-sidebar .drt-nav-item{color:#d9e7fb !important;border-color:transparent !important;}
.drt-sidebar .drt-nav-item svg{color:#9ec6ff !important;}
.drt-sidebar .drt-nav-item:hover{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(191,219,254,.26) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.drt-sidebar .drt-nav-item:hover svg{color:#dbeafe !important;}
.drt-sidebar .drt-nav-item.is-active{
  background:linear-gradient(135deg,#ffffff 0%,#eff6ff 68%,#ecfeff 100%) !important;
  border-color:rgba(96,165,250,.45) !important;
  color:#0f172a !important;
  box-shadow:0 16px 32px rgba(2,6,23,.20) !important;
}
.drt-sidebar .drt-nav-item.is-active svg{color:#2563eb !important;}
.drt-sidebar .drt-nav-item.is-active::before,
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{background:#10b981 !important;color:#ecfdf5 !important;}
.drt-sidebar .drt-nav-badge{background:rgba(96,165,250,.22) !important;color:#dbeafe !important;}
.drt-sidebar .drt-nav-badge.danger{background:rgba(244,63,94,.20) !important;color:#fecdd3 !important;}

.drt-topbar,
.drt-topbar-panel,
header.drt-topbar{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.96)) !important;
  border-color:rgba(147,197,253,.26) !important;
  box-shadow:0 18px 46px rgba(37,99,235,.08) !important;
}
.drt-page-hero,
.drt-patient-hero,
.drt-manager-command,
.drt-scheduler-hero,
.drt-treatment-hero{
  background:
    radial-gradient(560px circle at 10% 0%, rgba(59,130,246,.18), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#eff6ff 58%,#ecfeff 100%) !important;
  border-color:rgba(96,165,250,.24) !important;
  box-shadow:0 22px 60px rgba(37,99,235,.08) !important;
}
html[dir="rtl"] .drt-page-hero,
html[dir="rtl"] .drt-patient-hero,
html[dir="rtl"] .drt-manager-command,
html[dir="rtl"] .drt-scheduler-hero,
html[dir="rtl"] .drt-treatment-hero{
  background:
    radial-gradient(560px circle at 90% 0%, rgba(59,130,246,.18), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#eff6ff 58%,#ecfeff 100%) !important;
}

/* Public website: blue primary, green as accent details only. */
.drt-public-header,
body > header.sticky.top-0{
  background:rgba(255,255,255,.92) !important;
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(96,165,250,.18) !important;
  box-shadow:0 14px 36px rgba(37,99,235,.08) !important;
}
body > header a:hover{color:#2563eb !important;}
body > header .text-blue-600{color:#2563eb !important;}
body > header a[href*="/panel/login"],
body > header a[href$="/panel/login/"]{
  background:linear-gradient(135deg,#1d4ed8,#2563eb 65%,#0ea5e9) !important;
  color:#fff !important;
}
body > header a[href*="/booking"]{background:#eff6ff !important;color:#1d4ed8 !important;}
.drt-public-hero{
  border-color:rgba(96,165,250,.22) !important;
  background:
    radial-gradient(760px circle at 12% -10%, rgba(59,130,246,.30), transparent 54%),
    radial-gradient(520px circle at 92% 10%, rgba(16,185,129,.16), transparent 58%),
    linear-gradient(135deg,#eff6ff 0%,#f0f9ff 52%,#ecfeff 100%) !important;
  box-shadow:0 30px 86px rgba(37,99,235,.12) !important;
}
html[dir="rtl"] .drt-public-hero{
  background:
    radial-gradient(760px circle at 88% -10%, rgba(59,130,246,.30), transparent 54%),
    radial-gradient(520px circle at 8% 10%, rgba(16,185,129,.16), transparent 58%),
    linear-gradient(135deg,#eff6ff 0%,#f0f9ff 52%,#ecfeff 100%) !important;
}
.drt-public-hero::after{background:radial-gradient(circle,rgba(37,99,235,.18),transparent 68%) !important;}
.drt-public-kicker,
.drt-public-section-head span,
.drt-public-catalog-cta span{
  color:#1d4ed8 !important;
  background:#eff6ff !important;
  border-color:rgba(96,165,250,.24) !important;
}
.drt-public-btn--light{color:#1d4ed8 !important;border-color:#bfdbfe !important;background:#fff !important;}
.drt-public-btn--outline{border-color:#bfdbfe !important;color:#1e40af !important;background:rgba(255,255,255,.74) !important;}
.drt-public-board-card,
.drt-public-card.is-dark{background:linear-gradient(135deg,#0b2a6f,#1d4ed8 66%,#0284c7) !important;}
.drt-public-feature-grid article>span{background:linear-gradient(135deg,#dbeafe,#ecfeff) !important;color:#2563eb !important;}
.drt-public-feature-grid article:hover{border-color:#bfdbfe !important;box-shadow:0 22px 60px rgba(37,99,235,.10) !important;}
.drt-public-flow-row div{border-color:#bfdbfe !important;box-shadow:0 16px 38px rgba(37,99,235,.07) !important;}
.drt-public-flow-row strong{background:linear-gradient(135deg,#1d4ed8,#2563eb 70%,#10b981) !important;}
.drt-public-catalog-cta{border-color:#bfdbfe !important;background:linear-gradient(135deg,#eff6ff,#ffffff,#ecfeff) !important;box-shadow:0 22px 60px rgba(37,99,235,.09) !important;}
.drt-public-card li::before{color:#2563eb !important;}
.drt-public-link{color:#2563eb !important;}
.drt-public-link.is-light{color:#dbeafe !important;}
.drt-catalog-matrix article{border-color:#dbeafe !important;box-shadow:0 16px 44px rgba(37,99,235,.06) !important;}
.drt-catalog-matrix h3{color:#1d4ed8 !important;}
.drt-catalog-stack .num{background:linear-gradient(135deg,#1d4ed8,#0ea5e9) !important;}

/* ------------------------------------------------------------------
   Final pass: brighter blue/green theme + clearer patient actions
------------------------------------------------------------------ */
:root{
  --drt-primary: rgb(59 130 246);       /* brighter blue */
  --drt-primary-dark: rgb(37 99 235);
  --drt-success: rgb(34 197 94);        /* brighter green */
}
[data-accent="blue"], body, html{
  --drt-accent: 59 130 246 !important;
  --drt-accent-soft: 239 246 255 !important;
  --drt-secondary: 34 197 94;
  --drt-secondary-soft: 240 253 244;
}
.btn-primary,
.drt-public-btn--dark{
  background:linear-gradient(135deg,#2563eb 0%,#3b82f6 58%,#38bdf8 100%) !important;
  box-shadow:0 16px 38px rgba(59,130,246,.22) !important;
}
.btn-success{background:linear-gradient(135deg,#16a34a,#22c55e) !important;color:#fff !important;}
.drt-sidebar{
  background:
    radial-gradient(720px circle at 18% -8%, rgba(186,230,253,.30), transparent 50%),
    linear-gradient(180deg,#123d8a 0%,#1d5fc7 48%,#0ea5e9 100%) !important;
}
html[dir="rtl"] .drt-sidebar{
  background:
    radial-gradient(720px circle at 82% -8%, rgba(186,230,253,.30), transparent 50%),
    linear-gradient(180deg,#123d8a 0%,#1d5fc7 48%,#0ea5e9 100%) !important;
}
.drt-sidebar .drt-nav-item.is-active svg{color:#3b82f6 !important;}
.drt-sidebar .drt-nav-item.is-active::before,
.drt-sidebar .drt-nav-item.is-active .drt-nav-badge{background:#22c55e !important;color:#ecfdf5 !important;}
.drt-patient-hero,
.drt-page-hero,
.drt-manager-command,
.drt-scheduler-hero,
.drt-treatment-hero{
  background:
    radial-gradient(580px circle at 10% 0%, rgba(96,165,250,.22), transparent 58%),
    radial-gradient(540px circle at 92% 8%, rgba(34,197,94,.14), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#eff6ff 55%,#ecfeff 100%) !important;
  border-color:rgba(147,197,253,.32) !important;
}
html[dir="rtl"] .drt-patient-hero,
html[dir="rtl"] .drt-page-hero,
html[dir="rtl"] .drt-manager-command,
html[dir="rtl"] .drt-scheduler-hero,
html[dir="rtl"] .drt-treatment-hero{
  background:
    radial-gradient(580px circle at 90% 0%, rgba(96,165,250,.22), transparent 58%),
    radial-gradient(540px circle at 8% 8%, rgba(34,197,94,.14), transparent 58%),
    linear-gradient(135deg,#ffffff 0%,#eff6ff 55%,#ecfeff 100%) !important;
}
.drt-patient-avatar{background:linear-gradient(135deg,#22c55e,#38bdf8) !important; box-shadow:0 14px 30px rgba(34,197,94,.18) !important;}
.drt-file-nav a:hover{border-color:#93c5fd !important;color:#2563eb !important;background:#eff6ff !important;}
.drt-section-card--schedule .drt-section-dot{background:linear-gradient(135deg,#22c55e,#86efac) !important;}
.drt-timeline-dot{background:#3b82f6 !important;box-shadow:0 0 0 4px #dbeafe !important;}

.drt-plist-page{--plist-primary:#2563eb;--plist-soft:#eff6ff;--plist-border:#bfdbfe;}
.drt-plist-hero{border-color:#bfdbfe;background:radial-gradient(circle at top left,rgba(96,165,250,.16),transparent 30rem),linear-gradient(135deg,#fff,#eff6ff)!important;}
[dir="rtl"] .drt-plist-hero{background:radial-gradient(circle at top right,rgba(96,165,250,.16),transparent 30rem),linear-gradient(225deg,#fff,#eff6ff)!important;}
.drt-plist-hero-icon{color:#2563eb!important;border-color:#bfdbfe!important;box-shadow:0 12px 26px rgba(59,130,246,.12)!important;}
.drt-plist-card{position:relative;}
.drt-plist-card-main{align-items:stretch;}
.drt-plist-card-tools{display:grid;gap:.55rem;justify-items:end;align-content:start;min-width:18rem;}
.drt-plist-badges{max-width:100%;}
.drt-plist-action-rail{
  display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;
  padding:.45rem;border:1px solid #dbeafe;border-radius:1rem;
  background:linear-gradient(135deg,#ffffff,#eff6ff);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 10px 22px rgba(59,130,246,.07);
}
.drt-plist-action-rail .btn{min-height:2.1rem;font-size:.76rem;font-weight:950;white-space:nowrap;}
.drt-plist-action-rail .btn-primary{min-width:7rem;}
.drt-plist-action-note{align-self:center;color:#64748b;font-size:.72rem;font-weight:850;line-height:1.55;text-align:end;}
.drt-plist-avatar{background:linear-gradient(135deg,#dbeafe,#dcfce7)!important;color:#2563eb!important;border-color:#bfdbfe!important;}
.drt-plist-card:hover{border-color:#93c5fd!important;box-shadow:0 20px 42px rgba(59,130,246,.09)!important;}
.drt-plist-kpi--total::before{background:#3b82f6!important;}.drt-plist-kpi--page::before{background:#60a5fa!important;}
@media (max-width:880px){
  .drt-plist-card-tools{min-width:0;justify-items:start;width:100%;}
  .drt-plist-action-rail{justify-content:flex-start;width:100%;}
  .drt-plist-action-rail .btn{flex:1 1 auto;}
  .drt-plist-action-note{text-align:start;}
}

.drt-patient-accordion{transition:border-color .15s ease, box-shadow .15s ease;}
.drt-patient-accordion > summary{list-style:none;cursor:pointer;}
.drt-patient-accordion > summary::-webkit-details-marker{display:none;}
.drt-accordion-summary{align-items:center!important;}
.drt-accordion-summary::after{
  content:"⌄";display:inline-flex;align-items:center;justify-content:center;
  width:1.75rem;height:1.75rem;border-radius:999px;border:1px solid #dbeafe;
  background:#fff;color:#2563eb;font-weight:950;transition:transform .15s ease;
  box-shadow:0 8px 18px rgba(59,130,246,.08);
}
.drt-patient-accordion[open] > .drt-accordion-summary::after{transform:rotate(180deg);}
.drt-accordion-body{margin-top:.75rem;}
.drt-patient-accordion:not([open]){box-shadow:0 8px 18px rgba(15,23,42,.035)!important;}
.drt-patient-accordion:not([open]) .drt-portal-lab-count,
.drt-patient-accordion:not([open]) .badge{opacity:.9;}
.drt-portal-lab-card.drt-patient-accordion{padding:1rem;}
.drt-portal-lab-card.drt-patient-accordion > summary{margin:0;}
.drt-portal-lab-card .drt-portal-empty-state{display:grid;gap:.25rem;text-align:start;}
.drt-portal-lab-card .drt-portal-empty-state strong{color:#0f172a;font-size:.92rem;font-weight:950;}
.drt-portal-lab-card .drt-portal-empty-state span{color:#64748b;font-size:.82rem;font-weight:800;line-height:1.65;}
.drt-billing-action-panel:not([open]){background:#f8fafc;border-style:dashed;}

/* Patient import and clearer patient-file navigation */
.drt-import-page{margin-inline:auto;}
.drt-import-grid{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:1rem;}
@media (min-width:1024px){.drt-import-grid{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);align-items:start;}}
.drt-import-card,.drt-import-help,.drt-import-result{border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 18px 44px rgba(37,99,235,.06);}
.drt-import-form{display:grid;gap:1rem;margin-top:1rem;}
.drt-import-steps{display:grid;gap:.7rem;margin:.85rem 0 0;padding-inline-start:1.2rem;color:#334155;font-size:.92rem;line-height:1.8;}
[dir="rtl"] .drt-import-steps{padding-inline-start:0;padding-inline-end:1.2rem;}
.drt-import-fields{margin-top:1rem;border:1px dashed #bfdbfe;background:#eff6ff;border-radius:1rem;padding:.9rem;color:#1e3a8a;}
.drt-import-fields span{font-weight:900;display:block;margin-bottom:.3rem;}
.drt-import-fields p{margin:0;font-size:.86rem;line-height:1.8;color:#1e40af;}
.drt-import-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem;}
@media (min-width:768px){.drt-import-kpis{grid-template-columns:repeat(5,minmax(0,1fr));}}
.drt-import-kpis article{border:1px solid #dbeafe;background:#fff;border-radius:1rem;padding:.8rem;text-align:center;box-shadow:0 10px 26px rgba(15,23,42,.04);}
.drt-import-kpis span{display:block;color:#64748b;font-size:.78rem;font-weight:800;}
.drt-import-kpis strong{display:block;margin-top:.2rem;font-size:1.35rem;color:#0f172a;font-weight:950;}
.drt-import-error-table-wrap{margin-top:1rem;overflow:auto;border:1px solid #fde68a;border-radius:1rem;background:#fff;}
.drt-import-error-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.86rem;}
.drt-import-error-table th{position:sticky;top:0;background:#f59e0b;color:#fff;text-align:start;padding:.75rem;font-weight:900;white-space:nowrap;}
.drt-import-error-table td{border-top:1px solid #fef3c7;padding:.65rem .75rem;vertical-align:top;color:#334155;}
.drt-import-error-table tbody tr:nth-child(even){background:#fffbeb;}
.drt-patient-focus-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.9rem 0 1rem;}
@media (min-width:900px){.drt-patient-focus-strip{grid-template-columns:repeat(5,minmax(0,1fr));}}
.drt-patient-focus-card{position:relative;display:flex;flex-direction:column;gap:.2rem;text-decoration:none;border:1px solid #dbeafe;background:linear-gradient(135deg,#fff,#f8fbff);border-radius:1rem;padding:.9rem;min-height:5.5rem;box-shadow:0 12px 30px rgba(15,23,42,.045);overflow:hidden;}
.drt-patient-focus-card::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#38bdf8;}
.drt-patient-focus-card.is-doc::before{background:#f59e0b;}.drt-patient-focus-card.is-appt::before{background:#38bdf8;}.drt-patient-focus-card.is-treatment::before{background:#a78bfa;}.drt-patient-focus-card.is-lab::before{background:#2dd4bf;}.drt-patient-focus-card.is-loyalty::before{background:#2563eb;}.drt-patient-focus-card.is-billing::before{background:#4ade80;}
.drt-patient-focus-card:hover{border-color:#93c5fd;box-shadow:0 16px 34px rgba(37,99,235,.11);transform:translateY(-1px);}
.drt-patient-focus-card span{color:#64748b;font-size:.76rem;font-weight:900;}
.drt-patient-focus-card strong{color:#0f172a;font-size:1.05rem;font-weight:950;}
.drt-patient-focus-card small{color:#64748b;font-size:.76rem;}
.drt-patient-workspace #patient-card .drt-patient-file{animation:drtPatientFileIn .28s ease-out both;}
@keyframes drtPatientFileIn{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Public site unified visual language: keep all public pages aligned with the homepage. */
.drt-public-hero--compact{grid-template-columns:minmax(0,1fr) minmax(18rem,.56fr);min-height:auto;}
.drt-public-hero--compact .drt-public-hero__board{align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
.drt-public-contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.72fr);gap:1.1rem;align-items:start;}
.drt-public-booking-layout{display:grid;grid-template-columns:minmax(18rem,.72fr) minmax(0,1fr);gap:1.1rem;align-items:start;}
.drt-public-branch-grid,.drt-public-doctor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
.drt-public-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;}
.drt-public-soft-card,.drt-public-profile-card,.drt-public-form-card{border:1px solid #dbeafe;border-radius:1.5rem;background:linear-gradient(180deg,#fff,#f8fbff);padding:1.15rem;box-shadow:0 20px 52px rgba(37,99,235,.065);}
.drt-public-soft-card h3,.drt-public-profile-card h3{margin:0;color:#0f172a;font-size:1rem;font-weight:950;line-height:1.45;}
.drt-public-soft-card p,.drt-public-profile-card p{margin:.35rem 0 0;color:#64748b;font-size:.86rem;font-weight:760;line-height:1.75;}
.drt-public-mini-action{display:inline-flex;align-items:center;justify-content:center;border-radius:.95rem;border:1px solid #cbd5e1;background:#fff;color:#334155;padding:.55rem .85rem;font-size:.8rem;font-weight:950;text-decoration:none;transition:transform .16s ease,background .16s ease,border-color .16s ease;}
.drt-public-mini-action:hover{transform:translateY(-1px);border-color:#93c5fd;background:#eff6ff;}
.drt-public-mini-action.is-primary{border-color:#bfdbfe;background:linear-gradient(135deg,#2563eb,#38bdf8);color:#fff;box-shadow:0 14px 28px rgba(37,99,235,.16);}
.drt-public-info-tile{border:1px solid #dbeafe;border-radius:1rem;background:#eff6ff;padding:.9rem;}
.drt-public-info-tile span{display:block;color:#64748b;font-size:.72rem;font-weight:900;}
.drt-public-info-tile strong{display:block;margin-top:.18rem;color:#0f172a;font-size:.86rem;font-weight:950;}
.drt-public-profile-card{display:flex;flex-direction:column;gap:.85rem;}
.drt-public-profile-card__head{display:flex;align-items:center;gap:.85rem;}
.drt-public-avatar{height:4.2rem;width:4.2rem;flex:0 0 auto;overflow:hidden;border-radius:1.25rem;background:linear-gradient(135deg,#dbeafe,#ecfeff);box-shadow:inset 0 0 0 1px #bfdbfe;display:flex;align-items:center;justify-content:center;}
.drt-public-avatar img{height:100%;width:100%;object-fit:cover;}
.drt-public-avatar span{font-size:1.25rem;font-weight:950;color:#2563eb;}
.drt-public-tag-row{display:flex;flex-wrap:wrap;gap:.35rem;}
.drt-public-tag-row span{border-radius:999px;background:#eff6ff;color:#2563eb;border:1px solid #dbeafe;padding:.2rem .55rem;font-size:.68rem;font-weight:900;}
.drt-public-profile-bio{flex:1;}
.drt-public-gallery-card{overflow:hidden;text-align:start;border:1px solid #dbeafe;border-radius:1.25rem;background:#fff;box-shadow:0 18px 42px rgba(37,99,235,.055);}
.drt-public-gallery-card img{height:10.5rem;width:100%;object-fit:cover;transition:transform .18s ease;}
.drt-public-gallery-card:hover img{transform:scale(1.035);}
.drt-public-gallery-card span{display:block;padding:.65rem .8rem;color:#64748b;font-size:.78rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.drt-public-empty{border:1px dashed #bfdbfe;border-radius:1.25rem;background:#eff6ff;padding:1rem;color:#475569;font-size:.9rem;font-weight:800;line-height:1.8;}
.drt-public-label{display:block;color:#334155;font-size:.83rem;font-weight:950;}
.drt-public-input{margin-top:.45rem;width:100%;border:1px solid #dbeafe;border-radius:1rem;background:#f8fbff;padding:.82rem 1rem;color:#0f172a;font-size:.9rem;outline:none;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;}
.drt-public-input:focus{background:#fff;border-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.18);}
.drt-public-textarea{min-height:9rem;resize:vertical;}
.drt-public-field-error{margin-top:.35rem;color:#be123c;font-size:.75rem;font-weight:850;line-height:1.7;}
.drt-public-alert{margin-top:1rem;border-radius:1.15rem;padding:.85rem 1rem;font-size:.85rem;font-weight:850;line-height:1.75;}
.drt-public-alert--success{border:1px solid #bbf7d0;background:#ecfdf5;color:#047857;}
.drt-public-alert--error{border:1px solid #fecdd3;background:#fff1f2;color:#be123c;}
.drt-public-branch-hero{position:relative;overflow:hidden;border:1px solid #dbeafe;border-radius:2rem;min-height:22rem;background:#0f172a;box-shadow:0 28px 80px rgba(37,99,235,.12);}
.drt-public-branch-cover,.drt-public-branch-cover img,.drt-public-branch-cover__placeholder{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;}
.drt-public-branch-cover__placeholder{background:linear-gradient(135deg,#dbeafe,#ecfeff,#d1fae5);}
.drt-public-branch-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,42,.88),rgba(30,64,175,.62),rgba(14,165,233,.18));}
html[dir="rtl"] .drt-public-branch-overlay{background:linear-gradient(270deg,rgba(15,23,42,.88),rgba(30,64,175,.62),rgba(14,165,233,.18));}
.drt-public-branch-hero__content{position:relative;z-index:1;max-width:48rem;padding:clamp(1.5rem,5vw,3rem);color:#fff;}
.drt-public-branch-hero__content h1{margin:.8rem 0 0;font-size:clamp(2rem,4vw,4rem);font-weight:950;line-height:1.1;letter-spacing:-.045em;}
.drt-public-branch-hero__content p{margin:1rem 0 0;color:rgba(255,255,255,.88);font-size:.98rem;font-weight:760;line-height:1.9;}
.drt-public-footer{border-top:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#f8fbff);}
.drt-public-footer-grid{display:grid;grid-template-columns:1.2fr .72fr .9fr 1.05fr;gap:1.25rem;align-items:start;}
.drt-public-footer-title{color:#2563eb;font-size:.76rem;font-weight:950;margin-bottom:.65rem;}
.drt-public-footer-links{display:grid;gap:.45rem;}
.drt-public-footer-links a{color:#475569;font-size:.86rem;font-weight:820;text-decoration:none;}
.drt-public-footer-links a:hover{color:#2563eb;}
.drt-public-footer-card,.drt-public-designer-badge{border:1px solid #dbeafe;border-radius:1.25rem;background:#fff;padding:1rem;box-shadow:0 18px 44px rgba(37,99,235,.055);}
.drt-public-footer-action{display:inline-flex;margin-top:.8rem;color:#2563eb;font-size:.85rem;font-weight:950;text-decoration:none;}
.drt-public-designer-badge{display:flex;align-items:center;gap:.8rem;}
.drt-public-footer-bottom{margin-top:2rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid #dbeafe;padding-top:1.35rem;color:#64748b;font-size:.76rem;font-weight:850;}
@media (max-width:1024px){.drt-public-hero--compact,.drt-public-contact-layout,.drt-public-booking-layout{grid-template-columns:1fr;}.drt-public-footer-grid{grid-template-columns:1fr 1fr;}.drt-public-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:720px){.drt-public-branch-grid,.drt-public-doctor-grid,.drt-public-footer-grid{grid-template-columns:1fr;}.drt-public-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.drt-public-gallery-card img{height:8.5rem;}.drt-public-designer-badge{align-items:flex-start;flex-direction:column;}.drt-public-footer-bottom{align-items:flex-start;flex-direction:column;}}

/* ------------------------------------------------------------------
   Public header v2: polished glass navigation, clearer CTAs, mobile menu
------------------------------------------------------------------ */
.drt-public-header-v2{
  position:sticky;
  top:0;
  isolation:isolate;
  overflow:visible;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.86)) !important;
  border-bottom:1px solid rgba(147,197,253,.26) !important;
  box-shadow:0 18px 46px rgba(37,99,235,.10) !important;
  backdrop-filter:blur(22px);
}
.drt-public-header-v2::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(239,246,255,.92),rgba(255,255,255,.48),rgba(236,253,245,.55));
}
html[dir="rtl"] .drt-public-header-v2::before{
  background:linear-gradient(270deg,rgba(239,246,255,.92),rgba(255,255,255,.48),rgba(236,253,245,.55));
}
.drt-public-header-orb{
  position:absolute;
  z-index:-2;
  pointer-events:none;
  filter:blur(2px);
  opacity:.72;
}
.drt-public-header-orb--blue{
  inset-block-start:-5rem;
  inset-inline-start:8%;
  width:17rem;
  height:9rem;
  border-radius:999px;
  background:radial-gradient(circle,rgba(96,165,250,.32),transparent 68%);
}
.drt-public-header-orb--green{
  inset-block-start:-5.5rem;
  inset-inline-end:12%;
  width:14rem;
  height:8rem;
  border-radius:999px;
  background:radial-gradient(circle,rgba(34,197,94,.18),transparent 70%);
}
.drt-public-header-shell{
  min-height:5.35rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:1rem;
}
.drt-public-brand{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:.78rem;
  color:#0f172a !important;
  text-decoration:none;
}
.drt-public-brand:hover{color:#0f172a !important;}
.drt-public-brand-mark{
  width:3.05rem;
  height:3.05rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:1.15rem;
  background:
    radial-gradient(circle at 30% 15%,rgba(255,255,255,.78),transparent 38%),
    linear-gradient(135deg,#2563eb 0%,#38bdf8 58%,#22c55e 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 16px 34px rgba(37,99,235,.20), inset 0 0 0 1px rgba(255,255,255,.18);
}
.drt-public-brand-mark img{width:100%;height:100%;object-fit:cover;}
.drt-public-brand-mark span{font-size:.95rem;font-weight:950;letter-spacing:-.02em;}
.drt-public-brand-copy{display:grid;gap:.06rem;min-width:0;}
.drt-public-brand-copy strong{
  display:block;
  max-width:13rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#0f172a;
  font-size:1.08rem;
  font-weight:950;
  letter-spacing:-.035em;
}
.drt-public-brand-copy small{
  color:#64748b;
  font-size:.72rem;
  font-weight:850;
  direction:ltr;
  text-align:start;
}
.drt-public-nav{
  justify-self:center;
  min-width:0;
  display:flex;
  align-items:center;
  gap:.22rem;
  max-width:100%;
  padding:.35rem;
  border:1px solid rgba(191,219,254,.80);
  border-radius:999px;
  background:rgba(255,255,255,.70);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 14px 34px rgba(37,99,235,.07);
  overflow:auto;
  scrollbar-width:none;
}
.drt-public-nav::-webkit-scrollbar{display:none;}
.drt-public-nav-link{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.15rem;
  padding:.46rem .78rem;
  border-radius:999px;
  color:#475569 !important;
  font-size:.78rem;
  font-weight:930;
  line-height:1;
  white-space:nowrap;
  text-decoration:none;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.drt-public-nav-link:hover{
  transform:translateY(-1px);
  background:#eff6ff;
  color:#2563eb !important;
}
.drt-public-nav-link.is-active{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb,#3b82f6 64%,#38bdf8);
  box-shadow:0 10px 22px rgba(37,99,235,.18);
}
.drt-public-header-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:.45rem;
  min-width:0;
}
.drt-public-lang,
.drt-public-header-portal,
.drt-public-header-login,
.drt-public-header-book,
.drt-public-menu-button{
  min-height:2.45rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  border-radius:999px;
  border:1px solid rgba(191,219,254,.90);
  background:rgba(255,255,255,.74);
  color:#334155 !important;
  padding:.54rem .78rem;
  font-size:.78rem;
  font-weight:950;
  line-height:1;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
.drt-public-lang svg,
.drt-public-header-portal svg,
.drt-public-header-book svg{color:currentColor;}
.drt-public-lang select{
  border:0;
  background:transparent;
  color:inherit;
  font-weight:950;
  outline:none;
  cursor:pointer;
}
.drt-public-header-portal:hover,
.drt-public-lang:hover,
.drt-public-menu-button:hover{
  transform:translateY(-1px);
  border-color:#93c5fd;
  background:#eff6ff;
  color:#2563eb !important;
  box-shadow:0 14px 28px rgba(37,99,235,.09);
}
.drt-public-header-v2 .drt-public-header-login{
  border-color:rgba(59,130,246,.34) !important;
  background:linear-gradient(135deg,#fff,#eff6ff) !important;
  color:#1d4ed8 !important;
}
.drt-public-header-v2 .drt-public-header-login:hover{
  transform:translateY(-1px);
  border-color:#60a5fa !important;
  box-shadow:0 14px 30px rgba(37,99,235,.12);
}
.drt-public-header-v2 .drt-public-header-book{
  border-color:rgba(37,99,235,.36) !important;
  background:linear-gradient(135deg,#2563eb,#3b82f6 60%,#38bdf8) !important;
  color:#fff !important;
  box-shadow:0 16px 32px rgba(37,99,235,.18) !important;
}
.drt-public-header-v2 .drt-public-header-book:hover{
  transform:translateY(-1px);
  filter:saturate(1.08) brightness(1.02);
}
.drt-public-menu-button{
  display:none;
  width:2.55rem;
  padding:0;
  cursor:pointer;
}
.drt-public-mobile-panel{
  padding:0 0 1rem;
}
.drt-public-mobile-nav{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.5rem;
  border:1px solid #dbeafe;
  border-radius:1.4rem;
  background:rgba(255,255,255,.82);
  padding:.65rem;
  box-shadow:0 18px 42px rgba(37,99,235,.08);
}
.drt-public-mobile-nav a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:2.6rem;
  border-radius:1rem;
  color:#334155;
  background:#f8fbff;
  border:1px solid #e0f2fe;
  font-size:.86rem;
  font-weight:930;
  text-decoration:none;
}
.drt-public-mobile-nav a.is-active{
  color:#fff;
  border-color:#60a5fa;
  background:linear-gradient(135deg,#2563eb,#3b82f6 64%,#38bdf8);
}
.drt-public-mobile-actions{
  display:grid;
  gap:.55rem;
  grid-template-columns:1fr;
  margin-top:.7rem;
}
.drt-public-mobile-actions .drt-public-header-book,
.drt-public-mobile-actions .drt-public-header-portal,
.drt-public-mobile-actions .drt-public-header-login,
.drt-public-mobile-actions .drt-public-lang{
  width:100%;
  border-radius:1rem;
  min-height:2.75rem;
}
.drt-public-lang--mobile{display:flex;}
@media (max-width:1220px){
  .drt-public-header-shell{grid-template-columns:auto 1fr auto;gap:.75rem;}
  .drt-public-nav{justify-self:stretch;}
  .drt-public-nav-link{padding:.46rem .62rem;font-size:.74rem;}
  .drt-public-header-portal span{display:none;}
  .drt-public-header-book span{display:none;}
}
@media (max-width:1024px){
  .drt-public-header-shell{min-height:4.65rem;grid-template-columns:auto auto;}
  .drt-public-nav{display:none;}
  .drt-public-header-actions{justify-self:end;}
  .drt-public-header-actions>.drt-public-lang,
  .drt-public-header-actions>.drt-public-header-portal,
  .drt-public-header-actions>.drt-public-header-login{display:none;}
  .drt-public-menu-button{display:inline-flex;}
  .drt-public-brand-mark{width:2.72rem;height:2.72rem;border-radius:1rem;}
}
@media (max-width:640px){
  .drt-public-header-v2 .mx-auto{padding-inline:.75rem;}
  .drt-public-header-shell{min-height:4.35rem;gap:.5rem;}
  .drt-public-brand-copy strong{font-size:.96rem;max-width:9.5rem;}
  .drt-public-brand-copy small{font-size:.66rem;}
  .drt-public-header-actions>.drt-public-header-book{display:none;}
  .drt-public-mobile-nav{grid-template-columns:1fr;}
}

/* ------------------------------------------------------------------
   Public footer v2: same polished glass language as the public header
------------------------------------------------------------------ */
.drt-public-footer-v2{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin-top:3rem;
  border-top:1px solid rgba(147,197,253,.28);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(239,246,255,.86) 58%,rgba(236,253,245,.62));
  box-shadow:0 -18px 46px rgba(37,99,235,.07);
}
.drt-public-footer-v2::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(239,246,255,.92),rgba(255,255,255,.50),rgba(236,253,245,.58));
}
html[dir="rtl"] .drt-public-footer-v2::before{
  background:linear-gradient(270deg,rgba(239,246,255,.92),rgba(255,255,255,.50),rgba(236,253,245,.58));
}
.drt-public-footer-orb{
  position:absolute;
  z-index:-2;
  pointer-events:none;
  filter:blur(2px);
  opacity:.82;
  border-radius:999px;
}
.drt-public-footer-orb--blue{
  inset-block-start:1.5rem;
  inset-inline-start:5%;
  width:24rem;
  height:14rem;
  background:radial-gradient(circle,rgba(96,165,250,.28),transparent 68%);
}
.drt-public-footer-orb--green{
  inset-block-end:-5rem;
  inset-inline-end:8%;
  width:22rem;
  height:13rem;
  background:radial-gradient(circle,rgba(34,197,94,.18),transparent 70%);
}
.drt-public-footer-shell{
  border:1px solid rgba(191,219,254,.82);
  border-radius:2rem;
  background:rgba(255,255,255,.72);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.80),0 28px 76px rgba(37,99,235,.10);
  backdrop-filter:blur(22px);
  padding:1rem;
}
.drt-public-footer-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:1rem;
  border-radius:1.55rem;
  border:1px solid rgba(219,234,254,.92);
  background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(239,246,255,.84),rgba(236,253,245,.58));
  padding:.95rem;
}
.drt-public-footer-brand-v2{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:.85rem;
  color:#0f172a !important;
  text-decoration:none;
}
.drt-public-footer-brand-v2:hover{color:#0f172a !important;}
.drt-public-footer-brand-mark{
  width:3.15rem;
  height:3.15rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:1.18rem;
  background:radial-gradient(circle at 30% 15%,rgba(255,255,255,.78),transparent 38%),linear-gradient(135deg,#2563eb 0%,#38bdf8 58%,#22c55e 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 16px 34px rgba(37,99,235,.18),inset 0 0 0 1px rgba(255,255,255,.18);
}
.drt-public-footer-brand-mark img{width:100%;height:100%;object-fit:cover;}
.drt-public-footer-brand-mark span{font-size:.95rem;font-weight:950;letter-spacing:-.02em;}
.drt-public-footer-brand-copy{display:grid;gap:.1rem;min-width:0;}
.drt-public-footer-brand-copy strong{
  display:block;
  max-width:24rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#0f172a;
  font-size:1.12rem;
  font-weight:950;
  letter-spacing:-.035em;
}
.drt-public-footer-brand-copy small{
  color:#64748b;
  font-size:.77rem;
  font-weight:880;
}
.drt-public-footer-cta-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:.5rem;
}
.drt-public-footer-pill{
  min-height:2.55rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  border-radius:999px;
  border:1px solid rgba(191,219,254,.90);
  background:rgba(255,255,255,.80);
  color:#334155 !important;
  padding:.58rem .85rem;
  font-size:.8rem;
  font-weight:950;
  line-height:1;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,filter .16s ease;
}
.drt-public-footer-pill:hover{
  transform:translateY(-1px);
  border-color:#93c5fd;
  background:#eff6ff;
  color:#2563eb !important;
  box-shadow:0 14px 28px rgba(37,99,235,.09);
}
.drt-public-footer-pill.is-primary{
  border-color:rgba(37,99,235,.36) !important;
  background:linear-gradient(135deg,#2563eb,#3b82f6 60%,#38bdf8) !important;
  color:#fff !important;
  box-shadow:0 16px 32px rgba(37,99,235,.18) !important;
}
.drt-public-footer-pill.is-primary:hover{filter:saturate(1.08) brightness(1.02);}
.drt-public-footer-body{
  display:grid;
  grid-template-columns:1.1fr .9fr .82fr 1.05fr;
  gap:.8rem;
  margin-top:.85rem;
}
.drt-public-footer-panel{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(219,234,254,.92);
  border-radius:1.45rem;
  background:rgba(255,255,255,.74);
  padding:1rem;
  box-shadow:0 16px 38px rgba(37,99,235,.055);
}
.drt-public-footer-panel::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  inset-block-start:0;
  width:4.5rem;
  height:4.5rem;
  border-radius:999px;
  background:radial-gradient(circle,rgba(96,165,250,.16),transparent 70%);
  transform:translate(-35%,-35%);
  pointer-events:none;
}
html[dir="rtl"] .drt-public-footer-panel::before{transform:translate(35%,-35%);}
.drt-public-footer-panel--wide p{
  position:relative;
  margin:.55rem 0 0;
  color:#475569;
  font-size:.88rem;
  font-weight:760;
  line-height:1.9;
}
.drt-public-footer-kicker{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  min-height:1.85rem;
  border-radius:999px;
  border:1px solid rgba(191,219,254,.84);
  background:#eff6ff;
  color:#2563eb;
  padding:.35rem .65rem;
  font-size:.72rem;
  font-weight:950;
  line-height:1;
}
.drt-public-footer-mini-stats{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:.85rem;
}
.drt-public-footer-mini-stats span{
  border-radius:999px;
  border:1px solid rgba(191,219,254,.84);
  background:#fff;
  color:#334155;
  padding:.35rem .65rem;
  font-size:.72rem;
  font-weight:900;
}
.drt-public-footer-link-cloud{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:.78rem;
}
.drt-public-footer-link-cloud a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.15rem;
  border-radius:999px;
  border:1px solid rgba(219,234,254,.94);
  background:#f8fbff;
  color:#475569;
  padding:.44rem .72rem;
  font-size:.78rem;
  font-weight:920;
  text-decoration:none;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease;
}
.drt-public-footer-link-cloud a:hover{
  transform:translateY(-1px);
  border-color:#93c5fd;
  background:#eff6ff;
  color:#2563eb;
}
.drt-public-footer-support-card{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  margin-top:.78rem;
}
.drt-public-footer-support-icon{
  width:2.5rem;
  height:2.5rem;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:1rem;
  background:linear-gradient(135deg,#dbeafe,#ecfeff);
  color:#2563eb;
  border:1px solid #bfdbfe;
}
.drt-public-footer-support-card strong,
.drt-public-designer-badge-v2 strong{
  display:block;
  color:#0f172a;
  font-size:.9rem;
  font-weight:950;
  line-height:1.45;
}
.drt-public-footer-support-card small,
.drt-public-designer-badge-v2 small{
  display:block;
  margin-top:.2rem;
  color:#64748b;
  font-size:.76rem;
  font-weight:780;
  line-height:1.75;
}
.drt-public-footer-inline-action{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:.85rem;
  border-radius:999px;
  border:1px solid rgba(59,130,246,.34);
  background:linear-gradient(135deg,#fff,#eff6ff);
  color:#1d4ed8 !important;
  padding:.5rem .8rem;
  font-size:.78rem;
  font-weight:950;
  text-decoration:none;
}
.drt-public-footer-inline-action:hover{border-color:#60a5fa;background:#eff6ff;}
.drt-public-designer-panel{background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(239,246,255,.70));}
.drt-public-designer-badge-v2{
  position:relative;
  display:flex;
  align-items:center;
  gap:.8rem;
  margin-top:.78rem;
  border-radius:1.2rem;
  border:1px solid rgba(191,219,254,.88);
  background:#fff;
  padding:.75rem;
  box-shadow:0 14px 30px rgba(37,99,235,.06);
}
.drt-public-designer-badge-v2 img{
  width:8.6rem;
  max-width:42%;
  height:auto;
  flex:0 0 auto;
  border-radius:.95rem;
}
.drt-public-footer-bottom-v2{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:.85rem;
  border-radius:1.35rem;
  border:1px solid rgba(219,234,254,.92);
  background:rgba(255,255,255,.68);
  padding:.8rem 1rem;
  color:#64748b;
  font-size:.76rem;
  font-weight:900;
}
.drt-public-footer-domain{
  direction:ltr;
  color:#2563eb;
}
@media (max-width:1180px){
  .drt-public-footer-top{grid-template-columns:1fr;}
  .drt-public-footer-cta-row{justify-content:flex-start;}
  .drt-public-footer-body{grid-template-columns:1fr 1fr;}
}
@media (max-width:720px){
  .drt-public-footer-v2{margin-top:2rem;}
  .drt-public-footer-v2 .mx-auto{padding-inline:.75rem;}
  .drt-public-footer-shell{border-radius:1.35rem;padding:.7rem;}
  .drt-public-footer-top{border-radius:1.1rem;padding:.75rem;}
  .drt-public-footer-brand-mark{width:2.75rem;height:2.75rem;border-radius:1rem;}
  .drt-public-footer-brand-copy strong{font-size:1rem;max-width:13rem;}
  .drt-public-footer-cta-row{display:grid;grid-template-columns:1fr;width:100%;}
  .drt-public-footer-pill{width:100%;border-radius:1rem;}
  .drt-public-footer-body{grid-template-columns:1fr;}
  .drt-public-footer-panel{border-radius:1.1rem;}
  .drt-public-designer-badge-v2{align-items:flex-start;flex-direction:column;}
  .drt-public-designer-badge-v2 img{max-width:100%;width:9.4rem;}
  .drt-public-footer-bottom-v2{align-items:flex-start;flex-direction:column;border-radius:1.1rem;}
}

/* Clinic Today: previous-day open appointment review */
.drt-ct-stale-panel{
  border-color:#fed7aa;
  background:linear-gradient(135deg,#fff7ed,#ffffff 60%,#eff6ff);
}
.drt-ct-pill--warning{
  border-color:#fdba74;
  background:#fff7ed;
  color:#9a3412;
}
.drt-ct-stale-list{
  display:grid;
  gap:.7rem;
}
.drt-ct-stale-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border:1px solid rgba(251,146,60,.35);
  border-radius:1rem;
  background:rgba(255,255,255,.88);
  padding:.8rem;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.drt-ct-stale-main{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  min-width:0;
}
.drt-ct-stale-icon{
  width:2rem;
  height:2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.8rem;
  border:1px solid #fed7aa;
  background:#fff7ed;
  color:#ea580c;
  flex:0 0 auto;
}
.drt-ct-stale-main strong{
  display:block;
  color:#0f172a;
  font-size:.88rem;
  font-weight:950;
  line-height:1.45;
}
.drt-ct-stale-main small{
  display:block;
  margin-top:.15rem;
  color:#64748b;
  font-size:.74rem;
  font-weight:800;
  line-height:1.6;
}
.drt-ct-stale-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:.45rem;
}
@media (max-width:760px){
  .drt-ct-stale-item{
    align-items:stretch;
    flex-direction:column;
  }
  .drt-ct-stale-actions,
  .drt-ct-stale-actions form,
  .drt-ct-stale-actions .btn{
    width:100%;
  }
  .drt-ct-stale-actions .btn{
    justify-content:center;
  }
}
