/* Anyeu Dental Care visual system. Core colors come from the supplied palette. */
:root{
  --any-magenta:#F875AA;
  --any-magenta-deep:#813453;
  --any-magenta-soft:#FDEDED;
  --any-teal:#AEDEFC;
  --any-teal-deep:#0F5B68;
  --any-teal-soft:#EDFFF0;
  --any-mint-ink:#3D6555;
  --any-ink:#2D1B26;
  --any-muted:#6E5D66;
  --any-soft:#FDEDED;
  --any-white:#FFFFFF;
  --any-line:#EADFE5;
  --any-line-strong:#A86C87;
  --any-success:#177A58;
  --any-warning:#9B6200;
  --any-danger:#AE3046;

  --blue:var(--any-magenta);
  --navy:var(--any-ink);
  --bright:var(--any-teal);
  --cyan:var(--any-teal);
  --bg:var(--any-soft);
  --surface:var(--any-white);
  --text:var(--any-ink);
  --muted:var(--any-muted);
  --faint:var(--any-muted);
  --line:var(--any-line);
  --line-strong:var(--any-line-strong);
  --hover:#FFF5F7;
  --tint:var(--any-magenta-soft);
  --green:var(--any-success);
  --amber:var(--any-warning);
  --red:var(--any-danger);
  --radius:9px;
  --radius-lg:14px;
  --shadow:0 10px 26px rgba(91, 38, 67, .08);
  --font:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Inter',system-ui,sans-serif;
}

html{background:var(--any-soft)}
body{
  color:var(--any-ink);
  background:
    radial-gradient(circle at 84% 8%,rgba(174,222,252,.22),transparent 23rem),
    var(--any-soft);
  font-family:var(--font);
  font-size:14px;
  line-height:1.5;
}
button,input,select,textarea{font-family:var(--font)}
html,body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,table,th,td,kbd,code,pre,.dk-va,svg text{font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif!important}
.any-brand-word strong,.any-story-copy h2{font-family:var(--font)}
:focus-visible{outline:3px solid rgba(129,52,83,.46);outline-offset:3px;border-radius:5px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid rgba(129,52,83,.48);outline-offset:3px}
.icon{stroke-width:1.8}

/* Login */
.any-login{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(390px,.86fr) minmax(520px,1.14fr);
  background:var(--any-white);
}
.any-login-panel{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:52px clamp(32px,5vw,88px);
  background:var(--any-white);
}
.any-login-inner{width:min(430px,100%);margin:auto}
.any-login-logo{display:block;width:214px;margin:0 0 52px;border-radius:8px}
.any-login-logo img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.any-kicker{
  margin:0 0 9px;
  color:var(--any-teal-deep);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.any-login h1{
  margin:0;
  max-width:12ch;
  color:var(--any-ink);
  font-size:clamp(34px,4vw,50px);
  line-height:1.08;
  letter-spacing:-.045em;
  font-weight:600;
}
.any-login-lead{
  max-width:42ch;
  margin:19px 0 34px;
  color:var(--any-muted);
  font-size:15px;
  line-height:1.65;
}
.any-login-form{display:grid;gap:17px}
.any-field{
  display:grid;
  gap:7px;
  color:var(--any-ink);
  font-size:13px;
  font-weight:600;
}
.any-field input{
  width:100%;
  min-height:48px;
  padding:11px 14px;
  border:1px solid var(--any-line-strong);
  border-radius:9px;
  background:#fff;
  color:var(--any-ink);
  font-size:14px;
  font-weight:400;
}
.any-field input::placeholder{color:var(--any-muted)}
.any-field input:focus{border-color:var(--any-magenta);box-shadow:0 0 0 3px rgba(248,117,170,.22);outline:none}
.any-password{position:relative;display:block}
.any-password input{padding-right:50px}
.any-password-toggle{
  position:absolute;
  top:50%;
  right:5px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  color:var(--any-muted);
  border-radius:7px;
}
.any-password-toggle:hover{background:var(--any-soft);color:var(--any-ink)}
.any-login-options{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:-2px;
  color:var(--any-muted);
  font-size:12px;
}
.any-login-options button,.any-login-footer button{
  min-height:36px;
  color:var(--any-ink);
  font-weight:600;
}
.any-form-error{min-height:0;color:var(--any-danger);font-size:13px;line-height:1.5}
.any-form-error:empty{display:none}
.any-button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 16px;
  border-radius:9px;
  font-size:14px;
  font-weight:700;
  text-decoration:none;
  transition:background-color .16s,border-color .16s,color .16s,transform .16s;
}
.any-button.wide{width:100%}
.any-button.primary{background:var(--any-magenta);color:var(--any-ink);border:1px solid var(--any-magenta)}
.any-button.primary:hover{background:var(--any-magenta-deep);border-color:var(--any-magenta-deep)}
.any-button.secondary{background:#fff;color:var(--any-ink);border:1px solid var(--any-line-strong)}
.any-button.secondary:hover{background:var(--any-magenta-soft);border-color:#D8A9BD}
.any-button.on-dark{background:#fff;color:var(--any-magenta-deep);border:1px solid #fff}
.any-button.on-dark:hover{background:var(--any-teal-soft);color:var(--any-teal-deep)}
.any-button .icon{width:17px;height:17px}
#any-demo-login{margin-top:12px}
.any-login-note{
  margin:19px 0 0;
  padding:13px 14px;
  border:1px solid var(--any-line);
  border-radius:9px;
  color:var(--any-muted);
  background:var(--any-soft);
  font-size:12px;
  line-height:1.6;
}
.any-login-note strong{color:var(--any-ink)}
.any-login-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:32px;
  color:var(--any-muted);
  font-size:12px;
}
.any-login-story{
  position:relative;
  min-height:calc(100vh - 32px);
  margin:16px 16px 16px 0;
  padding:clamp(38px,5vw,80px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  border-radius:18px;
  background:var(--any-magenta);
  color:var(--any-ink);
}
.any-login-story::before{
  content:"";
  position:absolute;
  width:min(48vw,720px);
  height:min(48vw,720px);
  right:-28%;
  top:12%;
  border:2px solid rgba(174,222,252,.72);
  border-radius:48% 52% 44% 56% / 58% 42% 58% 42%;
  transform:rotate(-14deg);
}
.any-login-story::after{
  content:"";
  position:absolute;
  width:min(40vw,580px);
  height:min(40vw,580px);
  right:-17%;
  top:23%;
  border:1px solid rgba(253,237,237,.8);
  border-radius:56% 44% 58% 42% / 43% 57% 43% 57%;
  transform:rotate(20deg);
}
.any-story-mark{
  position:absolute;
  top:clamp(30px,6vw,76px);
  right:clamp(28px,5vw,80px);
  width:86px;
  height:10px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--any-magenta-deep),var(--any-magenta),var(--any-teal));
}
.any-story-copy{
  position:relative;
  z-index:1;
  max-width:720px;
  margin:auto 0;
  padding:90px 0 70px;
}
.any-story-label{
  margin:0 0 19px;
  color:var(--any-ink);
  font-size:12px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.any-story-copy h2{
  max-width:12ch;
  margin:0 0 48px;
  color:var(--any-ink);
  font-size:clamp(34px,4.3vw,58px);
  line-height:1.1;
  letter-spacing:-.045em;
  font-weight:600;
}
.any-story-list{max-width:620px;border-top:1px solid rgba(45,27,38,.24)}
.any-story-list>div{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:18px;
  padding:18px 0;
  border-bottom:1px solid rgba(45,27,38,.18);
}
.any-story-list span{color:var(--any-ink);font-size:12px;font-weight:700;letter-spacing:.08em}
.any-story-list p{margin:0;color:var(--any-ink);font-size:14px;line-height:1.55}
.any-story-list strong{display:block;margin-bottom:2px;color:var(--any-ink);font-weight:700}
.any-story-footer{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:13px;
  color:var(--any-ink);
  font-size:12px;
}
.any-story-footer img{
  width:58px;
  height:58px;
  border-radius:9px;
  object-fit:contain;
}

/* App shell */
.shell{grid-template-columns:244px 1fr;min-height:100vh}
.main{background:transparent}
.sidebar{
  width:244px;
  padding:18px 14px 14px;
  border-right:1px solid var(--any-line);
  background:#fff;
  overflow-y:auto;
  scrollbar-width:thin;
}
.suite .sidebar{padding:18px 14px 14px}
.any-brand-lockup{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:64px;
  padding:0 8px 15px;
}
.any-brand-mark{
  width:51px;
  height:51px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:9px;
}
.any-brand-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transform:scale(1.34);
}
.any-brand-word{display:grid;line-height:1}
.any-brand-word strong{color:var(--any-magenta);font-size:18px;letter-spacing:-.02em;font-weight:700}
.any-brand-word small{margin-top:5px;color:var(--any-magenta);font-size:12px;font-weight:600}
.any-clinic-switch{
  width:100%;
  min-height:56px;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  margin:0 0 18px;
  border:1px solid var(--any-line);
  border-radius:10px;
  background:var(--any-soft);
  text-align:left;
}
.any-clinic-switch:hover{border-color:#D7A9C4;background:#FCF3F8}
.any-clinic-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:7px;background:#fff;color:var(--any-magenta)}
.any-clinic-icon .icon{width:17px;height:17px}
.any-clinic-switch>span:nth-child(2){display:grid;gap:2px;min-width:0}
.any-clinic-switch small{color:var(--any-muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.any-clinic-switch strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--any-ink);font-size:13px}
.any-clinic-switch>span:last-child{color:var(--any-magenta-deep);font-size:11px;font-weight:700}
.any-nav-label{
  margin:16px 10px 7px;
  color:#8A7884;
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.any-nav{display:grid;gap:2px}
.any-nav-item{
  width:100%;
  min-height:41px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:8px;
  color:#5D5159;
  text-align:left;
  font-size:13px;
  font-weight:500;
}
.any-nav-item:hover{background:var(--any-soft);color:var(--any-ink)}
.any-nav-item.active{background:var(--any-magenta-soft);color:var(--any-magenta-deep);font-weight:700}
.any-nav-item .icon{width:18px;height:18px;flex-shrink:0}
.any-nav-item small{
  margin-left:auto;
  min-width:23px;
  padding:2px 6px;
  border-radius:99px;
  background:var(--any-magenta-soft);
  color:var(--any-magenta-deep);
  text-align:center;
  font-size:10px;
  font-weight:700;
}
.any-sidebar-note{
  position:relative;
  margin:24px 6px 16px;
  padding:15px 14px 14px;
  overflow:hidden;
  border:1px solid #CDE9D3;
  border-radius:11px;
  background:var(--any-teal-soft);
}
.any-sidebar-tooth{
  position:absolute;
  width:64px;
  height:64px;
  right:-20px;
  top:-20px;
  border:2px solid rgba(174,222,252,.8);
  border-radius:56% 44% 58% 42% / 42% 56% 44% 58%;
}
.any-sidebar-note strong{display:block;color:var(--any-mint-ink);font-size:12px}
.any-sidebar-note p{margin:3px 0 9px;color:#557264;font-size:11px;line-height:1.45}
.any-sidebar-note button{
  min-height:34px;
  padding:0;
  color:var(--any-mint-ink);
  font-size:11px;
  font-weight:700;
}
.any-profile{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:auto;
  padding:12px 7px 2px;
  border-top:1px solid var(--any-line);
}
.any-profile>span:nth-child(2){display:grid;min-width:0;flex:1}
.any-profile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.any-profile small{font-size:11px;color:var(--any-muted)}
.any-profile button{
  min-width:34px;
  min-height:34px;
  display:grid;
  place-items:center;
  color:var(--any-muted);
  border-radius:7px;
}
.any-profile button:hover{background:var(--any-soft);color:var(--any-ink)}
.any-profile button .icon{width:16px;height:16px}
.any-avatar{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  border-radius:50%;
  background:var(--any-magenta);
  color:#fff;
  font-size:12px;
  font-weight:700;
}
.mobile-close{display:none}

.topbar{
  height:68px;
  padding:0 clamp(18px,2.4vw,34px);
  border-bottom:1px solid var(--any-line);
  background:rgba(253,237,237,.96);
  backdrop-filter:none;
}
.breadcrumbs{gap:9px;color:#8C7C86;font-size:12px}
.breadcrumbs strong{color:var(--any-ink);font-weight:700}
.any-crumb-divider{color:#C7B9C1}
.top-actions{gap:9px}
.any-top-search{
  min-height:40px;
  display:flex;
  align-items:center;
  gap:9px;
  width:min(330px,30vw);
  padding:0 13px;
  border:1px solid var(--any-line);
  border-radius:9px;
  background:#fff;
  color:#7A6B74;
  text-align:left;
  font-size:12px;
}
.any-top-search:hover{border-color:var(--any-line-strong)}
.any-top-search .icon{width:17px;height:17px}
.any-top-search kbd{
  margin-left:auto;
  padding:2px 6px;
  border:1px solid var(--any-line);
  border-radius:5px;
  background:var(--any-soft);
  color:var(--any-muted);
  font-family:var(--font);
  font-size:10px;
}
.any-demo-pill{
  padding:6px 9px;
  border:1px solid #9FCBE4;
  border-radius:6px;
  background:var(--any-teal-soft);
  color:var(--any-teal-deep);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.any-top-icon{
  min-height:40px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:0 10px;
  border-radius:8px;
  color:var(--any-ink);
  font-size:12px;
  font-weight:600;
}
.any-top-icon:hover{background:#fff}
.any-top-icon .icon{width:18px;height:18px}
.top-actions .any-avatar{border:2px solid #fff;box-shadow:0 0 0 1px var(--any-line)}
.recent-bar,.tabbar{display:none}
.content,.suite .content{
  max-width:1540px;
  padding:26px clamp(18px,2.4vw,34px) 28px;
}

/* Shared interface overrides */
.card,.stat,.summary-mini,.feature-card,.module-card,.ticket,.bed-card,.service-item,.period-controls,.kiosk-option,.next-serving,.facility-option,.facility-banner,.board-column,.invoice-summary,.patient-summary{
  border:1px solid var(--any-line);
  border-radius:12px;
  background:#fff;
  box-shadow:none;
}
.primary,.secondary{
  min-height:40px;
  padding:8px 13px;
  border-radius:8px;
  font-size:13px;
  font-weight:700;
}
.primary,.primary *{color:var(--any-ink)}
.primary{background:var(--any-magenta);border:1px solid var(--any-magenta);color:var(--any-ink)}
.primary:hover{background-color:var(--any-magenta-deep);border-color:var(--any-magenta-deep)}
.primary:hover,.primary:hover *{color:#fff}
.secondary{background:#fff;border:1px solid var(--any-line-strong);color:var(--any-ink);box-shadow:none}
.secondary:hover{background:var(--any-magenta-soft);border-color:#D8A9BD}
.text-button,.suite-table .row-action{color:var(--any-magenta-deep)}
.suite-table .row-action{background:var(--any-magenta-soft);border-radius:7px}
.search,.filter,.field input,.field select,.filter-panel input,.filter-panel select,.period-controls input,.editor-grid textarea{
  border-color:var(--any-line);
  border-radius:8px;
  background:#fff;
}
.field input:focus,.field select:focus,.search:focus-within{border-color:var(--any-magenta);box-shadow:0 0 0 3px rgba(248,117,170,.22)}
.segmented,.family-links button{border-radius:8px;box-shadow:none}
.segmented button.active,.family-links button.active{background:var(--any-magenta-soft);color:var(--any-magenta-deep)}
.chip-tabs button.active{color:var(--any-magenta-deep);border-color:var(--any-magenta)}
th{background:#FAF6F8;color:#796B74}
td{border-bottom-color:#F0E8EC}
.badge{display:inline-flex;min-height:24px;align-items:center;border-radius:99px;font-weight:600}
.badge.blue{background:var(--any-teal-soft);color:var(--any-teal-deep)}
.badge.green{background:#EAF6F0;color:var(--any-success)}
.badge.red{background:#FBECEE;color:var(--any-danger)}
.avatar{background:var(--any-magenta-soft);color:var(--any-magenta-deep)}
.eyebrow,.suite-heading .eyebrow{color:var(--any-teal-deep);font-weight:700}
.suite-heading h1,.page-heading h1{font-family:var(--font);letter-spacing:-.025em}
.directory-hero{background:var(--any-ink)!important;color:#fff!important;border:0!important}
.directory-hero h1{color:#fff!important}
.directory-hero p{color:#D4C8D0!important}
.news{border-radius:12px;border-color:var(--any-line);box-shadow:none}
.news-side{background:var(--any-teal-soft)}
.news-tag{background:var(--any-magenta-soft);color:var(--any-magenta-deep)}
.news-icon{color:var(--any-magenta-deep);box-shadow:none;border:1px solid var(--any-line)}
.nav-group[open] summary,.nav-group button.active{background:var(--any-magenta-soft);color:var(--any-magenta-deep)}
.global-search{border-radius:8px;background:#fff;box-shadow:none}
.demo-chip{background:var(--any-teal);border-color:#8EC4E2;color:var(--any-teal-deep)}
.facility-switch{border-radius:9px;box-shadow:none}
.facility-option:has(input:checked){background:var(--any-magenta-soft);border-color:var(--any-magenta);box-shadow:0 0 0 1px var(--any-magenta)}
.now-serving{background:var(--any-ink);border-radius:12px}
.bar,.slot-meter i,.hbar-track i,.vbar i{background:var(--any-teal)}
.modal-head h2,.card-head h2,.any-panel-head h2{font-family:var(--font);letter-spacing:-.015em}
dialog{border-radius:13px;box-shadow:0 24px 70px rgba(38,22,32,.2)}
dialog::backdrop{background:rgba(37,30,36,.55);backdrop-filter:none}
.modal-actions{gap:8px}
.suite-footer,.footer{color:#877983}

/* Anyeu dashboard */
.any-dashboard-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.any-dashboard-head h1{
  margin:0;
  font-size:clamp(29px,3.2vw,42px);
  line-height:1.12;
  letter-spacing:-.045em;
  font-weight:600;
}
.any-dashboard-head p:last-child{margin:8px 0 0;color:var(--any-muted);font-size:14px}
.any-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.any-flow-board{
  position:relative;
  padding:24px;
  overflow:hidden;
  border:1px solid var(--any-line);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--shadow);
}
.any-flow-board::before{
  content:"";
  position:absolute;
  width:520px;
  height:220px;
  right:-130px;
  top:-150px;
  border:1px solid rgba(174,222,252,.75);
  border-radius:50%;
  transform:rotate(-16deg);
}
.any-flow-heading,.any-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.any-flow-heading h2,.any-panel-head h2{
  margin:0;
  color:var(--any-ink);
  font-size:19px;
  line-height:1.3;
  font-weight:600;
}
.any-demo-note{
  position:relative;
  z-index:1;
  flex-shrink:0;
  padding:5px 8px;
  border:1px solid var(--any-line);
  border-radius:6px;
  color:var(--any-muted);
  font-size:11px;
  font-weight:600;
}
.any-flow-track{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:18px 0 20px;
  padding-top:18px;
}
.any-flow-track::before{
  content:"";
  position:absolute;
  left:4%;
  right:4%;
  top:30px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--any-magenta-deep),var(--any-magenta),var(--any-teal));
}
.any-flow-track>button{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:0 12px;
  text-align:left;
}
.any-flow-track>button:first-child{padding-left:0}
.any-flow-track>button:hover .any-flow-index{background:var(--any-magenta);color:var(--any-ink);border-color:var(--any-magenta)}
.any-flow-index{
  position:relative;
  z-index:1;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--any-magenta-soft);
  color:var(--any-magenta-deep);
  box-shadow:0 0 0 1px #D9ACBE;
  font-size:9px;
  font-weight:700;
}
.any-flow-track>button:nth-child(n+3) .any-flow-index{
  background:var(--any-teal-soft);
  color:var(--any-teal-deep);
  box-shadow:0 0 0 1px #8EC4E2;
}
.any-flow-track>button>span:nth-child(2){display:grid;min-width:0}
.any-flow-track strong{font-size:13px}
.any-flow-track small{color:var(--any-muted);font-size:11px}
.any-focus-grid{
  display:grid;
  grid-template-columns:minmax(330px,1.05fr) minmax(300px,.95fr);
  gap:14px;
}
.any-next-patient{
  padding:22px;
  border-radius:12px;
  background:var(--any-magenta);
  color:var(--any-ink);
}
.any-next-top{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--any-ink);font-size:11px}
.any-live-label{
  color:var(--any-ink);
  font-size:10px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.any-next-person{display:flex;align-items:center;gap:13px;margin:23px 0 20px}
.any-next-avatar{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  border:1px solid rgba(45,27,38,.18);
  border-radius:50%;
  background:#fff;
  color:var(--any-magenta-deep);
  font-size:14px;
  font-weight:700;
}
.any-next-person h3{margin:0;color:var(--any-ink);font-size:23px;letter-spacing:-.03em;font-weight:600}
.any-next-person p{margin:3px 0 0;color:var(--any-ink);font-size:12px}
.any-next-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:0 0 20px;
  border-top:1px solid rgba(45,27,38,.2);
  border-bottom:1px solid rgba(45,27,38,.2);
}
.any-next-facts>div{padding:12px 12px 12px 0;min-width:0}
.any-next-facts>div+div{padding-left:12px;border-left:1px solid rgba(45,27,38,.2)}
.any-next-facts dt{margin-bottom:3px;color:var(--any-ink);font-size:10px}
.any-next-facts dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--any-ink);font-size:12px;font-weight:600}
.any-next-patient .any-button{width:100%}
.any-quick-panel{padding:21px;border:1px solid var(--any-line);border-radius:12px;background:#fff}
.any-quick-list{display:grid;gap:6px;margin-top:15px}
.any-quick-list>button{
  display:grid;
  grid-template-columns:39px minmax(0,1fr);
  gap:11px;
  align-items:center;
  min-height:62px;
  padding:9px 10px;
  border:1px solid transparent;
  border-radius:9px;
  text-align:left;
}
.any-quick-list>button:hover{border-color:var(--any-line);background:var(--any-soft)}
.any-quick-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--any-magenta-soft);
  color:var(--any-magenta-deep);
}
.any-quick-list>button:nth-child(2) .any-quick-icon{background:var(--any-teal-soft);color:var(--any-teal-deep)}
.any-quick-list>button:nth-child(3) .any-quick-icon{background:var(--any-teal);color:var(--any-teal-deep)}
.any-quick-icon .icon{width:18px;height:18px}
.any-quick-list strong{display:block;font-size:13px}
.any-quick-list small{display:block;margin-top:2px;color:var(--any-muted);font-size:11px}
.any-dashboard-columns{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
  gap:14px;
  margin-top:14px;
}
.any-panel{
  padding:21px;
  border:1px solid var(--any-line);
  border-radius:12px;
  background:#fff;
}
.any-panel-head>button{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 6px;
  color:var(--any-magenta-deep);
  font-size:12px;
  font-weight:700;
}
.any-panel-head>button .icon{width:15px;height:15px}
.any-patient-list{margin-top:13px}
.any-patient-row{
  width:100%;
  min-height:62px;
  display:grid;
  grid-template-columns:46px 34px minmax(0,1fr) auto 22px;
  align-items:center;
  gap:10px;
  padding:9px 2px;
  border-bottom:1px solid #F0E8EC;
  text-align:left;
}
.any-patient-row:last-child{border-bottom:0}
.any-patient-row:hover{background:#FDF8FA}
.any-patient-time{color:var(--any-muted);font-size:12px;font-variant-numeric:tabular-nums}
.any-patient-avatar{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--any-teal-soft);
  color:var(--any-teal-deep);
  font-size:10px;
  font-weight:700;
}
.any-patient-main{display:grid;min-width:0}
.any-patient-main strong,.any-patient-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.any-patient-main strong{font-size:13px}
.any-patient-main small{margin-top:2px;color:var(--any-muted);font-size:11px}
.any-status{
  position:relative;
  padding-left:11px;
  color:var(--any-muted);
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}
.any-status::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:6px;
  height:6px;
  transform:translateY(-50%);
  border-radius:50%;
  background:currentColor;
}
.any-status.active{color:var(--any-magenta-deep)}
.any-status.done{color:var(--any-success)}
.any-status.waiting{color:var(--any-warning)}
.any-row-open{display:grid;place-items:center;color:#A6949F}
.any-row-open .icon{width:15px;height:15px}
.any-schedule-list{margin-top:12px}
.any-schedule-row{
  width:100%;
  min-height:58px;
  display:grid;
  grid-template-columns:77px minmax(0,1fr) 20px;
  align-items:center;
  gap:9px;
  padding:9px 0;
  border-bottom:1px solid #F0E8EC;
  text-align:left;
}
.any-schedule-row:hover strong{color:var(--any-magenta-deep)}
.any-schedule-time{color:var(--any-magenta-deep);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}
.any-schedule-row>span:nth-child(2){display:grid;min-width:0}
.any-schedule-row strong,.any-schedule-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.any-schedule-row strong{font-size:12px}
.any-schedule-row small{margin-top:2px;color:var(--any-muted);font-size:10px}
.any-schedule-row .icon{width:14px;height:14px;color:#A6949F}
.any-handoff-note{
  position:relative;
  margin-top:15px;
  padding:14px;
  border-radius:9px;
  background:var(--any-teal-soft);
  color:#345F61;
}
.any-handoff-note>span{
  position:absolute;
  right:15px;
  top:13px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--any-teal);
}
.any-handoff-note p{margin:0 0 8px;padding-right:22px;font-size:11px;line-height:1.5}
.any-handoff-note strong{display:block;color:#173F41;font-weight:700}
.any-handoff-note button{min-height:32px;color:var(--any-teal-deep);font-size:11px;font-weight:700}
.any-empty,.any-empty-copy{padding:26px 14px;text-align:center;color:var(--any-muted);font-size:12px}
.any-empty strong{display:block;color:var(--any-ink);font-size:13px}
.any-empty p{margin:4px 0 0}
.any-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:18px;
  padding-top:15px;
  border-top:1px solid var(--any-line);
  color:#8B7A85;
  font-size:11px;
}

@media(max-width:1180px){
  .any-top-search{width:auto}
  .any-top-search span{display:none}
  .any-top-search kbd{display:none}
  .any-focus-grid{grid-template-columns:1fr 1fr}
  .any-story-copy h2{max-width:14ch}
}

@media(max-width:1020px){
  .shell{grid-template-columns:224px 1fr}
  .sidebar{width:224px}
  .any-top-icon span{display:none}
  .any-flow-track>button{padding-inline:7px}
  .any-flow-track strong{font-size:12px}
  .any-dashboard-columns{grid-template-columns:1fr}
  .any-login{grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr)}
  .any-story-copy{padding-block:60px}
}

@media(max-width:860px){
  .any-login{display:block}
  .any-login-panel{min-height:100vh;padding:36px 24px}
  .any-login-story{display:none}
  .any-login-logo{width:190px;margin-bottom:42px}
  body:has(.sidebar.open)::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:55;
    background:rgba(37,30,36,.4);
    pointer-events:none;
  }
  .shell{display:block}
  .main{min-height:100vh}
  .sidebar{
    position:fixed;
    inset:0 auto 0 0;
    width:min(290px,88vw);
    z-index:60;
    transform:translateX(-104%);
    transition:transform .2s ease;
    box-shadow:24px 0 50px rgba(45,25,38,.16);
  }
  .sidebar.open{transform:none}
  .mobile-close{
    display:grid;
    place-items:center;
    position:absolute;
    right:10px;
    top:10px;
    width:40px;
    height:40px;
    border-radius:8px;
    color:var(--any-muted);
  }
  .mobile-menu{display:grid}
  .topbar{padding-inline:14px}
  .content,.suite .content{padding:20px 16px 24px}
  .any-dashboard-head{align-items:flex-start;flex-direction:column}
  .any-focus-grid{grid-template-columns:1fr}
  .any-next-patient{padding:20px}
}

@media(max-width:640px){
  .any-login-panel{padding:26px 18px}
  .any-login-logo{width:168px;margin-bottom:34px}
  .any-login h1{font-size:34px}
  .any-login-lead{margin-bottom:26px;font-size:14px}
  .any-login-options{align-items:flex-start;flex-direction:column;gap:1px}
  .any-login-footer{align-items:flex-start;flex-direction:column;gap:0}
  .topbar{height:60px}
  .breadcrumbs>span:not(.any-crumb-divider){display:none}
  .breadcrumbs{min-width:0}
  .breadcrumbs strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .top-actions{gap:4px}
  .any-top-search{width:40px;padding:0;justify-content:center}
  .any-top-search .icon{width:18px;height:18px}
  .any-demo-pill{display:none}
  .any-top-icon{width:40px;padding:0;justify-content:center}
  .top-actions .any-avatar{width:36px;height:36px}
  .any-dashboard-head{gap:16px}
  .any-dashboard-head h1{font-size:32px}
  .any-head-actions{width:100%}
  .any-head-actions .any-button{flex:1;padding-inline:10px}
  .any-flow-board{padding:18px 14px 14px;border-radius:13px}
  .any-flow-heading{align-items:flex-start}
  .any-demo-note{font-size:9px;white-space:nowrap}
  .any-flow-track{grid-template-columns:1fr 1fr;gap:13px 4px;margin-top:14px;padding-top:0}
  .any-flow-track::before{display:none}
  .any-flow-track>button{padding:0}
  .any-flow-index{width:24px;height:24px}
  .any-next-patient{padding:18px 16px}
  .any-next-person{margin-block:18px}
  .any-next-person h3{font-size:20px}
  .any-next-facts{grid-template-columns:1fr 1fr}
  .any-next-facts>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid rgba(255,255,255,.14);padding-left:0}
  .any-quick-panel,.any-panel{padding:17px 14px}
  .any-dashboard-columns{gap:10px;margin-top:10px}
  .any-patient-row{grid-template-columns:40px 30px minmax(0,1fr) 20px}
  .any-patient-row .any-status{display:none}
  .any-patient-avatar{width:29px;height:29px}
  .any-schedule-row{grid-template-columns:70px minmax(0,1fr) 18px}
  .any-footer{align-items:flex-start;flex-direction:column;gap:3px}
  .footer,.suite-footer{align-items:flex-start;flex-direction:column}
  .stats,.summary-row,.report-metrics{grid-template-columns:1fr 1fr}
  .middle,.lower,.analytics-split,.billing-layout,.clinical-layout{grid-template-columns:1fr}
  .board,.schedule-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* White-led refinement: colored surfaces are reserved for actions and clinical status. */
:root{
  --any-soft:#FFFFFF;
  --any-line:#EEE8EB;
  --any-line-strong:#C8B1BD;
  --hover:#FAF8F9;
  --tint:#FFF3F7;
  --shadow:0 18px 44px rgba(55,31,43,.055);
}
html,body{background:#FFFFFF}
body{
  background:
    radial-gradient(circle at 92% 5%,rgba(174,222,252,.12),transparent 22rem),
    #FFFFFF;
}
.main,.content,.suite .content{background:#FFFFFF}
.topbar{background:#FFFFFF;border-bottom-color:#F1ECEF}
.sidebar{border-right-color:#F1ECEF;background:#FFFFFF}
.recent-bar{background:#FFFFFF}

.any-login{background:#FFFFFF}
.any-login-panel{background:#FFFFFF}
.any-login-logo{width:232px;margin-bottom:48px}
.any-login-lead{max-width:39ch}
.any-login-note{background:#FFF9FB;border-color:#F2E7EC}
.any-login-story{
  background:
    radial-gradient(circle at 85% 22%,rgba(174,222,252,.22),transparent 24rem),
    linear-gradient(145deg,#FFFFFF 0%,#FFF9FB 72%,#F7FEFC 100%);
  border:1px solid #F1E9ED;
  box-shadow:0 24px 60px rgba(54,30,43,.055);
}
.any-login-story::before{
  border:1px solid rgba(174,222,252,.72);
}
.any-login-story::after{
  border:1px solid rgba(248,117,170,.38);
}
.any-story-mark{
  width:66px;
  height:3px;
  border-radius:3px;
  background:linear-gradient(90deg,var(--any-magenta),var(--any-teal));
}
.any-story-copy{max-width:690px;padding:70px 0 58px}
.any-story-copy h2{
  max-width:13ch;
  margin-bottom:40px;
  font-size:clamp(32px,3.9vw,54px);
}
.any-story-list{border-top-color:#EEE4E9}
.any-story-list>div{border-bottom-color:#EEE4E9;padding:17px 0}
.any-story-list span{color:var(--any-magenta-deep)}
.any-story-footer{color:var(--any-muted)}
.any-story-footer img{
  width:42px;
  height:42px;
  padding:2px;
  background:#fff;
}

.any-brand-word strong,.any-brand-word small{color:var(--any-ink)}
.any-clinic-switch{background:#FFFFFF;border-color:#EEE8EB}
.any-clinic-switch:hover{background:#FFF9FB;border-color:#E5C9D7}
.any-nav-item{color:#5B5660}
.any-nav-item:hover{background:#FAF8F9}
.any-nav-item.active{background:#FFF2F7;color:var(--any-magenta-deep)}
.any-sidebar-note{background:#FAFFFC;border-color:#DFEFE6}
.any-profile{border-top-color:#F1ECEF}
.any-avatar{background:var(--any-magenta-soft);color:var(--any-magenta-deep);border:1px solid #F3D7E3}

.any-top-search{background:#FFFFFF;border-color:#EAE4E7}
.any-top-search:hover{border-color:#D8C7D0;background:#FDFBFC}
.any-demo-pill{background:#FFFFFF;border-color:#CCE8F7;color:var(--any-teal-deep)}
.any-top-icon:hover{background:#FAF8F9}
.top-actions .any-avatar{box-shadow:none;border-color:#F0D9E3}

.any-dashboard-head{margin-bottom:30px}
.any-dashboard-head h1{font-weight:600}
.any-dashboard-head .any-kicker{color:var(--any-magenta-deep)}
.any-head-actions .secondary{background:#fff}

.any-flow-board{
  border-color:#F0EAED;
  background:#fff;
  box-shadow:0 18px 48px rgba(54,30,43,.045);
}
.any-flow-board::before{
  border-color:rgba(174,222,252,.52);
}
.any-flow-heading h2,.any-panel-head h2{font-weight:600}
.any-demo-note{background:#FFFFFF;border-color:#EEE8EB;color:var(--any-muted)}
.any-flow-track::before{height:1px;background:#E8DDE3}
.any-flow-index{box-shadow:0 0 0 1px #E7D0DB;background:#FFF7FA;color:var(--any-magenta-deep)}
.any-flow-track>button:nth-child(n+3) .any-flow-index{box-shadow:0 0 0 1px #C7E5F5;background:#F6FDFF;color:var(--any-teal-deep)}
.any-flow-track>button:hover .any-flow-index{background:var(--any-magenta);color:var(--any-ink);border-color:var(--any-magenta)}
.any-focus-grid{gap:18px}
.any-next-patient{
  position:relative;
  overflow:hidden;
  border:1px solid #F0E3E9;
  background:linear-gradient(135deg,#FFFFFF 0%,#FFFFFF 72%,#FFF7FA 100%);
  box-shadow:0 14px 34px rgba(63,32,48,.045);
}
.any-next-patient::after{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  right:-90px;
  bottom:-105px;
  border:1px solid rgba(248,117,170,.26);
  border-radius:50%;
}
.any-live-label{color:var(--any-magenta-deep)}
.any-next-top{color:var(--any-muted)}
.any-next-avatar{background:#FFF2F7;border-color:#F0D5E1;color:var(--any-magenta-deep)}
.any-next-person h3{color:var(--any-ink)}
.any-next-person p{color:var(--any-muted)}
.any-next-facts{border-color:#EEE5E9}
.any-next-facts>div+div{border-left-color:#EEE5E9}
.any-next-facts dt{color:var(--any-muted)}
.any-next-facts dd{color:var(--any-ink)}
.any-next-patient .any-button.on-dark,.any-button.on-dark{
  position:relative;
  z-index:1;
  background:var(--any-magenta);
  border-color:var(--any-magenta);
  color:var(--any-ink);
}
.any-next-patient .any-button.on-dark:hover,.any-button.on-dark:hover{
  background:var(--any-magenta-deep);
  border-color:var(--any-magenta-deep);
  color:#fff;
}

.any-quick-panel,.any-panel{border-color:#F1EAEE;background:#FFFFFF;box-shadow:none}
.any-quick-list>button:hover{background:#FAF8F9;border-color:#F0E7EB}
.any-quick-icon,.any-quick-list>button:nth-child(2) .any-quick-icon,.any-quick-list>button:nth-child(3) .any-quick-icon{
  background:#FFF3F7;
  color:var(--any-magenta-deep);
}
.any-quick-list>button:nth-child(2) .any-quick-icon{background:#F7FCFF;color:var(--any-teal-deep)}
.any-quick-list>button:nth-child(3) .any-quick-icon{background:#FAFFFC;color:var(--any-mint-ink)}
.any-patient-row,.any-schedule-row{border-bottom-color:#F2ECEF}
.any-patient-row:hover{background:#FCFAFB}
.any-patient-avatar{background:#F7FCFF;color:var(--any-teal-deep)}
.any-handoff-note{background:#FAFFFC;color:#3B675A}
.any-handoff-note>span{background:#9DD6C2}
.any-panel-head>button,.text-button,.suite-table .row-action{color:var(--any-magenta-deep)}

.directory-hero{
  background:#FFFFFF!important;
  color:var(--any-ink)!important;
  border:1px solid #F0E8EC!important;
  box-shadow:none;
  border-radius:14px;
}
.directory-hero h1{color:var(--any-ink)!important}
.directory-hero p{color:var(--any-muted)!important}
.directory-hero .eyebrow{color:var(--any-magenta-deep)!important}
.directory-stat{border-left-color:#F0E7EB}
.directory-stat strong{color:var(--any-magenta-deep)}
.directory-stat span{color:var(--any-muted)}
.feature-card,.module-card,.card,.stat,.summary-mini,.service-item,.period-controls,.kiosk-option,.next-serving,.facility-option,.invoice-summary,.patient-summary{
  border-color:#F0E9EC;
  background:#FFFFFF;
}
.feature-card:hover{background:#FCFAFB;border-color:#E5D5DE}
.card-head,.stat-top{border-color:#F1EAEE}
th{background:#FCFAFB;color:var(--any-muted)}
td{border-bottom-color:#F3EEF1}
.badge.blue{background:#F4FCFF;color:var(--any-teal-deep)}
.badge.green{background:#F6FCF9;color:var(--any-success)}
.badge.red{background:#FFF5F6;color:var(--any-danger)}
.global-search{background:#FFFFFF;border-color:#EEE8EB}
.demo-chip{background:#FFFFFF;border-color:#CFE8F6;color:var(--any-teal-deep)}
.public-screen{background:#FFFFFF}
.now-serving{background:#0F5B68}

@media(max-width:860px){
  .any-login-story{display:none}
  .any-login-panel{background:#FFFFFF}
  .sidebar{background:#FFFFFF}
  .any-flow-board{box-shadow:0 12px 30px rgba(54,30,43,.04)}
}

@media(max-width:640px){
  .any-dashboard-head{margin-bottom:22px}
  .any-flow-board{padding:18px 14px}
  .any-next-patient{border:1px solid #F0E3E9;background:linear-gradient(145deg,#FFFFFF 0%,#FFFFFF 72%,#FFF7FA 100%)}
  .any-quick-panel,.any-panel{border-color:#F1EAEE}
}

/* Dashboard reference pass: airy white analytics with restrained brand color. */
:root{
  --font:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Inter',system-ui,sans-serif;
  --dash-surface:#FFFFFF;
  --dash-canvas:#FAFAFB;
  --dash-line:#EEEAED;
  --dash-soft:#F7F5F7;
}
html,body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,table,th,td,kbd,code,pre,.dk-va,svg text{
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif!important;
}
body{background:#FCFCFD;color:#242027}
.main,.content,.suite .content{background:#FCFCFD}
.any-dashboard-head{max-width:1440px;margin:0 auto 22px}
.dash-head h1{
  font-size:clamp(30px,3vw,40px);
  letter-spacing:-.045em;
  line-height:1.08;
}
.dash-head p:last-child{max-width:60ch}
.dash-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:16px;
}
.dash-kpi{
  position:relative;
  min-width:0;
  min-height:136px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  padding:16px;
  overflow:hidden;
  border:1px solid var(--dash-line);
  border-radius:12px;
  background:#fff;
  text-align:left;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
  animation:dashCardIn .46s cubic-bezier(.2,.75,.25,1) both;
  animation-delay:calc(var(--stagger) * 55ms);
}
.dash-kpi:hover,.dash-kpi:focus-visible{
  transform:translateY(-3px);
  border-color:#E5D5DE;
  box-shadow:0 14px 28px rgba(53,31,43,.075);
}
.dash-kpi-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#625D66;
  font-size:12px;
  font-weight:500;
}
.dash-kpi-head i{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--any-magenta-deep);
  background:var(--any-magenta-soft);
}
.dash-kpi-head .icon{width:17px;height:17px}
.kpi-blue .dash-kpi-head i{background:#EFF9FF;color:#21647B}
.kpi-mint .dash-kpi-head i{background:#F0FFF4;color:#34705A}
.kpi-lilac .dash-kpi-head i{background:#F5F2FF;color:#6653A5}
.dash-kpi>strong{
  margin:16px 0 5px;
  color:var(--any-ink);
  font-size:31px;
  line-height:1;
  letter-spacing:-.04em;
  font-weight:600;
  font-variant-numeric:tabular-nums;
}
.dash-kpi>small{color:#817781;font-size:11px}

.dash-insight-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.82fr) minmax(260px,.82fr);
  gap:14px;
  margin-bottom:16px;
}
.dash-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--dash-line);
  border-radius:12px;
  background:#fff;
  box-shadow:none;
  animation:dashCardIn .5s cubic-bezier(.2,.75,.25,1) both;
}
.dash-card-head{
  min-height:67px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 17px 12px;
}
.dash-card-head h2{
  margin:0;
  color:var(--any-ink);
  font-size:13px;
  line-height:1.3;
  font-weight:600;
  letter-spacing:-.01em;
}
.dash-card-head p{margin:3px 0 0;color:#8A8089;font-size:10.5px}
.dash-range{
  display:flex;
  align-items:center;
  gap:2px;
  padding:3px;
  border:1px solid #F0ECEF;
  border-radius:7px;
  background:#F9F8F9;
}
.dash-range button{
  min-height:28px;
  padding:0 9px;
  border-radius:5px;
  color:#837881;
  font-size:10px;
  font-weight:600;
  transition:color .17s ease,background .17s ease,box-shadow .17s ease;
}
.dash-range button.active{background:#fff;color:var(--any-ink);box-shadow:0 1px 3px rgba(44,24,35,.08)}
.dash-trend-svg{display:block;width:100%;height:192px;padding:0 8px 2px;overflow:visible}
.dash-trend-grid line{stroke:#F1ECEF;stroke-width:1}
.dash-trend-svg text{fill:#988D96;font-size:9px}
.dash-trend-area{fill:url(#dashArea)}
.dash-trend-line{
  fill:none;
  stroke:var(--any-magenta-deep);
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:900;
  stroke-dashoffset:900;
  animation:dashLineDraw 1s .12s cubic-bezier(.2,.7,.2,1) forwards;
}
.dash-trend-point{cursor:default;outline:none}
.dash-trend-point circle{
  fill:#fff;
  stroke:var(--any-magenta-deep);
  stroke-width:2;
  transition:r .16s ease,fill .16s ease;
}
.dash-trend-point:hover circle,.dash-trend-point:focus circle{fill:var(--any-magenta-soft);r:6}
.dash-distribution{padding:4px 17px 16px}
.dash-bar-row{
  width:100%;
  min-height:48px;
  display:grid;
  grid-template-columns:110px minmax(0,1fr);
  align-items:center;
  gap:12px;
  text-align:left;
}
.dash-bar-row>span{display:flex;align-items:baseline;justify-content:space-between;gap:4px;min-width:0}
.dash-bar-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500}
.dash-bar-row small{color:#9A9098;font-size:9px;white-space:nowrap}
.dash-bar-row>i{
  height:5px;
  overflow:hidden;
  border-radius:99px;
  background:#F2EFF1;
}
.dash-bar-row>i>b{
  display:block;
  width:var(--bar);
  height:100%;
  border-radius:inherit;
  background:var(--tone);
  transform-origin:left;
  animation:dashBarGrow .75s .2s cubic-bezier(.2,.7,.2,1) both;
}
.dash-status-overview{
  min-height:183px;
  display:grid;
  place-items:center;
  gap:11px;
  padding:2px 16px 17px;
}
.dash-donut{
  width:108px;
  height:108px;
  position:relative;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(var(--any-magenta) 0 var(--done),var(--any-teal) var(--done) var(--active),#E1EFF4 var(--active) 100%);
  animation:dashDonutIn .8s cubic-bezier(.2,.7,.2,1) both;
}
.dash-donut:after{
  content:"";
  position:absolute;
  inset:20px;
  border-radius:50%;
  background:#fff;
}
.dash-donut>span{position:relative;z-index:1;display:grid;justify-items:center;line-height:1}
.dash-donut strong{font-size:24px;font-weight:600;letter-spacing:-.03em}
.dash-donut small{margin-top:4px;color:#8C828B;font-size:9px}
.dash-status-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:7px 12px}
.dash-status-legend span{display:inline-flex;align-items:center;gap:5px;color:#7A6F78;font-size:9px}
.dash-status-legend i{width:6px;height:6px;border-radius:50%}
.dash-status-legend strong{color:var(--any-ink);font-weight:600}
.dot-pink{background:var(--any-magenta)}
.dot-teal{background:var(--any-teal)}
.dot-blue{background:#C9DFEA}

.dash-lower-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
  gap:14px;
  animation:dashCardIn .55s .16s cubic-bezier(.2,.75,.25,1) both;
}
.dash-patient-card{overflow:visible}
.dash-card-link{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--any-magenta-deep);
  font-size:10px;
  font-weight:600;
}
.dash-card-link .icon{width:14px;height:14px}
.dash-table-wrap{overflow-x:auto}
.dash-table{min-width:600px}
.dash-table th,.dash-table td{padding:9px 13px;border-bottom:1px solid #F3EEF1}
.dash-table th{background:#FBFAFB;color:#897E87;font-size:9px;font-weight:600}
.dash-table td{font-size:11px}
.dash-patient{display:flex;align-items:center;gap:9px}
.dash-avatar{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  border-radius:50%;
  background:#FFF2F7;
  color:var(--any-magenta-deep);
  font-size:9px;
  font-weight:600;
}
.dash-patient>span:last-child{display:grid;min-width:0}
.dash-patient strong,.dash-patient small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dash-patient strong{font-size:11px;font-weight:500}
.dash-patient small{margin-top:2px;color:#91868F;font-size:9px}
.dash-row-link{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#9A9098;
}
.dash-row-link:hover{background:#F8F5F7;color:var(--any-magenta-deep)}
.dash-row-link .icon{width:14px;height:14px}
.dash-schedule-card{padding-bottom:12px}
.dash-heat-map{
  display:grid;
  grid-template-columns:34px repeat(6,minmax(26px,1fr));
  gap:4px;
  padding:2px 17px 8px;
}
.dash-heat-hour{color:#9D929B;font-size:8px;text-align:center}
.dash-heat,.dash-heat-day{min-height:22px;border-radius:4px}
.dash-heat{background:#F6F4F5}
.dash-heat-1{background:#FFF0F5}
.dash-heat-2{background:#FBDDE9}
.dash-heat-3{background:#F8BDD2}
.dash-heat-4{background:#F58CB1}
.dash-heat-day{display:flex;align-items:center;color:#8E838C;font-size:8px}
.dash-heat-legend{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  padding:2px 17px 0;
  color:#958A93;
  font-size:8px;
}
.dash-heat-legend i{width:11px;height:7px;border-radius:2px}
.dash-heat-legend .h0{background:#F6F4F5}
.dash-heat-legend .h1{background:#FFF0F5}
.dash-heat-legend .h2{background:#FBDDE9}
.dash-heat-legend .h3{background:#F8BDD2}
.dash-heat-legend .h4{background:#F58CB1}

@keyframes dashCardIn{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dashLineDraw{to{stroke-dashoffset:0}}
@keyframes dashBarGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes dashDonutIn{from{opacity:0;transform:rotate(-22deg) scale(.94)}to{opacity:1;transform:rotate(0) scale(1)}}

@media(max-width:1180px){
  .dash-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dash-insight-grid{grid-template-columns:1.2fr .8fr}
  .dash-status-card{grid-column:1/-1}
  .dash-status-overview{grid-template-columns:130px 1fr;justify-items:start}
  .dash-status-legend{justify-content:flex-start;flex-direction:column;gap:8px}
}
@media(max-width:900px){
  .dash-lower-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .dash-head{align-items:flex-start}
  .dash-kpi-grid{gap:9px}
  .dash-kpi{min-height:122px;padding:13px}
  .dash-kpi>strong{font-size:27px;margin-top:14px}
  .dash-kpi-head{font-size:10px}
  .dash-kpi-head i{width:29px;height:29px}
  .dash-insight-grid{grid-template-columns:1fr;gap:10px}
  .dash-status-card{grid-column:auto}
  .dash-card-head{padding:14px 14px 9px;min-height:61px}
  .dash-trend-svg{height:165px}
  .dash-distribution{padding-inline:14px}
  .dash-bar-row{grid-template-columns:105px minmax(0,1fr)}
  .dash-status-overview{min-height:150px;grid-template-columns:110px 1fr}
  .dash-donut{width:96px;height:96px}
  .dash-donut:after{inset:18px}
  .dash-heat-map{padding-inline:14px}
  .dash-heat-legend{padding-inline:14px}
}
@media(prefers-reduced-motion:reduce){
  .dash-kpi,.dash-card,.dash-lower-grid,.dash-trend-line,.dash-bar-row>i>b,.dash-donut{
    animation:none!important;
  }
}
