@import url(https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Jost:wght@300;400;500;600&display=swap);:root{--navy:#393c5b;--gold:#e6be8a;--gold-dark:#c9a060;--grey-mid:#969696;--grey-light:#f7f7f7;--white:#fff;--success:#4a7c59;--danger:#9b3a3a;--warning:#b8860b;--pending:#5a6a8a;--border:#e8e4de;--shadow:0 2px 16px #393c5b14;--shadow-lg:0 8px 40px #393c5b24}*{box-sizing:border-box;margin:0;padding:0}body{background:#f7f7f7;background:var(--grey-light);color:#393c5b;color:var(--navy);font-family:Jost,sans-serif;font-weight:300;min-height:100vh}h1,h2,h3{font-family:Cormorant Garamond,serif;font-weight:500}.fp-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.fp-card .card-body{padding:20px 22px}.app-shell{display:flex;min-height:100vh}.sidebar{background:#393c5b;background:var(--navy);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:100}.sidebar-logo{align-items:center;border-bottom:1px solid #e6be8a33;display:flex;gap:14px;padding:28px 24px 24px}.sidebar-logo img{border-radius:4px;height:48px;width:48px}.sidebar-logo-text{display:flex;flex-direction:column}.sidebar-logo-name{color:#e6be8a;color:var(--gold);font-family:Jost,sans-serif;font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase}.sidebar-logo-sub{color:#e6be8a99;font-family:Cormorant Garamond,serif;font-size:13px;font-style:italic}.sidebar-nav{flex:1 1;overflow-y:auto;padding:20px 0}.nav-section-label{color:#e6be8a66;font-size:9px;font-weight:500;letter-spacing:2px;padding:16px 24px 8px;text-transform:uppercase}.nav-link{align-items:center;border-left:3px solid #0000;color:#ffffffa6;display:flex;font-size:13px;font-weight:400;gap:12px;letter-spacing:.3px;padding:12px 24px;text-decoration:none;transition:all .2s}.nav-link:hover{background:#e6be8a14;color:#fff;color:var(--white)}.nav-link.active{background:#e6be8a1a;border-left-color:#e6be8a;border-left-color:var(--gold);color:#e6be8a;color:var(--gold)}.nav-link svg{flex-shrink:0;height:16px;width:16px}.sidebar-footer{border-top:1px solid #e6be8a26;padding:20px 24px}.sidebar-user{gap:10px;margin-bottom:12px}.sidebar-avatar,.sidebar-user{align-items:center;display:flex}.sidebar-avatar{background:#e6be8a;background:var(--gold);border-radius:50%;color:#393c5b;color:var(--navy);flex-shrink:0;font-size:12px;font-weight:600;height:36px;justify-content:center;width:36px}.sidebar-user-info{flex:1 1;min-width:0}.sidebar-user-name{color:#fff;color:var(--white);font-size:13px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-role{color:#e6be8a80;font-size:10px}.logout-btn,.sidebar-user-role{letter-spacing:1px;text-transform:uppercase}.logout-btn{background:none;border:1px solid #e6be8a33;border-radius:4px;color:#ffffff80;cursor:pointer;font-family:Jost,sans-serif;font-size:11px;padding:8px 16px;transition:all .2s;width:100%}.logout-btn:hover{border-color:#e6be8a80;color:#e6be8a;color:var(--gold)}.main-content{flex:1 1;margin-left:260px;max-width:1200px;padding:40px}.card{background:#fff;background:var(--white);border:1px solid #e8e4de;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 16px #393c5b14;box-shadow:var(--shadow)}.card-header{align-items:center;border-bottom:1px solid #e8e4de;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:24px 28px 20px}.card-title{color:#393c5b;color:var(--navy);font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.card-body{padding:24px 28px}.stat-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:28px}.stat-card{background:#fff;background:var(--white);border:1px solid #e8e4de;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 16px #393c5b14;box-shadow:var(--shadow);padding:24px}.stat-label{color:#969696;color:var(--grey-mid);font-size:10px;font-weight:500;letter-spacing:1.5px;margin-bottom:8px;text-transform:uppercase}.stat-value{color:#393c5b;color:var(--navy);font-family:Cormorant Garamond,serif;font-size:40px;font-weight:300;line-height:1}.stat-sub{color:#969696;color:var(--grey-mid);font-size:12px;margin-top:4px}.stat-card.gold-accent{border-top:3px solid #e6be8a;border-top:3px solid var(--gold)}.stat-card.navy-accent{border-top:3px solid #393c5b;border-top:3px solid var(--navy)}.stat-card.success-accent{border-top:3px solid #4a7c59;border-top:3px solid var(--success)}.stat-card.danger-accent{border-top:3px solid #9b3a3a;border-top:3px solid var(--danger)}.badge{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:500;letter-spacing:.3px;padding:3px 10px}.badge-pending{background:#5a6a8a1f;color:#5a6a8a;color:var(--pending)}.badge-approved{background:#4a7c591f;color:#4a7c59;color:var(--success)}.badge-declined{background:#9b3a3a1f;color:#9b3a3a;color:var(--danger)}.badge-holiday{background:#393c5b1a;color:#393c5b;color:var(--navy)}.badge-sick{background:#b8860b1a;color:#b8860b;color:var(--warning)}.badge-awol{background:#9b3a3a1a;color:#9b3a3a;color:var(--danger)}.btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-family:Jost,sans-serif;font-size:12px;font-weight:500;gap:8px;letter-spacing:1px;padding:10px 20px;text-decoration:none;text-transform:uppercase;transition:all .2s}.btn-primary{background:#393c5b;background:var(--navy);color:#e6be8a;color:var(--gold)}.btn-primary:hover{background:#2a2d45}.btn-gold{background:#e6be8a;background:var(--gold);color:#393c5b;color:var(--navy)}.btn-gold:hover{background:#c9a060;background:var(--gold-dark)}.btn-outline{background:#0000;border:1px solid #e8e4de;border:1px solid var(--border);color:#393c5b;color:var(--navy)}.btn-outline:hover{border-color:#393c5b;border-color:var(--navy)}.btn-danger{background:#0000;border:1px solid #9b3a3a4d;color:#9b3a3a;color:var(--danger)}.btn-danger:hover{background:#9b3a3a14}.btn-success{background:#4a7c59;background:var(--success);color:#fff}.btn-sm{font-size:11px;padding:6px 14px}.btn:disabled{cursor:not-allowed;opacity:.5}.form-group{margin-bottom:20px}.form-label{color:#969696;color:var(--grey-mid);display:block;font-size:10px;font-weight:500;letter-spacing:1.5px;margin-bottom:8px;text-transform:uppercase}.form-control{-webkit-appearance:none;background:#fff;background:var(--white);border:1px solid #e8e4de;border:1px solid var(--border);border-radius:4px;color:#393c5b;color:var(--navy);font-family:Jost,sans-serif;font-size:14px;padding:11px 14px;transition:border-color .2s;width:100%}.form-control:focus{border-color:#e6be8a;border-color:var(--gold);box-shadow:0 0 0 3px #e6be8a26;outline:none}.form-control::placeholder{color:#969696;color:var(--grey-mid)}textarea.form-control{min-height:90px;resize:vertical}select.form-control{cursor:pointer}.table-wrap{overflow-x:auto}table{border-collapse:collapse;font-size:13px;width:100%}th{background:#f7f7f7;background:var(--grey-light);color:#969696;color:var(--grey-mid);font-size:9px;font-weight:500;letter-spacing:1.5px;padding:10px 16px;text-align:left;text-transform:uppercase}td,th{border-bottom:1px solid #e8e4de;border-bottom:1px solid var(--border)}td{color:#393c5b;color:var(--navy);padding:14px 16px;vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#e6be8a0a}.alert{border-radius:4px;font-size:13px;margin-bottom:16px;padding:12px 16px}.alert-error{background:#9b3a3a14;border-left:3px solid #9b3a3a;border-left:3px solid var(--danger);color:#9b3a3a;color:var(--danger)}.alert-success{background:#4a7c5914;border-left:3px solid #4a7c59;border-left:3px solid var(--success);color:#4a7c59;color:var(--success)}.alert-info{background:#393c5b0f;border-left:3px solid #e6be8a;border-left:3px solid var(--gold);color:#393c5b;color:var(--navy)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#393c5b80;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:200}.modal{background:#fff;background:var(--white);border-radius:8px;box-shadow:0 8px 40px #393c5b24;box-shadow:var(--shadow-lg);max-width:520px;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e8e4de;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:24px 28px 20px}.modal-title{color:#393c5b;color:var(--navy);font-family:Cormorant Garamond,serif;font-size:22px}.modal-close{background:none;border:none;color:#969696;color:var(--grey-mid);cursor:pointer;font-size:20px;line-height:1;padding:4px}.modal-body{padding:24px 28px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:16px 28px 24px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:32px}.page-title{color:#393c5b;color:var(--navy);font-family:Cormorant Garamond,serif;font-size:36px;font-weight:400;line-height:1.1}.page-subtitle{font-size:13px;margin-top:4px}.loader,.page-subtitle{color:#969696;color:var(--grey-mid)}.loader{align-items:center;display:flex;justify-content:center;padding:60px}.empty-state{color:#969696;color:var(--grey-mid);padding:48px;text-align:center}.empty-state h3{color:#393c5b;color:var(--navy);font-family:Cormorant Garamond,serif;font-size:22px;margin-bottom:8px}.mobile-topbar{display:none}@media (max-width:768px){.app-shell{flex-direction:column}.mobile-topbar{align-items:center;background:#393c5b;background:var(--navy);display:flex;height:calc(60px + env(safe-area-inset-top, 0px));justify-content:space-between;left:0;padding:calc(12px + env(safe-area-inset-top, 0px)) 20px 12px;position:fixed;right:0;top:0;z-index:150}.mobile-menu-btn{align-items:center;background:none;border:none;color:#e6be8a;color:var(--gold);cursor:pointer;display:flex;justify-content:center;padding:4px}.mobile-menu-btn svg{height:24px;width:24px}.sidebar{height:100vh;left:-280px;overflow-y:auto;padding-top:env(safe-area-inset-top,0);position:fixed;top:0;transition:left .3s ease;width:260px;z-index:200}.sidebar.sidebar-open{left:0}.mobile-overlay{background:#00000080;inset:0;position:fixed;z-index:190}.main-content{margin-left:0;margin-top:calc(60px + env(safe-area-inset-top, 0px));padding:20px 16px}.stat-grid{grid-template-columns:1fr 1fr}div[style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}.page-header{align-items:flex-start;flex-direction:column;gap:12px}.page-title{font-size:28px}table{font-size:12px}td,th{padding:10px}}.fp{--fp-navy:#393c5b;--fp-navy-dark:#2a2d45;--fp-gold:#e6be8a;--fp-gold-dark:#c9a060;--fp-grey:#969696;--fp-bg:#f7f7f7;--fp-panel:#fff;--fp-line:#e8e4de;--fp-line-2:#d9d3ca;--fp-canvas:#fbfaf8;--fp-danger:#9b3a3a;background:var(--fp-bg);bottom:0;color:var(--fp-navy);display:grid;font-family:Jost,sans-serif;font-size:13px;font-weight:400;grid-template-areas:"top top top" "rail stage side";grid-template-columns:auto 1fr 320px;grid-template-rows:auto 1fr;left:260px;position:fixed;right:0;top:0;z-index:50}.fp *,.fp :after,.fp :before{box-sizing:border-box}.fp [hidden]{display:none!important}.fp button,.fp input,.fp select,.fp textarea{color:inherit;font:inherit}.fp :focus-visible{outline:2px solid var(--fp-gold-dark);outline-offset:2px}.fp-top{align-items:center;border-bottom:1px solid var(--fp-line);display:flex;gap:10px;grid-area:top;min-width:0;padding:10px 16px}.fp-icon-btn,.fp-top{background:var(--fp-panel)}.fp-icon-btn{border:1px solid var(--fp-line);border-radius:4px;color:var(--fp-navy);cursor:pointer;display:grid;flex:none;height:34px;place-items:center;width:34px}.fp-icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.fp-ttl{display:flex;flex-direction:column;min-width:0}.fp-ttl b{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500;line-height:1.1}.fp-ttl b,.fp-ttl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-ttl span{color:var(--fp-grey);font-size:12px}.fp-spacer{flex:1 1}.fp-status{color:var(--fp-grey);font-size:12px;white-space:nowrap}.fp-status.dirty{color:var(--fp-navy)}.fp-status.dirty:before{background:var(--fp-gold-dark);border-radius:50%;content:"";display:inline-block;height:7px;margin-right:6px;vertical-align:1px;width:7px}.fp-btn{align-items:center;background:var(--fp-panel);border:1px solid var(--fp-line-2);border-radius:4px;color:var(--fp-navy);cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;gap:6px;letter-spacing:1px;padding:7px 12px;text-transform:uppercase;white-space:nowrap}.fp-btn.fp-primary,.fp-btn:hover{border-color:var(--fp-navy)}.fp-btn.fp-primary{background:var(--fp-navy);color:var(--fp-gold)}.fp-btn.fp-primary:hover{background:var(--fp-navy-dark)}.fp-btn.fp-ghost{background:#0000;border-color:#0000}.fp-btn.fp-ghost:hover{border-color:var(--fp-line-2)}.fp-btn.fp-danger{background:#0000;border-color:#9b3a3a59;color:var(--fp-danger)}.fp-btn:disabled{cursor:default;opacity:.4}.fp-menu{position:relative}.fp-menu-list{background:var(--fp-panel);border:1px solid var(--fp-line);border-radius:8px;box-shadow:0 8px 40px #393c5b24;display:flex;flex-direction:column;gap:2px;min-width:230px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:30}.fp-menu-list button{background:none;border:0;border-radius:4px;color:var(--fp-navy);cursor:pointer;font-size:13px;padding:8px 10px;text-align:left}.fp-menu-list button:hover{background:var(--fp-bg)}.fp-menu-list small{color:var(--fp-grey);display:block;font-size:11px}.fp-rail{background:var(--fp-panel);border-right:1px solid var(--fp-line);display:flex;flex-direction:column;gap:4px;grid-area:rail;padding:10px 8px}.fp-tool{background:#0000;border:1px solid #0000;border-radius:6px;color:var(--fp-grey);cursor:pointer;display:grid;height:44px;place-items:center;position:relative;width:44px}.fp-tool svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;height:21px;width:21px}.fp-tool:hover{background:var(--fp-bg);color:var(--fp-navy)}.fp-tool[aria-pressed=true]{background:var(--fp-navy);color:var(--fp-gold)}.fp-tool kbd{bottom:2px;color:inherit;font:600 9px ui-monospace,Menlo,monospace;opacity:.55;position:absolute;right:3px}.fp-rail hr{border:0;border-top:1px solid var(--fp-line);margin:6px 4px}.fp-stage{background:var(--fp-canvas);grid-area:stage;min-height:0;min-width:0;overflow:hidden;position:relative}.fp-svg{display:block;height:100%;inset:0;position:absolute;touch-action:none;user-select:none;-webkit-user-select:none;width:100%}.fp-svg.c-cross{cursor:crosshair}.fp-svg.c-grab{cursor:grab}.fp-svg.c-grabbing{cursor:grabbing}.fp-hint{background:#fffffff2;border:1px solid var(--fp-line);border-radius:6px;bottom:12px;box-shadow:0 2px 16px #393c5b14;color:var(--fp-navy);font-size:12px;left:12px;line-height:1.45;max-width:min(560px,calc(100% - 140px));padding:8px 11px;pointer-events:none;position:absolute}.fp-hint b{font-weight:600}.fp-zoom{bottom:12px;display:flex;gap:4px;position:absolute;right:12px}.fp-zoom .fp-btn{padding:6px 10px}.fp-banner{align-items:center;background:var(--fp-panel);border-left:1px solid var(--fp-gold-dark);border:1px solid var(--fp-gold-dark);border-left-width:3px;border-radius:6px;box-shadow:0 2px 16px #393c5b14;display:flex;flex-wrap:wrap;gap:10px;left:12px;padding:9px 12px;position:absolute;right:12px;top:12px;z-index:5}.fp-banner span{flex:1 1;min-width:200px}.fp-side{background:var(--fp-panel);border-left:1px solid var(--fp-line);gap:20px;grid-area:side;min-width:0;overflow:auto;padding:16px}.fp-sec,.fp-side{display:flex;flex-direction:column}.fp-sec{gap:10px}.fp-sec h3{color:var(--fp-grey);font-family:Jost,sans-serif;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.fp-sec h2,.fp-sec h3{font-weight:500;margin:0}.fp-sec h2{font-family:Cormorant Garamond,serif;font-size:22px;line-height:1.15}.fp-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.fp-row.fp-nowrap{flex-wrap:nowrap}.fp-field{display:flex;flex-direction:column;gap:5px}.fp-field label,.fp-lbl{color:var(--fp-grey);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase}.fp input[type=number],.fp input[type=text],.fp select,.fp textarea{background:var(--fp-panel);border:1px solid var(--fp-line);border-radius:4px;color:var(--fp-navy);font-size:14px;min-width:0;padding:8px 10px;width:100%}.fp input:focus,.fp textarea:focus{border-color:var(--fp-gold-dark);outline:none}.fp input:disabled,.fp textarea:disabled{background:var(--fp-bg);color:var(--fp-grey)}.fp textarea{line-height:1.45;min-height:90px;resize:vertical}.fp input[type=range]{accent-color:var(--fp-gold-dark);width:100%}.fp input[type=checkbox]{accent-color:var(--fp-gold-dark);height:15px;width:15px}.fp-check{align-items:center;cursor:pointer;display:flex;gap:8px}.fp-seg{border:1px solid var(--fp-line);border-radius:4px;display:grid;grid-auto-columns:1fr;grid-auto-flow:column;overflow:hidden}.fp-seg button{align-items:center;background:var(--fp-panel);border:0;color:var(--fp-grey);cursor:pointer;display:flex;font-size:12px;gap:6px;justify-content:center;padding:7px 6px}.fp-seg button+button{border-left:1px solid var(--fp-line)}.fp-seg button[aria-pressed=true]{background:var(--fp-navy);color:var(--fp-gold)}.fp-seg button:disabled{cursor:default}.fp-sw{border-radius:2px;display:inline-block;height:4px;width:14px}.fp-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.fp-stat{border:1px solid var(--fp-line);border-radius:6px;padding:10px}.fp-stat .fp-lbl{align-items:center;display:flex;gap:6px}.fp-stat b{font-feature-settings:"tnum";display:block;font-family:Cormorant Garamond,serif;font-size:26px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.1;margin-top:2px}.fp-segs{display:flex;flex-direction:column;gap:6px}.fp-segrow{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:28px 1fr auto}.fp-segrow span{color:var(--fp-grey);font:12px ui-monospace,Menlo,monospace}.fp-unit{color:var(--fp-grey);font-size:12px}.fp-notes{display:flex;flex-direction:column;gap:6px}.fp-note-item{grid-gap:9px;background:var(--fp-panel);border:1px solid var(--fp-line);border-radius:6px;color:var(--fp-navy);cursor:pointer;display:grid;font-size:13px;gap:9px;grid-template-columns:24px 1fr;line-height:1.4;padding:8px 9px;text-align:left}.fp-note-item:hover{border-color:var(--fp-gold-dark)}.fp-pin{border-radius:50%;display:grid;font-size:11px;font-weight:600;height:22px;place-items:center;width:22px}.fp-empty,.fp-tip{color:var(--fp-grey);font-size:12px;line-height:1.5;margin:0}.fp-tip b{color:var(--fp-navy);font-weight:500}.fp-sheet-toggle{display:none}.fp-modal{background:#393c5b73;display:grid;inset:0;padding:16px;place-items:center;position:absolute;z-index:60}.fp-modal-card{background:var(--fp-panel);border-radius:8px;display:flex;flex-direction:column;gap:12px;max-height:90%;overflow:auto;padding:16px;width:min(640px,100%)}@media (max-width:900px){.fp{grid-template-areas:"top" "stage" "rail";grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.fp-rail{border-right:0;border-top:1px solid var(--fp-line);flex-direction:row;overflow-x:auto;padding:6px 10px calc(6px + env(safe-area-inset-bottom, 0px))}.fp-rail hr{border-left:1px solid var(--fp-line);border-top:0;margin:4px}.fp-tool{flex:none}.fp-tool kbd{display:none}.fp-side{border-left:0;border-radius:12px 12px 0 0;border-top:1px solid var(--fp-line-2);bottom:0;box-shadow:0 -8px 40px #393c5b2e;left:0;max-height:55%;padding-bottom:calc(16px + env(safe-area-inset-bottom, 0px));position:absolute;right:0;z-index:20}.fp-side:not(.open){display:none}.fp-sheet-toggle{display:inline-flex}.fp-hide-sm,.fp-hint,.fp-status{display:none}}@media (max-width:768px){.fp{left:0;top:60px}.fp-ttl span{display:none}.fp-ttl b{font-size:18px}.fp-top{gap:6px;padding:8px 10px}}
/*# sourceMappingURL=main.f02ecb2e.css.map*/