:root{--tz-primary:#007bc1;--tz-accent:#f0ca4e;--tz-black:#0b0b0b;--tz-white:#e8e8e8;--tz-background:#0b0b0b;--tz-surface:#16181b;--tz-surface-hover:#20242a;--tz-border:#30353d;--tz-text:#e8e8e8;--tz-text-muted:#a8b0bc;color-scheme:dark}
:root[data-tz-theme=light]{--tz-background:#e8e8e8;--tz-surface:#fff;--tz-surface-hover:#f2f5f8;--tz-border:#c8cdd4;--tz-text:#0b0b0b;--tz-text-muted:#525c67;color-scheme:light}
body{background:var(--tz-background);color:var(--tz-text)}
.tz-workspace,.tz-login{margin:0;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.tz-workspace *,.tz-login *{box-sizing:border-box}
.tz-workspace a,.tz-login a{color:inherit;text-decoration:none}.tz-workspace a:hover{color:var(--tz-accent)}
.tz-workspace h1,.tz-login h1{font-size:2rem;font-weight:600;letter-spacing:-.035em;margin:8px 0 24px}.tz-workspace h2{font-size:1.15rem;font-weight:600;margin:0 0 20px}
.tz-muted,.tz-workspace small{color:var(--tz-text-muted)}.tz-eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.12em;color:var(--tz-text-muted)}
.tz-sidebar{position:fixed;inset:0 auto 0 0;width:248px;padding:24px 20px;background:var(--tz-surface);border-right:1px solid var(--tz-border);z-index:20;display:flex;flex-direction:column;gap:24px}
.tz-brand-link{display:block;background:#0b0b0b;border-radius:10px;padding:14px 12px;text-align:center}.tz-brand{width:160px;height:auto;display:block;margin:0 auto}.tz-brand-small{display:none}.tz-sidebar nav{display:grid;gap:6px}.tz-sidebar nav a{display:flex;align-items:center;gap:12px;padding:10px;border-radius:8px;font-size:.9rem}.tz-sidebar nav a:hover{background:var(--tz-surface-hover);color:var(--tz-text)}.tz-nav-icon{width:26px;height:26px;border:1px solid var(--tz-border);border-radius:7px;text-align:center;font-size:.8rem;line-height:24px;color:var(--tz-text-muted)}.tz-sidebar-foot{margin-top:auto;font-size:.85rem;color:var(--tz-text-muted)}
.tz-main{margin-left:248px}.tz-topbar{height:74px;display:flex;align-items:center;gap:16px;padding:0 32px;border-bottom:1px solid var(--tz-border);background:var(--tz-background)}.tz-top-actions{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:.875rem}.tz-top-actions form{margin:0}.tz-top-actions details{position:relative}.tz-profile{position:absolute;right:0;top:32px;min-width:240px;padding:16px;background:var(--tz-surface);border:1px solid var(--tz-border);border-radius:12px;z-index:30}.tz-profile a{display:block;padding:8px}.tz-profile p{font-size:.8rem}
.tz-workspace main{padding:36px;max-width:1500px;margin:auto}.tz-page-heading{margin-bottom:28px}.tz-footer{padding:24px 36px;font-size:.8rem;color:var(--tz-text-muted)}
.tz-workspace button,.tz-login button,.tz-button{font:inherit;cursor:pointer;color:#fff;background:var(--tz-primary);border:1px solid transparent;border-radius:8px;padding:10px 18px;display:inline-block}.tz-workspace button:hover,.tz-login button:hover{filter:brightness(1.12)}.tz-workspace .tz-icon-button{background:transparent;color:var(--tz-text);padding:6px 10px;border:1px solid var(--tz-border)}.tz-workspace .tz-secondary{background:var(--tz-surface-hover);color:var(--tz-text);border-color:var(--tz-border)}
.tz-workspace input,.tz-workspace select,.tz-workspace textarea,.tz-login input{font:inherit;width:100%;padding:11px 12px;background:var(--tz-background);border:1px solid var(--tz-border);border-radius:8px;color:var(--tz-text)}.tz-workspace textarea{min-height:100px}.tz-workspace label,.tz-login label{display:block;font-size:.875rem;color:var(--tz-text-muted);margin:16px 0 7px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--tz-accent);outline-offset:3px}
.tz-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.tz-card{background:var(--tz-surface);border:1px solid var(--tz-border);border-radius:12px;padding:24px;margin-bottom:24px}.tz-grid .tz-card{margin:0}.tz-stat{font-size:1.7rem;letter-spacing:-.035em;font-weight:600;margin:14px 0 0;overflow-wrap:anywhere}.tz-card-label{color:var(--tz-text-muted);font-size:.875rem}.tz-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.tz-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.tz-full{grid-column:1/-1}.tz-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.tz-actions form{display:flex;gap:12px;flex-wrap:wrap}.tz-table-wrap{overflow:auto}.tz-workspace table{width:100%;border-collapse:collapse;background:transparent;font-size:.9rem}.tz-workspace th{text-align:left;color:var(--tz-text-muted);font-weight:500;padding:12px;border-bottom:1px solid var(--tz-border);white-space:nowrap}.tz-workspace td{padding:16px 12px;border-bottom:1px solid var(--tz-border);background:transparent}.tz-workspace tr:last-child td{border-bottom:0}.tz-workspace tbody tr:hover{background:var(--tz-surface-hover)}.tz-badge{display:inline-block;border-radius:6px;padding:4px 9px;background:var(--tz-surface-hover);border:1px solid var(--tz-border);font-size:.8rem;white-space:nowrap}.tz-badge[data-status=Approved],.tz-badge[data-status=Completed],.tz-badge[data-status=Paid]{color:#83d6ad}.tz-badge[data-status=Rejected],.tz-badge[data-status=Cancelled]{color:#f5a6a6}.tz-alert{padding:16px;border:1px solid var(--tz-accent);border-radius:8px;margin-bottom:20px}.tz-tabs{display:flex;flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--tz-border);margin-bottom:24px;padding-bottom:14px}.tz-tabs a[aria-current=page]{color:var(--tz-accent)}.tz-empty{padding:30px;color:var(--tz-text-muted);text-align:center}.tz-item{display:grid;grid-template-columns:3fr 1fr 1.5fr 1fr auto;gap:12px;align-items:end}.tz-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.tz-filter input,.tz-filter select{width:auto;max-width:240px}.tz-history{border-left:2px solid var(--tz-border);padding:0 0 0 24px;margin-left:8px}.tz-history article{padding-bottom:24px}
.tz-login{min-height:100vh;display:grid;place-items:center;padding:32px}.tz-login-card{width:100%;max-width:440px;background:var(--tz-surface);border:1px solid var(--tz-border);padding:42px;border-radius:16px}.tz-login-card .tz-brand{margin:0 auto 32px}.tz-login-card h1{font-size:1.6rem;margin-bottom:6px}.tz-login-card p{color:var(--tz-text-muted)}.tz-login-card .tz-muted{font-size:.8rem;margin:24px 0 0}.tz-login-field{display:flex;align-items:center;border:1px solid var(--tz-border);border-radius:8px;overflow:hidden;background:var(--tz-background)}.tz-login-field input{border:0;min-width:0}.tz-login-field span{font-size:.85rem;padding-right:12px;color:var(--tz-text-muted)}.tz-login-card button{width:100%;margin-top:26px}
.tz-skip{position:absolute;left:-999px}.tz-skip:focus{left:16px;top:16px;z-index:100;background:var(--tz-surface);padding:12px}.tz-collapsed .tz-sidebar{width:80px;padding:24px 12px}.tz-collapsed .tz-main{margin-left:80px}.tz-collapsed .tz-nav-label,.tz-collapsed .tz-sidebar .tz-eyebrow,.tz-collapsed .tz-sidebar-foot,.tz-collapsed .tz-sidebar .tz-brand{display:none}.tz-collapsed .tz-brand-small{display:inline;color:#e8e8e8}
body:not(.tz-workspace):not(.tz-login){--colorbackbody:var(--tz-background);--colorbackhmenu1:#16181b;--colorbackvmenu1:#16181b;--colorbacktitle1:#20242a;--colorbacklineimpair1:#16181b;--colorbacklinepair1:#1b1e22;--colortext:var(--tz-text);--colortexttitle:var(--tz-text);--colortextlink:#4eb3eb}
@media(max-width:1100px){.tz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tz-top-actions{gap:10px}.tz-topbar{padding:0 20px}.tz-columns{grid-template-columns:1fr}.tz-workspace main{padding:24px}}
@media(max-width:760px){.tz-sidebar{transform:translateX(-100%)}.tz-main,.tz-collapsed .tz-main{margin-left:0}.tz-collapsed .tz-sidebar{transform:translateX(0);width:248px}.tz-collapsed .tz-nav-label,.tz-collapsed .tz-sidebar .tz-brand{display:block}.tz-collapsed .tz-brand-small{display:none}.tz-top-actions>a{display:none}.tz-topbar>span{font-size:.85rem}.tz-workspace main{padding:20px}.tz-form-grid{grid-template-columns:1fr}.tz-item{grid-template-columns:1fr 1fr}.tz-item>div:first-child{grid-column:1/-1}.tz-card{padding:18px}.tz-stat{font-size:1.3rem}.tz-login-card{padding:28px}}
@media print{.tz-sidebar,.tz-topbar,.tz-actions,.tz-footer{display:none}.tz-main{margin:0}.tz-workspace{background:white;color:black}.tz-card{border:1px solid #bbb}.tz-brand{width:40mm}}
