:root{--brand-teal-50: #f0fdfa;--brand-teal-100: #ccfbf1;--brand-teal-200: #99f6e4;--brand-teal-500: #14b8a6;--brand-teal-600: #0d9488;--brand-teal-700: #0f766e;--brand-teal-800: #115e59;--brand-coral-100: #ffe4e6;--brand-coral-500: #f43f5e;--brand-coral-600: #e11d48;--brand-coral-700: #be123c;--brand-amber-500: #f59e0b;--brand-amber-100: #fef3c7;--brand-green-500: #22c55e;--brand-green-100: #dcfce7;--brand-warm-50: #fafaf9;--neutral-0: #ffffff;--neutral-50: #f9fafb;--neutral-100: #f3f4f6;--neutral-200: #e5e7eb;--neutral-300: #d1d5db;--neutral-400: #9ca3af;--neutral-500: #6b7280;--neutral-600: #4b5563;--neutral-700: #374151;--neutral-900: #111827;--color-text-primary: var(--neutral-900);--color-text-secondary: var(--neutral-500);--color-text-muted: var(--neutral-400);--color-text-inverse: var(--neutral-0);--color-text-brand: var(--brand-teal-700);--color-text-danger: var(--brand-coral-700);--color-surface-page: var(--neutral-0);--color-surface-subtle: var(--neutral-50);--color-surface-inset: var(--neutral-100);--color-surface-brand: var(--brand-teal-50);--color-surface-danger: #fff1f2;--color-surface-success: var(--brand-green-100);--color-surface-warning: var(--brand-amber-100);--color-border: var(--neutral-200);--color-border-strong: var(--neutral-300);--color-border-brand: var(--brand-teal-500);--color-border-danger: var(--brand-coral-500);--color-interactive-primary: var(--brand-teal-600);--color-interactive-primary-hover: var(--brand-teal-700);--color-interactive-danger: var(--brand-coral-600);--color-interactive-danger-hover: var(--brand-coral-700);--color-interactive-neutral: var(--neutral-100);--color-interactive-neutral-hover: var(--neutral-200);--color-status-success: var(--brand-green-500);--color-status-warning: var(--brand-amber-500);--color-status-danger: var(--brand-coral-600);--color-status-info: var(--brand-teal-600);--color-focus-ring: rgba(13, 148, 136, .35);--space-1: 4px;--space-2: 8px;--space-3: 10px;--space-4: 12px;--space-5: 14px;--space-6: 16px;--space-7: 18px;--space-8: 20px;--space-9: 22px;--space-10: 24px;--space-12: 28px;--space-14: 32px;--space-16: 36px;--space-20: 40px;--space-24: 48px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 22px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--letter-spacing: 0;--radius-sm: 4px;--radius-md: 6px;--radius-card: 8px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--control-height-sm: 36px;--control-height-md: 44px;--control-height-lg: 48px;--nav-rail-width: 200px;--nav-rail-collapse-bp: 1080px;--patient-form-max-width: 420px;--patient-shell-max-width: 420px;--content-max-width: 1200px;--topbar-height: 56px;--shell-topbar-padding: 13px 20px;--shell-body-padding: 22px 24px;--shell-card-padding: 18px;--shell-gap: 16px;--field-padding: 11px 13px;--z-base: 0;--z-raised: 10;--z-dropdown: 100;--z-drawer: 200;--z-overlay: 300;--z-toast: 400;--duration-fast: .1s;--duration-normal: .15s;--duration-slow: .25s;--easing-default: ease}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);font-size:var(--font-size-lg);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-surface-page);-webkit-font-smoothing:antialiased;overflow-x:hidden}body{min-height:100dvh;overflow-x:hidden}#root{min-height:100dvh;display:flex;flex-direction:column}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}:focus-visible{outline:2px solid var(--color-interactive-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media (forced-colors: active){:focus-visible{outline:3px solid ButtonText}}::selection{background:var(--brand-teal-100);color:var(--brand-teal-800)}.skip-link{position:absolute;top:-100%;left:var(--space-6);padding:var(--space-3) var(--space-8);background:var(--color-interactive-primary);color:var(--color-text-inverse);font-weight:var(--font-weight-semibold);border-radius:var(--radius-card);z-index:var(--z-toast);text-decoration:none;font-size:var(--font-size-md)}.skip-link:focus-visible{top:var(--space-6);outline:2px solid var(--neutral-0);outline-offset:2px}.auth-wrapper{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--brand-teal-50) 0%,var(--neutral-0) 55%);padding:var(--space-24) var(--space-6)}.auth-card{width:100%;max-width:var(--patient-form-max-width);background:var(--neutral-0);border-radius:var(--radius-card);box-shadow:var(--shadow-md);padding:var(--space-20) var(--space-14);border:1px solid var(--color-border)}.auth-logo{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-12)}.auth-logo-icon{width:36px;height:36px;border-radius:var(--radius-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-logo-icon img{border-radius:var(--radius-card);width:100%;height:100%;object-fit:contain}.auth-logo-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-brand);letter-spacing:var(--letter-spacing)}.auth-subheading{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-bottom:var(--space-12)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-group{margin-bottom:var(--space-7)}.form-label{display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:6px}.form-input{width:100%;min-height:var(--control-height-md);padding:var(--field-padding);border:1.5px solid var(--color-border);border-radius:var(--radius-card);font-size:var(--font-size-md);color:var(--color-text-primary);background:var(--color-surface-subtle);transition:border-color var(--duration-normal),box-shadow var(--duration-normal);letter-spacing:var(--letter-spacing)}.form-input:focus{outline:none;border-color:var(--color-interactive-primary);box-shadow:0 0 0 3px var(--color-focus-ring);background:var(--neutral-0)}.form-input[aria-invalid=true]{border-color:var(--color-border-danger);background:var(--color-surface-danger)}.form-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.form-error-msg{font-size:var(--font-size-sm);color:var(--color-text-danger);margin-top:var(--space-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height-md);padding:var(--space-3) var(--space-8);border:1.5px solid transparent;border-radius:var(--radius-card);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing);cursor:pointer;transition:background var(--duration-normal),border-color var(--duration-normal),opacity var(--duration-normal);text-decoration:none;white-space:nowrap;flex-shrink:0}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-interactive-primary);color:var(--neutral-0);width:100%}.btn-primary:hover:not(:disabled){background:var(--color-interactive-primary-hover)}.btn-secondary{background:var(--color-interactive-neutral);color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-interactive-neutral-hover)}.btn-danger{background:var(--color-interactive-danger);color:var(--neutral-0)}.btn-danger:hover:not(:disabled){background:var(--color-interactive-danger-hover)}.btn-ghost{background:transparent;color:var(--color-text-brand);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-surface-brand)}.btn-outline{background:transparent;color:var(--color-interactive-primary);border-color:var(--color-interactive-primary)}.btn-outline:hover:not(:disabled){background:var(--color-surface-brand)}.btn-sm{min-height:var(--control-height-sm);padding:var(--space-1) var(--space-6);font-size:var(--font-size-sm)}.btn-inline{width:auto}.card{display:block;background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-6);color:inherit;text-decoration:none;transition:box-shadow var(--duration-fast),border-color var(--duration-fast)}a.card:hover,button.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-8) 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.social-btn{width:100%;min-height:var(--control-height-md);padding:var(--space-3) var(--space-6);border:1.5px solid var(--color-border);border-radius:var(--radius-card);background:var(--neutral-0);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-3);transition:border-color var(--duration-normal),background var(--duration-normal);margin-bottom:var(--space-3)}.social-btn:hover{background:var(--color-surface-subtle);border-color:var(--color-border-strong)}.alert{padding:var(--space-4) var(--space-5);border-radius:var(--radius-card);font-size:var(--font-size-base);line-height:var(--line-height-normal);margin-bottom:var(--space-7)}.alert-error{background:var(--color-surface-danger);border:1px solid #fecdd3;color:var(--brand-coral-700)}.alert-success{background:var(--color-surface-success);border:1px solid #bbf7d0;color:#15803d}.alert-info{background:var(--color-surface-brand);border:1px solid var(--brand-teal-100);color:var(--brand-teal-800)}.alert-warning{background:var(--color-surface-warning);border:1px solid #fde68a;color:#92400e}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:var(--radius-full);animation:spin .7s linear infinite;flex-shrink:0}.spinner-brand{border-color:var(--brand-teal-100);border-top-color:var(--brand-teal-600)}@keyframes spin{to{transform:rotate(360deg)}}.state-icon{width:56px;height:56px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-8);flex-shrink:0}.state-icon-brand{background:var(--brand-teal-100)}.state-icon-danger{background:var(--brand-coral-100)}.state-icon-neutral{background:var(--neutral-100)}.state-icon-warning{background:var(--brand-amber-100)}.state-icon-success{background:var(--brand-green-100)}.skeleton{background:linear-gradient(90deg,var(--neutral-100) 25%,var(--neutral-200) 50%,var(--neutral-100) 75%);background-size:200% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--neutral-100)}}.privacy-note{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;margin-top:var(--space-8);line-height:var(--line-height-relaxed)}.clinic-shell{display:flex;min-height:100dvh;background:var(--color-surface-subtle)}.clinic-rail{width:var(--nav-rail-width);flex-shrink:0;background:var(--neutral-0);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;overflow-y:auto}.clinic-rail-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--shell-topbar-padding);border-bottom:1px solid var(--color-border);min-height:var(--topbar-height);flex-shrink:0}.clinic-rail-nav{flex:1;padding:var(--space-6) 0;overflow-y:auto}.clinic-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-8);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-decoration:none;border-radius:0;transition:background var(--duration-normal),color var(--duration-normal);min-height:40px;cursor:pointer;background:none;border:none;width:100%;text-align:left}.clinic-nav-group-label{padding:var(--space-4) var(--space-8) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.clinic-nav-item:hover{background:var(--color-surface-inset);color:var(--color-text-primary)}.clinic-nav-item[aria-current=page]{background:var(--color-surface-brand);color:var(--color-text-brand);font-weight:var(--font-weight-semibold);border-right:2px solid var(--color-interactive-primary)}.clinic-rail-footer{padding:var(--space-6) var(--space-8);border-top:1px solid var(--color-border);flex-shrink:0}.clinic-rail-user{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-tight)}.clinic-rail-role{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.clinic-content{flex:1;min-width:0;padding:var(--shell-body-padding);overflow-x:hidden}.clinic-dashboard-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-7);margin-bottom:var(--space-7);border-bottom:1px solid var(--color-border)}.clinic-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-6);align-items:start}.clinic-widget{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-6)}.clinic-widget-muted{opacity:.7}.clinic-widget-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-4)}.clinic-widget-header .clinic-widget-heading{margin-bottom:0}.clinic-widget-link{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-brand);text-decoration:none}.clinic-widget-link:hover{text-decoration:underline}.clinic-summary-grid,.clinic-reminder-grid,.clinic-emergency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:var(--space-3)}.clinic-summary-stat,.clinic-reminder-stat,.clinic-emergency-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-4) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.clinic-summary-count,.clinic-reminder-count,.clinic-emergency-count{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1.1;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.clinic-summary-label,.clinic-reminder-label,.clinic-emergency-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.clinic-summary-stat-primary{background:var(--color-surface-brand)}.clinic-summary-stat-primary .clinic-summary-count{color:var(--color-text-brand)}.clinic-summary-stat-primary .clinic-summary-label{color:var(--brand-teal-700)}.clinic-summary-stat-muted{opacity:.6}.clinic-reminder-stat-overdue,.clinic-emergency-stat-escalated{background:var(--color-surface-warning)}.clinic-reminder-stat-overdue .clinic-reminder-count,.clinic-emergency-stat-escalated .clinic-emergency-count{color:#92400e}.clinic-reminder-grid{margin-bottom:var(--space-3)}.clinic-reminder-lag{grid-column:1 / -1;font-size:var(--font-size-sm);color:#92400e;background:var(--color-surface-warning);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.clinic-reminder-ok{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.clinic-upcoming-list{list-style:none;margin:0;padding:0}.clinic-upcoming-item+.clinic-upcoming-item{border-top:1px solid var(--color-border)}.clinic-upcoming-link{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;text-decoration:none}.clinic-upcoming-time{flex-shrink:0;width:56px;font-size:var(--font-size-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.clinic-upcoming-patient{flex:1;min-width:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-upcoming-status{flex-shrink:0;font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;padding:3px var(--space-3);border-radius:var(--radius-full)}.clinic-quick-actions{flex-shrink:0}.clinic-calendar-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-7);margin-bottom:var(--space-7);border-bottom:1px solid var(--color-border)}.clinic-calendar-header .clinic-page-heading{font-weight:var(--font-weight-semibold)}.clinic-calendar-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}.clinic-view-toggle{display:inline-flex;padding:3px;background:var(--color-surface-inset);border-radius:var(--radius-full);gap:2px}.clinic-view-toggle .btn{min-height:30px;padding:0 var(--space-7);border-radius:var(--radius-full);border:none;font-weight:var(--font-weight-medium)}.clinic-view-toggle .btn-ghost{background:transparent;color:var(--color-text-secondary)}.clinic-view-toggle .btn-ghost:hover:not(:disabled){background:transparent;color:var(--color-text-primary)}.clinic-view-toggle .btn-primary{background:var(--neutral-0);color:var(--color-text-primary);box-shadow:var(--shadow-sm);width:auto}.clinic-calendar-controls .btn-icon{width:30px;min-height:30px;padding:0;border-radius:var(--radius-full);color:var(--color-text-secondary)}.clinic-calendar-controls .btn-icon:hover:not(:disabled){background:var(--color-surface-inset);color:var(--color-text-primary)}.clinic-calendar-range-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-transform:capitalize;min-width:160px}.clinic-calendar-controls .input-sm{min-height:30px;border-radius:var(--radius-full);padding:0 var(--space-6);border-color:var(--color-border);font-size:var(--font-size-sm)}.clinic-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--space-5);margin-bottom:var(--space-5)}.clinic-calendar-legend-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.clinic-calendar-legend-swatch{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.clinic-fc-selection-hint{margin-top:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.clinic-notice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-card);font-size:var(--font-size-sm);margin-bottom:var(--space-6)}.clinic-notice-info{background:var(--color-surface-brand);color:var(--brand-teal-800)}.clinic-calendar-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-8);align-items:start}@media (max-width: 900px){.clinic-calendar-layout{grid-template-columns:1fr}}.clinic-fc-wrapper{--fc-border-color: var(--color-border);--fc-page-bg-color: var(--neutral-0);--fc-neutral-bg-color: var(--color-surface-subtle);--fc-today-bg-color: var(--brand-teal-50);--fc-now-indicator-color: var(--brand-coral-500);--fc-small-font-size: var(--font-size-xs);background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);overflow:hidden;padding:var(--space-4) var(--space-5) var(--space-5)}.clinic-fc-wrapper .fc{font-family:var(--font-sans)}.clinic-fc-wrapper .fc-theme-standard td,.clinic-fc-wrapper .fc-theme-standard th{border-color:var(--color-border)}.clinic-fc-wrapper .fc-col-header{border-bottom:none}.clinic-fc-wrapper .fc-timegrid-slot-label-cushion{font-size:var(--font-size-xs);color:var(--color-text-muted)}.clinic-fc-wrapper .fc-timegrid-slot{height:2.6em}.clinic-fc-wrapper .fc-timegrid-axis{border-color:transparent}.clinic-fc-wrapper .fc-timegrid-now-indicator-line{border-color:var(--brand-coral-500)}.clinic-fc-wrapper .fc-timegrid-now-indicator-arrow{border-color:var(--brand-coral-500);color:var(--brand-coral-500)}.clinic-fc-wrapper .fc-event{background:transparent;border:none;padding:0}.clinic-fc-wrapper .fc-timegrid-event-harness{margin-right:2px}.clinic-fc-wrapper .fc-timegrid-col.fc-day-today{background:var(--brand-teal-50)}.clinic-fc-day-header{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) 0}.clinic-fc-day-header-weekday{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.clinic-fc-day-header-date{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.clinic-fc-day-header-today .clinic-fc-day-header-date{background:var(--color-interactive-primary);color:var(--neutral-0)}.clinic-fc-day-header-today .clinic-fc-day-header-weekday{color:var(--color-interactive-primary)}.clinic-fc-event{display:flex;flex-direction:column;gap:1px;height:100%;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);line-height:var(--line-height-tight);overflow:hidden;cursor:pointer;transition:filter var(--duration-fast)}.clinic-fc-event:hover{filter:brightness(.97)}.clinic-fc-event-time{font-weight:var(--font-weight-semibold)}.clinic-fc-event-title{font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-fc-event-status{font-size:10px;text-transform:uppercase;letter-spacing:.03em;opacity:.85}.clinic-fc-event-slot{height:100%;display:flex;align-items:center;justify-content:center;padding:4px 6px;border-radius:var(--radius-sm);border:1.5px dashed var(--brand-teal-500);background:var(--brand-teal-50);color:var(--brand-teal-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer}.clinic-fc-event-slot:hover{background:var(--brand-teal-100)}.clinic-agenda{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-6);position:sticky;top:var(--space-6)}.clinic-agenda-heading{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-5)}.clinic-agenda-tz{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:var(--color-surface-inset);padding:2px var(--space-3);border-radius:var(--radius-full)}.clinic-agenda-empty{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--space-6) 0}.clinic-agenda-list{display:flex;flex-direction:column;gap:var(--space-1)}.clinic-agenda-item{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-4) var(--space-2);border-radius:var(--radius-sm);border-bottom:1px solid var(--color-border);transition:background var(--duration-fast)}.clinic-agenda-list li:last-child .clinic-agenda-item{border-bottom:none}.clinic-agenda-item:hover{background:var(--color-surface-subtle)}.clinic-agenda-time{flex-shrink:0;width:84px;font-size:var(--font-size-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.clinic-agenda-patient{flex:1;min-width:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-agenda-patient:hover{color:var(--color-text-brand)}.clinic-agenda-status{flex-shrink:0;font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;padding:2px 6px;border-radius:var(--radius-full)}.clinic-status-scheduled{background:var(--brand-teal-100);color:var(--brand-teal-800)}.clinic-status-confirmed{background:var(--brand-teal-600);color:var(--neutral-0)}.clinic-status-completed{background:var(--neutral-100);color:var(--color-text-secondary)}.clinic-status-cancelled{background:var(--color-surface-danger);color:var(--brand-coral-700)}.clinic-status-no_show{background:var(--color-surface-warning);color:#92400e}.clinic-agenda-item-slot{align-items:center}.clinic-agenda-slot-btn{flex:1;text-align:left;background:none;border:none;padding:0;color:var(--brand-teal-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;min-height:28px}.clinic-agenda-slot-btn:hover{text-decoration:underline}.patient-agenda-list{display:flex;flex-direction:column;gap:var(--space-3)}.patient-agenda-item{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5);background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);text-decoration:none;transition:box-shadow var(--duration-fast),border-color var(--duration-fast)}.patient-agenda-item:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border-strong)}.patient-agenda-date-badge{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-card);background:var(--color-surface-subtle)}.patient-agenda-item-today .patient-agenda-date-badge{background:var(--color-interactive-primary)}.patient-agenda-date-weekday{font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.patient-agenda-item-today .patient-agenda-date-weekday{color:var(--neutral-0);opacity:.85}.patient-agenda-date-day{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.patient-agenda-item-today .patient-agenda-date-day{color:var(--neutral-0)}.patient-agenda-body{flex:1;min-width:0}.patient-agenda-clinic{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-agenda-time{margin-top:2px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.patient-agenda-status{flex-shrink:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;padding:3px var(--space-3);border-radius:var(--radius-full)}.patient-status-scheduled{background:var(--brand-teal-100);color:var(--brand-teal-800)}.patient-status-confirmed{background:var(--brand-teal-600);color:var(--neutral-0)}.patient-status-completed{background:var(--neutral-100);color:var(--color-text-secondary)}.patient-status-cancelled{background:var(--color-surface-danger);color:var(--brand-coral-700)}.patient-status-no_show{background:var(--color-surface-warning);color:#92400e}.clinic-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.clinic-breadcrumb a{color:var(--color-text-brand);text-decoration:none}.clinic-breadcrumb a:hover{text-decoration:underline}.clinic-breadcrumb [aria-current=page]{color:var(--color-text-secondary)}.clinic-widget-heading{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-4)}.clinic-detail-status-bar{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-3) 0 var(--space-6)}.clinic-badge{display:inline-flex;align-items:center;padding:3px var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em}.clinic-detail-terminal-note{font-size:var(--font-size-sm);color:var(--color-text-muted)}.clinic-detail-dl{display:grid;grid-template-columns:180px 1fr;background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:var(--space-6)}.clinic-detail-row{display:contents}.clinic-detail-row dt,.clinic-detail-row dd{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.clinic-detail-row:last-child dt,.clinic-detail-row:last-child dd{border-bottom:none}.clinic-detail-row dt{color:var(--color-text-secondary);background:var(--color-surface-subtle);font-weight:var(--font-weight-medium)}.clinic-detail-row dd{margin:0;color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.clinic-detail-tz{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.clinic-detail-comms{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.clinic-detail-comms-state{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.clinic-comms-preview{background:var(--color-surface-subtle);border-radius:var(--radius-md);padding:var(--space-4)}.clinic-comms-preview-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.clinic-comms-preview-text{margin:0;font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:pre-wrap}.clinic-detail-actions{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-6);margin-bottom:var(--space-6)}.clinic-timeline{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-6)}.clinic-timeline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.clinic-timeline-item{display:flex;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.clinic-timeline-item:last-child{border-bottom:none}.clinic-timeline-time{flex-shrink:0;width:130px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.clinic-timeline-summary{color:var(--color-text-primary)}.patient-crm-page{padding:var(--shell-body-padding, 22px 24px);max-width:var(--content-max-width);margin:0 auto}.patient-crm-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-7);margin-bottom:var(--space-9)}.clinic-page-heading{font-size:var(--font-size-3xl);line-height:var(--line-height-tight);color:var(--color-text-primary)}.clinic-page-subheading{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-base)}.patient-crm-toolbar{display:grid;grid-template-columns:minmax(280px,2fr) repeat(4,minmax(140px,1fr));gap:var(--space-6);align-items:start;margin-bottom:var(--space-7)}.patient-crm-search{min-width:0}.patient-crm-toolbar .form-group{min-width:0;margin-bottom:0}.patient-crm-toolbar .form-label{display:flex;align-items:flex-end;min-height:2.8em;margin-bottom:var(--space-2)}.patient-crm-toolbar .form-input{width:100%;min-width:0}.patient-crm-search .form-label{display:flex;align-items:flex-end;gap:var(--space-2)}@media (max-width: 1100px){.patient-crm-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-crm-search{grid-column:1 / -1}}@media (max-width: 640px){.patient-crm-toolbar{grid-template-columns:minmax(0,1fr)}.patient-crm-search{grid-column:auto}.patient-crm-toolbar .form-label{min-height:auto}}.patient-crm-refresh,.patient-crm-result-count{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-5)}.patient-crm-table-wrap{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.patient-crm-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.patient-crm-table th,.patient-crm-table td{padding:var(--space-5);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.patient-crm-table th{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);background:var(--color-surface-subtle)}.patient-crm-table td{color:var(--color-text-primary)}.patient-crm-table tr:last-child td{border-bottom:0}.patient-crm-avatar,.patient-profile-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:var(--space-3);border-radius:var(--radius-card);background:var(--color-surface-brand);color:var(--color-text-brand);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0}.patient-profile-avatar{width:48px;height:48px;font-size:var(--font-size-lg)}.patient-crm-name{font-weight:var(--font-weight-semibold)}.patient-crm-muted{display:block;margin-top:var(--space-1);color:var(--color-text-secondary);overflow-wrap:anywhere}.patient-crm-badge{display:inline-flex;align-items:center;gap:var(--space-1);min-height:24px;padding:2px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.patient-duplicate-review summary{display:inline-flex;align-items:center;gap:var(--space-2);min-height:28px;cursor:pointer;color:var(--brand-coral-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.patient-duplicate-panel{margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--neutral-0);color:var(--color-text-primary)}.patient-duplicate-panel p,.patient-duplicate-panel li{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.patient-duplicate-candidate{margin-top:var(--space-3)}.patient-duplicate-candidate ul{padding-left:var(--space-7);margin:var(--space-2) 0}.patient-crm-list{display:none}.patient-crm-pagination,.patient-crm-actions,.patient-crm-breadcrumb{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.patient-crm-pagination{justify-content:flex-end;margin-top:var(--space-7);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.patient-crm-breadcrumb{margin-bottom:var(--space-7);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.patient-crm-breadcrumb a{color:var(--color-text-brand);text-decoration:none}.patient-search-clear,.patient-load-more{margin-top:var(--space-3)}.patient-conflict-list{margin:var(--space-3) 0;padding-left:var(--space-7);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.patient-crm-form{max-width:760px;padding:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--neutral-0)}.patient-crm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.patient-profile-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:var(--space-7);align-items:start}.patient-profile-aside,.patient-profile-main{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--neutral-0);padding:var(--space-7)}.patient-profile-identity{display:flex;gap:var(--space-4);align-items:center;margin-bottom:var(--space-7)}.patient-profile-identity h2{font-size:var(--font-size-xl);line-height:var(--line-height-tight)}.patient-profile-identity p,.patient-profile-facts dd{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.patient-profile-facts{display:grid;gap:var(--space-3);margin-bottom:var(--space-7)}.patient-profile-facts dt{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.patient-profile-facts dd{overflow-wrap:anywhere}.patient-profile-tabs{display:flex;gap:var(--space-2);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-7);overflow-x:auto}.patient-profile-tabs button{min-height:40px;padding:var(--space-2) var(--space-5);border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap}.patient-profile-tabs button.active{color:var(--color-text-brand);border-bottom-color:var(--color-interactive-primary)}.patient-profile-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-5)}.patient-overview{display:grid;gap:var(--space-6)}.patient-overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.patient-overview-metrics>div{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-subtle)}.patient-overview-metrics dt{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.patient-overview-metrics dd{margin-top:var(--space-1);color:var(--color-text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.patient-overview-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.patient-overview-dates>div{padding-left:var(--space-4);border-left:3px solid var(--color-interactive-primary)}.patient-overview-dates dt{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.patient-overview-dates dd{margin-top:var(--space-1);color:var(--color-text-primary)}.patient-overview-heading-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.patient-overview-heading-row h3{font-size:var(--font-size-base)}.patient-history-list,.patient-note-list{display:grid;gap:var(--space-4)}.patient-history-list li,.patient-note-list li{display:flex;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-subtle)}.patient-history-list strong,.patient-note-list p{display:block;font-size:var(--font-size-base)}.patient-history-list span,.patient-note-list span,.patient-section-note{display:block;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.patient-note-composer{margin-bottom:var(--space-7);padding-bottom:var(--space-7);border-bottom:1px solid var(--color-border)}.patient-communication-unavailable{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text-secondary);background:var(--color-surface-subtle)}.patient-communication-summary{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-3) var(--space-6)}.patient-communication-summary div{display:contents}.patient-communication-summary dt{font-weight:var(--font-weight-semibold)}.patient-communication-summary dd{color:var(--color-text-secondary)}@media (max-width: 900px){.patient-crm-toolbar,.patient-crm-form-grid,.patient-profile-layout{grid-template-columns:1fr}.patient-crm-header{flex-direction:column}.patient-crm-table-wrap{display:none}.patient-crm-list{display:grid;gap:var(--space-5);list-style:none}.patient-crm-list-item{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--neutral-0)}.patient-crm-list-item>div:first-child{display:flex;align-items:center;margin-bottom:var(--space-4)}.patient-crm-list-item dl{display:grid;gap:var(--space-2);margin-bottom:var(--space-5)}.patient-crm-list-item dt{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.patient-crm-list-item dd{overflow-wrap:anywhere;color:var(--color-text-primary);font-size:var(--font-size-sm)}}@media (max-width: 640px){.patient-crm-page,.patient-crm-form,.patient-profile-aside,.patient-profile-main{padding:var(--space-6)}.patient-crm-actions .btn,.patient-crm-header .btn{width:100%}.patient-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-overview-dates{grid-template-columns:1fr}}.clinic-topbar{display:none;align-items:center;gap:var(--space-6);padding:var(--shell-topbar-padding);background:var(--neutral-0);border-bottom:1px solid var(--color-border);min-height:var(--topbar-height);position:sticky;top:0;z-index:var(--z-raised)}.clinic-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:var(--z-overlay);animation:fade-in var(--duration-normal) ease}.clinic-drawer{position:fixed;top:0;left:0;width:min(var(--nav-rail-width),85vw);height:100dvh;background:var(--neutral-0);border-right:1px solid var(--color-border);display:flex;flex-direction:column;z-index:var(--z-drawer);animation:slide-in var(--duration-slow) ease;overflow-y:auto}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(-100%)}}@keyframes slide-progress{0%{transform:translate(-100%)}50%{transform:translate(83%)}to{transform:translate(-100%)}}@media (prefers-reduced-motion: reduce){.clinic-drawer-backdrop,.clinic-drawer{animation:none}}.live-notice-stack{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:grid;gap:var(--space-3);width:min(390px,calc(100vw - 2 * var(--space-4)));pointer-events:none}.live-notice{position:relative;display:grid;grid-template-columns:40px 1fr 32px;gap:var(--space-3);align-items:center;overflow:hidden;padding:var(--space-4);border:1px solid color-mix(in srgb,var(--brand-teal-600) 18%,var(--color-border));border-radius:var(--radius-card);background:color-mix(in srgb,var(--neutral-0) 96%,transparent);box-shadow:0 16px 40px #12423e29;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;animation:live-notice-in .36s cubic-bezier(.2,.8,.2,1) both}.live-notice__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--color-surface-brand);color:var(--color-text-brand);font-weight:var(--font-weight-bold)}.live-notice__copy{display:grid;gap:2px;min-width:0}.live-notice__copy strong{color:var(--color-text-primary);font-size:var(--font-size-sm)}.live-notice__copy span{color:var(--color-text-secondary);font-size:13px;line-height:1.4}.live-notice__close{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.live-notice__close:hover{background:var(--color-surface-subtle);color:var(--color-text-primary)}.date-long-label{min-height:1.4em;margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.4}.live-notice__timer{position:absolute;inset:auto 0 0;height:3px;background:var(--color-interactive-primary);transform-origin:left;animation:live-notice-timer 5s linear both}@keyframes live-notice-in{0%{opacity:0;transform:translate3d(20px,-8px,0) scale(.98)}}@keyframes live-notice-timer{to{transform:scaleX(0)}}@media (max-width: 600px){.live-notice-stack{top:var(--space-4);right:var(--space-4);left:var(--space-4);width:auto}}@media (prefers-reduced-motion: reduce){.live-notice,.live-notice__timer{animation:none}}@media (max-width: 1080px){.clinic-rail{display:none}.clinic-topbar{display:flex}.clinic-content{padding:var(--space-6)}}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.field-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.input{height:var(--control-height-sm);padding:var(--field-padding);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-surface-page);color:var(--color-text-primary);width:100%;box-sizing:border-box}.input:focus{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-color:var(--color-border-brand)}.input:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:not-allowed}.input-sm{height:var(--control-height-sm);width:auto}.input-textarea{height:auto;min-height:90px;resize:vertical}.form-fieldset{border:none;padding:0;margin:0 0 var(--space-6)}.form-fieldset>.field-label{display:block;margin-bottom:var(--space-3)}.radio-label{display:inline-flex;align-items:center;gap:var(--space-2);margin-right:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer}.radio-label input[type=radio]{accent-color:var(--color-interactive-primary);width:16px;height:16px;cursor:pointer}.checkbox-label{display:inline-flex;align-items:center;gap:var(--space-2);margin-right:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer}.checkbox-label input[type=checkbox]{accent-color:var(--color-interactive-primary);width:16px;height:16px;cursor:pointer}.clinic-stepper{margin:var(--space-6) 0 var(--space-8)}.clinic-stepper-list{display:flex;align-items:flex-start;list-style:none;padding:0;margin:0}.clinic-stepper-item{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.clinic-stepper-item:not(:last-child):after{content:"";position:absolute;top:14px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:var(--color-border);z-index:0}.clinic-stepper-item.done:not(:last-child):after{background:var(--color-interactive-primary)}.clinic-stepper-num{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-surface-inset);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.clinic-stepper-item.done .clinic-stepper-num,.clinic-stepper-item.current .clinic-stepper-num{background:var(--color-interactive-primary);color:var(--neutral-0)}.clinic-stepper-item.current .clinic-stepper-num{box-shadow:0 0 0 4px var(--color-focus-ring)}.clinic-stepper-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.clinic-stepper-item.current .clinic-stepper-label{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.clinic-wizard-step{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-8) var(--space-9);max-width:640px}.clinic-wizard-step-heading{font-size:var(--font-size-lg);margin:0 0 var(--space-6)}.clinic-wizard-subheading{font-size:var(--font-size-base);margin:var(--space-6) 0 var(--space-4)}.clinic-search-results{list-style:none;padding:0;margin:var(--space-4) 0 0;display:flex;flex-direction:column;gap:var(--space-2)}.clinic-search-result-btn{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--neutral-0);cursor:pointer;text-align:left;transition:background var(--duration-fast),border-color var(--duration-fast)}.clinic-search-result-btn:hover{background:var(--color-surface-inset);border-color:var(--color-border-strong)}.clinic-patient-initials{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface-brand);color:var(--color-text-brand);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.clinic-patient-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.clinic-patient-contact{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-left:auto}.clinic-patient-dup-warn{flex-basis:100%;margin-left:48px;color:var(--color-text-danger);font-size:var(--font-size-xs)}.clinic-search-empty{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.clinic-create-patient-form{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.clinic-slot-empty{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-6);background:var(--color-surface-subtle);border-radius:var(--radius-md);color:var(--color-text-secondary)}.clinic-slot-group{margin-bottom:var(--space-6)}.clinic-slot-group-date{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:capitalize;margin:0 0 var(--space-3)}.clinic-slot-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.clinic-slot-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--neutral-0);color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast)}.clinic-slot-btn:hover{background:var(--color-surface-brand);border-color:var(--color-border-brand);color:var(--color-text-brand)}.clinic-slot-btn.selected{background:var(--color-interactive-primary);border-color:var(--color-interactive-primary);color:var(--neutral-0)}.clinic-slot-time{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.clinic-slot-duration{font-size:var(--font-size-xs);color:var(--color-text-muted)}.patient-shell{min-height:100dvh;display:flex;flex-direction:column;background:var(--color-surface-subtle)}.patient-content{flex:1;width:100%;max-width:var(--patient-shell-max-width);margin:0 auto;padding:var(--space-8) var(--space-6)}.patient-content-with-tabs{padding-bottom:calc(var(--space-8) + 64px + env(safe-area-inset-bottom,0px))}.patient-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);align-items:start;margin-top:var(--space-6)}@media (min-width: 700px){:root{--patient-shell-max-width: 720px}}@media (min-width: 1100px){:root{--patient-shell-max-width: 960px}}.patient-header{position:sticky;top:0;z-index:var(--z-raised);background:var(--neutral-0);border-bottom:1px solid var(--color-border)}.patient-header-inner{display:flex;align-items:center;gap:var(--space-3);max-width:var(--patient-shell-max-width);margin:0 auto;padding:var(--shell-topbar-padding)}.patient-header-brand{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-brand)}.patient-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast)}.patient-menu-btn:hover{background:var(--color-surface-inset);color:var(--color-text-primary)}.patient-menu-panel{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:190px;background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-md);padding:var(--space-2);display:flex;flex-direction:column;gap:2px;z-index:var(--z-dropdown)}.patient-menu-item{display:block;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;min-height:40px}.patient-menu-item:hover{background:var(--color-surface-inset)}.patient-menu-item-danger{color:var(--brand-coral-600)}.patient-content-chat{display:flex;min-height:0;padding-top:0;padding-left:0;padding-right:0}.chat-thread-surface{display:flex;flex:1;flex-direction:column;width:100%;max-width:960px;min-height:0;margin:0 auto;background:var(--neutral-0);border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.patient-chat-thread{min-height:0}.chat-thread-header{flex-shrink:0;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.chat-message-scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--space-5) clamp(var(--space-4),4vw,var(--space-10));overscroll-behavior:contain}.chat-message-list{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:820px;min-height:100%;margin:0 auto;padding:0;list-style:none}.chat-composer{flex-shrink:0;padding:var(--space-3) clamp(var(--space-4),4vw,var(--space-10));border-top:1px solid var(--color-border);background:var(--neutral-0)}.chat-composer-inner{display:flex;align-items:flex-end;width:100%;max-width:820px;margin:0 auto;gap:var(--space-2)}.clinic-chat-thread-page{display:flex;flex-direction:column;min-height:calc(100dvh - var(--shell-body-padding) - var(--shell-body-padding));padding:0}.clinic-chat-thread-header{flex-shrink:0;padding:0 0 var(--space-4)}.clinic-chat-thread{min-height:0;border-top:1px solid var(--color-border)}.chat-composer-input:focus{outline:none;border-color:var(--color-interactive-primary);box-shadow:0 0 0 3px var(--color-focus-ring);background:var(--neutral-0)}@media (max-width: 699px){.chat-thread-surface{border-left:0;border-right:0}.chat-message-scroll,.chat-composer{padding-left:var(--space-3);padding-right:var(--space-3)}}.patient-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-raised);display:flex;justify-content:center;background:var(--neutral-0);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -1px 8px #0000000a}.patient-tabbar-inner{display:flex;width:100%;max-width:var(--patient-shell-max-width)}.patient-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:var(--space-2) 0;color:var(--color-text-muted);text-decoration:none;font-size:10px;font-weight:var(--font-weight-medium);transition:color var(--duration-fast)}.patient-tab:hover{color:var(--color-text-secondary)}.patient-tab-active{color:var(--color-interactive-primary)}.patient-appointment-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);padding:4px;border-radius:var(--radius-full);background:var(--color-surface-subtle)}.patient-appointment-tabs button{min-height:44px;border:0;border-radius:var(--radius-full);background:transparent;color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);cursor:pointer}.patient-appointment-tabs button.active{background:var(--neutral-0);color:var(--color-text-brand);box-shadow:var(--shadow-sm)}.patient-appointments-list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.patient-appointment-history-card{display:grid;gap:var(--space-2)}.patient-appointment-history-card p{margin:0;color:var(--color-text-secondary)}.patient-appointment-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.patient-appointment-history-time{font-size:var(--font-size-sm)}.state-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-24) var(--space-6);background:linear-gradient(160deg,var(--brand-teal-50) 0%,var(--neutral-0) 55%)}.state-page-card{width:100%;max-width:var(--patient-form-max-width);text-align:center}.state-section{padding:var(--space-14);text-align:center}.state-heading{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.state-body{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-12);line-height:var(--line-height-relaxed)}.state-actions{display:flex;flex-direction:column;gap:var(--space-3);align-items:stretch}.clinic-booking-success-actions{display:flex;justify-content:center;gap:var(--space-3);width:100%;max-width:440px;margin:0 auto}.clinic-booking-success-actions .btn{flex:1 1 0;width:auto;min-width:0;min-height:46px;padding-inline:var(--space-7)}@media (max-width: 560px){.clinic-booking-success-actions{flex-direction:column;max-width:320px}.clinic-booking-success-actions .btn{width:100%}}.auth-heading{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:6px}.auth-subheading{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-12)}.state-icon-teal{background:var(--brand-teal-100)}.state-icon-coral{background:var(--brand-coral-100)}:root{--teal-50: var(--brand-teal-50);--teal-100: var(--brand-teal-100);--teal-500: var(--brand-teal-500);--teal-600: var(--brand-teal-600);--teal-700: var(--brand-teal-700);--teal-800: var(--brand-teal-800);--coral-100: var(--brand-coral-100);--coral-500: var(--brand-coral-500);--coral-600: var(--brand-coral-600);--coral-700: var(--brand-coral-700);--gray-50: var(--neutral-50);--gray-100: var(--neutral-100);--gray-200: var(--neutral-200);--gray-300: var(--neutral-300);--gray-400: var(--neutral-400);--gray-500: var(--neutral-500);--gray-600: var(--neutral-600);--gray-900: var(--neutral-900)}.ops-page{min-height:100%;box-sizing:border-box}.ops-header-row{display:flex;align-items:center;gap:var(--space-2)}.ops-back-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast)}.ops-back-btn:hover{background:var(--color-surface-inset);color:var(--color-text-primary)}.ops-breadcrumb ol{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;margin:0 0 var(--space-8) 0;padding:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ops-breadcrumb ol li+li:before{content:"/";margin-right:var(--space-2);color:var(--color-text-muted)}.ops-breadcrumb a{color:var(--color-text-brand);text-decoration:none}.ops-breadcrumb a:hover{text-decoration:underline}.ops-breadcrumb [aria-current=page]{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.ops-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-6);margin-bottom:var(--space-10)}.ops-toolbar fieldset{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-6);align-items:center;border:none;padding:0;margin:0}.ops-toolbar label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.ops-toolbar select{height:var(--control-height-sm);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-page);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer}.ops-action-btn{display:inline-flex;align-items:center;height:var(--control-height-sm);padding:0 var(--space-6);background:var(--color-interactive-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.ops-action-btn:hover{background:var(--color-interactive-primary-hover)}.ops-link{color:var(--color-text-brand);text-decoration:none;font-size:var(--font-size-sm)}.ops-link:hover{text-decoration:underline}.ops-result-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4) 0}.ops-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.ops-table th{text-align:left;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border-strong);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);background:var(--color-surface-subtle);white-space:nowrap}.ops-table td{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);vertical-align:middle}.ops-table tr:last-child td{border-bottom:none}.ops-table tr:hover td{background:var(--color-surface-subtle)}@media (max-width: 640px){.ops-table thead{display:none}.ops-table tr{display:block;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-4);padding:var(--space-4)}.ops-table td{display:flex;justify-content:space-between;align-items:center;border:none;padding:var(--space-2) 0}.ops-table td[data-label]:before{content:attr(data-label);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);flex-shrink:0;margin-right:var(--space-4)}}.ops-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-6);margin-top:var(--space-8);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ops-pagination button{height:var(--control-height-sm);padding:0 var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-page);cursor:pointer;font-size:var(--font-size-sm)}.ops-pagination button:disabled{opacity:.4;cursor:not-allowed}.ops-badge{display:inline-flex;align-items:center;padding:2px var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;background:var(--color-surface-inset);color:var(--color-text-secondary)}.ops-badge-private{background:var(--color-surface-warning);color:var(--color-text-primary)}.ops-badge-success{background:var(--color-surface-success);color:#15803d}.ops-badge-warning{background:var(--color-surface-warning);color:#92400e}.ops-badge-override-closed{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-override-replacement{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-billing-form-draft{background:var(--color-surface-inset)}.ops-badge-billing-form-link_sent,.ops-badge-billing-form-link_viewed{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-billing-form-submitted{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-billing-del-pending{background:var(--color-surface-inset)}.ops-badge-billing-del-sent{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-billing-del-viewed{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-billing-del-failed{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-billing-fwd-not_forwarded{background:var(--color-surface-inset)}.ops-badge-billing-fwd-forwarded{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-billing-fwd-accepted{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-billing-fwd-failed{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-task-category-utility_payment{background:var(--color-surface-inset)}.ops-badge-task-category-payroll{background:var(--color-surface-warning)}.ops-badge-task-category-supplies,.ops-badge-task-category-supplier_follow_up{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-task-category-personal{background:var(--color-surface-subtle)}.ops-badge-task-pending{background:var(--color-surface-inset)}.ops-badge-task-completed{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-task-cancelled{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-reminder-sent,.ops-badge-reminder-delivered{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-reminder-failed{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-reminder-retrying{background:var(--color-surface-warning)}.ops-badge-reminder-suppressed{background:var(--color-surface-inset);color:var(--color-text-muted)}.ops-badge-supplier-active{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-supplier-archived{background:var(--color-surface-inset);color:var(--color-text-muted)}.ops-badge-order-pending{background:var(--color-surface-inset)}.ops-badge-order-ordered{background:var(--color-surface-brand);color:var(--color-text-brand)}.ops-badge-order-partially_received{background:var(--color-surface-warning)}.ops-badge-order-received{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-order-cancelled{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-due-upcoming{background:var(--color-surface-inset)}.ops-badge-due-due_soon{background:var(--color-surface-warning)}.ops-badge-due-overdue{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-due-snoozed{background:var(--color-surface-subtle)}.ops-badge-meeting-scheduled{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-meeting-cancelled{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-sync-not_required,.ops-badge-sync-pending_create,.ops-badge-sync-pending_update,.ops-badge-sync-pending_delete{background:var(--color-surface-inset)}.ops-badge-sync-provisioned{background:var(--color-surface-success);color:var(--color-text-primary)}.ops-badge-sync-failed{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-badge-sync-provider_missing{background:var(--color-surface-warning)}.ops-form{max-width:600px}.ops-form fieldset{border:none;margin:0;padding:0;min-width:0}.ops-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-8)}.ops-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ops-field input[type=text],.ops-field input[type=number],.ops-field input[type=date],.ops-field input[type=time],.ops-field input[type=datetime-local],.ops-field select,.ops-field textarea{height:var(--control-height-sm);padding:var(--field-padding);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-surface-page);color:var(--color-text-primary);width:100%;box-sizing:border-box}.ops-field textarea{height:auto;resize:vertical}.ops-field input:focus,.ops-field select:focus,.ops-field textarea:focus{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-color:var(--color-border-brand)}.ops-field input:disabled,.ops-field select:disabled,.ops-field textarea:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:not-allowed}.ops-field-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ops-combobox{position:relative}.ops-combobox-list{position:absolute;z-index:20;top:calc(100% + var(--space-1));left:0;right:0;margin:0;padding:var(--space-1) 0;max-height:280px;overflow-y:auto;list-style:none;background:var(--color-surface-page);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.ops-combobox-option{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);cursor:pointer}.ops-combobox-option-place{font-size:var(--font-size-base);color:var(--color-text-primary)}.ops-combobox-option-zone{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ops-combobox-option-active{background:var(--color-surface-subtle)}.ops-combobox-empty{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted)}.ops-field-checkbox{flex-direction:row;align-items:center;gap:var(--space-4)}.ops-field-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-interactive-primary)}.ops-form-actions{display:flex;gap:var(--space-4);margin-top:var(--space-10);flex-wrap:wrap}.ops-error{color:var(--color-text-danger);font-size:var(--font-size-sm);margin:var(--space-4) 0}.ops-unsaved-warning{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--space-4) var(--space-6);background:var(--color-surface-warning);border-radius:var(--radius-md);margin:var(--space-4) 0}.ops-impact-review{font-size:var(--font-size-sm);padding:var(--space-4) var(--space-6);background:var(--color-surface-brand);border-radius:var(--radius-md);border-left:3px solid var(--color-border-brand);margin:var(--space-4) 0}.ops-safe-reason{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ops-billing-redact-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--space-4) var(--space-6);background:var(--color-surface-inset);border-radius:var(--radius-md);margin:var(--space-4) 0}.ops-override-warning{font-size:var(--font-size-sm);color:var(--color-text-danger)}.ops-host-launch-result{padding:var(--space-6);background:var(--color-surface-success);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin:var(--space-6) 0}.ops-conflict-panel{padding:var(--space-8) var(--space-10);background:var(--color-surface-warning);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);margin-bottom:var(--space-8)}.ops-conflict-panel h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg)}.ops-queue-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-8);background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--space-8)}.ops-queue-counts{display:flex;flex-wrap:wrap;gap:var(--space-8) var(--space-10);margin:0}.ops-queue-counts>div{display:flex;flex-direction:column;align-items:center}.ops-queue-counts dt{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.ops-queue-counts dd{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.ops-queue-loading,.ops-queue-stale,.ops-queue-lag{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.ops-settings-page{display:flex;flex-direction:column}.ops-settings-tabs{margin-bottom:var(--space-8);overflow-x:auto;-webkit-overflow-scrolling:touch}.ops-settings-tabs ul{display:inline-flex;gap:2px;list-style:none;padding:3px;margin:0;background:var(--color-surface-inset);border-radius:var(--radius-full)}.ops-tab{display:inline-flex;align-items:center;min-height:34px;padding:0 var(--space-8);border:none;border-radius:var(--radius-full);background:transparent;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap;transition:background var(--duration-fast),color var(--duration-fast)}.ops-tab:hover{color:var(--color-text-primary)}.ops-tab-active,.ops-tab[aria-selected=true]{background:var(--neutral-0);color:var(--color-text-primary);box-shadow:var(--shadow-sm);font-weight:var(--font-weight-semibold)}.ops-tab:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.ops-settings-panel{background:var(--neutral-0);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-9) var(--space-10);max-width:760px}.ops-settings-panel h2{font-size:var(--font-size-lg);margin:0 0 var(--space-6)}.ops-settings-panel h3{font-size:var(--font-size-base);margin:0 0 var(--space-3)}.ops-page button:not(.ops-tab):not(.btn-icon),.ops-page a.btn-primary,.ops-page a.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 var(--space-8);width:auto;border:1px solid transparent;border-radius:var(--radius-card);background:var(--color-surface-inset);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background var(--duration-fast),opacity var(--duration-fast)}.ops-page button:not(.ops-tab):not(.btn-icon):hover:not(:disabled),.ops-page a.btn-secondary:hover{background:var(--color-interactive-neutral-hover)}.ops-page button:disabled{opacity:.5;cursor:not-allowed}.ops-page .btn-primary{background:var(--color-interactive-primary);color:var(--neutral-0)}.ops-page .btn-primary:hover:not(:disabled){background:var(--color-interactive-primary-hover)}.ops-page .btn-danger{background:var(--color-interactive-danger);color:var(--neutral-0)}.ops-page .btn-danger:hover:not(:disabled){background:var(--color-interactive-danger-hover)}.ops-page .disabled{pointer-events:none;opacity:.5}.ops-page .btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:0;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-surface-inset);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-base);line-height:1;transition:background var(--duration-fast),color var(--duration-fast)}.ops-page .btn-icon:hover{background:var(--color-interactive-neutral-hover);color:var(--color-text-primary)}.ops-page .btn-icon-danger:hover{background:var(--color-surface-danger);color:var(--color-text-danger)}.ops-field-group{margin-bottom:var(--space-8)}.ops-field-group .ops-field{margin-bottom:0}.ops-office-hours{display:flex;flex-direction:column}.ops-day-row{padding:var(--space-5) 0;border-bottom:1px solid var(--color-border);transition:opacity var(--duration-fast)}.ops-office-hours .ops-day-row:last-child{border-bottom:none}.ops-day-disabled{opacity:.55}.ops-day-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.ops-day-toggle{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer}.ops-day-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-interactive-primary)}.ops-day-intervals{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4);margin-left:var(--space-8)}.ops-interval-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.ops-interval-row input[type=time]{height:36px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface-page);color:var(--color-text-primary)}.ops-interval-row input[type=time]:focus{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-color:var(--color-border-brand)}.ops-interval-row input[type=time]:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted)}.ops-overrides-list,.ops-override-form{margin-bottom:var(--space-8)}.ops-override-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-2);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);border-radius:var(--radius-sm);transition:background var(--duration-fast)}.ops-override-item:hover{background:var(--color-surface-subtle)}.ops-override-item:last-child{border-bottom:none}.ops-detail-list{display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:var(--space-4) var(--space-8);font-size:var(--font-size-sm);margin-bottom:var(--space-8)}.ops-detail-list dt{font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.ops-detail-list dd{color:var(--color-text-primary);margin:0;word-break:break-word}.ops-timeline-list{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:0 0 var(--space-8) 0;font-size:var(--font-size-sm)}.ops-source-owned-banner{padding:var(--space-4) var(--space-6);background:var(--color-surface-brand);border-radius:var(--radius-md);border-left:3px solid var(--color-border-brand);font-size:var(--font-size-sm);margin-bottom:var(--space-8)}.ops-task-list{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:0}.ops-task-item{padding:var(--space-6) var(--space-8);background:var(--color-surface-page);border:1px solid var(--color-border);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-2)}.ops-task-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.ops-task-title{font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.ops-task-source-owned{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ops-task-due-overdue .ops-task-title{color:var(--color-text-danger)}.ops-task-due-due_today .ops-task-title{color:var(--color-text-brand)}.ops-actions{display:flex;flex-direction:column;gap:var(--space-6);margin-top:var(--space-10)}.ops-action-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.ops-snooze-form,.ops-cancel-form,.ops-forward-form,.ops-confirm-form,.ops-order-form{padding:var(--space-8);background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-top:var(--space-6)}.ops-danger-zone{margin-top:var(--space-20);padding-top:var(--space-10);border-top:1px solid var(--color-border-danger)}.ops-danger-zone h2{color:var(--color-text-danger);font-size:var(--font-size-lg);margin:0 0 var(--space-4) 0}.ops-confirm-panel{padding:var(--space-8);background:var(--color-surface-danger);border:1px solid var(--color-border-danger);border-radius:var(--radius-card);margin-top:var(--space-6)}.ops-contact-list{display:flex;flex-direction:column;gap:var(--space-4);list-style:none;padding:0;margin:0 0 var(--space-8) 0}.ops-orders-list{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-8)}.ops-order-action{margin-left:var(--space-4)}.ops-unavailable-detail{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-8)}.ops-unavailable-policy-link{font-size:var(--font-size-sm);margin-top:var(--space-8)}@media (prefers-reduced-motion: reduce){.ops-queue-strip,.ops-conflict-panel{transition:none}}
