@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.ttf) format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}:root{color-scheme:light;font-family:Inter,sans-serif;font-synthesis:none;--ink: #17325f;--ink-strong: #10274d;--primary-blue: #356aa8;--primary-blue-hover: #2e5f99;--soft-blue: #e8f2ff;--soft-blue-strong: #dcecff;--pink: #b84d73;--pink-hover: #a74367;--soft-pink: #fff0f5;--page: #f4f7fb;--surface: #ffffff;--surface-subtle: #f8fbff;--surface-muted: #eef4fb;--border: #d8e6f7;--border-strong: #bfd3ea;--muted: #566f8d;--muted-light: #8ba0ba;--success: #2f7d68;--success-soft: #eaf7f2;--warning: #a06420;--warning-soft: #fff7e7;--danger: #b9475a;--danger-hover: #a83d50;--danger-soft: #fff0f2;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-control: 10px;--radius-card: 14px;--radius-pane: 16px;--radius-dialog: 18px;--radius-pill: 999px;--shadow-overlay: 0 20px 56px rgb(23 50 95 / 18%);--shadow-header: 0 1px 0 rgb(23 50 95 / 8%);--rail-width: 80px;--command-height: 64px;--touch-min: 44px;--transition-press: 80ms;--transition-select: .14s;--transition-pane: .18s;--green: var(--primary-blue);--green-soft: var(--soft-blue);--medical-border: var(--border);--medical-navy: var(--ink);--medical-blue: var(--primary-blue);--medical-blue-soft: var(--soft-blue);--medical-rose: var(--pink);--medical-rose-soft: var(--soft-pink)}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;height:100%;margin:0}html{background:var(--page);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body{min-height:100dvh;overflow:hidden;background:var(--page);color:var(--ink);font-size:14px;line-height:1.45;-webkit-tap-highlight-color:transparent}button,input,select,textarea{min-width:0;margin:0;color:inherit;font:inherit}button,input,select,textarea,.file-import{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface)}input,select,textarea{width:100%;min-height:var(--touch-min);padding:10px 12px;outline:none;transition:border-color var(--transition-select) ease,box-shadow var(--transition-select) ease,background-color var(--transition-select) ease}textarea{min-height:88px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted-light)}button{min-height:var(--touch-min);padding:9px 14px;border-color:var(--border);background:var(--surface);color:var(--ink);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background-color var(--transition-select) ease,border-color var(--transition-select) ease,color var(--transition-select) ease,transform var(--transition-press) ease}button:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-subtle)}button:active:not(:disabled){transform:translateY(1px)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}:where(button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid rgb(53 106 168 / 24%);outline-offset:2px}input:focus,select:focus,textarea:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #356aa81f}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{overflow-wrap:anywhere}h1{margin-bottom:var(--space-1);font-size:clamp(20px,2vw,24px);font-weight:600;letter-spacing:-.025em;line-height:1.2}h2{margin-bottom:0;font-size:17px;font-weight:600;letter-spacing:-.015em;line-height:1.3}h3{margin-bottom:var(--space-2);font-size:15px;font-weight:600}p{margin-bottom:var(--space-3)}label{display:grid;gap:var(--space-2);color:var(--muted);font-size:12px;font-weight:600}svg{display:block}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.windows-page,.backup-page{min-width:0;min-height:0;height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.panel-card{min-width:0;min-height:0;border:1px solid var(--border);border-radius:var(--radius-pane);background:var(--surface)}.section-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.section-heading>span,.section-heading small{color:var(--muted);font-size:12px;font-weight:500}.eyebrow{margin:0 0 var(--space-1);color:var(--primary-blue);font-size:11px;font-weight:600;letter-spacing:.075em;line-height:1.2;text-transform:uppercase}.primary-button,.new-patient-save-button,.patient-dialog-save-button,.force-save-confirm-button,.mecho-action-buttons .primary{border-color:var(--pink);background:var(--pink);color:#fff}.primary-button:hover:not(:disabled),.new-patient-save-button:hover:not(:disabled),.patient-dialog-save-button:hover:not(:disabled),.force-save-confirm-button:hover:not(:disabled),.mecho-action-buttons .primary:hover:not(:disabled){border-color:var(--pink-hover);background:var(--pink-hover)}.secondary-button,.ghost-button,.route-editor-back-button,.new-patient-clear-button{background:var(--surface);color:var(--primary-blue)}.danger-button,.mecho-action-buttons .danger{border-color:#e6a8b2;background:var(--surface);color:var(--danger)}.danger-button:hover:not(:disabled),.mecho-action-buttons .danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft)}.empty-note,.muted{color:var(--muted)}.empty-note{margin:0;padding:var(--space-6);text-align:center}.info-line,.success-line,.warning-line,.error-line{margin:0;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-control);font-size:13px}.info-line{border-color:#c8dcf2;background:var(--soft-blue);color:var(--primary-blue)}.success-line{border-color:#b9dfd2;background:var(--success-soft);color:var(--success)}.warning-line{border-color:#ead3a6;background:var(--warning-soft);color:var(--warning)}.error-line{border-color:#edbdc5;background:var(--danger-soft);color:var(--danger)}.divider{height:1px;background:var(--border)}.form-grid,.form-stack{display:grid;gap:var(--space-4)}.inline-control{display:flex;min-width:0;gap:var(--space-2)}.inline-control>:first-child{min-width:0;flex:1}.data-table-scroll{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}.data-table{width:100%;border-collapse:separate;border-spacing:0;color:var(--ink);font-size:13px}.data-table th{position:sticky;z-index:2;top:0;padding:10px 12px;border-bottom:1px solid var(--border-strong);background:var(--surface-subtle);color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.045em;text-align:left;text-transform:uppercase}.data-table td{padding:11px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr{transition:background-color var(--transition-select) ease}.data-table tbody tr:hover{background:var(--surface-subtle)}.data-table .selected-row{background:var(--soft-pink)}.procedure-badge{display:inline-flex;min-width:0;min-height:20px;align-items:center;justify-content:center;padding:2px 6px;border:1px solid color-mix(in srgb,var(--procedure-color, var(--primary-blue)) 35%,var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--procedure-color, var(--primary-blue)) 10%,white);color:color-mix(in srgb,var(--procedure-color, var(--primary-blue)) 85%,var(--ink));font-size:10px;font-weight:600;line-height:1;white-space:nowrap}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:var(--radius-pill);background:#bdcde0;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}@media(hover:none),(pointer:coarse){button,input,select,textarea,.file-import{min-height:48px}button:hover:not(:disabled){background:inherit}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.app-shell{display:grid;grid-template-columns:var(--rail-width) minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;height:100dvh;min-height:0;overflow:hidden;background:var(--page)}.app-shell>.windows-page,.app-shell>.backup-page{grid-column:2;grid-row:1}.top-bar{position:relative;z-index:30;grid-column:1;grid-row:1;display:flex;width:var(--rail-width);min-width:0;min-height:0;flex-direction:column;align-items:stretch;gap:var(--space-2);padding:max(var(--space-2),env(safe-area-inset-top)) var(--space-2) max(var(--space-2),env(safe-area-inset-bottom));border-right:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-header)}.brand-block{display:grid;min-height:64px;place-items:center}.brand-mark{display:grid;width:50px;height:50px;place-items:center;overflow:hidden;border:1px solid #cfdef0;border-radius:15px;background:linear-gradient(145deg,var(--soft-blue),var(--soft-pink))}.brand-logo{display:block;width:44px;height:44px;object-fit:contain}.brand-copy{display:none}.top-nav{display:flex;min-width:0;min-height:0;flex:1;flex-direction:column;gap:var(--space-1);overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.top-nav::-webkit-scrollbar{display:none}.top-nav button{position:relative;display:flex;width:100%;min-width:0;min-height:66px;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 3px;overflow:hidden;border:0;border-radius:var(--radius-control);background:transparent;color:var(--muted);font-weight:500}.top-nav button:before{position:absolute;top:10px;bottom:10px;left:0;width:3px;border-radius:0 3px 3px 0;background:transparent;content:"";transition:background-color var(--transition-select) ease}.top-nav button:hover:not(:disabled){background:var(--surface-subtle);color:var(--primary-blue)}.top-nav button.active{background:var(--soft-blue);color:var(--primary-blue)}.top-nav button.active:before{background:var(--pink)}.nav-icon{display:grid;width:24px;height:24px;place-items:center}.nav-icon svg,.rail-theme svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.nav-label{display:block;max-width:100%;font-size:10.5px;line-height:1.15;text-align:center;text-wrap:balance}.rail-utility{display:grid;flex:0 0 auto;gap:5px;padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--muted);text-align:center}.rail-theme{display:grid;width:36px;height:32px;margin:0 auto;place-items:center;color:var(--primary-blue)}.rail-storage{display:flex;min-width:0;align-items:center;justify-content:center;gap:5px;font-size:9px;font-weight:600}.rail-storage>span{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--warning)}.rail-storage.is-ready>span{background:var(--success)}.rail-patient-count{overflow:hidden;color:var(--muted);font-size:9px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.page-command-bar{display:flex;min-width:0;min-height:var(--command-height);align-items:center;justify-content:space-between;gap:var(--space-4);border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface);box-shadow:var(--shadow-header)}.page-command-bar h1{margin-bottom:0}.page-command-bar p:not(.eyebrow){margin:var(--space-1) 0 0;color:var(--muted);font-size:12px}.command-context{color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}.app-error{position:fixed;z-index:80;right:var(--space-4);bottom:var(--space-4);max-width:min(560px,calc(100vw - var(--rail-width) - 32px));padding:12px 16px;border:1px solid #e6a8b2;border-radius:var(--radius-card);background:var(--danger-soft);box-shadow:var(--shadow-overlay);color:var(--danger)}.loading-panel,.fatal-error-screen{display:grid;width:100%;min-height:100dvh;padding:var(--space-6);place-items:center;background:var(--page)}.fatal-error-screen{position:fixed;z-index:500;inset:0}.recovery-overlay{background:#17325f6b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.fatal-error-card{width:min(560px,100%);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-dialog);background:var(--surface);box-shadow:var(--shadow-overlay)}body.schedule-fullscreen-active .top-bar{display:none}body.schedule-fullscreen-active .app-shell{grid-template-columns:minmax(0,1fr)}body.schedule-fullscreen-active .app-shell>.windows-page{grid-column:1}@media(max-height:699px){body:has(.new-patient-workspace){height:auto;overflow:auto}body:has(.new-patient-workspace) #root,body:has(.new-patient-workspace) .app-shell{height:auto;min-height:100dvh}body:has(.new-patient-workspace) .app-shell{overflow:visible}body:has(.new-patient-workspace) .top-bar{position:sticky;top:0;height:100dvh;align-self:start}body:has(.new-patient-workspace) .new-patient-workspace{height:auto;min-height:100dvh;overflow:visible}.top-bar{gap:3px;padding-top:var(--space-1);padding-bottom:var(--space-1)}.brand-block{min-height:50px}.brand-mark{width:44px;height:44px}.brand-logo{width:39px;height:39px}.top-nav{gap:2px}.top-nav button{min-height:56px;gap:2px;padding:4px 2px}.nav-icon,.nav-icon svg{width:20px;height:20px}.nav-label{font-size:9.5px}.rail-theme{display:none}.rail-utility{padding-top:4px}}@media(max-width:719px){:root{--rail-width: 72px;--command-height: 60px}.top-bar{padding-right:6px;padding-left:6px}.top-nav button{min-height:62px}.nav-label{font-size:10px}}@media(max-width:559px){:root{--rail-width: 64px}.brand-mark{width:42px;height:42px}.brand-logo{width:37px;height:37px}.top-nav button{min-height:58px}.nav-label{font-size:9px}}.display-date-input{position:relative;display:block;min-width:0}.display-date-input>input[type=date]{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0;pointer-events:none}.display-date-input-button{width:100%;min-height:var(--touch-min);justify-content:flex-start;padding:9px 12px;text-align:left}.display-date-input-value.placeholder{color:var(--muted-light)}.date-picker-popover{position:fixed;z-index:450;display:grid;gap:var(--space-2);max-width:calc(100vw - 16px);padding:var(--space-3);overflow:auto;border:1px solid var(--border-strong);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-overlay)}.date-picker-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:var(--space-2);text-align:center}.date-picker-header strong{font-size:14px;font-weight:600}.date-picker-month-nav{padding:0;font-size:24px}.date-picker-grid{display:grid;gap:2px}.date-picker-week,.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.date-picker-weekdays span{padding:5px 0;color:var(--muted);font-size:10px;font-weight:600;text-align:center;text-transform:uppercase}.date-picker-day{min-width:36px;min-height:36px;padding:0;border:0;border-radius:8px;font-size:12px;font-weight:500}.date-picker-day.outside-month{color:var(--muted);opacity:1}.date-picker-day.weekend-day{color:var(--pink-hover)}.date-picker-day.rest-day{background:var(--soft-pink)}.date-picker-day.today{box-shadow:inset 0 0 0 1px var(--primary-blue)}.date-picker-day.selected{background:var(--primary-blue);color:#fff}.date-picker-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.dialog-backdrop{position:fixed;z-index:400;inset:0;display:grid;padding:max(var(--space-4),env(safe-area-inset-top)) var(--space-4) max(var(--space-4),env(safe-area-inset-bottom));place-items:center;background:#17325f6b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog{display:grid;width:min(520px,100%);max-height:92dvh;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-dialog);background:var(--surface);box-shadow:var(--shadow-overlay)}.dialog-wide{width:min(1080px,100%)}.dialog-header{display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.dialog-close-button{width:44px;padding:0;color:var(--muted);font-size:24px}.dialog-content{min-height:0;padding:var(--space-4);overflow:auto;overscroll-behavior:contain}.dialog-actions,.schedule-dialog-footer,.force-save-actions{position:sticky;z-index:3;bottom:calc(-1 * var(--space-4));display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin:var(--space-4) calc(-1 * var(--space-4)) calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--surface)}.procedure-check-panel{display:grid;gap:var(--space-3);min-width:0}.procedure-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.procedure-panel-heading h3{margin:0}.procedure-panel-heading span{color:var(--muted);font-size:11px}.selected-procedures-strip{display:flex;min-height:32px;flex-wrap:wrap;gap:var(--space-2)}.selected-procedures-strip.is-empty{min-height:0}.selected-procedure-chip{min-height:32px;padding:5px 9px;border-color:color-mix(in srgb,var(--procedure-color) 35%,var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--procedure-color) 9%,white);color:var(--ink);font-size:11px}.selected-procedure-chip span,.selected-procedure-chip strong{color:var(--ink)}.selected-procedure-chip strong{margin-left:3px}.procedure-column-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.procedure-column{display:grid;align-content:start;gap:var(--space-2)}.procedure-pill{display:grid;min-height:44px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:8px 10px;border-left:3px solid color-mix(in srgb,var(--procedure-color) 55%,var(--border));text-align:left}.procedure-pill.selected{border-color:color-mix(in srgb,var(--procedure-color) 65%,var(--primary-blue));border-left-color:var(--procedure-color);background:color-mix(in srgb,var(--procedure-color) 9%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--procedure-color) 24%,transparent)}.procedure-pill-label{min-width:0;overflow:hidden;font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.procedure-pill-badge{color:var(--ink);font-size:10px;font-weight:600}.route-editor-panel,.route-editor-card{display:grid;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface-subtle)}.route-editor-card>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.route-editor-card h4{margin:0}.route-editor-combo-options,.route-editor-combo-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.route-editor-combo-toggle{min-height:38px;border-radius:var(--radius-pill)}.route-editor-combo-toggle.is-active,.route-editor-combo-toggle.selected{border-color:var(--primary-blue);background:var(--soft-blue);color:var(--primary-blue)}.route-editor-list{display:grid;gap:var(--space-2)}.route-editor-row{display:grid;min-width:0;grid-template-columns:auto minmax(110px,1fr) minmax(130px,1.4fr) minmax(90px,.75fr) minmax(82px,.65fr);align-items:end;gap:var(--space-2);padding:var(--space-2);border-bottom:1px solid var(--border);background:var(--surface)}.route-editor-move-group{display:flex;gap:2px}.route-editor-move-button{width:34px;min-height:40px;padding:0}.route-editor-procedure{align-self:center;font-size:12px;font-weight:600}.route-editor-field{gap:3px}.route-editor-field select{min-height:40px;padding:7px 8px;font-size:12px}.route-editor-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.route-editor-check-button{border-color:var(--primary-blue);background:var(--primary-blue);color:#fff}.route-editor-force-button{width:44px;padding:0;border-color:#e5bf70;background:var(--warning-soft)}.route-editor-status,.route-editor-waiting-info{margin:0}.route-editor-reasons{margin:0;padding-left:20px;color:var(--warning);font-size:12px}.force-save-content,.restore-confirmation{display:grid;gap:var(--space-4)}.force-save-content p,.restore-confirmation p{margin:0;color:var(--muted)}.schedule-dialog-shell{display:grid;min-height:0;gap:var(--space-3)}.schedule-dialog-summary{margin:0;padding:10px 12px;border-left:3px solid var(--primary-blue);background:var(--soft-blue);color:var(--ink)}.schedule-dialog-grid{display:grid;min-height:0;grid-template-columns:minmax(240px,.8fr) minmax(0,1.6fr);gap:var(--space-3)}.schedule-dialog-right{display:grid;min-width:0;align-content:start;gap:var(--space-3)}.schedule-dialog-panel,.slot-sequence-panel,.slot-plan-preview{min-width:0;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.dialog-subheading,.slot-sequence-heading{min-height:48px;padding:10px 12px}.slot-picker,.schedule-slot-list{display:grid;gap:var(--space-3);min-width:0}.slot-picker-group{display:grid;gap:var(--space-2)}.slot-picker-group h4{margin:0;color:var(--muted);font-size:11px;text-transform:uppercase}.slot-picker-date-group{display:grid;gap:var(--space-2)}.slot-picker-date-group>strong{font-size:12px}.schedule-slot-grid,.slot-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:var(--space-2)}.schedule-slot-card{display:grid;min-height:48px;gap:1px;padding:6px 8px;text-align:center}.schedule-slot-card strong{font-size:14px}.schedule-slot-card span{color:var(--muted);font-size:9px}.schedule-slot-card.selected,.schedule-slot-card.is-current{border-color:var(--pink);background:var(--soft-pink)}.schedule-slot-show-more,.slot-picker-show-more{justify-self:start;min-height:36px;color:var(--primary-blue)}.schedule-sequence-list,.slot-sequence-list{display:grid;gap:var(--space-2);padding:var(--space-2)}.schedule-sequence-card{display:grid;width:100%;min-width:0;gap:var(--space-2);padding:10px;text-align:left}.schedule-sequence-card.selected{border-color:var(--pink);background:var(--soft-pink);box-shadow:inset 3px 0 var(--pink)}.schedule-sequence-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-2)}.schedule-sequence-header strong{font-size:12px}.schedule-sequence-header>span{color:var(--muted);font-size:10px;white-space:nowrap}.schedule-sequence-steps,.schedule-preview-sequence{display:grid;gap:5px}.schedule-sequence-step{display:grid;min-width:0;grid-template-columns:86px minmax(0,1fr);gap:var(--space-2);padding:6px 8px;border-left:3px solid var(--procedure-accent, var(--primary-blue));background:var(--surface-subtle)}.schedule-sequence-time{font-size:10px;font-weight:600}.schedule-sequence-main{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-2)}.schedule-sequence-badges{display:flex;min-width:0;flex-wrap:wrap;gap:3px}.schedule-sequence-room{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-content,.slot-plan-preview{display:grid;gap:var(--space-3);padding:var(--space-3)}.schedule-preview-grid,.slot-plan-preview-grid,.restore-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.schedule-preview-grid>*,.slot-plan-preview-grid>*,.restore-meta-grid>div{min-width:0;padding:var(--space-2);border-radius:8px;background:var(--surface-subtle)}.cascade-preview-list{display:grid;gap:var(--space-2)}.cascade-preview-row{padding:var(--space-2);border-left:3px solid var(--success);background:var(--success-soft)}.cascade-preview-row.invalid{border-left-color:var(--danger);background:var(--danger-soft)}.schedule-dialog-alert{margin:0;padding:var(--space-2);border-radius:var(--radius-control);background:var(--danger-soft);color:var(--danger)}.patient-edit-form{display:grid;gap:var(--space-4)}.patient-edit-section{display:grid;gap:var(--space-3);min-width:0}.patient-edit-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(220px,1.3fr);align-items:end;gap:var(--space-3)}.patient-edit-course-meta{display:grid;min-height:68px;align-content:center;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-subtle)}.patient-edit-course-meta span,.patient-edit-course-meta small{color:var(--muted);font-size:10px}.checkbox-row{display:flex;align-items:center;gap:var(--space-2);color:var(--ink)}.checkbox-row input{width:20px;min-height:20px}.patient-edit-course-settings{grid-template-columns:minmax(160px,240px) minmax(0,1fr);align-items:end}.patient-edit-status{min-height:44px}.patient-edit-alert ul{margin-bottom:0}.course-lifecycle-badge,.course-status-chip,.restore-pill,.time-chip{display:inline-flex;width:fit-content;align-items:center;padding:3px 7px;border-radius:var(--radius-pill);font-size:10px;font-weight:600}.course-lifecycle-completed{background:var(--surface-muted);color:var(--muted)}.patient-card-main,.status-row,.card-actions{display:flex;min-width:0;align-items:center;gap:var(--space-2)}.card-actions{justify-content:flex-end}@media(max-width:900px){.schedule-dialog-grid{grid-template-columns:1fr}.patient-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-edit-course-meta{grid-column:1 / -1}}@media(max-width:719px){.dialog-backdrop{align-items:end;padding:var(--space-2)}.dialog{width:100%;max-height:calc(100dvh - var(--space-4));border-radius:var(--radius-dialog) var(--radius-dialog) 12px 12px}.dialog-wide{height:min(94dvh,980px)}.procedure-column-list,.patient-edit-grid,.patient-edit-course-settings{grid-template-columns:1fr}.route-editor-row{grid-template-columns:auto minmax(0,1fr) minmax(110px,1fr)}.route-editor-mode-field,.route-editor-wait-field,.route-editor-wait-placeholder{grid-column:span 1}}@media(max-height:699px){.dialog{max-height:calc(100dvh - 16px)}.dialog-header{min-height:52px}.dialog-content{padding:var(--space-3)}}.daily-workspace{display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);overflow:hidden;transition:padding-right var(--transition-pane) ease}.date-command-panel{display:grid;min-height:72px;grid-template-columns:minmax(230px,.8fr) minmax(0,1.8fr);gap:var(--space-4);padding:10px var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pane)}.date-panel-title,.date-command-row,.date-action-group,.date-input-shell,.matrix-heading-actions,.matrix-fullscreen-actions,.section-title-with-icon{display:flex;min-width:0;align-items:center}.date-panel-title{gap:var(--space-3)}.date-panel-icon,.section-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--soft-blue);color:var(--primary-blue)}.date-panel-icon svg,.section-icon svg,.matrix-fullscreen-button svg,.date-input-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.date-panel-copy{min-width:0}.date-panel-copy h1{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.date-command-row{justify-content:flex-end;gap:var(--space-3)}.date-picker-field{width:min(190px,32%);gap:3px}.date-picker-field>span:first-child{display:none}.date-input-shell{position:relative}.date-input-icon{position:absolute;z-index:2;left:10px;color:var(--primary-blue);pointer-events:none}.date-input-shell .display-date-input-button{padding-left:38px}.date-action-group{justify-content:flex-end;gap:var(--space-2)}.day-nav-button,.patients-menu-close,.matrix-fullscreen-button,.matrix-exit-button{width:44px;padding:0}.day-nav-arrow{font-size:18px}.date-today-button,.patients-button{min-width:76px}.patients-button{border-color:var(--primary-blue);color:var(--primary-blue)}.patients-menu-anchor{position:relative}.matrix-panel{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-pane);background:var(--surface)}.matrix-heading{min-height:56px;flex:0 0 auto;padding:8px var(--space-3)}.section-title-with-icon{gap:var(--space-2)}.section-icon{width:34px;height:34px;border-radius:10px}.section-icon-rose{background:var(--soft-pink);color:var(--pink-hover)}.matrix-heading-actions,.matrix-fullscreen-actions{gap:var(--space-2)}.density-control{display:inline-flex;padding:2px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-subtle)}.matrix-toggle-button{min-height:38px;padding:7px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px}.matrix-toggle-button.active{background:var(--surface);color:var(--primary-blue);box-shadow:0 1px 3px #17325f1a}.matrix-fullscreen-button{display:grid;min-width:44px;grid-template-columns:20px;place-items:center;overflow:hidden;color:var(--primary-blue);font-size:0}.matrix-fullscreen-button span{display:grid;place-items:center}.matrix-fullscreen-toolbar{display:flex;min-height:58px;flex:0 0 auto;align-items:center;justify-content:space-between;gap:var(--space-3);padding:7px var(--space-3);border-bottom:1px solid var(--border);background:var(--surface)}.matrix-fullscreen-date{display:grid;gap:1px}.matrix-fullscreen-date span{color:var(--muted);font-size:10px;text-transform:uppercase}.matrix-fullscreen-date strong{font-size:15px}.matrix-exit-button{font-size:0}.matrix-exit-button:before{font-size:20px;content:"×"}.matrix-panel-fullscreen{position:fixed;z-index:300;inset:0;border:0;border-radius:0;background:var(--surface)}.schedule-matrix-scroll{position:relative;min-width:0;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.schedule-timeline{position:relative;display:flex;width:calc(160px + var(--timeline-width));min-width:100%;min-height:100%;flex-direction:column;background:var(--surface)}.schedule-timeline-header,.schedule-timeline-row{display:grid;width:100%;grid-template-columns:160px var(--timeline-width)}.schedule-timeline-header{position:sticky;z-index:15;top:0;min-height:42px;flex:0 0 42px;border-bottom:1px solid var(--border-strong);background:var(--surface-subtle)}.schedule-timeline-room-header,.schedule-timeline-room{position:sticky;z-index:12;left:0;display:flex;align-items:center;border-right:1px solid var(--border-strong);background:var(--surface-subtle)}.schedule-timeline-room-header{z-index:20;padding:0 var(--space-3);color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.schedule-timeline-time-header{position:relative;width:var(--timeline-width);background:repeating-linear-gradient(to right,rgb(53 106 168 / 18%) 0 1px,transparent 1px calc(var(--timeline-tick-width) * 4)),repeating-linear-gradient(to right,transparent 0 calc(var(--timeline-tick-width) - 1px),rgb(216 230 247 / 90%) calc(var(--timeline-tick-width) - 1px) var(--timeline-tick-width))}.timeline-time-tick{position:absolute;top:0;left:var(--timeline-tick-left);display:flex;height:42px;align-items:center;padding-left:5px;color:var(--muted);font-size:10px;font-weight:500;white-space:nowrap}.timeline-time-tick[data-full-hour=true]{color:var(--ink);font-weight:600}.schedule-timeline-body{display:flex;min-height:0;flex:1;flex-direction:column}.schedule-timeline-row{min-height:var(--timeline-row-height);flex:1 0 var(--timeline-row-height);border-bottom:1px solid var(--border)}.schedule-timeline-room{padding:0 var(--space-3)}.room-label{display:flex;min-width:0;align-items:center;gap:var(--space-2);font-size:11px;font-weight:600}.room-icon{display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;color:var(--primary-blue)}.room-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.schedule-timeline-lane{position:relative;width:var(--timeline-width);min-height:var(--timeline-row-height);background:repeating-linear-gradient(to right,rgb(53 106 168 / 16%) 0 1px,transparent 1px calc(var(--timeline-tick-width) * 4)),repeating-linear-gradient(to right,transparent 0 calc(var(--timeline-tick-width) - 1px),rgb(216 230 247 / 72%) calc(var(--timeline-tick-width) - 1px) var(--timeline-tick-width)),repeating-linear-gradient(to right,#f8fbff59 0 calc(var(--timeline-tick-width) * 4),#e8f2ff2e calc(var(--timeline-tick-width) * 4) calc(var(--timeline-tick-width) * 8))}.timeline-chip{position:absolute;z-index:2;top:var(--timeline-top);left:var(--timeline-left);display:grid;width:var(--timeline-card-width);height:calc(var(--timeline-lane-count, 1) * 0px + 42px);max-height:calc(var(--timeline-row-height) - 4px);min-height:40px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-content:center;gap:1px var(--space-2);padding:5px 7px 5px 9px;overflow:hidden;border:1px solid color-mix(in srgb,var(--procedure-accent) 28%,var(--border));border-left:4px solid var(--procedure-accent);border-radius:8px;background:color-mix(in srgb,var(--procedure-accent) 7%,white);color:var(--ink);text-align:left}.timeline-chip:hover:not(:disabled),.timeline-chip:focus-visible{border-color:color-mix(in srgb,var(--procedure-accent) 50%,var(--border));background:color-mix(in srgb,var(--procedure-accent) 11%,white)}.cell-chip-name{min-width:0;overflow:hidden;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cell-chip-time{color:var(--muted);font-size:9px;font-weight:500;white-space:nowrap}.cell-chip-badges{display:flex;min-width:0;grid-column:1 / -1;gap:3px;overflow:hidden}.matrix-panel-compact .timeline-chip{height:40px;min-height:38px;padding-top:3px;padding-bottom:3px}.matrix-panel-compact .cell-chip-badges{max-height:18px}.timeline-chip-conflict{border-color:var(--danger);background:var(--danger-soft)}.timeline-conflict-label,.timeline-forced-label{color:var(--danger);font-size:9px;font-weight:600}.timeline-forced-label{color:var(--warning)}.schedule-current-time-line{position:absolute;z-index:10;top:42px;bottom:0;left:calc(160px + var(--current-time-left));width:2px;background:var(--pink);box-shadow:0 0 0 1px #ffffffb3;pointer-events:none}.schedule-current-time-line:before{position:absolute;top:-4px;left:-3px;width:8px;height:8px;border-radius:50%;background:var(--pink);content:""}.patients-menu-panel,.patient-card-popup{position:fixed;z-index:120;top:0!important;right:0;bottom:0;left:auto!important;display:grid;width:344px;max-width:calc(100vw - var(--rail-width));max-height:none;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:0;border-left:1px solid var(--border-strong);border-radius:0;background:var(--surface)}.daily-workspace:has(.patients-menu-panel),.daily-workspace:has(.patient-card-popup){padding-right:356px}.patients-menu-header,.patient-card-popup-header{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px var(--space-4);border-bottom:1px solid var(--border)}.patients-menu-header h2,.patient-card-popup-title{margin:0;font-size:17px}.patients-menu-list,.patient-card-popup-body{min-height:0;padding:var(--space-2);overflow:auto}.patients-menu-card{display:grid;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border);border-left:3px solid var(--procedure-accent);background:var(--surface)}.patients-menu-card-main,.patients-menu-card-details,.patients-menu-time{display:flex;min-width:0;align-items:center}.patients-menu-card-main,.patients-menu-card-details{justify-content:space-between;gap:var(--space-3)}.patients-menu-patient-block,.patients-menu-time-block{display:grid;gap:2px}.patients-menu-label,.patient-card-popup-eyebrow,.patient-card-popup-info span{color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.045em;text-transform:uppercase}.patients-menu-patient{font-size:13px}.patients-menu-time{gap:5px;font-size:11px}.patients-menu-badges,.patient-card-popup-badges{display:flex;flex-wrap:wrap;gap:3px}.patients-menu-sequence{display:block;max-width:170px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.patients-menu-empty{margin:0;padding:var(--space-6);color:var(--muted);text-align:center}.patient-card-popup-header{display:grid;border-top:4px solid var(--procedure-accent)}.patient-card-popup-body{display:grid;align-content:start;gap:var(--space-3);padding:var(--space-4)}.patient-card-popup-section{display:grid;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.patient-card-popup-section h3{margin:0}.patient-card-popup-details{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-card-popup-info{display:grid;gap:3px}.patient-card-popup-info strong{font-size:12px}.patient-card-popup-route{margin:0;color:var(--muted);font-size:12px}.patient-card-popup-progress{border:0;background:var(--soft-blue);padding:var(--space-3);border-radius:var(--radius-control)}.patient-card-popup-actions{display:flex;justify-content:flex-end;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border)}.mecho-page{padding:var(--space-3);overflow:hidden}.mecho-shell{display:grid;width:100%;height:100%;min-height:0;grid-template-columns:minmax(250px,268px) minmax(0,1fr);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-pane);background:var(--surface)}.mecho-sessions{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr);border-right:1px solid var(--border);background:var(--surface-subtle)}.mecho-sessions-heading,.mecho-header{display:flex;min-width:0;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border);background:var(--surface)}.mecho-sessions-heading{min-height:64px;justify-content:space-between;padding:8px var(--space-3)}.mecho-sessions-heading strong{display:block;font-size:13px}.mecho-new-chat{width:44px;padding:0;border-color:var(--pink);background:var(--pink);color:#fff;font-size:22px}.mecho-session-list{min-height:0;overflow:auto}.mecho-session{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:stretch;border-bottom:1px solid var(--border)}.mecho-session.active{background:var(--soft-blue);box-shadow:inset 3px 0 var(--pink)}.mecho-session-open{display:grid;min-height:62px;align-content:center;gap:4px;padding:9px var(--space-3);overflow:hidden;border:0;border-radius:0;background:transparent;text-align:left}.mecho-session-open span{overflow:hidden;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.mecho-session-open small{color:var(--muted);font-size:10px}.mecho-session-delete{min-height:40px;align-self:center;padding:0;overflow:hidden;border:0;background:transparent;color:var(--muted);font-size:12px;letter-spacing:-1px}.mecho-session-delete:hover:not(:disabled){background:var(--soft-pink);color:var(--danger)}.mecho-chat-panel{display:grid;min-width:0;min-height:0;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;background:var(--surface)}.mecho-header{min-height:64px;padding:8px var(--space-4)}.mecho-avatar,.mecho-mini-avatar,.mecho-empty-bear{display:grid;flex:0 0 auto;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--soft-blue),var(--soft-pink));color:var(--primary-blue)}.mecho-avatar{width:44px;height:44px}.mecho-avatar svg,.mecho-mini-avatar svg,.mecho-empty-bear svg,.mecho-connect-card>svg{width:80%;height:80%;fill:var(--pink);stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.mecho-avatar .eye,.mecho-mini-avatar .eye,.mecho-empty-bear .eye,.mecho-connect-card .eye,.mecho-avatar .nose,.mecho-mini-avatar .nose,.mecho-empty-bear .nose,.mecho-connect-card .nose{fill:var(--ink);stroke:none}.mecho-avatar .muzzle,.mecho-mini-avatar .muzzle,.mecho-empty-bear .muzzle,.mecho-connect-card .muzzle{fill:var(--soft-pink);stroke:none}.mecho-heading-copy{min-width:0}.mecho-heading-copy h1{margin:0;font-size:19px}.mecho-heading-copy p{margin:0;color:var(--muted);font-size:11px}.mecho-connection{display:inline-flex;min-height:30px;align-items:center;gap:6px;margin-left:auto;padding:5px 9px;border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--muted);font-size:10px;font-weight:600}.mecho-status-dot{width:7px;height:7px;border-radius:50%;background:var(--warning)}.mecho-connection.ready .mecho-status-dot{background:var(--success)}.mecho-error-slot:empty{display:none}.mecho-error{padding:var(--space-2) var(--space-4);border-bottom:1px solid #edbdc5;background:var(--danger-soft);color:var(--danger);font-size:12px}.mecho-transcript{min-height:0;padding:var(--space-4) clamp(var(--space-4),4vw,44px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:var(--space-4)}.mecho-empty-state{display:grid;width:min(520px,100%);min-height:100%;margin:0 auto;align-content:center;justify-items:center;gap:var(--space-2);padding-bottom:8vh;text-align:center}.mecho-empty-bear{width:60px;height:60px;margin-bottom:var(--space-1)}.mecho-empty-state h2{font-size:18px}.mecho-empty-state p{max-width:440px;margin:0;color:var(--muted);font-size:12px}.mecho-starter-grid{display:grid;width:min(500px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.mecho-starter-grid button{min-height:46px;padding:8px 10px;background:var(--surface-subtle);color:var(--primary-blue);font-size:11px;font-weight:500}.mecho-bubble-row{display:flex;min-width:0;align-items:flex-end;gap:var(--space-2);margin-bottom:var(--space-3)}.mecho-bubble-row.user{justify-content:flex-end}.mecho-mini-avatar{width:28px;height:28px}.mecho-bubble{display:grid;max-width:72%;gap:var(--space-1);padding:9px 12px;border:1px solid var(--border);border-radius:12px;background:var(--soft-blue)}.mecho-bubble.user{border-color:#f0cad7;background:var(--soft-pink)}.mecho-message-author{color:var(--primary-blue);font-size:9px;font-weight:600;text-transform:uppercase}.mecho-bubble p{margin:0;white-space:pre-wrap}.mecho-bubble time{justify-self:end;color:var(--muted);font-size:9px}.mecho-bubble.typing{display:flex;min-width:58px;flex-direction:row;justify-content:center}.mecho-bubble.typing i{width:6px;height:6px;border-radius:50%;background:var(--primary-blue);animation:mecho-dot .9s infinite ease-in-out alternate}.mecho-bubble.typing i:nth-child(2){animation-delay:.13s}.mecho-bubble.typing i:nth-child(3){animation-delay:.26s}@keyframes mecho-dot{to{opacity:.25}}.mecho-cancel-request{min-height:36px;color:var(--danger)}.mecho-interrupted-request{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-3);border:1px solid #ead3a6;border-radius:var(--radius-control);background:var(--warning-soft);color:var(--warning)}.mecho-action-card{display:grid;max-width:760px;grid-template-columns:36px minmax(0,1fr);gap:var(--space-3);margin:var(--space-4) 0;padding:var(--space-4);border:1px solid var(--border-strong);border-left:4px solid var(--primary-blue);border-radius:var(--radius-card);background:var(--surface)}.mecho-action-card.destructive{border-left-color:var(--danger)}.mecho-action-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:var(--soft-blue);color:var(--primary-blue)}.mecho-action-copy{min-width:0}.mecho-action-copy h2{margin-bottom:var(--space-3)}.mecho-action-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.mecho-action-item{display:grid;grid-template-columns:24px minmax(0,1fr);gap:var(--space-2);padding:var(--space-2);border-radius:8px;background:var(--surface-subtle)}.mecho-action-item.single{grid-template-columns:1fr}.mecho-action-step{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--soft-blue);color:var(--primary-blue);font-size:10px;font-weight:600}.mecho-action-main,.mecho-action-route{font-size:12px}.mecho-action-routes{display:grid;gap:4px;margin-top:var(--space-2)}.mecho-action-route-label{color:var(--muted);font-size:9px;text-transform:uppercase}.mecho-action-token{font-weight:600}.mecho-action-token.date,.mecho-action-token.time,.mecho-action-token.room{color:var(--primary-blue)}.mecho-action-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.mecho-action-error{margin-top:var(--space-2);padding:var(--space-2);border-radius:8px;background:var(--danger-soft);color:var(--danger)}.mecho-composer-wrap{padding:var(--space-3) clamp(var(--space-3),3vw,var(--space-8));border-top:1px solid var(--border);background:var(--surface)}.mecho-composer{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:var(--space-2)}.mecho-composer textarea{max-height:140px;min-height:46px;resize:none}.mecho-send{width:44px;padding:0;border-color:var(--pink);background:var(--pink);color:#fff}.mecho-send svg{width:20px;height:20px;margin:auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.mecho-connect-card{grid-row:3;align-self:center;justify-self:center;display:grid;width:min(460px,calc(100% - 32px));justify-items:center;gap:var(--space-3);padding:var(--space-6);text-align:center}.mecho-connect-card>svg{width:64px;height:64px}.mecho-connect-card p{color:var(--muted)}.new-patient-workspace{padding:var(--space-3);overflow:hidden}.new-patient-main-grid{display:grid;height:100%;min-width:0;min-height:0;grid-template-columns:minmax(320px,360px) minmax(380px,1fr) minmax(270px,304px);gap:var(--space-3)}.patient-form-panel,.new-patient-summary-panel,.free-slots-panel,.sequences-panel{overflow:hidden}.patient-form-panel{display:flex;min-height:0;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-3);overflow-y:auto}.patient-form-panel>:not(.section-heading){margin-right:var(--space-4);margin-left:var(--space-4)}.patient-workspace-heading{position:sticky;z-index:5;top:0;flex:0 0 auto;background:var(--surface)}.patient-compact-form{grid-template-columns:1fr}.name-field.has-error input{border-color:var(--danger)}.calendar-button{flex:0 0 auto;color:var(--primary-blue)}.desired-time-card{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface-subtle)}.desired-time-card.selected{border-color:var(--primary-blue);background:var(--soft-blue)}.desired-time-toggle{display:grid;min-height:44px;grid-template-columns:20px minmax(0,1fr);gap:var(--space-2);padding:0;border:0;background:transparent;text-align:left}.desired-time-toggle>span:last-child{display:grid}.desired-time-toggle small{color:var(--muted);font-size:10px}.desired-time-check{width:18px;height:18px;border:2px solid var(--border-strong);border-radius:5px}.desired-time-card.selected .desired-time-check{border-color:var(--primary-blue);background:var(--primary-blue);box-shadow:inset 0 0 0 3px var(--soft-blue)}.new-patient-panel-actions{display:flex;gap:var(--space-2)}.left-search-actions{position:sticky;bottom:calc(-1 * var(--space-3));margin-top:auto!important;padding:var(--space-3) 0 0;border-top:1px solid var(--border);background:var(--surface)}.new-patient-search-button{flex:1;border-color:var(--primary-blue);background:var(--primary-blue);color:#fff}.new-patient-right-column{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr);gap:var(--space-3)}.free-slots-panel{display:grid;max-height:240px;grid-template-rows:auto auto auto}.time-button-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:var(--space-2);padding:var(--space-3);overflow:auto}.time-choice{min-height:46px;padding:6px 8px;font-size:12px}.time-choice.selected{border-color:var(--pink);background:var(--soft-pink);color:var(--pink-hover)}.future-time-choice{min-height:56px}.time-choice-label{display:grid;gap:2px}.time-choice-date{color:var(--muted);font-size:9px}.time-choice-time{font-size:13px}.free-slots-status,.free-slots-show-more{margin:0 var(--space-3) var(--space-3)}.free-slots-show-more{justify-self:start;min-height:36px;color:var(--primary-blue)}.sequences-panel{display:grid;min-height:0;grid-template-rows:auto minmax(0,1fr)}.sequence-list{min-height:0;padding:var(--space-2);overflow:auto}.sequence-option{display:grid;min-width:0;gap:var(--space-2);margin-bottom:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.sequence-option.selected{border-color:var(--pink);background:var(--soft-pink);box-shadow:inset 3px 0 var(--pink)}.sequence-option-select{display:grid;width:100%;min-width:0;gap:var(--space-2);padding:0;border:0;background:transparent;text-align:left}.sequence-option-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-2)}.sequence-option-header strong{font-size:12px}.sequence-option-header>span{color:var(--muted);font-size:10px;white-space:nowrap}.sequence-step-list{display:grid;gap:4px}.sequence-step{display:grid;min-width:0;grid-template-columns:88px minmax(0,1fr);gap:var(--space-2);padding:6px 8px;border-left:3px solid var(--procedure-color, var(--primary-blue));background:var(--surface-subtle)}.sequence-step-time{color:var(--ink);font-size:10px;font-weight:600}.sequence-step-main{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-2)}.sequence-step-badges{display:flex;flex-wrap:wrap;gap:3px}.sequence-room{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.route-edit-button{min-height:36px;justify-self:end;padding:6px 10px;color:var(--primary-blue);font-size:10px}.new-patient-summary-panel{display:grid;min-height:0;grid-template-rows:auto minmax(0,1fr) auto}.embedded-save-panel{min-height:0;padding:var(--space-3);overflow:auto}.embedded-course-summary{display:grid;gap:var(--space-2)}.embedded-course-summary>span{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:var(--space-2);padding:8px 10px;border-bottom:1px solid var(--border);font-size:13px}.embedded-course-summary strong{color:var(--muted);font-size:10px;font-weight:600;text-transform:uppercase}.embedded-sequence-preview{display:grid;gap:var(--space-2);margin-top:var(--space-3)}.embedded-sequence-preview>span{display:grid;gap:2px;padding:var(--space-2);border-left:3px solid var(--primary-blue);background:var(--surface-subtle)}.embedded-sequence-preview strong,.embedded-sequence-preview span span,.embedded-sequence-preview em{font-size:10px}.embedded-sequence-preview em{color:var(--muted);font-style:normal}.right-save-actions{padding:var(--space-3);border-top:1px solid var(--border);background:var(--surface)}.summary-compact-bar{display:none}.new-patient-save-button{width:100%}.courses-workspace{display:grid;grid-template-columns:minmax(280px,330px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);overflow:hidden}.courses-command-bar{grid-column:1 / -1;padding:9px var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pane)}.course-search-field{position:relative;display:block;width:min(300px,38%)}.course-search-field svg{position:absolute;z-index:2;top:50%;left:12px;width:18px;height:18px;fill:none;stroke:var(--muted);stroke-linecap:round;stroke-width:1.7;transform:translateY(-50%)}.course-search-field input{padding-left:38px}.courses-list-panel,.course-days-panel{display:grid;min-height:0;overflow:hidden}.courses-list-panel{grid-template-rows:auto auto minmax(0,1fr)}.course-filter-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin:var(--space-3);padding:2px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-subtle)}.course-filter-tabs button{min-height:38px;padding:6px 5px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:10px}.course-filter-tabs button.active{background:var(--surface);color:var(--primary-blue);box-shadow:0 1px 3px #17325f1a}.course-card-list{min-height:0;padding:0 var(--space-2) var(--space-2);overflow:auto}.course-card-list-virtualized,.course-card-virtual-spacer{position:relative}.course-card-virtual-row{position:absolute;right:0;left:0;height:92px;padding-bottom:4px}.course-card{display:grid;width:100%;min-height:84px;grid-template-columns:52px minmax(0,1fr) 64px;grid-template-rows:auto auto;align-items:center;gap:4px var(--space-2);margin-bottom:4px;padding:9px 10px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface);text-align:left}.course-card.selected{background:var(--soft-blue);box-shadow:inset 3px 0 var(--pink)}.course-card-time{display:grid;grid-row:1 / -1;gap:1px;color:var(--muted);font-size:9px}.course-card-time strong{color:var(--ink);font-size:13px}.course-card-main{display:grid;min-width:0;gap:5px}.course-card-title-row,.course-badge-row,.course-progress-block>span:first-child{display:flex;min-width:0;align-items:center;gap:4px}.course-card-title-row{justify-content:space-between}.course-card-name{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.course-badge-row{flex-wrap:wrap}.course-progress-block{display:grid;gap:5px;font-size:9px}.course-progress-block>span:first-child{justify-content:space-between}.course-progress-track{display:block;height:5px;overflow:hidden;border-radius:var(--radius-pill);background:#dfe9f5}.course-progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--primary-blue)}.course-date-chip{display:none}.course-days-panel{grid-template-rows:auto auto auto minmax(0,1fr) auto}.course-summary-strip{display:grid;grid-template-columns:minmax(170px,1.4fr) repeat(4,minmax(88px,.75fr));border-bottom:1px solid var(--border)}.course-summary-identity,.course-stat-card{display:grid;min-width:0;align-content:center;gap:3px;min-height:82px;padding:10px var(--space-3);border-right:1px solid var(--border)}.course-summary-identity>span,.course-stat-card>span:first-child{color:var(--muted);font-size:9px;font-weight:600;text-transform:uppercase}.course-summary-identity>strong,.course-stat-card>strong{font-size:13px}.course-stat-card small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.day-action-toolbar{display:flex;min-height:48px;align-items:center;padding:8px var(--space-3);border-bottom:1px solid var(--border);background:var(--surface-subtle)}.day-action-toolbar>div{display:flex;min-width:0;align-items:center;gap:var(--space-3)}.day-action-toolbar strong{font-size:11px}.day-action-toolbar span{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.appointment-row-select,.holiday-row-select{min-height:34px;padding:4px 7px;border:0;background:transparent;color:var(--primary-blue)}.appointment-sequence-cell{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-status-chip.status-present{background:var(--success-soft);color:var(--success)}.course-status-chip.status-absent{background:var(--danger-soft);color:var(--danger)}.course-status-chip.status-awaiting{background:var(--warning-soft);color:var(--warning)}.course-status-chip.status-scheduled{background:var(--soft-blue);color:var(--primary-blue)}.course-actions{display:flex;min-width:0;align-items:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-3);overflow-x:auto;border-top:1px solid var(--border);background:var(--surface)}.course-action-group{display:flex;flex:0 0 auto;align-items:center;gap:5px;padding-right:var(--space-2);border-right:1px solid var(--border)}.course-action-group>span{align-self:center;color:var(--muted);font-size:9px;font-weight:600;text-transform:uppercase}.course-action-group button{min-height:38px;padding:6px 9px;font-size:10px}.course-danger-actions{margin-left:auto;border-right:0}.holidays-workspace{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"command command" "manage list";gap:var(--space-3);padding:var(--space-3);overflow:hidden}.holidays-command-bar{grid-area:command;padding:9px var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pane)}.holidays-list-panel{display:grid;min-height:0;grid-area:list;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.holidays-management-panel{display:grid;min-height:0;grid-area:manage;align-content:start;gap:var(--space-3);padding:0 var(--space-4) var(--space-4);overflow:auto}.holidays-management-panel .section-heading{position:sticky;z-index:3;top:0;margin:0 calc(-1 * var(--space-4));background:var(--surface)}.backup-page{display:grid;min-height:0;grid-template-rows:auto auto auto minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);overflow:hidden}.backup-command-bar{padding:9px var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pane)}.backup-actions{display:flex;min-width:0;align-items:center;gap:var(--space-2)}.backup-actions button,.file-import{min-height:44px;padding:9px 12px;white-space:nowrap}.file-import{position:relative;display:inline-flex;align-items:center;color:var(--primary-blue);cursor:pointer}.file-import input{position:absolute;width:1px;height:1px;min-height:0;opacity:0}.backup-status-card{display:grid;min-width:0;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.backup-status-card .section-heading{min-height:44px;padding:8px var(--space-3)}.backup-status-grid{display:flex;min-width:0;overflow-x:auto}.status-tile{display:grid;min-width:180px;flex:1;align-content:center;gap:2px;min-height:66px;padding:9px var(--space-3);border-right:1px solid var(--border)}.status-tile strong{color:var(--muted);font-size:9px;text-transform:uppercase}.status-tile span{font-size:11px;font-weight:600}.status-tile small{color:var(--muted);font-size:9px}.status-tile.ready,.status-tile.saved{box-shadow:inset 0 3px var(--success)}.status-tile.warning{box-shadow:inset 0 3px var(--warning)}.persistent-storage-button{min-height:32px;justify-self:start;padding:4px 8px;color:var(--primary-blue);font-size:9px}.backup-list{display:flex;min-height:0;flex-direction:column;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.backup-list>h2{position:sticky;z-index:2;top:0;margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.backup-row{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-bottom:1px solid var(--border)}.backup-row-main{display:grid;min-height:62px;grid-template-columns:110px 110px minmax(0,1fr);align-items:center;gap:var(--space-3);padding:8px var(--space-4);border:0;border-radius:0;background:transparent;text-align:left}.backup-row-main>span:not(.restore-pill),.backup-row-main small{color:var(--muted);font-size:10px}.restore-pill{grid-column:3;grid-row:1;justify-self:end;background:var(--soft-blue);color:var(--primary-blue)}.backup-row-invalid{background:var(--danger-soft)}.backup-row>.ghost-button{margin-right:var(--space-3)}.backup-pagination{position:sticky;bottom:0;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-2);border-top:1px solid var(--border);background:var(--surface)}@media(min-width:1100px){.procedure-column-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1099px){.new-patient-main-grid{grid-template-columns:minmax(300px,350px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.new-patient-summary-panel{grid-column:1 / -1;display:grid;min-height:86px;grid-template-columns:minmax(170px,.5fr) minmax(0,1.5fr) 180px;grid-template-rows:auto}.new-patient-summary-panel .section-heading{border-right:1px solid var(--border);border-bottom:0}.new-patient-summary-panel .embedded-save-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3)}.new-patient-summary-panel .embedded-course-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.new-patient-summary-panel .embedded-course-summary>span{display:grid;justify-items:start}.new-patient-summary-panel .embedded-sequence-preview{display:flex;margin:0;overflow-x:auto}.new-patient-summary-panel .embedded-sequence-preview>span{min-width:120px}.right-save-actions{align-items:center}.course-summary-strip{grid-template-columns:minmax(160px,1.4fr) repeat(2,minmax(88px,.8fr))}.course-stat-card:nth-last-child(-n+2){display:none}}@media(max-width:900px){.daily-workspace:has(.patients-menu-panel),.daily-workspace:has(.patient-card-popup){padding-right:var(--space-3)}.patients-menu-panel,.patient-card-popup{top:auto!important;right:0;bottom:0;left:var(--rail-width)!important;width:auto;max-width:none;height:min(58dvh,620px);border-top:1px solid var(--border-strong);border-left:0;border-radius:var(--radius-dialog) var(--radius-dialog) 0 0;box-shadow:var(--shadow-overlay)}.date-command-panel{grid-template-columns:minmax(190px,.8fr) minmax(0,1.5fr)}.course-actions{align-items:stretch}.new-patient-workspace,.holidays-workspace{overflow:auto}.new-patient-main-grid{height:auto;grid-template-columns:1fr;grid-template-rows:auto}.patient-form-panel,.new-patient-right-column,.new-patient-summary-panel{min-height:auto}.patient-form-panel{max-height:none;overflow:visible}.new-patient-right-column{grid-template-rows:auto minmax(440px,auto)}.new-patient-summary-panel{position:sticky;z-index:20;bottom:0;grid-column:1;display:grid;min-height:76px;grid-template-columns:minmax(0,1fr) 166px;grid-template-rows:auto;box-shadow:0 -8px 24px #17325f1a}.new-patient-summary-panel .section-heading,.new-patient-summary-panel .embedded-save-panel{display:none}.summary-compact-bar{display:flex;min-width:0;grid-column:1;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3)}.summary-compact-bar>span:first-child{display:grid;min-width:0;gap:2px;color:var(--muted);font-size:10px}.summary-compact-bar strong{overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.summary-compact-bar>span:last-child{color:var(--muted);font-size:10px;white-space:nowrap}.right-save-actions{grid-column:2;align-items:center}.holidays-workspace{grid-template-columns:1fr;grid-template-rows:auto max-content minmax(520px,auto);grid-template-areas:"command" "manage" "list"}.holidays-management-panel{min-height:max-content;overflow:visible}}@media(max-width:719px){.daily-workspace,.mecho-page,.new-patient-workspace,.courses-workspace,.holidays-workspace,.backup-page{padding:var(--space-2)}.daily-workspace{gap:var(--space-2)}.date-command-panel{min-height:68px;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);padding:8px 10px}.date-panel-icon{display:none}.date-panel-copy h1{font-size:17px}.date-today-button,.patients-button{min-width:60px;padding:6px 8px;font-size:10px}.matrix-heading{min-height:50px}.matrix-heading .section-title-with-icon{display:none}.matrix-heading-actions{width:100%;justify-content:flex-end}.schedule-timeline,.schedule-timeline-header,.schedule-timeline-row{grid-template-columns:132px var(--timeline-width)}.schedule-timeline{width:calc(132px + var(--timeline-width))}.schedule-current-time-line{left:calc(132px + var(--current-time-left))}.room-label{font-size:10px}.mecho-shell{grid-template-columns:188px minmax(0,1fr)}.mecho-sessions-heading strong{display:none}.mecho-session{grid-template-columns:minmax(0,1fr) 34px}.mecho-transcript{padding:var(--space-3)}.mecho-starter-grid{grid-template-columns:1fr}.mecho-bubble{max-width:82%}.new-patient-workspace,.courses-workspace,.holidays-workspace,.backup-page{overflow:auto}.new-patient-main-grid{height:auto;grid-template-columns:1fr;grid-template-rows:auto}.patient-form-panel,.new-patient-right-column,.new-patient-summary-panel{min-height:auto}.patient-form-panel{max-height:none;overflow:visible}.new-patient-right-column{grid-template-rows:auto minmax(440px,auto)}.new-patient-summary-panel{position:sticky;z-index:20;bottom:0;grid-column:1;grid-template-columns:minmax(0,1fr) 148px;box-shadow:0 -8px 24px #17325f1a}.new-patient-summary-panel .section-heading,.new-patient-summary-panel .embedded-save-panel{display:none}.right-save-actions{grid-column:2}.courses-workspace{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(300px,42dvh) minmax(500px,auto)}.courses-command-bar{grid-column:1}.course-search-field{width:min(240px,48%)}.course-summary-strip{grid-template-columns:minmax(150px,1.5fr) minmax(90px,.8fr)}.course-stat-card:nth-child(n+3){display:none}.holidays-workspace{grid-template-columns:1fr;grid-template-rows:auto max-content minmax(480px,auto);grid-template-areas:"command" "manage" "list"}.holidays-management-panel{min-height:max-content;overflow:visible}.backup-page{grid-template-rows:auto auto auto minmax(420px,auto)}.backup-command-bar{align-items:flex-start}.backup-command-bar>div p:not(.eyebrow){display:none}.backup-actions{flex-wrap:wrap;justify-content:flex-end}.backup-actions button,.file-import{min-height:40px;padding:6px 9px;font-size:10px}.backup-row-main{grid-template-columns:84px minmax(0,1fr)}.restore-pill{display:none}}@media(max-height:699px){.daily-workspace,.mecho-page,.new-patient-workspace,.courses-workspace,.holidays-workspace,.backup-page{gap:var(--space-2);padding:var(--space-2)}.date-command-panel,.courses-command-bar,.holidays-command-bar,.backup-command-bar{min-height:56px;padding-top:6px;padding-bottom:6px}.date-panel-icon,.page-command-bar .eyebrow,.page-command-bar p:not(.eyebrow){display:none}.matrix-heading{min-height:48px}.mecho-header,.mecho-sessions-heading{min-height:54px}.mecho-avatar{width:38px;height:38px}.free-slots-panel{max-height:180px}.course-summary-identity,.course-stat-card{min-height:64px}.status-tile{min-height:56px}}@media(max-width:559px){.mecho-shell{grid-template-columns:1fr}.mecho-sessions,.date-panel-copy .eyebrow,.patients-button,.matrix-heading .density-control{display:none}.course-search-field{width:50%}}
