:root{--color-primary: oklch(.48 .116 242.91);--color-primary-hover: oklch(.435 .104 242.48);--color-primary-light: oklch(.94 .034 230.22);--color-success: oklch(.632 .186 147.37);--color-warning: oklch(.667 .169 53.38);--color-danger: oklch(.583 .239 28.48);--color-info: oklch(.579 .181 262.31);--color-canvas: oklch(.954 .001 230.67);--color-surface: oklch(1 0 0);--color-surface-hover: oklch(.985 .0003 230.66);--color-layer-1: oklch(.97 .0007 230.67);--color-layer-2: oklch(.939 .001 230.68);--color-bg: var(--color-canvas);--color-text: oklch(.238 .003 230.83);--color-text-secondary: oklch(.438 .007 230.87);--color-text-muted: oklch(.529 .008 230.88);--color-text-placeholder: oklch(.617 .009 230.87);--color-border: oklch(.924 .002 230.69);--color-border-strong: oklch(.861 .003 230.71);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-full: 9999px;--shadow-sm: 0 1px 2px oklch(.15 0 0 / .04);--shadow-md: 0 2px 8px oklch(.15 0 0 / .06);--shadow-lg: 0 4px 16px oklch(.15 0 0 / .08);--transition-fast: .15s ease;--transition-normal: .2s ease}@media(prefers-color-scheme:dark){:root{--color-canvas: oklch(.148 .003 230.83);--color-surface: oklch(.197 .004 230.84);--color-surface-hover: oklch(.22 .004 230.85);--color-layer-1: oklch(.24 .005 230.85);--color-layer-2: oklch(.28 .005 230.86);--color-bg: var(--color-canvas);--color-text: oklch(.985 .0003 230.66);--color-text-secondary: oklch(.8 .002 230.78);--color-text-muted: oklch(.667 .008 230.82);--color-text-placeholder: oklch(.529 .008 230.88);--color-border: oklch(.3 .005 230.86);--color-border-strong: oklch(.38 .006 230.87);--shadow-sm: 0 1px 2px oklch(.05 0 0 / .3);--shadow-md: 0 2px 8px oklch(.05 0 0 / .4);--shadow-lg: 0 4px 16px oklch(.05 0 0 / .5)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);line-height:1.5}.page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.page-header h1{font-size:var(--text-2xl);font-weight:700}.header-actions{display:flex;gap:var(--space-sm)}.btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.btn:hover{background:var(--color-bg)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-full{width:100%;justify-content:center}.btn-icon{padding:var(--space-xs);background:transparent;border:none;cursor:pointer;font-size:var(--text-lg)}.btn-icon:hover{opacity:.7}.link-button{background:none;border:none;color:var(--color-primary);cursor:pointer;font:inherit;text-decoration:underline}.form-field{margin-bottom:var(--space-md)}.form-field label{display:block;margin-bottom:var(--space-xs);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}input,select{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--text-base);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}input:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.search-input{max-width:300px}.filter-select{max-width:200px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--color-border)}.data-table th{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);background:var(--color-bg)}.data-table tr:hover{background:var(--color-bg)}.status-badge{display:inline-block;padding:2px 8px;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-full);text-transform:capitalize}.status-active,.status-completed{background:#10b9811a;color:var(--color-success)}.status-scheduled,.status-prospect{background:#2563eb1a;color:var(--color-primary)}.status-in_progress,.status-in-progress{background:#f59e0b1a;color:var(--color-warning)}.status-missed,.status-cancelled,.status-discharged{background:#ef44441a;color:var(--color-danger)}.status-draft,.status-paused{background:#64748b1a;color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.stat-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.stat-icon{font-size:2rem}.stat-value{font-size:var(--text-2xl);font-weight:700}.stat-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase}.stats-grid,.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-md);padding:var(--space-lg)}.profile-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg)}.profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.profile-card-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--color-primary-light);border-bottom:1px solid var(--color-border)}.profile-card-header h3{font-size:var(--text-sm);font-weight:600}.profile-card-body{padding:var(--space-md)}.profile-field{margin-bottom:var(--space-sm)}.profile-field label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase}.profile-field span{display:block;font-size:var(--text-sm)}.tabs{display:flex;gap:var(--space-xs);padding:0 var(--space-lg);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.tab{padding:var(--space-md);background:none;border:none;border-bottom:2px solid transparent;font:inherit;color:var(--color-text-muted);cursor:pointer}.filters-bar{display:flex;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.schedule-toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.date-navigation{display:flex;align-items:center;gap:var(--space-sm)}.current-date{font-weight:600;margin-left:var(--space-md)}.view-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.view-btn{padding:var(--space-xs) var(--space-md);background:var(--color-surface);border:none;cursor:pointer}.view-btn.active{background:var(--color-primary);color:#fff}.week-view{display:flex;height:calc(100vh - 250px);overflow:auto}.time-gutter{width:60px;flex-shrink:0}.hour-slot{height:60px;padding:var(--space-xs);font-size:var(--text-xs);color:var(--color-text-muted)}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);flex:1}.day-column{border-left:1px solid var(--color-border)}.day-header{text-align:center;padding:var(--space-sm);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.day-content{position:relative;height:840px}.visit-event{position:absolute;left:2px;right:2px;padding:var(--space-xs);border-radius:var(--radius-sm);font-size:var(--text-xs);overflow:hidden;cursor:pointer;background:var(--color-primary);color:#fff}.month-view{display:flex;flex-direction:column;height:calc(100vh - 250px);background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden}.month-header{display:grid;grid-template-columns:repeat(7,1fr);background:var(--color-layer-1);border-bottom:1px solid var(--color-border)}.month-day-header{padding:var(--space-sm) var(--space-md);text-align:center;font-weight:600;font-size:var(--text-sm);color:var(--color-text-secondary)}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);flex:1}.month-cell{min-height:100px;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-xs);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface)}.month-cell:nth-child(7n){border-right:none}.month-cell:hover{background:var(--color-surface-hover)}.month-cell.outside-month{background:var(--color-layer-1);opacity:.5;cursor:default}.month-cell.today,.month-cell.has-visits:hover{background:var(--color-primary-light)}.month-cell-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)}.month-day-number{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary)}.month-day-number.today-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-weight:600}.open-shift-dot{font-size:10px}.month-cell-content{display:flex;flex-direction:column;gap:2px}.visit-count{display:flex;align-items:center;gap:var(--space-xs);padding:2px 6px;border-radius:var(--radius-sm);font-size:11px}.visit-count.scheduled{background:#3b82f626;color:var(--color-primary)}.visit-count.completed{background:#10b98126;color:var(--color-success)}.count-badge{font-weight:600}.count-label{font-size:10px;color:var(--color-text-muted)}.more-visits{font-size:10px;color:var(--color-text-muted);padding:2px 0}.day-view{display:flex;flex-direction:column;height:calc(100vh - 250px);overflow-y:auto}.hour-row{display:flex;border-bottom:1px solid var(--color-border);min-height:60px}.hour-label{width:80px;padding:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-muted);flex-shrink:0;background:var(--color-layer-1);border-right:1px solid var(--color-border)}.hour-events{flex:1;padding:var(--space-xs);display:flex;flex-wrap:wrap;gap:var(--space-xs)}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--color-primary) 0%,#1e40af 100%)}.login-container{width:100%;max-width:400px;padding:var(--space-xl);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:var(--space-xl)}.login-header h1{font-size:var(--text-2xl);color:var(--color-primary)}.login-footer{text-align:center;margin-top:var(--space-lg);color:var(--color-text-muted);font-size:var(--text-sm)}.error-banner{padding:var(--space-sm) var(--space-md);background:#ef44441a;color:var(--color-danger);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.loading-state,.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl);color:var(--color-text-muted)}.empty-state p{margin-bottom:var(--space-md)}.mono{font-family:var(--font-mono);font-size:var(--text-sm)}.text-muted{color:var(--color-text-muted)}.back-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font:inherit}.action-buttons{display:flex;gap:var(--space-xs)}.table-footer{padding:var(--space-md) var(--space-lg);color:var(--color-text-muted);font-size:var(--text-sm)}.form-container{max-width:800px;margin:0 auto;padding:var(--space-lg)}.form-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.form-section h2{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-md);color:var(--color-text)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.form-actions{display:flex;gap:var(--space-md);justify-content:flex-end;padding-top:var(--space-md)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg);padding:var(--space-lg)}.upcoming-visits h2,.quick-actions h2{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-md)}.visit-list{display:flex;flex-direction:column;gap:var(--space-sm)}.visit-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm);background:var(--color-bg);border-radius:var(--radius-md)}.visit-time{font-weight:600;color:var(--color-primary)}.visit-info{display:flex;align-items:center;gap:var(--space-sm);flex:1}.action-btn{display:block;width:100%;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.action-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--color-text-muted)}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:var(--space-md);color:var(--color-text-muted)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.profile-layout{display:flex;flex-direction:column;gap:var(--space-lg)}.profile-header-card{padding:var(--space-lg)}.profile-header{display:flex;align-items:center;gap:var(--space-lg)}.profile-avatar{width:48px;height:48px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-base)}.profile-avatar.large{width:80px;height:80px;font-size:var(--text-2xl)}.profile-info{display:flex;flex-direction:column;gap:var(--space-xs)}.profile-info h1{font-size:var(--text-2xl);font-weight:700;display:flex;align-items:center;gap:var(--space-md)}.provider-type-tag{padding:4px 10px;background:var(--color-bg);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--color-text-muted)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg)}.info-card{padding:var(--space-lg)}.info-card h3{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.info-list{display:flex;flex-direction:column;gap:var(--space-sm)}.info-item{display:flex;flex-direction:column;gap:2px}.info-item .label{font-size:var(--text-xs);color:var(--color-text-muted)}.info-item .value{font-size:var(--text-sm);color:var(--color-text)}.tabs-header{display:flex;border-bottom:1px solid var(--color-border);overflow-x:auto}.tab{padding:var(--space-md) var(--space-lg);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.tab:hover{color:var(--color-text);background:var(--color-bg)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-content{padding:var(--space-lg)}.placeholder-content{text-align:center;padding:var(--space-xl);color:var(--color-text-muted)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tag{padding:4px 10px;background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500}.tag-secondary{background:var(--color-bg);color:var(--color-text-muted)}.no-data{color:var(--color-text-muted);font-size:var(--text-sm);font-style:italic}.entity-link{color:var(--color-primary);text-decoration:none;font-weight:500}.entity-link:hover{text-decoration:underline}.header-breadcrumb{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-muted)}.header-breadcrumb a{color:var(--color-primary);text-decoration:none}.header-breadcrumb a:hover{text-decoration:underline}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:var(--space-md);text-align:center}.error-state h2{color:var(--color-danger)}.error-state p{color:var(--color-text-muted);margin-bottom:var(--space-md)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover{background:var(--color-bg)}.btn-ghost{background:transparent;border-color:transparent;color:var(--color-primary)}.btn-ghost:hover{background:var(--color-primary-light)}.btn-sm{padding:4px 8px;font-size:var(--text-xs)}.table-actions{display:flex;gap:var(--space-xs)}.empty-state{text-align:center;padding:var(--space-xl);color:var(--color-text-muted)}.profile-header-section{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-lg);margin:calc(-1 * var(--space-lg));margin-bottom:var(--space-lg)}.profile-header-main{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-md)}.profile-identity{display:flex;align-items:center;gap:var(--space-lg)}.profile-name-row{display:flex;align-items:center;gap:var(--space-md)}.profile-meta{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-top:var(--space-xs)}.meta-item{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-text-muted)}.meta-icon{font-size:var(--text-base)}.profile-actions{display:flex;gap:var(--space-sm)}.profile-stats{display:flex;gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.profile-stat-card{display:flex;flex-direction:column;gap:2px;padding:var(--space-sm) var(--space-md);background:var(--color-bg);border-radius:var(--radius-md);min-width:120px}.stat-label{font-size:var(--text-xs);color:var(--color-text-muted)}.stat-value{font-size:var(--text-sm);font-weight:600}.stat-value.stat-success{color:var(--color-success)}.stat-value.stat-warning{color:var(--color-warning)}.stat-value.stat-danger{color:var(--color-danger)}.stat-value.stat-info{color:var(--color-info)}.stat-detail{font-size:var(--text-xs);color:var(--color-text-muted)}.profile-tabs-container{background:var(--color-surface);border-bottom:1px solid var(--color-border);margin:0 calc(-1 * var(--space-lg));padding:0 var(--space-md);position:sticky;top:60px;z-index:10}.profile-tabs{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{display:inline-flex;align-items:center;gap:4px;padding:10px 14px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:all var(--transition-fast)}.profile-tab:hover{color:var(--color-text);background:var(--color-bg)}.profile-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-badge{background:var(--color-primary-light);color:var(--color-primary);padding:1px 5px;border-radius:var(--radius-full);font-size:10px;font-weight:600}.profile-tab-content{padding-top:var(--space-md)}.tab-section{margin-bottom:var(--space-xl)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.section-header h3{font-size:var(--text-base);font-weight:600}.tab-stats-row{display:flex;gap:var(--space-md);margin-bottom:var(--space-lg)}.tab-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center}.tab-stat .stat-value{font-size:var(--text-2xl);font-weight:700;color:var(--color-text)}.tab-stat .stat-label{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.tab-stat.stat-warning .stat-value{color:var(--color-warning)}.tab-stat.stat-success .stat-value{color:var(--color-success)}.info-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg);margin-bottom:var(--space-xl)}.risk-indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-md)}.risk-indicator{display:flex;flex-direction:column;padding:var(--space-md);border-radius:var(--radius-md);border:1px solid}.risk-indicator.risk-success{background:#10b9811a;border-color:#10b9814d}.risk-indicator.risk-danger{background:#ef44441a;border-color:#ef44444d}.risk-indicator.risk-info{background:#06b6d41a;border-color:#06b6d44d}.risk-label{font-size:var(--text-xs);color:var(--color-text-muted)}.risk-value{font-size:var(--text-sm);font-weight:600}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-bottom:1px solid var(--color-border)}.card-header h3{font-size:var(--text-sm);font-weight:600}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.toolbar-left{display:flex;align-items:center;gap:var(--space-sm)}.auth-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-bottom:var(--space-lg)}.summary-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.summary-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--text-lg)}.summary-icon.active{background:#10b9811a;color:var(--color-success)}.summary-icon.warning{background:#f59e0b1a;color:var(--color-warning)}.summary-icon.danger{background:#ef44441a;color:var(--color-danger)}.summary-content{display:flex;flex-direction:column}.summary-value{font-size:var(--text-2xl);font-weight:700}.summary-label{font-size:var(--text-xs);color:var(--color-text-muted)}.auth-list{display:flex;flex-direction:column;gap:var(--space-md)}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.auth-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-sm)}.auth-info{display:flex;flex-direction:column}.auth-service{font-weight:600}.auth-code{font-size:var(--text-xs);color:var(--color-text-muted)}.auth-details{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-bottom:var(--space-md)}.auth-detail .label{font-size:var(--text-xs);color:var(--color-text-muted)}.auth-detail .value{font-size:var(--text-sm)}.auth-utilization{padding:var(--space-md);background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-sm)}.utilization-header{display:flex;justify-content:space-between;margin-bottom:var(--space-xs)}.utilization-label{font-size:var(--text-xs);color:var(--color-text-muted)}.utilization-value{font-size:var(--text-sm);font-weight:600}.progress-bar{height:8px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-normal)}.progress-fill.progress-success{background:var(--color-success)}.progress-fill.progress-warning{background:var(--color-warning)}.progress-fill.progress-danger{background:var(--color-danger)}.utilization-remaining{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-xs)}.auth-actions{display:flex;gap:var(--space-sm)}.goals-list{display:flex;flex-direction:column;gap:var(--space-md)}.goal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.goal-header{display:flex;justify-content:space-between;margin-bottom:var(--space-sm)}.goal-domain{font-weight:600;color:var(--color-primary)}.goal-text{font-size:var(--text-sm);margin-bottom:var(--space-md)}.goal-interventions{background:var(--color-bg);padding:var(--space-sm);border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.interventions-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.goal-interventions ul{margin:var(--space-xs) 0 0 var(--space-md);padding:0;font-size:var(--text-sm)}.goal-footer{display:flex;justify-content:space-between;align-items:center}.target-date{font-size:var(--text-xs);color:var(--color-text-muted)}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-md)}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.form-card-header{display:flex;justify-content:space-between;margin-bottom:var(--space-sm)}.form-category{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:capitalize}.form-name{font-weight:600;margin-bottom:var(--space-sm)}.form-score{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-sm)}.form-meta{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-sm)}.form-actions{display:flex;gap:var(--space-sm)}.timeline{position:relative;padding-left:var(--space-lg)}.timeline:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--color-border)}.timeline-item{position:relative;padding-bottom:var(--space-md)}.timeline-marker{position:absolute;left:calc(-1 * var(--space-lg) + 2px);width:10px;height:10px;background:var(--color-primary);border-radius:var(--radius-full)}.timeline-date{font-size:var(--text-xs);color:var(--color-text-muted)}.timeline-title{font-weight:500}.timeline-desc{font-size:var(--text-sm);color:var(--color-text-muted)}.notes-list{display:flex;flex-direction:column;gap:var(--space-md)}.note-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.note-card.note-type-alert{border-left:3px solid var(--color-warning)}.note-header{display:flex;justify-content:space-between;margin-bottom:var(--space-sm)}.note-type{display:flex;align-items:center;gap:var(--space-xs)}.type-icon{font-size:var(--text-base)}.type-label{font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted)}.note-meta{display:flex;gap:var(--space-md);font-size:var(--text-xs);color:var(--color-text-muted)}.note-subject{font-weight:600;margin-bottom:var(--space-sm)}.note-content{font-size:var(--text-sm);line-height:1.6;margin-bottom:var(--space-sm)}.note-follow-up{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#f59e0b1a;color:var(--color-warning);font-size:var(--text-xs);border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.note-actions{display:flex;gap:var(--space-sm)}.new-note-form{padding:var(--space-md);margin-bottom:var(--space-lg)}.form-row{display:flex;gap:var(--space-md);margin-bottom:var(--space-md)}.flex-grow{flex:1}textarea{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;font-family:inherit}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-sm)}.billing-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-lg)}.billing-summary-grid .summary-card{flex-direction:column;text-align:center}.billing-summary-grid .summary-card.success{border-color:var(--color-success)}.billing-summary-grid .summary-card.warning{border-color:var(--color-warning)}.billing-summary-grid .summary-card.danger{border-color:var(--color-danger)}.adl-summary-card{padding:var(--space-lg);margin-bottom:var(--space-lg)}.adl-summary-grid{display:flex;gap:var(--space-md);margin:var(--space-md) 0}.adl-summary-grid .summary-item{flex:1;text-align:center;padding:var(--space-sm);border-radius:var(--radius-md)}.adl-summary-grid .summary-item .count{display:block;font-size:var(--text-2xl);font-weight:700}.adl-summary-grid .summary-item .label{font-size:var(--text-xs)}.summary-item.level-success{background:#10b9811a;color:var(--color-success)}.summary-item.level-info{background:#06b6d41a;color:var(--color-info)}.summary-item.level-warning{background:#f59e0b1a;color:var(--color-warning)}.summary-item.level-orange{background:#ea580c1a;color:#ea580c}.summary-item.level-danger{background:#ef44441a;color:var(--color-danger)}.summary-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-md);border-top:1px solid var(--color-border)}.adl-items-list{display:flex;flex-direction:column}.adl-item{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-md);align-items:center;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border)}.adl-item:last-child{border-bottom:none}.adl-activity{font-weight:500}.adl-level{padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500}.adl-level.level-success{background:#10b9811a;color:var(--color-success)}.adl-level.level-info{background:#06b6d41a;color:var(--color-info)}.adl-level.level-warning{background:#f59e0b1a;color:var(--color-warning)}.adl-level.level-orange{background:#ea580c1a;color:#ea580c}.adl-level.level-danger{background:#ef44441a;color:var(--color-danger)}.adl-notes{grid-column:1 / -1;font-size:var(--text-sm);color:var(--color-text-muted);padding-left:var(--space-md)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:80vh;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);border-bottom:1px solid var(--color-border)}.modal-close{background:none;border:none;font-size:var(--text-2xl);cursor:pointer;color:var(--color-text-muted)}.modal-body{padding:var(--space-md);overflow-y:auto}.template-list{display:flex;flex-direction:column;gap:var(--space-xs)}.template-option{display:flex;justify-content:space-between;padding:var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left}.template-option:hover{border-color:var(--color-primary)}.template-name{font-weight:500}.template-category{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:capitalize}.mono{font-family:var(--font-mono)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:var(--space-xs)}.status-dot.status-active{background:var(--color-success)}.status-dot.status-discontinued{background:var(--color-text-muted)}.cell-primary{font-weight:500}.cell-description{font-size:var(--text-sm);color:var(--color-text-muted);max-width:300px}.required-badge{color:var(--color-danger);font-size:var(--text-xs);font-weight:500}.optional-badge{color:var(--color-text-muted);font-size:var(--text-xs)}.contacts-grid,.parties-grid,.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-md)}.contact-card,.party-card,.document-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.contact-card.primary{border-color:var(--color-primary)}.contact-header{display:flex;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md)}.contact-icon{font-size:var(--text-2xl)}.contact-name{font-weight:600;display:flex;align-items:center;gap:var(--space-xs)}.primary-badge{font-size:var(--text-xs);background:var(--color-primary-light);color:var(--color-primary);padding:2px 6px;border-radius:var(--radius-full);font-weight:500}.contact-relationship{font-size:var(--text-sm);color:var(--color-text-muted)}.contact-details,.party-contact{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.detail-row,.contact-row{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-sm)}.contact-actions,.party-actions{display:flex;gap:var(--space-sm)}@media(max-width:768px){.profile-header-main{flex-direction:column}.profile-stats{flex-wrap:wrap}.auth-summary-grid,.billing-summary-grid{grid-template-columns:repeat(2,1fr)}.auth-details{grid-template-columns:1fr}.tab-stats-row{flex-wrap:wrap}.tab-stat{min-width:calc(50% - var(--space-sm))}}.form-view-page{max-width:900px;margin:0 auto}.form-container{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.form-renderer{padding:var(--space-lg)}.form-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.form-header h2{margin:0 0 var(--space-sm) 0;font-size:var(--text-2xl)}.form-description{color:var(--color-text-muted);margin:0}.scoring-summary{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-md);background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.score-main{display:flex;align-items:baseline;gap:var(--space-xs)}.scoring-summary .score-value{font-size:var(--text-3xl);font-weight:700;color:var(--color-primary)}.score-max{font-size:var(--text-lg);color:var(--color-text-muted)}.score-percentage{font-size:var(--text-sm);color:var(--color-text-muted)}.score-interpretation{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500}.interpretation-success{background:#10b9811a;color:var(--color-success)}.interpretation-warning{background:#f59e0b1a;color:var(--color-warning)}.interpretation-danger{background:#ef44441a;color:var(--color-danger)}.interpretation-info{background:#06b6d41a;color:var(--color-info)}.category-scores{display:flex;gap:var(--space-md);margin-left:auto}.category-score{display:flex;flex-direction:column;align-items:center;padding:var(--space-xs) var(--space-sm)}.category-name{font-size:var(--text-xs);color:var(--color-text-muted)}.category-value{font-weight:600}.form-sections{display:flex;flex-direction:column;gap:var(--space-xl)}.form-section{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg)}.form-section .section-header{cursor:default;margin-bottom:var(--space-lg)}.form-section .section-header.collapsible{cursor:pointer}.form-section .section-header.collapsible:hover{color:var(--color-primary)}.collapse-icon{transition:transform var(--transition-fast)}.collapse-icon.collapsed{transform:rotate(-90deg)}.section-description{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:calc(-1 * var(--space-sm));margin-bottom:var(--space-md)}.section-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.field-wrapper{display:flex;flex-direction:column}.field-wrapper.full-width,.field-wrapper.col-2{grid-column:1 / -1}.form-field{display:flex;flex-direction:column;gap:var(--space-xs)}.form-field label{font-size:var(--text-sm);font-weight:500}.form-field .required{color:var(--color-danger);margin-left:2px}.field-description{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.form-field input[type=text],.form-field input[type=number],.form-field input[type=date],.form-field input[type=time],.form-field select,.form-field textarea{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--color-surface);transition:border-color var(--transition-fast)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:var(--color-danger)}.field-error{font-size:var(--text-xs);color:var(--color-danger)}.radio-options,.checkbox-options{display:flex;flex-direction:column;gap:var(--space-xs)}.radio-option,.checkbox-option{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer}.radio-option:hover,.checkbox-option:hover{background:var(--color-bg)}.radio-option input,.checkbox-option input{margin:0}.radio-label,.checkbox-label{font-size:var(--text-sm)}.option-score{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:auto}.signature-container{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);text-align:center;min-height:100px;display:flex;align-items:center;justify-content:center}.signature-preview{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.signature-placeholder{font-size:var(--text-lg);color:var(--color-success)}.signature-btn{min-width:200px}.form-section-header{padding:var(--space-md) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-md);grid-column:1 / -1}.form-section-header h3{margin:0;font-size:var(--text-lg)}.form-info-text{padding:var(--space-md);background:var(--color-bg);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-muted);grid-column:1 / -1}.score-display{padding:var(--space-md);background:var(--color-bg);border-radius:var(--radius-md)}.score-display .score-value{display:flex;align-items:baseline;gap:var(--space-sm)}.score-display .score-number{font-size:var(--text-2xl);font-weight:700;color:var(--color-primary)}.score-display .score-label{font-size:var(--text-sm);color:var(--color-text-muted)}.form-renderer .form-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.validation-summary{margin-top:var(--space-lg);padding:var(--space-md);background:#ef44441a;border:1px solid var(--color-danger);border-radius:var(--radius-md)}.validation-summary p{margin:0 0 var(--space-sm) 0;font-weight:500;color:var(--color-danger)}.validation-summary ul{margin:0;padding-left:var(--space-lg)}.validation-summary a{color:var(--color-danger)}.save-status{position:fixed;top:80px;right:var(--space-lg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;z-index:100;animation:slideIn var(--transition-fast)}.save-status-saving{background:var(--color-bg);color:var(--color-text-muted)}.save-status-saved{background:#10b9811a;color:var(--color-success)}.save-status-error{background:#ef44441a;color:var(--color-danger)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.form-list-page .page-header{margin-bottom:var(--space-xl)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.template-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm)}.template-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.template-header{display:flex;justify-content:space-between;align-items:center}.templates-grid .template-category{font-size:var(--text-xs);color:var(--color-primary);text-transform:uppercase;font-weight:600}.template-version{font-size:var(--text-xs);color:var(--color-text-muted)}.templates-grid .template-name{font-size:var(--text-lg);font-weight:600;margin:0}.template-card .template-description{font-size:var(--text-sm);color:var(--color-text-muted);flex:1}.template-meta{display:flex;gap:var(--space-md);font-size:var(--text-xs);color:var(--color-text-muted);padding-top:var(--space-sm);border-top:1px solid var(--color-border)}@media(max-width:768px){.section-fields{grid-template-columns:1fr}.scoring-summary{flex-direction:column;align-items:flex-start}.category-scores{margin-left:0}}.add-visit-panel{position:fixed;bottom:0;left:var(--sidebar-width, 240px);right:0;max-height:400px;background:var(--color-surface);border-top:2px solid var(--color-primary);box-shadow:var(--shadow-lg);z-index:100;display:flex;flex-direction:column}.add-visit-panel .panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-primary);color:#fff}.add-visit-panel .panel-header h3{margin:0;font-size:var(--text-sm);font-weight:600}.add-visit-panel .btn-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;line-height:1}.add-visit-panel .panel-content{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-wrap:wrap;gap:var(--space-md)}.add-visit-panel .form-row{display:flex;gap:var(--space-md);width:100%}.add-visit-panel .form-group{flex:1;min-width:150px}.add-visit-panel .form-group.full-width{flex:0 0 100%}.add-visit-panel .form-group label{display:block;font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);margin-bottom:var(--space-xs)}.add-visit-panel .form-group input,.add-visit-panel .form-group select{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm)}.add-visit-panel .form-section{width:100%;padding:var(--space-sm);background:var(--color-bg);border-radius:var(--radius-md)}.add-visit-panel .section-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.add-visit-panel .day-selector{display:flex;gap:4px}.add-visit-panel .day-btn{width:32px;height:32px;border:1px solid var(--color-border);background:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);font-weight:500}.add-visit-panel .day-btn.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.add-visit-panel .day-presets{display:flex;gap:var(--space-xs);margin-top:var(--space-xs)}.add-visit-panel .preset-btn{font-size:10px;padding:2px 6px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted)}.add-visit-panel .preset-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.add-visit-panel .caregiver-select{display:flex;gap:var(--space-sm)}.add-visit-panel .caregiver-select select{flex:1}.add-visit-panel .checkbox-row,.add-visit-panel .radio-row{display:flex;gap:var(--space-md)}.add-visit-panel .checkbox-label,.add-visit-panel .radio-label{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);cursor:pointer}.add-visit-panel .panel-footer{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;background:var(--color-bg)}.schedule-page.panel-open{padding-bottom:420px}.schedule-page.panel-open .schedule-footer{bottom:400px}.caregiver-match-list{max-height:250px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.caregiver-match-list.loading,.caregiver-match-list.empty{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-lg);color:var(--color-text-muted)}.caregiver-match-list .match-section{border-bottom:1px solid var(--color-border)}.caregiver-match-list .match-section:last-child{border-bottom:none}.caregiver-match-list .match-section.unavailable{opacity:.6}.caregiver-match-list .section-label{padding:var(--space-xs) var(--space-sm);font-size:10px;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg)}.caregiver-match-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);cursor:pointer;transition:background .15s}.caregiver-match-item:hover:not(.disabled){background:var(--color-primary-light)}.caregiver-match-item.selected{background:var(--color-primary-light);border-left:3px solid var(--color-primary)}.caregiver-match-item.disabled{cursor:not-allowed;opacity:.6}.caregiver-match-item .match-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-sm);flex-shrink:0}.caregiver-match-item .match-info{flex:1;min-width:0}.caregiver-match-item .match-name{font-weight:500;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caregiver-match-item .match-details{font-size:11px;color:var(--color-text-muted)}.caregiver-match-item .matched-services{color:var(--color-success)}.caregiver-match-item .match-conflicts{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.caregiver-match-item .conflict-badge{font-size:10px;padding:1px 4px;border-radius:3px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.caregiver-match-item .conflict-badge.warning{background:#f59e0b26;color:var(--color-warning)}.caregiver-match-item .conflict-badge.error{background:#ef444426;color:var(--color-danger)}.caregiver-match-item .match-score-container{text-align:center;flex-shrink:0}.caregiver-match-item .match-score{font-weight:700;font-size:var(--text-sm);padding:2px 6px;border-radius:var(--radius-sm)}.caregiver-match-item .match-score.excellent{background:#10b98126;color:var(--color-success)}.caregiver-match-item .match-score.good{background:#06b6d426;color:var(--color-info)}.caregiver-match-item .match-score.fair{background:#f59e0b26;color:var(--color-warning)}.caregiver-match-item .match-score.poor{background:#ef444426;color:var(--color-danger)}.caregiver-match-item .score-label{font-size:9px;text-transform:uppercase;color:var(--color-text-muted)}.caregiver-match-item .selected-indicator{width:20px;height:20px;border-radius:var(--radius-full);background:var(--color-success);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}.open-shifts-sidebar{width:280px;background:var(--color-surface);border-left:1px solid var(--color-border);display:flex;flex-direction:column;height:100%}.open-shifts-sidebar .sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);border-bottom:1px solid var(--color-border)}.open-shifts-sidebar .sidebar-header h3{margin:0;font-size:var(--text-base);font-weight:600}.open-shifts-sidebar .shift-count{background:var(--color-danger);color:#fff;font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-full)}.open-shifts-sidebar .sidebar-loading,.open-shifts-sidebar .sidebar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl);color:var(--color-text-muted);gap:var(--space-sm)}.open-shifts-sidebar .sidebar-empty .empty-icon{font-size:32px;color:var(--color-success)}.open-shifts-sidebar .sidebar-content{flex:1;overflow-y:auto;padding:var(--space-sm)}.open-shifts-sidebar .shift-group{margin-bottom:var(--space-md)}.open-shifts-sidebar .group-header{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--color-text-muted);padding:var(--space-xs) 0;margin-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.open-shift-card{background:var(--color-bg);border:1px solid var(--color-border);border-left:3px solid var(--color-warning);border-radius:var(--radius-md);padding:var(--space-sm);margin-bottom:var(--space-xs);cursor:pointer;transition:all .15s}.open-shift-card:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.open-shift-card .shift-time{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.open-shift-card .time-range{font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.open-shift-card .duration{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface);padding:2px 6px;border-radius:var(--radius-sm)}.open-shift-card .shift-client{font-size:var(--text-sm);color:var(--color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.open-shift-card .shift-tasks{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-xs)}.open-shift-card .task-tag{font-size:10px;background:#2563eb1a;color:var(--color-primary);padding:2px 6px;border-radius:3px}.open-shift-card .task-more{font-size:10px;color:var(--color-text-muted)}.open-shift-card .shift-actions{display:flex;justify-content:flex-end}.schedule-layout{display:flex;flex:1;min-height:0}.schedule-main{flex:1;min-width:0;overflow:auto}.visit-card.draggable{cursor:grab;-webkit-user-select:none;user-select:none;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);margin:2px;font-size:var(--text-xs);transition:all .15s ease;position:relative;overflow:hidden}.visit-card.draggable:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.visit-card.draggable:active{cursor:grabbing}.visit-card.draggable.dragging{opacity:.5;transform:scale(.95)}.visit-card.draggable.unassigned{border-left-color:var(--color-warning);background:#f59e0b0d}.visit-card .visit-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.visit-card .visit-time{font-weight:600;color:var(--color-text)}.visit-card .visit-duration{font-size:10px;color:var(--color-text-muted);background:var(--color-bg);padding:1px 4px;border-radius:3px}.visit-card .visit-client{font-weight:500;color:var(--color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.visit-card .visit-caregiver{font-size:10px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.visit-card .visit-caregiver.unassigned{color:var(--color-warning)}.visit-card .visit-tasks{font-size:10px;color:var(--color-text-muted);margin-top:2px}.time-slot{position:relative;min-height:40px;transition:background .15s}.time-slot.drop-target{background:#2563eb1a;outline:2px dashed var(--color-primary);outline-offset:-2px}.drag-preview{position:fixed;background:var(--color-primary);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;pointer-events:none;z-index:9999;box-shadow:0 4px 12px #0000004d}.week-view .day-column{position:relative}.week-view .day-column .hour-cell{border-bottom:1px solid var(--color-border);min-height:50px;position:relative}.week-view .day-column .hour-cell:hover{background:#2563eb05}.week-view .day-column .hour-cell.drop-active{background:#2563eb14}.overview-tab{display:flex;flex-direction:column;gap:var(--space-md)}.overview-section{margin-bottom:var(--space-sm)}.section-title{font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-sm)}.risk-grid{display:flex;flex-wrap:wrap;gap:8px}.risk-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-full);font-size:12px;border:1px solid}.risk-chip .risk-label{color:inherit;opacity:.8}.risk-chip .risk-value{font-weight:600}.risk-chip.risk-success{background:#dff6de;border-color:#aedcae;color:#095717}.risk-chip.risk-danger{background:#ffe7e4;background:oklch(.95 .04 25);border-color:#febab4;color:#972527}.risk-chip.risk-info{background:#dbf3ff;background:oklch(.95 .04 230);border-color:#a6d6ee;color:#005e7d;color:oklch(.45 .1 230)}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-sm)}.overview-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.overview-card .card-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-layer-1);border-bottom:1px solid var(--color-border)}.overview-card .card-head h4{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);margin:0}.overview-card .card-link{font-size:11px;color:var(--color-primary);text-decoration:none}.overview-card .card-body{padding:10px 12px}.info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:4px 0;font-size:12px}.info-row:not(:last-child){border-bottom:1px solid var(--color-border)}.info-label{color:var(--color-text-muted);flex-shrink:0}.info-value{color:var(--color-text);text-align:right;word-break:break-word}.info-value.mono{font-family:var(--font-mono);font-size:11px}.mini-contacts{display:flex;flex-direction:column;gap:8px}.mini-contact{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--color-border)}.mini-contact:last-child{border-bottom:none}.mini-contact-info{display:flex;flex-direction:column}.mini-name{font-size:12px;font-weight:500;color:var(--color-text)}.mini-role{font-size:10px;color:var(--color-text-muted);text-transform:capitalize}.mini-phone{font-size:11px;color:var(--color-primary);text-decoration:none}.no-data{font-size:12px;color:var(--color-text-muted);font-style:italic;padding:8px 0}.loading-small{font-size:12px;color:var(--color-text-muted)}.clients-page{padding:0}.clients-page .page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.clients-page .page-header h1{font-size:var(--text-xl);font-weight:600;margin:0}.clients-page .filters-bar{padding:var(--space-sm) var(--space-lg);background:var(--color-layer-1);border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-sm)}.clients-page .search-input{flex:1;max-width:300px;padding:8px 12px;font-size:13px}.clients-page .filter-select{padding:8px 12px;font-size:13px;min-width:140px}.clients-page .data-table-container{padding:var(--space-md) var(--space-lg)}.clients-page .data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.clients-page .data-table th{background:var(--color-layer-1);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:10px 14px;text-align:left;border-bottom:1px solid var(--color-border)}.clients-page .data-table td{padding:12px 14px;font-size:13px;border-bottom:1px solid var(--color-border);vertical-align:middle}.clients-page .data-table tr:last-child td{border-bottom:none}.clients-page .data-table tr:hover td{background:var(--color-surface-hover)}.clients-page .link-button{font-weight:500;color:var(--color-primary);background:none;border:none;padding:0;cursor:pointer;text-decoration:none}.clients-page .link-button:hover{text-decoration:underline}.clients-page .action-buttons{display:flex;gap:4px}.clients-page .btn-icon{padding:4px 6px;font-size:14px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:.6;transition:all var(--transition-fast)}.clients-page .btn-icon:hover{opacity:1;background:var(--color-layer-1)}.clients-page .table-footer{padding:var(--space-sm) var(--space-lg);font-size:12px;color:var(--color-text-muted);border-top:1px solid var(--color-border);background:var(--color-surface)}.client-form-page{min-height:100vh;background:var(--color-canvas)}.form-page-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-md) var(--space-lg)}.form-page-header .header-breadcrumb{font-size:12px;margin-bottom:var(--space-xs)}.form-page-header .header-title-row{display:flex;align-items:center;justify-content:space-between}.form-page-header h1{font-size:var(--text-xl);font-weight:600;margin:0}.client-form-container{max-width:800px;margin:0 auto;padding:var(--space-lg)}.form-alert{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--radius-md);margin-bottom:var(--space-md);font-size:13px}.form-alert-error{background:#ffe7e4;background:oklch(.95 .04 25);border:1px solid oklch(.85 .08 25);color:#972527}.form-alert-success{background:#dbf8da;border:1px solid oklch(.85 .1 145);color:#005813;color:oklch(.4 .15 145)}.form-alert button{background:none;border:none;font-size:16px;cursor:pointer;opacity:.7}.form-alert button:hover{opacity:1}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-md);overflow:hidden}.form-card-header{padding:12px 16px;background:var(--color-layer-1);border-bottom:1px solid var(--color-border)}.form-card-header h2{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0}.form-card-body{padding:16px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.span-2{grid-column:span 2}.form-group.span-3{grid-column:span 3}.form-group.span-full{grid-column:1 / -1}.form-group label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.form-group label .required{color:var(--color-danger)}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #00639926}.form-group input::placeholder{color:var(--color-text-placeholder)}.form-group input.mono-input{font-family:var(--font-mono);font-size:13px;letter-spacing:.02em}.form-actions-bar{display:flex;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) 0;margin-top:var(--space-md);border-top:1px solid var(--color-border)}@media(max-width:768px){.form-grid{grid-template-columns:1fr 1fr}.form-group.span-2,.form-group.span-3{grid-column:span 2}}@media(max-width:480px){.form-grid{grid-template-columns:1fr}.form-group.span-2,.form-group.span-3,.form-group.span-full{grid-column:span 1}.client-form-container{padding:var(--space-md)}}.form-layout{display:flex;gap:0;max-width:1000px;margin:0 auto;padding:var(--space-lg)}.form-sections-nav{width:180px;flex-shrink:0;display:flex;flex-direction:column;gap:4px;padding-right:var(--space-md);border-right:1px solid var(--color-border);position:sticky;top:100px;height:fit-content}.section-nav-btn{display:flex;align-items:center;gap:8px;padding:10px 12px;background:transparent;border:none;border-radius:var(--radius-md);font-size:13px;color:var(--color-text-muted);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.section-nav-btn:hover{background:var(--color-layer-1);color:var(--color-text)}.section-nav-btn.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.section-icon{font-size:16px}.form-layout .client-form-container{flex:1;padding-left:var(--space-lg)}.checkbox-inline{display:inline-flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;padding:6px 0}.checkbox-inline input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.form-group.checkbox-inline{flex-direction:row;align-items:center;gap:8px;padding:8px 0}.form-group.checkbox-inline label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--color-text)}.checkbox-group{display:flex;flex-direction:column;gap:10px;padding:4px 0}.checkbox-group .checkbox-inline{padding:4px 0}.form-group textarea{padding:10px 12px;font-size:14px;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:60px;transition:all var(--transition-fast)}.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #00639926}.pets-list{display:flex;flex-direction:column;gap:8px;margin-top:var(--space-sm)}.pet-row{display:grid;grid-template-columns:100px 1fr 1fr auto;gap:8px;align-items:center}.pet-row select,.pet-row input{padding:8px 10px;font-size:13px}.hint-text{font-size:12px;color:var(--color-text-muted);font-style:italic;margin-top:var(--space-sm)}.form-card-header{display:flex;justify-content:space-between;align-items:center}@media(max-width:768px){.form-layout{flex-direction:column;padding:var(--space-md)}.form-sections-nav{width:100%;flex-direction:row;overflow-x:auto;padding-right:0;padding-bottom:var(--space-sm);border-right:none;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-md);position:static}.section-nav-btn{white-space:nowrap;padding:8px 12px}.section-label{display:none}.form-layout .client-form-container{padding-left:0}.pet-row{grid-template-columns:1fr 1fr}}.quick-tags{display:flex;flex-wrap:wrap;gap:8px}.quick-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:500}.quick-tag.tag-blue{background:#ddedff;background:oklch(.94 .04 250);color:#004981;color:oklch(.4 .12 250)}.quick-tag.tag-purple{background:#eee7ff;background:oklch(.94 .05 300);color:#562c8b}.quick-tag.tag-red{background:#ffe2df;background:oklch(.94 .05 25);color:#a20519}.quick-tag.tag-green{background:#d7f5d7;color:#005813;color:oklch(.4 .15 145)}.quick-tag.tag-orange{background:#ffe6d3;background:oklch(.94 .06 60);color:#7f4400;color:oklch(.45 .15 60)}.age-badge{font-size:10px;color:var(--color-text-muted);margin-left:4px}.pets-display{display:flex;flex-direction:column;gap:6px}.pet-item{display:flex;align-items:center;gap:6px;font-size:12px}.pet-icon{font-size:14px}.pet-name{font-weight:500}.pet-notes{color:var(--color-text-muted);font-size:11px}.directive-list{display:flex;flex-direction:column;gap:6px}.directive-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted)}.directive-item.active{color:var(--color-success);font-weight:500}.directive-item.active.danger{color:var(--color-danger)}.directive-icon{font-size:10px;width:14px}.overview-card.span-2{grid-column:span 2}.text-content{font-size:13px;line-height:1.5;color:var(--color-text);margin:0}.text-content.alert-text{padding:8px 10px;background:#ffeade;background:oklch(.95 .04 50);border-radius:var(--radius-sm);border-left:3px solid oklch(.6 .15 50)}.overview-card .card-body a{color:var(--color-primary);text-decoration:none}.overview-card .card-body a:hover{text-decoration:underline}.risk-chip.risk-warning{background:#ffeada;background:oklch(.95 .05 60);border-color:#ffbe8a;color:#7f4400;color:oklch(.45 .15 60)}
