:root{--ink: #0F1A2E;--ink-soft: #263149;--paper: #F5F1EA;--card: #ffffff;--line: #DDD5C7;--brass: #C97B2D;--brass-deep: #A05E1D;--brass-light: #E89A56;--green: #2e7d4f;--red: #b3372e;--muted: #6B7280;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Fraunces", Georgia, serif;--font-num: "JetBrains Mono", "IBM Plex Mono", monospace;--marigold: var(--brass);--marigold-deep: var(--brass-deep)}*{box-sizing:border-box;margin:0}body{font-family:var(--font-body);background:var(--paper);color:var(--ink);font-feature-settings:"cv02","cv03","cv04","cv11"}.layout{display:flex;min-height:100vh}.sidebar{width:224px;background:var(--ink);color:#cfd6e6;padding:24px 0;display:flex;flex-direction:column;gap:4px;flex-shrink:0}.sidebar .brand{display:flex;align-items:center;gap:12px;padding:4px 24px 24px;border-bottom:1px solid var(--ink-soft);margin-bottom:16px}.sidebar .brand .brand-mark{color:var(--brass-light)}.sidebar .brand .brand-text{font-family:var(--font-display);font-size:22px;color:#fff;letter-spacing:-.01em;line-height:1;font-weight:600}.sidebar .brand .brand-text small{display:block;font-family:var(--font-body);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-light);margin-top:4px;font-weight:600}.sidebar a{color:inherit;text-decoration:none;padding:11px 24px;font-size:14px;border-left:3px solid transparent}.sidebar a:hover{background:var(--ink-soft);color:#fff}.sidebar a.active{border-left-color:var(--brass);color:#fff;background:var(--ink-soft)}.main{flex:1;padding:32px 40px;max-width:1200px}h1{font-family:var(--font-display);font-size:28px;font-weight:600;letter-spacing:-.01em;margin-bottom:4px}.subtitle{color:var(--muted);font-size:14px;margin-bottom:28px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px}.stat{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px 20px}.stat .label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stat .value{font-family:var(--font-num);font-size:30px;margin-top:6px;font-weight:500}.stat .value.money:before{content:"₹";font-size:20px;margin-right:2px;color:var(--muted)}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 14px;border-bottom:2px solid var(--line);background:#fbf9f4;font-weight:600}td{padding:11px 14px;border-bottom:1px solid var(--line);font-size:14px}td.num{font-family:var(--font-num);text-align:right;font-size:13px;font-weight:500}th.num{text-align:right}tr:last-child td{border-bottom:none}.toolbar{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;align-items:center}input,select{font:inherit;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--card)}input:focus,select:focus,button:focus-visible{outline:2px solid var(--brass);outline-offset:1px}button{font:inherit;font-weight:600;padding:9px 18px;border:none;border-radius:6px;background:var(--brass);color:#fff;cursor:pointer}button:hover{background:var(--brass-deep)}button.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}button.ghost:hover{border-color:var(--ink);background:transparent}button:disabled{opacity:.5;cursor:default}.badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600}.badge.PRESENT,.badge.APPROVED,.badge.ACTIVE,.badge.PAID{background:#e3f0e8;color:var(--green)}.badge.PENDING,.badge.DRAFT,.badge.WFH{background:#fbeacd;color:var(--brass-deep)}.badge.ABSENT,.badge.REJECTED,.badge.LOP{background:#f9e4e2;color:var(--red)}.badge.ON_LEAVE,.badge.HOLIDAY,.badge.HALF_DAY{background:#e8eaf2;color:var(--ink-soft)}.error{color:var(--red);background:#f9e4e2;padding:10px 14px;border-radius:6px;margin-bottom:14px;font-size:14px}.empty{color:var(--muted);padding:32px;text-align:center}@media (max-width: 760px){.layout{flex-direction:column}.sidebar{width:100%;flex-direction:row;overflow-x:auto;padding:0;align-items:center}.sidebar .brand{border-bottom:none;border-right:1px solid var(--ink-soft);margin:0;padding:12px 20px}.sidebar a{border-left:none;border-bottom:3px solid transparent;white-space:nowrap}.sidebar a.active{border-bottom-color:var(--brass)}.main{padding:20px}}
