.leave-app{--leave-bg:var(--card,#fff);--leave-text:var(--ink,#193149);--leave-line:var(--line,#d9e2e8);color:var(--leave-text);font:inherit;max-width:1120px;margin:auto}.leave-app *{box-sizing:border-box}.leave-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.leave-heading h1{font-size:30px;margin:3px 0 8px}.leave-heading p{margin:0;line-height:1.5}.leave-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--mut,#667b8d)}.leave-button{border:1px solid #173b56;background:#173b56;color:#fff;border-radius:9px;min-height:44px;padding:10px 16px;font:inherit;font-weight:700;cursor:pointer}.leave-button.secondary{background:var(--leave-bg);border-color:var(--leave-line);color:var(--leave-text)}.leave-button:disabled{opacity:.5;cursor:default}.leave-button:focus-visible,.leave-app input:focus-visible,.leave-app select:focus-visible,.leave-app textarea:focus-visible{outline:3px solid #2588b5;outline-offset:2px}.leave-app input,.leave-app textarea,.leave-app select{font:inherit;min-height:44px;padding:10px;border:1px solid var(--leave-line);border-radius:8px;color:var(--leave-text);background:var(--leave-bg);max-width:100%;width:100%}.leave-label{display:grid;gap:7px;font-weight:650;min-width:0}.leave-label small,.leave-muted{font-size:13px;line-height:1.5;color:var(--mut,#617487);font-weight:400}.leave-toolbar,.leave-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.leave-toolbar{margin:18px 0}.leave-toolbar select{width:auto;flex:1;max-width:280px}.leave-list{display:grid;gap:16px}.leave-card,.leave-empty,.leave-connection{border:1px solid var(--leave-line);background:var(--leave-bg);border-radius:14px;padding:20px}.leave-card-head{display:flex;gap:12px;justify-content:space-between;align-items:start}.leave-card h2{font-size:19px;margin:0 0 10px}.leave-status{font-size:12px;font-weight:750;padding:5px 10px;background:#eaf0f5;color:#25445b;border-radius:20px;white-space:nowrap}.leave-status.approved,.leave-xero.confirmed{color:#136044;background:#e2f4e8}.leave-status.declined{background:#fbe7e5;color:#8b3029}.leave-status.submitted{background:#fff2d8;color:#73530f}.leave-dates{margin:6px 0}.leave-hours{font-weight:750;margin:8px 0 14px}.leave-card details{margin:16px 0}.leave-card summary{cursor:pointer;min-height:32px}.leave-card dl{display:grid;grid-template-columns:1fr auto;gap:7px;max-width:420px}.leave-card dd{margin:0}.leave-note{white-space:pre-wrap}.leave-xero{font-size:13px;font-weight:700;display:inline-block;border-radius:5px;padding:5px 8px;background:#eef2f5}.leave-xero.needs_review{background:#fff2d8;color:#73530f}.leave-error{color:#b43e30;font-size:14px;line-height:1.5;white-space:pre-wrap}.leave-notice:empty,.leave-error:empty{display:none}.leave-connection{background:var(--leave-bg);border-left:4px solid #4d8097}.leave-connection p{font-size:14px;line-height:1.5}.leave-dialog{width:620px;max-width:calc(100% - 24px);max-height:90dvh;border:1px solid var(--leave-line);border-radius:16px;padding:0;background:var(--leave-bg);color:var(--leave-text)}.leave-dialog::backdrop{background:#10263899}.leave-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;position:sticky;top:0;background:var(--leave-bg);padding:16px 20px;border-bottom:1px solid var(--leave-line);z-index:1}.leave-dialog-head h2{font-size:20px;margin:0}.leave-dialog-body{padding:20px}.leave-form{display:grid;gap:16px}.leave-form p{margin:0}.leave-days:empty,.leave-form .leave-hours:empty{display:none}.leave-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.leave-fill{display:flex;align-items:end;gap:10px}.leave-fill .leave-label{flex:1}.leave-days{display:grid;gap:8px;max-height:280px;overflow:auto}.leave-day{display:grid;grid-template-columns:1fr 94px 40px;gap:8px;align-items:center}.leave-check{display:flex;gap:10px;align-items:center}.leave-check input{width:22px;min-height:22px;flex-shrink:0}.leave-app [hidden]{display:none!important}@media(max-width:600px){.leave-heading{align-items:stretch;flex-direction:column;gap:14px}.leave-heading h1{font-size:27px}.leave-card{padding:16px}.leave-card-head{flex-wrap:wrap}.leave-actions .leave-button{flex:1}.leave-dialog-body{padding:16px}.leave-dialog-head{padding:14px 16px}.leave-grid{gap:10px}.leave-label{font-size:14px}.leave-app input,.leave-app select,.leave-app textarea{font-size:16px}}@media(prefers-color-scheme:dark){html[data-theme="dark"] .leave-app{--leave-bg:#14212d;--leave-text:#e8eef3;--leave-line:#354451}}
