:root{--cg-blue:#17a7e0;--cg-blue-dark:#0369a1;--cg-green:#3fb34f;--cg-dark:#102033;--cg-muted:#5d6b7a;--cg-border:#e6edf3;--cg-bg:#f5fbfb;--cg-danger:#b91c1c;--cg-danger-bg:#fff1f2;--cg-danger-border:#fca5a5}*{box-sizing:border-box}body.cg-auth-body{margin:0;background:var(--cg-bg);font-family:Inter,Arial,sans-serif;color:var(--cg-dark)}.cg-auth-wrap{max-width:1240px;margin:64px auto;padding:0 20px}.cg-card{background:#fff;border:1px solid var(--cg-border);border-radius:18px;padding:34px;box-shadow:0 20px 45px rgba(16,32,51,.08);max-width:1180px;margin:45px auto}.cg-brand-row,.cg-header{display:flex;align-items:center;gap:22px;margin-bottom:34px}.cg-logo{width:76px;height:76px;object-fit:contain}.cg-brand-row h1,.cg-header h1{margin:0 0 14px;font-size:28px;letter-spacing:1px}.cg-brand-row p,.cg-header p{margin:0;font-size:17px;line-height:1.6}.cg-nav{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 34px;align-items:center}.cg-nav a,.cg-nav button,.cg-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;min-height:46px;border:1px solid #d9e4e7;border-radius:10px;background:#fff;color:#0f172a;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s ease}.cg-nav a:hover,.cg-nav button:hover,.cg-btn:hover{background:#eefaff;border-color:#38bdf8;color:var(--cg-blue-dark);text-decoration:none}.cg-logout,.cg-nav .danger{color:var(--cg-danger)}.cg-logout:hover,.cg-nav .danger:hover{background:var(--cg-danger-bg);border-color:var(--cg-danger-border);color:#991b1b}.cg-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cg-option-card{display:block;border:1px solid var(--cg-border);border-radius:18px;padding:26px;color:var(--cg-dark);text-decoration:none;box-shadow:0 18px 38px rgba(16,32,51,.05)}.cg-option-card strong{display:block;margin-bottom:16px}.cg-option-card span{color:var(--cg-muted);font-size:17px;line-height:1.6}.cg-option-card:hover{border-color:var(--cg-blue)}.cg-step-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:30px}.cg-step-tabs button{border:0;border-radius:999px;padding:13px;background:#eef4f9;color:#38506a;font-weight:700}.cg-step-tabs button.active{background:var(--cg-blue);color:#fff}.cg-step{display:none}.cg-step.active{display:block}.cg-step h2{font-size:25px;margin:0 0 24px}.cg-help{color:var(--cg-muted);margin-top:-10px}.cg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cg-grid .wide{grid-column:1/-1}label{display:block;font-weight:700}input,select,textarea{width:100%;margin-top:12px;border:1px solid #d8e1ea;border-radius:8px;padding:14px 16px;font:inherit;background:#fff}textarea{min-height:110px}.cg-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px}.cg-btn{background:#1d4ed8;color:#fff}.cg-btn.ghost{background:#fff;color:var(--cg-dark);border:1px solid var(--cg-border)}.cg-link{display:inline-flex;align-items:center;padding:12px 10px;color:#0b6ab3;font-weight:700;text-decoration:none}.cg-link:hover{text-decoration:underline}.cg-alert{margin-bottom:18px;border-radius:12px;padding:16px}.cg-alert-success{background:#ecfdf5;border:1px solid #bbf7d0}.cg-alert-error{background:#fef2f2;border:1px solid #fecaca}.cg-alert ul{margin-bottom:0}.cg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 30px}.cg-stat-card{border:1px solid var(--cg-border);border-radius:14px;padding:18px;background:#fff}.cg-stat-card span{display:block;color:var(--cg-muted);font-size:14px;margin-bottom:8px}.cg-stat-card strong{display:block;font-size:26px;color:var(--cg-dark)}.cg-section-title{margin:34px 0 16px;font-size:24px}.cg-table-wrap{overflow-x:auto;border:1px solid var(--cg-border);border-radius:14px;background:#fff;margin-bottom:26px}.cg-table{width:100%;border-collapse:collapse;min-width:780px}.cg-table th,.cg-table td{padding:14px 16px;border-bottom:1px solid var(--cg-border);text-align:left;vertical-align:middle}.cg-table th{background:#f8fbfd;font-weight:800}.cg-table tr:last-child td{border-bottom:0}.cg-inline-actions{display:flex;flex-wrap:wrap;gap:8px}.cg-small-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--cg-border);border-radius:8px;background:#fff;color:var(--cg-dark);font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}.cg-small-btn.approve{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.cg-small-btn.reject{background:#fef2f2;border-color:#fecaca;color:#991b1b}.cg-empty{padding:16px;color:var(--cg-muted)}@media(max-width:760px){.cg-auth-wrap{margin:20px auto}.cg-card{padding:22px;margin:20px 12px}.cg-brand-row,.cg-header{align-items:flex-start;gap:14px}.cg-logo{width:58px;height:58px}.cg-option-grid,.cg-grid,.cg-stats{grid-template-columns:1fr}.cg-step-tabs{grid-template-columns:1fr}.cg-actions{flex-wrap:wrap}.cg-btn,.cg-nav a,.cg-nav button{width:100%;text-align:center}.cg-nav{gap:8px}}

/* CareGate Phase 3.2 HR/Finance + Compliance dashboard expansion */
.cg-stats-six{grid-template-columns:repeat(6,minmax(0,1fr))}.cg-info-box{border:1px solid #bfdbfe;background:#eff6ff;border-radius:14px;padding:16px 18px;margin:18px 0 28px;color:#17324d;line-height:1.65}.cg-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;text-transform:capitalize;white-space:nowrap}.cg-badge.success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.cg-badge.warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.cg-badge.danger{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.cg-small-btn.danger{background:#fef2f2;border-color:#fecaca;color:#991b1b}.cg-workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0 32px}.cg-workflow-card,.cg-detail-card{border:1px solid var(--cg-border);border-radius:14px;padding:18px;background:#fff}.cg-workflow-card strong,.cg-detail-card strong{display:block;color:var(--cg-dark);font-size:17px;margin-bottom:8px}.cg-workflow-card span,.cg-detail-card span{display:block;color:var(--cg-muted);font-size:14px;line-height:1.5}.cg-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0 28px}.cg-preview-box{border:1px dashed #cbd5e1;border-radius:14px;padding:24px;background:#f8fafc;margin-bottom:28px}.cg-action-panel{border:1px solid var(--cg-border);border-radius:14px;padding:20px;background:#fff}.cg-help{color:var(--cg-muted);line-height:1.6}@media(max-width:1100px){.cg-stats-six{grid-template-columns:repeat(3,minmax(0,1fr))}.cg-workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.cg-stats-six,.cg-workflow-grid,.cg-detail-grid{grid-template-columns:1fr}}
.cg-actions-inline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cg-actions-inline form{margin:0}.cg-muted{color:#64748b;font-size:14px}.cg-action-panel select{width:100%;max-width:360px;padding:12px;border:1px solid #d9e3ec;border-radius:10px;background:#fff}.cg-action-panel textarea{min-height:120px}.cg-admin-decision{display:flex;gap:8px;flex-wrap:wrap}.cg-admin-decision form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cg-admin-decision input{padding:10px;border:1px solid #d9e3ec;border-radius:10px;min-width:220px}

/* Phase 3.4 shift/location/attendance UI */
.cg-actions.wrap{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.cg-btn.small{padding:7px 12px;font-size:13px}.cg-card.mini{margin:16px 0;padding:18px;border:1px solid #e6edf3;border-radius:14px;background:#fbfeff}.cg-alert.success{background:#eaf8ef;border:1px solid #bfe8ca;color:#185d2b;padding:12px;border-radius:10px;margin:12px 0}.cg-alert.danger{background:#fff0f0;border:1px solid #ffc7c7;color:#7a1f1f;padding:12px;border-radius:10px;margin:12px 0}.cg-badge.success{background:#dff7e7;color:#126b2e}.cg-badge.danger{background:#ffe6e6;color:#8a1e1e}.cg-inline-form{margin-top:12px;padding:12px;border:1px dashed #d5e3ed;border-radius:12px}.cg-inline-form label{display:block;margin-bottom:8px}.cg-table small{color:#667085}.cg-help{background:#f5fbff;border-left:4px solid #17a7e0;padding:12px;border-radius:8px;margin:12px 0}.cg-table{width:100%;border-collapse:collapse;margin-top:12px}.cg-table th,.cg-table td{border-bottom:1px solid #e6edf3;padding:10px;text-align:left;vertical-align:top}.cg-table th{background:#f7fbfd}.cg-badge{display:inline-block;padding:4px 8px;border-radius:99px;background:#e8f2f7;color:#24485a;font-size:12px;text-transform:capitalize}@media(max-width:700px){.cg-table{display:block;overflow-x:auto}.cg-grid{grid-template-columns:1fr!important}}
