:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--accent:#1a73e8;--on-accent:#fff;--danger:#d93025;--border:#e0e0e0;--bg:#f5f6f8;--surface:#fff;--surface-alt:#fafafa;--text:#1c1c1e;--text-secondary:#444;--muted:#6b6f76;--chip-pending-bg:#fef3df;--chip-pending-fg:#a96b00;--chip-approved-bg:#e3f4e4;--chip-approved-fg:#137333;--chip-rejected-bg:#fbe6e4;--chip-rejected-fg:#d93025;--chip-cancelled-bg:#eee;--chip-cancelled-fg:#666;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--accent:#8ab4f8;--on-accent:#1f2124;--danger:#f28b82;--border:#3c3f43;--bg:#18191b;--surface:#242629;--surface-alt:#2c2e31;--text:#e8eaed;--text-secondary:#c8cacd;--muted:#9aa0a6;--chip-pending-bg:#fdd66329;--chip-pending-fg:#fdd663;--chip-approved-bg:#81c99529;--chip-approved-fg:#81c995;--chip-rejected-bg:#f28b8229;--chip-rejected-fg:#f28b82;--chip-cancelled-bg:#3a3b3d;--chip-cancelled-fg:#9aa0a6}}*{box-sizing:border-box}body{margin:0}h1{font-size:1.4rem}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:6px;padding:6px 14px}button:disabled{opacity:.5;cursor:default}button.danger{background:var(--surface);color:var(--danger);border-color:var(--danger)}button.link{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 8px;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s}button.link:hover{background:var(--surface-alt)}button.link.danger{color:var(--danger)}button.link.danger:hover{background:var(--chip-rejected-bg)}button.toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:0 6px;font-size:.75rem;transition:background .12s,color .12s}button.toggle:hover{background:var(--surface-alt);color:var(--text)}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;padding:6px 8px}textarea{resize:vertical}.muted{color:var(--muted)}.error{color:var(--danger);margin:8px 0}.layout{min-height:100vh}.topbar{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:24px;padding:10px 24px;display:flex}.brand{align-items:center;gap:8px;font-weight:600;display:flex}.brand-logo{width:26px;height:26px;display:block}.topbar nav{gap:16px;display:flex}.topbar nav a{color:var(--text-secondary);padding:4px 2px;text-decoration:none}.topbar nav a.active{color:var(--accent);border-bottom:2px solid var(--accent)}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.account{position:relative}.account-name{cursor:pointer;color:var(--muted);font:inherit;background:0 0;border:none;border-radius:6px;padding:6px 8px}.account-name:hover{background:var(--surface-alt)}.dropdown-backdrop{z-index:20;position:fixed;inset:0}.account-menu{z-index:21;background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:10px;width:340px;max-width:90vw;padding:16px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0000002e}.account-menu h3{margin:0 0 12px;font-size:1rem}.account-menu hr{border:none;border-top:1px solid var(--border);margin:12px 0}.notify-emails{flex-direction:column;gap:8px;display:flex}.notify-emails label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}.content{max-width:1100px;margin:0 auto;padding:24px}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}th{background:var(--surface-alt);font-weight:600}.filters{gap:16px;margin-bottom:16px;display:flex}.status{border-radius:10px;padding:2px 10px;font-size:.85rem}.status-pending{background:var(--chip-pending-bg);color:var(--chip-pending-fg)}.status-approved{background:var(--chip-approved-bg);color:var(--chip-approved-fg)}.status-rejected{background:var(--chip-rejected-bg);color:var(--chip-rejected-fg)}.status-cancelled{background:var(--chip-cancelled-bg);color:var(--chip-cancelled-fg)}.warn-chip{background:var(--chip-pending-bg);color:var(--chip-pending-fg);white-space:nowrap;border-radius:10px;padding:2px 10px;font-size:.85rem}.warn-text{color:var(--chip-pending-fg);margin:0}.stats{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.stat{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:10px 16px;font-size:.9rem}.stat-value{color:var(--text);font-size:1.3rem;font-weight:600;display:block}.modal-backdrop{z-index:10;background:#0006;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;width:420px;max-width:calc(100vw - 32px);max-height:80vh;padding:24px;display:flex;overflow:auto}.modal h2{margin:0;font-size:1.2rem}.modal h3{margin:8px 0 0;font-size:1rem}.modal p{margin:0}.modal label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}.modal-actions{justify-content:flex-end;gap:8px;display:flex}button.secondary{background:var(--surface);color:var(--text-secondary);border-color:var(--border)}.history{flex-direction:column;gap:6px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.cal-bar{align-items:center;gap:12px;margin:16px 0 8px;display:flex}.cal-title{min-width:160px;font-weight:600}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-dow{text-align:center;color:var(--muted);padding:4px 0;font-size:.8rem;font-weight:600}.cal-cell{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;gap:2px;min-height:78px;padding:4px 5px;display:flex;overflow:hidden}.cal-cell.cal-empty{background:0 0;border:none}.cal-cell.cal-weekend{background:var(--surface-alt)}.cal-num{color:var(--muted);font-size:.72rem}.cal-chip{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;padding:1px 5px;font-size:.72rem;line-height:1.35;overflow:hidden}.cal-chip.approved{background:var(--chip-approved-bg);color:var(--chip-approved-fg)}.cal-chip.pending{background:var(--chip-pending-bg);color:var(--chip-pending-fg)}.login-wrap{place-items:center;min-height:100vh;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;width:360px;padding:32px;display:flex}.login-logo{align-self:center;width:64px;height:64px}.login-card h1{text-align:center;margin:0}.login-card>.muted{text-align:center;margin:0 0 6px}.login-card label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}.nav-badge{background:var(--danger);color:#fff;text-align:center;vertical-align:text-top;border-radius:9px;min-width:18px;margin-left:6px;padding:0 5px;font-size:.72rem;font-weight:600;line-height:18px;display:inline-block}.announcements{flex-direction:column;gap:14px;margin-top:16px;display:flex}.announcement{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 18px}.announcement.pinned{border-color:var(--accent);background:var(--surface-alt)}.announcement-head{align-items:flex-start;gap:12px;display:flex}.announcement-head h2{flex:1;margin:0;font-size:1.05rem}.pin-chip{background:var(--chip-pending-bg);color:var(--chip-pending-fg);vertical-align:middle;border-radius:999px;margin-right:8px;padding:1px 8px;font-size:.72rem;font-weight:600;display:inline-block}.announcement-actions{flex-shrink:0;gap:4px;display:flex}.announcement-body{white-space:pre-wrap;margin:10px 0 8px;line-height:1.5}.announcement-meta{font-size:.82rem}.modal textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:inherit;resize:vertical;border-radius:8px;padding:8px 10px}label.checkbox{cursor:pointer;flex-direction:row;align-items:center;gap:8px}label.checkbox input{width:auto}.account-company{color:var(--muted,#6b7280);font-weight:400}.company-switch{flex-direction:column;gap:4px;margin-bottom:4px;display:flex}.company-switch-item{text-align:left;cursor:pointer;color:inherit;background:0 0;border:1px solid #0000;border-radius:8px;width:100%;padding:8px 10px}.company-switch-item:hover{background:var(--surface-alt)}.company-switch-item.active{border-color:var(--border);font-weight:600}.company-picker{flex-direction:column;gap:8px;margin:12px 0;display:flex}.company-choice{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:inherit;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.company-choice:hover{background:var(--surface-alt)}.company-choice-name{font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;margin:16px 0;padding:20px;display:flex}.card h2{margin:0}.card h3{margin:8px 0 0;font-size:1rem}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=640px){.grid-2{grid-template-columns:1fr}}.mapping-row{align-items:center;gap:8px;display:flex}.mapping-row input{flex:1}.member-row{align-items:center;gap:8px;display:flex}.member-row .member-name{flex:1}.member-add{align-items:center;gap:8px;display:flex}.member-add select{flex:1}
