:root{--intake-primary: #2E86AB;--intake-light: #E8F4F8;--intake-dark: #1E5A75;--pas-primary: #A23B72;--pas-light: #F5E8EF;--pas-dark: #7A2D56;--emr-primary: #F18F01;--emr-light: #FEF5E7;--emr-dark: #C47301;--header-color: #1B4F72;--text-primary: #333;--text-secondary: #666;--text-muted: #999;--border-color: #e8e8e8;--bg-light: #f5f5f5;--bg-white: #fff;--hospital-badge: #3498db;--aged-care-badge: #9b59b6;--home-care-badge: #27ae60;--status-success: #52c41a;--status-warning: #faad14;--status-error: #f5222d;--status-info: #1890ff;--status-pending: #8c8c8c;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .15);--header-height: 64px;--sider-width: 240px;--sider-collapsed-width: 80px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}.module-intake{--module-primary: var(--intake-primary);--module-light: var(--intake-light);--module-dark: var(--intake-dark)}.module-pas{--module-primary: var(--pas-primary);--module-light: var(--pas-light);--module-dark: var(--pas-dark)}.module-emr{--module-primary: var(--emr-primary);--module-light: var(--emr-light);--module-dark: var(--emr-dark)}.care-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500;margin-right:4px}.care-badge-hospital{background-color:var(--hospital-badge);color:#fff}.care-badge-aged-care{background-color:var(--aged-care-badge);color:#fff}.care-badge-home-care{background-color:var(--home-care-badge);color:#fff}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-badge-success{background-color:#f6ffed;color:var(--status-success);border:1px solid #b7eb8f}.status-badge-warning{background-color:#fffbe6;color:var(--status-warning);border:1px solid #ffe58f}.status-badge-error{background-color:#fff2f0;color:var(--status-error);border:1px solid #ffccc7}.status-badge-info{background-color:#e6f7ff;color:var(--status-info);border:1px solid #91d5ff}.status-badge-pending{background-color:#fafafa;color:var(--status-pending);border:1px solid #d9d9d9}.module-banner{padding:12px 16px;border-radius:var(--radius-md);color:#fff;font-weight:500;margin-bottom:var(--spacing-md)}.module-banner-intake{background:linear-gradient(135deg,var(--intake-primary) 0%,var(--intake-dark) 100%)}.module-banner-pas{background:linear-gradient(135deg,var(--pas-primary) 0%,var(--pas-dark) 100%)}.module-banner-emr{background:linear-gradient(135deg,var(--emr-primary) 0%,var(--emr-dark) 100%)}.page-header{margin-bottom:var(--spacing-lg)}.page-header h1{font-size:24px;font-weight:600;color:var(--header-color);margin-bottom:var(--spacing-xs)}.page-header p{color:var(--text-secondary);font-size:14px}.dashboard-card{height:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.dashboard-card:hover{box-shadow:var(--shadow-md)}.kpi-tile{text-align:center;padding:var(--spacing-lg)}.kpi-tile .kpi-value{font-size:32px;font-weight:600;color:var(--module-primary, var(--header-color));line-height:1.2}.kpi-tile .kpi-label{font-size:14px;color:var(--text-secondary);margin-top:var(--spacing-xs)}.kpi-tile .kpi-trend{font-size:12px;margin-top:var(--spacing-sm)}.kpi-tile .kpi-trend.up{color:var(--status-success)}.kpi-tile .kpi-trend.down{color:var(--status-error)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}
