:root{
  --orange:#f45b2c;
  --orange-dark:#dc4520;
  --orange-soft:#fff1eb;
  --shell:#19191c;
  --shell-raised:#222226;
  --workspace:#f6f6f5;
  --paper:#fff;
  --ink:#252838;
  --muted:#77747a;
  --line:#dedede;
  --line-soft:#ecebea;
  --control-height:32px;
  --radius:8px;
  --shadow:0 8px 24px rgba(32,29,31,.07)
}

html,body{min-height:100%;background:var(--workspace)}
body{font-size:13px;overflow-x:hidden}
button,input,select,textarea{font-size:13px}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #f45b2c66;outline-offset:1px}
.brand-icon{border-radius:50%;box-shadow:0 5px 16px #ef522a33}

.login-view{background:#efefee;grid-template-columns:minmax(0,1fr) minmax(390px,520px)}
.login-art{padding:8vh 7vw;background:linear-gradient(145deg,#17171a,#25252a)}
.login-art:after{border-color:#f45b2c22;box-shadow:0 0 0 70px #f45b2c0a,0 0 0 140px #ffffff04}
.login-mark{width:66px;height:66px}
.login-art h1{font-size:clamp(38px,4.2vw,66px);max-width:760px}
.login-art h1 em{color:#ff7650}
.login-note{font-size:15px}
.login-card{border-radius:14px;padding:36px;width:min(410px,calc(100% - 40px));box-shadow:0 18px 55px #2d26351a}
.login-copy{margin:42px 0 24px}.login-copy h2{font-size:24px}
.login-card input{height:38px;border-radius:7px;padding:8px 11px}
.primary,.secondary{min-height:var(--control-height);border-radius:7px;padding:8px 13px;box-shadow:none}
.primary:hover{transform:none}
.primary.wide{min-height:42px;padding:10px 14px}

.app-view{min-height:100vh;grid-template-columns:54px minmax(0,1fr);background:var(--workspace);transition:grid-template-columns .16s ease}
.app-view.nav-expanded{grid-template-columns:210px minmax(0,1fr)}
.sidebar{width:54px;height:100vh;top:0;padding:6px;background:var(--shell);border-right:1px solid #ffffff0d;overflow:hidden;z-index:20}
.nav-expanded .sidebar{width:210px}
.sidebar-brand-row{width:42px;height:48px;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid #ffffff12;padding-bottom:6px}
.nav-expanded .sidebar-brand-row{width:198px;justify-content:flex-start}
.sidebar-brand{width:42px;min-width:42px;padding:0;border:0;gap:9px;overflow:hidden}
.nav-expanded .sidebar-brand{width:198px;min-width:198px}
.sidebar-brand .brand-icon{width:34px;height:34px;flex:0 0 34px;margin-left:4px}
.sidebar-brand strong{font-size:12px;white-space:nowrap}.sidebar-brand span{font-size:7px;white-space:nowrap}
.brand-copy{opacity:0;transform:translateX(-4px);transition:.12s;pointer-events:none}
.nav-expanded .brand-copy{opacity:1;transform:none;pointer-events:auto}
.sidebar-toggle{position:absolute;left:8px;bottom:-17px;width:26px;height:26px;padding:0;border:1px solid #ffffff14;border-radius:7px;background:#29292e;color:#a9a7ac;display:grid;place-items:center;z-index:2}
.nav-expanded .sidebar-toggle{left:auto;right:3px}
.sidebar-toggle svg,.system-icon svg,.search-trigger svg,.context-button svg,.context-primary svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-expanded .sidebar-toggle svg{transform:rotate(180deg)}
.sidebar nav{gap:3px;margin-top:22px;width:42px}
.nav-expanded .sidebar nav{width:198px}
.sidebar nav button{height:40px;width:42px;gap:10px;border-radius:7px;padding:3px;color:#aaa9ae;position:relative;white-space:nowrap;overflow:hidden}
.nav-expanded .sidebar nav button{width:198px}
.sidebar nav button i{width:36px;height:34px;flex:0 0 36px;border:0;border-radius:6px}
.sidebar nav button i svg{width:18px;height:18px}
.sidebar nav button span{opacity:0;transform:translateX(-3px);transition:.12s;pointer-events:none}
.nav-expanded .sidebar nav button span{opacity:1;transform:none;pointer-events:auto}
.sidebar nav button:hover{background:#ffffff09}
.sidebar nav button.active{background:#f45b2c1c;color:#fff;box-shadow:none}
.sidebar nav button.active:before{content:"";position:absolute;left:-6px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--orange)}
.sidebar nav button.active i{color:#ff805c;background:transparent}
.sidebar-foot{overflow:hidden}
.system-ok{width:42px;height:38px;padding:5px 8px;border-radius:7px;min-width:42px;background:#ffffff06;overflow:hidden}
.nav-expanded .system-ok{width:198px;min-width:198px}
.system-ok>b{flex:0 0 8px}.system-ok span{opacity:0;white-space:nowrap}.nav-expanded .system-ok span{opacity:1}
.logout{width:42px;height:32px;margin-top:4px;padding:7px;font-size:11px;white-space:nowrap}.nav-expanded .logout{width:198px}.app-view:not(.nav-expanded) .logout{font-size:0}.app-view:not(.nav-expanded) .logout:before{content:"↪";font-size:17px}

.main{min-width:0;min-height:100vh;display:flex;flex-direction:column}
.topbar{height:36px;min-height:36px;padding:0 10px;background:var(--shell);border-bottom:1px solid #ffffff10;color:#ddd;top:0;z-index:15}
.system-left,.top-actions{display:flex;align-items:center;height:100%}
.system-left{gap:4px;min-width:0}.system-icon{width:28px;height:28px;padding:0;border:0;background:transparent;color:#9d9ca1;border-radius:5px;display:grid;place-items:center}.system-icon:hover:not(:disabled){background:#ffffff0d;color:#fff}.system-icon:disabled{opacity:.28;cursor:default}
.system-page-title{font-size:11px;color:#bdbcc0;margin-left:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{gap:8px}.search-trigger{height:27px;min-width:220px;border:1px solid #ffffff12;border-radius:6px;background:#25252a;color:#aaa8ad;padding:4px 6px 4px 9px;gap:7px}.search-trigger:hover{border-color:#f45b2c77;color:#fff}.search-trigger kbd{margin-left:auto;border-color:#ffffff14;background:#19191c;color:#8f8d92;border-radius:4px;padding:2px 5px}.user-chip{height:29px;gap:7px}.user-chip>div{width:25px;height:25px;border-radius:50%;font-size:10px;background:#f45b2c25;color:#ff805c}.user-chip span{font-size:9px}.user-chip small{color:#817f84;margin-top:1px}
.mobile-menu{display:none}

.context-toolbar{height:44px;min-height:44px;position:sticky;top:36px;z-index:14;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 14px;gap:14px}
.context-heading{display:flex;align-items:baseline;gap:9px;min-width:0}.context-heading .eyebrow{font-size:8px;margin:0;white-space:nowrap}.context-heading h2{font-size:15px;letter-spacing:-.015em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.context-actions{display:flex;align-items:center;gap:5px}.context-actions button{height:30px;border-radius:6px;padding:0 9px;display:flex;align-items:center;gap:6px;font-size:10px}.context-actions kbd{font-size:8px;font-weight:400;opacity:.65}.context-primary{background:var(--orange);border:1px solid var(--orange);color:#fff}.context-primary span{font-size:16px;line-height:1}.context-button{background:#fff;border:1px solid #dcdad8;color:#68656a}.context-button:hover{border-color:#f2a991;color:var(--orange)}

.content{width:100%;max-width:none;margin:0;padding:12px 14px 28px;flex:1}
.page-toolbar{min-height:40px;margin-bottom:9px;gap:10px}.page-toolbar h3{font-size:16px;margin-top:1px}.section-note{font-size:9px}.toolbar-actions{gap:5px}.today-button,.date-control{height:32px;border-radius:7px}.today-button{padding:6px 10px}.date-control button{width:30px;font-size:17px}.date-control input{height:30px;padding:4px 8px;font-size:11px}.new-appointment-button{height:32px;padding:6px 11px}
.metric-grid{gap:7px}.metric{border-radius:8px;padding:11px 13px;min-height:82px}.metric strong{font-size:21px;margin:8px 0 4px}.metric span,.metric small{font-size:9px}.metric.accent{background:var(--orange)}
.workspace-grid{gap:8px;margin-top:8px}.panel{border-radius:8px;padding:12px;box-shadow:none}.panel-head{margin-bottom:8px}.panel-head h3{font-size:14px}.appointment-row{min-height:44px;padding:7px 3px;gap:8px;grid-template-columns:54px minmax(180px,1.4fr) minmax(130px,1fr) auto}.appointment-row time{font-size:11px}.patient-main strong{font-size:11px}.status{padding:4px 7px;font-size:8px}.doctor-row{padding:5px 0}.doctor-row .avatar{width:30px;height:30px;border-radius:7px}.empty.compact{padding:18px}
.week-strip{gap:4px;margin-bottom:7px}.week-day{position:relative;border-radius:7px;padding:6px 8px 8px;min-height:50px;overflow:hidden}.week-day strong{font-size:10px;margin:3px 0}.week-day span,.week-day small{font-size:8px}.week-day>i{position:absolute;left:7px;right:7px;bottom:3px;height:2px;border-radius:2px;background:#ebe8e6;overflow:hidden}.week-day>i:after{content:"";display:block;width:var(--load);height:100%;background:currentColor}.week-day.load-low{color:#459267}.week-day.load-medium{color:#b98a31}.week-day.load-high{color:#d76a38}.week-day.load-full{color:#c94d42}.week-day.active{box-shadow:none;color:#fff}.week-day.active>i{background:#ffffff45}.week-day.active>i:after{background:#fff}.week-day.active strong{color:#fff}

.schedule-commandbar{min-height:38px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:7px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:#fff}
.schedule-commandbar label{display:flex;align-items:center;gap:5px;color:#777277;font-size:9px}.schedule-commandbar select,.schedule-commandbar input{height:27px;max-width:190px;border:1px solid #dedbd8;border-radius:5px;background:#fafafa;padding:3px 24px 3px 7px;color:#49464b;outline:0}.schedule-commandbar input{width:170px;padding-right:7px}.schedule-commandbar select:focus,.schedule-commandbar input:focus{border-color:#f2a991;box-shadow:0 0 0 2px #f45b2c12}.schedule-commandbar .command-summary{margin-right:auto;display:flex;align-items:center;gap:8px}.command-summary strong{font-size:11px}.command-summary span{font-size:9px;color:#858186}.schedule-reset{height:27px;border:1px solid #dedbd8;border-radius:5px;background:#fff;color:#716d71;padding:0 8px;font-size:9px}.schedule-reset:hover{border-color:#ef9d82;color:var(--orange)}
.schedule-workspace{display:grid;grid-template-columns:232px minmax(0,1fr);gap:8px;align-items:start}
.schedule-side{position:sticky;top:87px;display:flex;flex-direction:column;gap:7px;max-height:calc(100vh - 100px);overflow:auto}
.schedule-side-panel{background:#fff;border:1px solid var(--line);border-radius:7px;padding:9px}
.schedule-side-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.schedule-side-head strong{font-size:10px}.schedule-side-head span{font-size:9px;color:var(--orange)}
.mini-calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.mini-calendar-head strong{font-size:11px;text-transform:capitalize}.mini-calendar-head button{width:24px;height:24px;border:0;border-radius:5px;background:#f4f3f2;color:#69666a}.mini-calendar-week,.mini-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-calendar-week span{text-align:center;color:#9a969a;font-size:7px;padding:2px}.mini-calendar-grid>i{height:27px}.mini-calendar-grid button{position:relative;height:27px;border:0;border-radius:5px;display:grid;place-items:center;background:transparent;color:#4c494d;font-size:9px;overflow:hidden}.mini-calendar-grid button>span{position:relative;z-index:1}.mini-calendar-grid button>i{position:absolute;left:4px;right:4px;bottom:2px;height:2px;border-radius:2px;background:#e5e2e0}.mini-calendar-grid button>i:after{content:"";display:block;width:var(--load);height:100%;background:currentColor}.mini-calendar-grid button.load-low{background:#edf8f1;color:#397e57}.mini-calendar-grid button.load-medium{background:#fff7e1;color:#9d7422}.mini-calendar-grid button.load-high{background:#fff0e8;color:#bf582c}.mini-calendar-grid button.load-full{background:#fdebea;color:#b43e35}.mini-calendar-grid button:hover{box-shadow:inset 0 0 0 1px #f2a991}.mini-calendar-grid button.today{box-shadow:inset 0 0 0 1px var(--orange)}.mini-calendar-grid button.active{background:var(--orange);color:#fff;box-shadow:none}.mini-calendar-grid button.active>i{background:#ffffff45}.mini-calendar-grid button.active>i:after{background:#fff}.calendar-load-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:4px 7px;margin-top:7px;padding-top:7px;border-top:1px solid #efedeb}.calendar-load-legend span{display:flex;align-items:center;gap:4px;font-size:7px;color:#837f83}.calendar-load-legend span:before{content:"";width:6px;height:6px;border-radius:2px;background:#ddd}.calendar-load-legend .low:before{background:#73bf91}.calendar-load-legend .medium:before{background:#e5bd62}.calendar-load-legend .high:before{background:#ed8c62}.calendar-load-legend .full:before{background:#dc6c62}
.schedule-quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:7px}.schedule-quick-links button{height:26px;border:1px solid #e3e1df;background:#fafafa;border-radius:5px;font-size:8px;color:#625f63}.schedule-quick-links button:hover{border-color:#f2ad96;color:var(--orange)}
.schedule-side-list{display:flex;flex-direction:column}.schedule-side-item{display:grid;grid-template-columns:38px 1fr auto;gap:6px;align-items:center;padding:6px 0;border:0;border-top:1px solid #efedeb;background:transparent;text-align:left;color:inherit}.schedule-side-item:first-child{border-top:0}.schedule-side-item:hover,.schedule-side-item.selected{background:#fff5f1}.schedule-side-item time{font-size:9px;color:var(--orange);font-weight:600}.schedule-side-item span{min-width:0}.schedule-side-item strong,.schedule-side-item small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-side-item strong{font-size:9px}.schedule-side-item small{font-size:7px;color:#959096;margin-top:2px}.schedule-side-item i{width:7px;height:7px;border-radius:50%;background:#bab6b8}.schedule-side-item i.confirmed{background:#3daf73}.schedule-side-item i.call-required{background:#e19b35}.schedule-side-empty{font-size:9px;color:#999;padding:5px 0}
.schedule-selection-empty{font-size:8px;color:#999;line-height:1.5;padding:3px 0}.schedule-selection-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:5px}.schedule-selection-card time{font-size:9px;color:var(--orange);font-weight:600}.schedule-selection-card>strong,.schedule-selection-card>span,.schedule-selection-card>small{display:block}.schedule-selection-card>strong{font-size:10px;margin-top:6px}.schedule-selection-card>span{font-size:8px;color:#716d71;margin-top:2px}.schedule-selection-card>small{font-size:8px;color:#969196;line-height:1.4;margin-top:5px}.schedule-selection-card>div:last-child{display:flex;gap:4px;margin-top:7px}.schedule-selection-card button{flex:1;border:1px solid #e3dedb;background:#faf9f8;border-radius:5px;padding:5px;font-size:7px;color:#625e62}.schedule-selection-card button:hover{border-color:#ef9d82;color:var(--orange)}
.schedule-main{min-width:0}.schedule-help{margin:5px 2px 7px;gap:9px;font-size:8px}.schedule-help small{font-size:8px}.schedule-grid-shell{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.schedule-grid-scroll{width:100%;max-height:calc(100vh - 226px);min-height:430px;overflow:auto;overscroll-behavior:contain}.schedule-grid-canvas{position:relative;display:grid;grid-template-columns:64px repeat(var(--resource-count),minmax(270px,1fr));grid-template-rows:52px var(--timeline-height);width:100%;background:#fff}.schedule-grid-corner{position:sticky;left:0;top:0;z-index:12;grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;border-right:1px solid #dedbd8;border-bottom:1px solid #dedbd8;background:#f7f6f5;color:#928d91;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.schedule-resource-head{position:sticky;top:0;z-index:10;grid-column:var(--column);grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border-right:1px solid #e4e1df;border-bottom:1px solid #dedbd8;background:#fff}.schedule-resource-head>div{min-width:0}.schedule-resource-head p{font-size:7px;text-transform:uppercase;color:#aaa5a8;letter-spacing:.06em;margin:0}.schedule-resource-head strong,.schedule-resource-head small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-resource-head strong{font-size:11px;margin-top:2px}.schedule-resource-head small{font-size:7px;color:#817d81;margin-top:2px}.schedule-resource-head>span{flex:0 0 auto;border-radius:5px;background:var(--orange-soft);color:var(--orange);padding:4px 5px;font-size:7px}.schedule-time-axis{position:sticky;left:0;z-index:8;grid-column:1;grid-row:2;height:var(--timeline-height);border-right:1px solid #dedbd8;background:#f8f7f6}.schedule-time-mark{position:absolute;left:0;right:0;top:var(--top);transform:translateY(-50%);padding-right:8px;text-align:right;color:#9a9599;font-size:8px;font-style:normal}.schedule-time-mark.minor{font-size:7px;color:#bbb6b9}.schedule-resource-column{position:relative;grid-column:var(--column);grid-row:2;height:var(--timeline-height);border-right:1px solid #e5e2e0;background:#fff}.schedule-resource-column.writable{cursor:crosshair}.schedule-resource-column:hover{background:#fffdfc}.schedule-grid-line{position:absolute;left:0;right:0;top:var(--top);height:1px;background:#f0eeec;pointer-events:none}.schedule-grid-line.major{background:#ddd9d7}.schedule-card-layer{position:absolute;inset:0;pointer-events:none}.schedule-appointment{position:absolute;top:var(--top);height:var(--height);left:calc(var(--lane-left) + 3px);right:auto;width:calc(var(--lane-width) - 5px);min-height:0;border-radius:5px;padding:4px 6px;box-shadow:none;z-index:2}.schedule-appointment time{font-size:8px}.schedule-appointment strong{font-size:9px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-appointment span{font-size:8px;margin-top:2px}.schedule-appointment small{font-size:7px;margin-top:2px}.schedule-appointment em{font-size:6px;right:5px;top:4px}.schedule-appointment:hover{z-index:5;box-shadow:0 6px 18px #302b2d1a}.schedule-appointment.selected{z-index:6;outline:2px solid var(--orange);outline-offset:1px;box-shadow:0 7px 20px #f45b2c26}.appointment-confirmation{right:5px;bottom:4px;width:14px;height:14px;border-radius:4px;font-size:8px}.current-time-line{position:absolute;left:64px;right:0;top:calc(52px + var(--top));z-index:7;pointer-events:none;border-top:1px solid var(--orange)}.current-time-line:before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--orange);left:-4px;top:-4px}.current-time-line time{position:absolute;left:-57px;top:-8px;color:var(--orange);font-size:8px;font-weight:600;background:#fff;padding:0 2px}
.schedule-filter-empty{border:1px solid var(--line);border-radius:7px;background:#fff;padding:30px;text-align:center;color:#8d898d}

/* Exact doctor shifts: dark cells are outside the working intervals imported from IDENT. */
.schedule-help span.off-duty b{
  border:1px solid #403d40;
  background-color:#1d1c1f;
  background-image:linear-gradient(45deg,#ffffff12 25%,transparent 25%,transparent 75%,#ffffff12 75%),linear-gradient(45deg,#ffffff12 25%,transparent 25%,transparent 75%,#ffffff12 75%);
  background-position:0 0,3px 3px;
  background-size:6px 6px;
}
.schedule-resource-head.no-shift{background:#242326;border-color:#343136;color:#fff}
.schedule-resource-head.no-shift p,.schedule-resource-head.no-shift small{color:#b7b2b6}
.schedule-resource-head.no-shift>span{background:#ffffff10;color:#e8e3e6}
.schedule-off-duty{
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  top:var(--top);
  height:var(--height);
  min-height:1px;
  overflow:hidden;
  pointer-events:none;
  border-top:1px solid #161518;
  border-bottom:1px solid #161518;
  background-color:#242326;
  background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px),repeating-linear-gradient(135deg,transparent 0 9px,#00000024 9px 11px);
  background-size:15px 15px,15px 15px,auto;
}
.schedule-off-duty span{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  max-width:calc(100% - 24px);
  border:1px solid #ffffff17;
  border-radius:5px;
  background:#111114c9;
  color:#d5d0d3;
  padding:5px 8px;
  font-size:7px;
  line-height:1.25;
  letter-spacing:.025em;
  text-align:center;
  white-space:nowrap;
}
.schedule-grid-line{z-index:1}
.schedule-card-layer{z-index:2}
.schedule-appointment{line-height:1.15}
.schedule-appointment.duration-short{padding:2px 24px 2px 5px}
.schedule-appointment.duration-short span,.schedule-appointment.duration-short small,.schedule-appointment.duration-short em{display:none}
.schedule-appointment.duration-short .appointment-confirmation{right:4px;bottom:50%;width:12px;height:12px;transform:translateY(50%)}
.schedule-appointment.duration-micro{
  display:flex;
  align-items:center;
  gap:5px;
  padding:0 20px 0 4px;
  border-left-width:3px;
  border-radius:3px;
}
.schedule-appointment.duration-micro time{flex:0 0 auto;margin:0;font-size:7px;line-height:1}
.schedule-appointment.duration-micro strong{min-width:0;font-size:8px;line-height:1}
.schedule-appointment.duration-micro span,.schedule-appointment.duration-micro small,.schedule-appointment.duration-micro em{display:none}
.schedule-appointment.duration-micro .appointment-confirmation{right:3px;bottom:50%;width:10px;height:10px;border-radius:3px;transform:translateY(50%);font-size:7px}

.patient-dialog,.history-dialog,.search-dialog,.form-dialog,.appointment-dialog{border-radius:10px}.patient-dialog{width:min(1180px,calc(100vw - 32px));max-height:calc(100vh - 32px)}
.patient-card-shell{border-radius:10px}.patient-hero{padding:14px 18px}.patient-hero h2{font-size:20px}.patient-tabs{min-height:35px}.patient-tabs button{padding:8px 10px;font-size:10px}.clinical-summary-card,.clinical-panel,.clinical-form,.clinical-item{border-radius:7px}.clinical-layout{gap:8px}.clinical-patient-stats{gap:6px}
.form-dialog input,.form-dialog select,.form-dialog textarea,.appointment-dialog input,.appointment-dialog select,.appointment-dialog textarea{border-radius:6px}.appointment-form-section{border-radius:7px}.duration-row button{border-radius:5px}
.toast{border-radius:7px}

@media(max-width:1180px){
  .schedule-workspace{grid-template-columns:1fr}.schedule-side{position:static;max-height:none;display:grid;grid-template-columns:240px repeat(3,minmax(0,1fr));top:auto}.schedule-grid-scroll{max-height:65vh}
}
@media(max-width:980px){
  .app-view,.app-view.nav-expanded{grid-template-columns:1fr}.sidebar,.nav-expanded .sidebar{position:fixed;left:-218px;width:210px;padding:6px;transition:left .16s ease}.sidebar.open{left:0}.sidebar .sidebar-brand-row,.sidebar .sidebar-brand,.sidebar nav,.sidebar nav button,.sidebar .system-ok,.sidebar .logout{width:198px}.sidebar .sidebar-brand{min-width:198px}.sidebar .sidebar-brand-row{justify-content:flex-start}.sidebar .brand-copy,.sidebar nav button span,.sidebar .system-ok span{opacity:1;transform:none;pointer-events:auto}.sidebar-toggle{display:none}.mobile-menu{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:5px;background:#ffffff0d;color:#fff}.topbar{padding:0 7px}.system-page-title{display:none}.content{padding:10px}.context-toolbar{padding:0 9px}.search-trigger{min-width:36px;width:36px;padding:0;justify-content:center}.search-trigger span,.search-trigger kbd,.user-chip span{display:none}.schedule-side{grid-template-columns:1fr 1fr}.schedule-side-panel:first-child{grid-row:auto;grid-column:1/-1}
}
@media(max-width:760px){
  .context-toolbar{height:auto;min-height:44px;padding:6px 9px;align-items:center}.context-heading .eyebrow{display:none}.context-actions kbd{display:none}.context-actions button{padding:0 8px}.context-button{font-size:0}.context-button svg{margin:0}.page-toolbar{display:block}.schedule-commandbar{align-items:flex-start}.schedule-commandbar .command-summary{width:100%}.schedule-commandbar label{flex:1;min-width:120px;display:block}.schedule-commandbar select,.schedule-commandbar input{display:block;width:100%;max-width:none;margin-top:3px}.schedule-search-label{flex-basis:100%!important}.schedule-side{display:block}.schedule-side-panel{margin-bottom:6px}.schedule-help{display:none}.schedule-grid-scroll{min-height:440px;max-height:62vh}.schedule-appointment{position:absolute;top:var(--top);height:var(--height);min-height:0;padding:4px 6px}.week-strip{overflow-x:auto;grid-template-columns:repeat(7,minmax(102px,1fr));padding-bottom:4px}
}
@media(max-width:560px){
  .context-heading h2{font-size:13px}.context-primary kbd{display:none}.content{padding:7px}.metric{min-height:74px;padding:9px}.metric strong{font-size:18px}.week-strip{padding:0 0 4px;margin:0 0 6px}.patient-dialog{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}
}
