:root{color:#172523;font-synthesis:none;--ink:#172523;--muted:#667572;--brand:#174a45;--brand-2:#d1eee5;--line:#dce3df;--surface:#fff;--warning:#9a5d05;--danger:#a6362c;background:#f3f5f2;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}h1,h2,strong{font-family:Inter,Segoe UI,Arial,sans-serif}h1{letter-spacing:-.04em;margin:.15rem 0;font-size:clamp(1.75rem,3vw,2.45rem)}h2{letter-spacing:-.025em;margin:0}p{color:var(--muted)}.app-shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;z-index:20;background:#103b37;flex-direction:column;height:100vh;padding:1.4rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.75rem;display:flex}.brand-mark{color:#123e39;background:#d7f1e8;border-radius:13px;place-items:center;width:42px;height:42px;font:800 1.35rem Inter,Segoe UI,sans-serif;display:grid}.brand div{flex-direction:column;display:flex}.brand strong{font-size:1.25rem}.brand small{opacity:.72}.sidebar nav{gap:.35rem;margin-top:2.4rem;display:grid}.sidebar nav a{color:#cde2dc;border-radius:9px;padding:.75rem .9rem;font-weight:600;text-decoration:none}.sidebar nav a:hover,.sidebar nav a.router-link-active{color:#fff;background:#285651}.sidebar-foot{color:#9dc1ba;border-top:1px solid #34605b;justify-content:space-between;margin-top:auto;padding-top:1rem;font-size:.75rem;display:flex}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;justify-content:space-between;align-items:center;height:76px;padding:0 2rem;display:flex;position:sticky;top:0}.environment{color:var(--muted);align-items:center;gap:.55rem;font-size:.88rem;display:flex}.live-dot{background:#2fa174;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #d9f0e7}.user-block{align-items:center;gap:1.25rem;display:flex}.user-block div{text-align:right;flex-direction:column;display:flex}.user-block small{color:var(--muted);text-transform:capitalize}.content{max-width:1500px;margin:auto;padding:2.2rem}.page-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.8rem;display:flex}.page-heading p{margin:.35rem 0 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:#39726b;margin:0;font-size:.72rem;font-weight:700}.button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:9px;padding:.7rem 1rem;font-weight:700}.button:hover{border-color:#97aaa5}.button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.button.ghost{background:0 0}.button.wide{width:100%;padding:.85rem}.button:disabled{opacity:.55;cursor:wait}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.stat-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1.25rem;box-shadow:0 6px 20px #18393409}.stat-card{border-top:3px solid #5f8d85;gap:.4rem;display:grid}.stat-card span,.stat-card small{color:var(--muted)}.stat-card strong{font-size:2rem}.stat-card.tone-warning{border-top-color:#d38b25}.stat-card.tone-danger{border-top-color:#c94a3e}.panel{margin-top:1rem}.panel-title{justify-content:space-between;display:flex}.panel-title p{margin:.35rem 0}.state-bars{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-top:1.2rem;display:grid}.state-bars div{text-transform:capitalize;background:#f2f7f5;border-radius:9px;justify-content:space-between;padding:.9rem;display:flex}.inline-empty{color:var(--muted);padding:2rem 0}.state-panel{border:1px solid var(--line);min-height:260px;color:var(--muted);text-align:center;background:#fff;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex}.state-panel.error strong{color:var(--danger)}.spinner{border:3px solid #d8e5e1;border-top-color:var(--brand);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;border-bottom:1px solid #e7ece9;padding:.95rem 1rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#f8faf9;font-size:.73rem}tbody tr:hover{background:#f8fbfa}.badge{color:#245e57;text-transform:capitalize;background:#e7f2ef;border-radius:99px;padding:.25rem .55rem;font-size:.8rem;display:inline-block}.form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:0;margin-bottom:1rem;display:grid}.form-grid label,.login-card label{gap:.45rem;font-size:.88rem;font-weight:600;display:grid}.form-grid input,.form-grid select,.login-card input{color:var(--ink);background:#fff;border:1px solid #cbd6d2;border-radius:9px;outline:none;padding:.75rem}.form-grid input:focus,.form-grid select:focus,.login-card input:focus{border-color:#34776e;box-shadow:0 0 0 3px #d9eeea}.form-actions{color:var(--muted);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.login-page{background:#f6f7f4;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-intro{color:#fff;background:linear-gradient(145deg,#0e3935,#1b554f);flex-direction:column;justify-content:center;padding:clamp(2rem,7vw,7rem);display:flex;position:relative;overflow:hidden}.login-intro:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-130px;right:-180px;box-shadow:0 0 0 70px #ffffff09}.brand.hero{position:absolute;top:2.5rem}.login-intro h1{max-width:700px;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.05}.login-intro p{color:#bcd6d0;max-width:520px;font-size:1.1rem}.security-note{color:#9fc4bd;margin-top:2rem;font-size:.82rem}.login-panel{place-items:center;padding:2rem;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:18px;gap:1rem;width:min(420px,100%);padding:2.2rem;display:grid;box-shadow:0 24px 70px #18393417}.login-card h2{font-size:2rem}.login-card p{margin:0}.help{text-align:center;color:var(--muted)}.form-error{color:#8f3029;background:#fff0ee;border:1px solid #f3c5c0;border-radius:8px;padding:.7rem;font-size:.85rem}.login-page.single{background:linear-gradient(145deg,#edf4f1,#f7f7f3);grid-template-columns:1fr}.menu-button,.backdrop{display:none}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{width:250px;transition:left .2s;position:fixed;left:-270px}.sidebar.open{left:0}.backdrop{z-index:15;background:#0a1e1c59;border:0;display:block;position:fixed;inset:0}.menu-button{display:block}.topbar{padding:0 1rem}.content{padding:1.2rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.login-page{grid-template-columns:1fr}.login-intro{min-height:35vh;padding:6.5rem 2rem 2.5rem}.login-intro h1{font-size:2.5rem}.login-panel{padding:1.2rem}.form-grid{grid-template-columns:1fr}.user-block div{display:none}}@media (width<=560px){.stats-grid{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:start}.page-heading>.button{width:100%}.content{padding:1rem}.topbar{height:64px}.environment{font-size:.78rem}.login-intro{min-height:290px}.login-card{border-radius:14px;padding:1.4rem}.form-actions{flex-direction:column;align-items:stretch;gap:.8rem}.form-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important}}.employee-shell{background:#f3f5f2;min-height:100vh}.employee-header{color:#fff;background:#103b37;justify-content:space-between;align-items:center;height:76px;padding:0 max(1rem,50vw - 550px);display:flex}.employee-content{max-width:1100px;margin:auto;padding:2rem}.employee-today{grid-template-columns:2fr 1fr 1fr;margin-top:0;display:grid}.employee-today div{gap:.4rem;display:grid}.employee-today span{color:var(--muted)}.employee-today strong{text-transform:capitalize;font-size:1.25rem}.personal-alert{color:#7c510e;background:#fff4dc;border:1px solid #efd7a5;border-radius:10px;margin:1rem 0;padding:1rem}.table-wrap.embedded{border-radius:9px;margin-top:1rem}@media (width<=650px){.employee-content{padding:1rem}.employee-header{height:68px}.employee-today{grid-template-columns:1fr;gap:1rem}.employee-header .user-block div{display:none}}textarea{font:inherit;resize:vertical}.form-grid textarea{color:var(--ink);background:#fff;border:1px solid #cbd6d2;border-radius:9px;outline:none;min-height:86px;padding:.75rem}.form-grid textarea:focus{border-color:#34776e;box-shadow:0 0 0 3px #d9eeea}.span-two{grid-column:1/-1}.operation-message{color:#245e57;background:#e7f2ef;border-radius:9px;margin:0 0 1rem;padding:.8rem 1rem}.operation-message.error{color:#8f3029;background:#fff0ee}.button.danger{color:var(--danger);border-color:#e3b4b0}.cancel-panel{border-left:4px solid var(--danger)}.cancel-panel h2{font-size:1.15rem}.table-actions{align-items:center;gap:.5rem;display:flex}.muted{color:var(--muted)}.lab-warning{color:#6f4b14;background:#fff8e8;border:1px solid #efd7a5;border-radius:11px;flex-direction:column;gap:.4rem;margin-bottom:1rem;padding:1rem 1.1rem;display:flex}.lab-grid{grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:1rem;display:grid}.lab-grid>.panel{margin-top:0}.lab-form{gap:1rem;display:grid}.lab-form label{gap:.45rem;font-size:.88rem;font-weight:600;display:grid}.lab-form select{color:var(--ink);background:#fff;border:1px solid #cbd6d2;border-radius:9px;padding:.75rem}.lab-recipient{background:#f2f7f5;border-radius:9px;justify-content:space-between;padding:.85rem;display:flex}.lab-recipient span{color:var(--muted)}.payload-card pre{color:#d8eee8;background:#102c29;border-radius:10px;max-height:390px;padding:1rem;font-size:.78rem;line-height:1.55;overflow:auto}.badge-error{color:var(--danger);background:#fff0ee}.row-note{color:var(--danger);margin-top:.35rem;display:block}@media (width<=900px){.lab-grid{grid-template-columns:1fr}}.import-toolbar{align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.import-toolbar label{flex:1;gap:.4rem;font-size:.88rem;font-weight:600;display:grid}.import-toolbar select{background:#fff;border:1px solid #cbd6d2;border-radius:9px;padding:.75rem}.import-form{margin-top:1rem}.row-note.neutral{color:var(--muted)}@media (width<=650px){.import-toolbar{flex-direction:column;align-items:stretch}.import-toolbar .button{width:100%}}.template-layout{grid-template-columns:270px minmax(420px,1fr);align-items:start;gap:1rem;display:grid}.template-layout>.panel{margin-top:0}.template-list{gap:.5rem;padding:.7rem;display:grid}.template-choice{text-align:left;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:9px;gap:.25rem;padding:.8rem;display:grid}.template-choice:hover,.template-choice.active{background:#edf6f3;border-color:#cce1db}.template-choice span,.template-choice small{color:var(--muted);font-size:.75rem}.template-editor{gap:1rem;display:grid}.template-editor>label{gap:.45rem;font-size:.88rem;font-weight:600;display:grid}.template-editor input,.template-editor textarea{color:var(--ink);border:1px solid #cbd6d2;border-radius:9px;padding:.75rem}.token-row{flex-wrap:wrap;gap:.45rem;margin-top:.55rem;display:flex}.token,.emoji-token{color:#205b54;background:#edf6f3;border:1px solid #cbded8;border-radius:7px;padding:.4rem .55rem}.emoji-token{background:#fff;font-size:1.2rem}.template-actions{justify-content:flex-end;gap:.7rem;display:flex}.message-preview{border-left:4px solid var(--brand);background:#f3f7f5;border-radius:8px;padding:1rem}.message-preview span{color:var(--muted);text-transform:uppercase;font-size:.75rem}.message-preview p{color:var(--ink);white-space:pre-wrap;margin-bottom:0;line-height:1.5}.variable-reference{grid-column:2}.variable-reference dl{gap:.85rem;display:grid}.variable-reference dt{font-weight:700}.variable-reference dd{color:var(--muted);margin:.25rem 0 0}@media (width<=950px){.template-layout{grid-template-columns:1fr}.template-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.variable-reference{grid-column:1}}@media (width<=560px){.template-actions{flex-direction:column;align-items:stretch}.template-actions .button{width:100%}}.request-form{margin-top:1rem}.request-form select,.request-toolbar select{background:#fff;border:1px solid #cbd6d2;border-radius:9px;padding:.75rem}.request-toolbar{justify-content:flex-end;margin-bottom:1rem;display:flex}.request-toolbar label{gap:.35rem;font-size:.85rem;font-weight:600;display:grid}.resolve-panel{border-left:4px solid var(--brand);gap:1rem;display:grid}.resolve-panel>label{gap:.45rem;font-weight:600;display:grid}.resolve-panel textarea{border:1px solid #cbd6d2;border-radius:9px;min-height:90px;padding:.75rem}.calendar-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.7rem;margin-top:1rem;display:grid}.calendar-list>div{border:1px solid var(--line);background:#f8faf9;border-radius:9px;gap:.25rem;padding:.85rem;display:grid}.calendar-list small,.calendar-dates{color:var(--muted)}.calendar-dates{font-size:.8rem;font-weight:700}.schedule-editor-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.schedule-editor-grid>.panel{margin-top:0}.form-grid select{background:#fff;border:1px solid #cbd6d2;border-radius:9px;padding:.75rem}.check-label{grid-column:1/-1;align-items:center;grid-template-columns:auto 1fr!important;display:flex!important}.check-label input{width:18px;height:18px}@media (width<=950px){.schedule-editor-grid{grid-template-columns:1fr}}.automation-form{margin-top:1rem}.recipient-fieldset{border:1px solid var(--line);border-radius:10px;gap:.7rem;padding:1rem;display:grid}.recipient-fieldset legend{padding:0 .35rem;font-weight:700}.recipient-row{grid-template-columns:1fr 1fr auto;gap:.65rem;display:grid}.recipient-row input{min-width:0}.recipient-check{align-items:center;grid-template-columns:auto 1fr!important;display:flex!important}.recipient-check input{width:18px;height:18px}.automation-reference{grid-column:auto}.automation-reference dl{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}@media (width<=700px){.recipient-row{grid-template-columns:1fr}.recipient-row .button{justify-self:start}}.messaging-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.messaging-grid>.panel{margin-top:0}.manual-preview{margin:1rem 0}.preview-actions{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.table-input{border:1px solid #cbd6d2;border-radius:7px;min-width:180px;padding:.55rem}.account-summary{grid-template-columns:auto 1fr;gap:.7rem 1.2rem;margin-top:1rem;display:grid}.account-summary span{color:var(--muted)}.badge-warning{color:#7a500a;background:#fff3d9}@media (width<=950px){.messaging-grid{grid-template-columns:1fr}}@media (width<=600px){.preview-actions{flex-direction:column;align-items:stretch}.preview-actions .button{width:100%}}.employee-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.compact-state{text-transform:capitalize;font-size:1.35rem!important}.vacation-balance{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.vacation-balance div{gap:.3rem;display:grid}.vacation-balance span,.field-summary span,.field-summary small{color:var(--muted)}.vacation-balance strong{font-size:1.5rem}.field-summary{border:1px solid var(--line);background:#f8faf9;border-radius:9px;gap:.35rem;padding:.75rem;display:grid}.field-summary small{color:var(--warning)}.gantt-heading{align-items:center}.month-nav{align-items:center;gap:.6rem;display:flex}.gantt-filters{gap:1rem;margin:1rem 0;display:flex}.gantt-filters label{gap:.35rem;font-size:.83rem;font-weight:600;display:grid}.gantt-filters select{background:#fff;border:1px solid #cbd6d2;border-radius:8px;padding:.6rem}.gantt-wrap{border:1px solid var(--line);border-radius:10px;grid-template-columns:220px minmax(850px,1fr);display:grid;overflow:auto}.gantt-label{border-bottom:1px solid var(--line);z-index:2;background:#fff;gap:.2rem;min-height:54px;padding:.65rem;display:grid;position:sticky;left:0}.gantt-label small{color:var(--muted)}.gantt-corner{text-transform:uppercase;color:var(--muted);background:#f8faf9;font-size:.75rem}.gantt-days,.gantt-track{border-bottom:1px solid var(--line);background:repeating-linear-gradient(90deg,#fff 0 calc(3.22581% - 1px),#edf1ef calc(3.22581% - 1px) 3.22581%);min-height:54px;display:grid}.gantt-days{background:#f8faf9;min-height:auto}.gantt-days span{text-align:center;color:var(--muted);padding:.65rem 0;font-size:.72rem}.gantt-bar{color:#fff;white-space:nowrap;background:#2e756b;border-radius:6px;align-self:center;margin:0 2px;padding:.42rem .55rem;font-size:.75rem;font-weight:700;overflow:hidden}.policy-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem;display:grid}.policy-branch{border:1px solid var(--line);border-radius:10px;gap:.75rem;padding:1rem;display:grid}.policy-branch label{justify-content:space-between;align-items:center;gap:1rem;display:flex}.policy-branch input{border:1px solid #cbd6d2;border-radius:8px;width:80px;padding:.55rem}.edit-employee-form{margin-top:1rem}.admin-balance{background:#f8faf9;margin:1rem 0}@media (width<=850px){.employee-summary-grid,.vacation-balance{grid-template-columns:repeat(2,1fr)}.gantt-heading{flex-direction:column;align-items:flex-start;gap:1rem}.gantt-filters{flex-direction:column}}@media (width<=560px){.employee-summary-grid,.vacation-balance{grid-template-columns:1fr}.gantt-filters select{width:100%}}.info-banner{color:#245e57;background:#edf6f3;border:1px solid #cce1db;border-radius:11px;flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:1rem 1.1rem;display:flex}.info-banner span{color:#526c67}.panel-title>label,.planning-toolbar label{gap:.35rem;font-size:.83rem;font-weight:600;display:grid}.panel-title select,.planning-toolbar select{background:#fff;border:1px solid #cbd6d2;border-radius:8px;padding:.6rem}.status-rejected,.status-revoked,.status-dismissed{color:#8d342d;background:#f8e8e5}.status-pending,.status-open,.status-under_review{color:#7a500a;background:#fff3d9}.status-approved,.status-resolved{color:#21645b;background:#e2f2ed}.wide-cell{min-width:280px}.inline-empty.compact{padding:1rem}.planning-toolbar{align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.calendar-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin-left:auto;font-size:.82rem;display:flex}.calendar-legend button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.38rem;padding:.38rem .52rem;transition:opacity .15s,background .15s,border-color .15s;display:inline-flex}.calendar-legend button:hover{background:#f5f9f7;border-color:#cad9d5}.calendar-legend button.hidden{opacity:.38;text-decoration:line-through}.calendar-legend button.hidden .legend-dot{filter:grayscale()}.legend-dot{background:#71827e;border-radius:50%;width:9px;height:9px}.legend-dot.vacation{background:#2e756b}.legend-dot.errand{background:#b17920}.legend-dot.special{background:#6c61a7}.legend-dot.incident{background:#b94339}.dual-calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.dual-calendar>.panel{margin-top:0}.calendar-card h2{text-transform:capitalize;margin-bottom:1rem}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;padding:.45rem;font-size:.72rem;font-weight:700}.calendar-day{border-top:1px solid var(--line);border-left:1px solid var(--line);min-width:0;min-height:112px;padding:.45rem}.calendar-day:nth-child(7n){border-right:1px solid var(--line)}.calendar-day.muted{color:#a7afad;background:#f7f8f7}.day-events{gap:.25rem;margin-top:.35rem;display:grid}.calendar-event{white-space:nowrap;text-overflow:ellipsis;color:#425c57;background:#e9efed;border-radius:5px;padding:.25rem .35rem;font-size:.66rem;display:block;overflow:hidden}.calendar-event.vacation{color:#205e55;background:#dcefe9}.calendar-event.errand{color:#79510c;background:#fff0d3}.calendar-event.special_permission{color:#51478b;background:#ece8fa}.calendar-event.incident{color:#8d342d;background:#fae8e5}.day-events small{color:var(--muted);font-size:.65rem}.stacked-gantt{margin-top:1.5rem}.stacked-gantt h3{text-transform:capitalize;margin:.2rem 0 .65rem}.gantt-bar.status-pending{color:#fff;background:#d6942f}.incident-help-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.incident-help-grid article{border:1px solid var(--line);background:#fff;border-radius:11px;padding:1rem}.incident-help-grid p{margin:.4rem 0 0;font-size:.84rem;line-height:1.45}.incident-guidance{background:#f3f7f5;border-radius:9px;padding:1rem}.incident-guidance p{margin:.35rem 0}.incident-guidance small{color:var(--warning)}@media (width<=1050px){.dual-calendar{grid-template-columns:1fr}.incident-help-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.planning-toolbar{flex-direction:column;align-items:stretch}.calendar-legend{margin-left:0}.calendar-day{min-height:82px;padding:.25rem}.calendar-event{border-radius:50%;width:8px;height:8px;padding:0;font-size:0}.incident-help-grid{grid-template-columns:1fr}.panel-title{flex-direction:column;align-items:flex-start;gap:1rem}.panel-title>label{width:100%}}.classification-box{background:#edf6f3;border:1px solid #cce1db;border-radius:10px;gap:.7rem;padding:1rem;display:grid}.classification-box p{margin:0}.classification-box label{gap:.4rem;font-weight:600;display:grid}.classification-box select{background:#fff;border:1px solid #b8ccc6;border-radius:8px;padding:.7rem}.selected-incident-row{background:#edf6f3!important}.inline-resolve-row:hover{background:0 0}.inline-resolve-row>td{background:#f8fbfa;padding:0}.inline-resolve-card{border:1px solid #bcd8d1;border-left:4px solid var(--brand);background:#fff;border-radius:10px;gap:1rem;margin:.75rem;padding:1.2rem;display:grid;box-shadow:0 8px 22px #1839340f}.inline-resolve-card>label{gap:.45rem;font-weight:600;display:grid}.inline-resolve-card textarea{border:1px solid #cbd6d2;border-radius:9px;min-height:90px;padding:.75rem}.classification-box .button{justify-self:start;text-decoration:none}.day-picker{border:1px solid var(--line);border-radius:10px;margin:0;padding:1rem}.day-picker legend{padding:0 .35rem;font-weight:700}.day-checks{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;display:grid}.day-checks label{align-items:center;gap:.4rem;font-size:.86rem;display:flex}.day-checks input{width:18px;height:18px}.day-shortcuts{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.day-shortcuts .button{padding:.45rem .7rem;font-size:.8rem}@media (width<=700px){.day-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-resolve-card{margin:.35rem;padding:.9rem}}.weekly-schedule-form{gap:1.25rem;display:grid}.weekly-block-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.schedule-block{border:1px solid var(--line);background:#f9fbfa;border-radius:12px;margin:0;padding:1rem}.schedule-block legend{padding:0 .45rem;font-weight:700}.schedule-block .check-label{grid-column:auto!important}.form-disabled{opacity:.5}.schedule-behavior{border-left:4px solid var(--brand);background:#edf6f3;border-radius:8px;gap:.35rem;padding:.9rem 1rem;display:grid}.schedule-behavior span{color:var(--muted);line-height:1.5}@media (width<=850px){.weekly-block-grid{grid-template-columns:1fr}}.edge-agent-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1rem;display:grid}.edge-agent-grid>.panel{margin-top:0}.edge-summary,.edge-config dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0 0;display:grid}.edge-summary div,.edge-config dl div{background:#f5f8f7;border-radius:8px;gap:.2rem;padding:.75rem;display:grid}.edge-summary dt,.edge-config dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.edge-summary dd,.edge-config dd{overflow-wrap:anywhere;margin:0;font-weight:700}.edge-config{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.edge-config h3{margin:1rem 0 0;font-size:.95rem}@media (width<=600px){.edge-agent-grid,.edge-summary,.edge-config dl{grid-template-columns:1fr}}.calendar-navigation{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.calendar-navigation p{margin:.35rem 0 0}.month-nav select{color:var(--ink);background:#fff;border:1px solid #cbd6d2;border-radius:8px;padding:.65rem}button.calendar-day{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:#fff;border-bottom:0;border-right:0;border-radius:0;display:block}button.calendar-day:hover:not(:disabled){z-index:1;background:#edf6f3;position:relative;box-shadow:inset 0 0 0 2px #6ea399}button.calendar-day:disabled{cursor:default;opacity:1}.day-detail{text-transform:none}.day-detail h2{text-transform:capitalize}.day-detail>section>h3,.day-related-grid h3{margin:1.3rem 0 .6rem}.day-attendance-list{gap:.8rem;display:grid}.day-employee-card{border:1px solid var(--line);background:#fbfcfb;border-radius:11px;padding:1rem}.day-employee-card>div:first-child{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.day-employee-card dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin:1rem 0;display:grid}.day-employee-card dl div{background:#f2f7f5;border-radius:8px;gap:.25rem;padding:.65rem;display:grid}.day-employee-card dt{color:var(--muted);text-transform:uppercase;font-size:.72rem}.day-employee-card dd{margin:0;font-weight:700}.marking-timeline{flex-wrap:wrap;gap:.55rem;display:flex}.marking-timeline>span{border-left:3px solid var(--brand);background:#edf6f3;border-radius:6px;gap:.15rem;min-width:130px;padding:.6rem;display:grid}.marking-timeline small{color:var(--muted)}.day-related-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.manual-request-form{border-left:4px solid var(--brand)}.manual-request-form .form-grid{margin-top:1rem}@media (width<=850px){.calendar-navigation{flex-direction:column;align-items:flex-start}.day-related-grid{grid-template-columns:1fr}.day-employee-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.month-nav{flex-wrap:wrap}}@media (width<=560px){.day-employee-card dl{grid-template-columns:1fr}.month-nav select{flex:1}.calendar-day{min-height:76px}}.request-date-picker{gap:.45rem;font-size:.88rem;font-weight:600;display:grid;position:relative}.date-picker-trigger{width:100%;color:var(--ink);text-align:left;background:#fff;border:1px solid #cbd6d2;border-radius:9px;justify-content:space-between;align-items:center;padding:.75rem;display:flex}.date-picker-trigger:hover,.date-picker-trigger[aria-expanded=true]{border-color:#34776e;box-shadow:0 0 0 3px #d9eeea}.date-picker-popover{z-index:30;background:#fff;border:1px solid #b9cec8;border-radius:12px;width:min(390px,100vw - 3rem);padding:1rem;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 18px 45px #1437322e}.date-picker-heading{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;display:grid}.date-picker-heading>strong{text-align:center;text-transform:capitalize}.date-picker-heading .button{padding:.4rem .65rem}.date-picker-context{color:#346a63;text-align:center;margin:.6rem 0;font-size:.78rem}.date-picker-error{color:var(--danger);background:#fff0ee;border-radius:7px;margin:.6rem 0;padding:.55rem;font-size:.78rem}.date-picker-loading{text-align:center;color:var(--muted);padding:2rem}.date-picker-weekdays,.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-picker-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;padding:.45rem 0;font-size:.68rem}.date-picker-grid button{min-height:42px;color:var(--ink);background:#f7faf9;border:2px solid #fff;border-radius:8px;font-size:.78rem;position:relative}.date-picker-grid button small{color:inherit;font-size:.58rem;display:block}.date-picker-grid button:hover:not(:disabled){background:#edf6f3;border-color:#6ea399}.date-picker-grid button.muted{visibility:hidden}.date-picker-grid button.invalid-start{opacity:.48;cursor:not-allowed}.date-picker-grid button.occupied{color:#75500d;background:#fff3d9;border-color:#e7b963}.date-picker-grid button.full,.date-picker-grid button.blocked-range{color:#8d342d;cursor:not-allowed;background:#fae8e5;border-color:#e5aaa4}.date-picker-grid button.full span,.date-picker-grid button.blocked-range span{text-decoration:line-through;text-decoration-thickness:2px}.date-picker-grid button.selected{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.date-picker-legend{color:var(--muted);flex-wrap:wrap;gap:.7rem;margin-top:.75rem;font-size:.68rem;display:flex}.date-picker-legend span{align-items:center;gap:.3rem;display:flex}.date-picker-legend i{background:#f7faf9;border:1px solid #cbd6d2;border-radius:3px;width:10px;height:10px}.date-picker-legend i.occupied{background:#fff3d9;border-color:#e7b963}.date-picker-legend i.full{background:linear-gradient(135deg,#fae8e5 42%,#8d342d 44% 55%,#fae8e5 57%);border-color:#e5aaa4}.date-picker-help{color:var(--muted);margin-top:.6rem;font-weight:400;line-height:1.4;display:block}@media (width<=560px){.date-picker-popover{width:calc(100vw - 2rem);max-width:390px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}.policy-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.policy-capacity-header,.policy-capacity-row{grid-template-columns:minmax(120px,1fr) 90px 90px;align-items:center;gap:.65rem;display:grid}.policy-capacity-header{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:700}.policy-capacity-header span:not(:first-child){text-align:center}.policy-capacity-row{border-top:1px solid var(--line);padding-top:.55rem}.policy-capacity-row label{display:block}.policy-capacity-row input{text-align:center;width:100%}.field-help{color:var(--muted);margin-top:1rem;font-size:.85rem}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (width<=480px){.policy-grid{grid-template-columns:1fr}.policy-capacity-header,.policy-capacity-row{grid-template-columns:minmax(105px,1fr) 76px 76px;gap:.4rem}}:root{--brand:#174a45;--brand-dark:#103b37;--brand-2:#d1eee5;--brand-soft:#edf6f3}.app-shell{grid-template-columns:284px minmax(0,1fr);transition:grid-template-columns .24s}.app-shell.sidebar-collapsed{grid-template-columns:84px minmax(0,1fr)}.sidebar{isolation:isolate;background:#103b37;width:284px;height:100dvh;min-height:0;padding:0;transition:width .24s;overflow:hidden;box-shadow:10px 0 35px #103b3724}.sidebar.collapsed{width:84px}.sidebar-header{border-bottom:1px solid #ffffff38;flex:none;justify-content:space-between;align-items:center;gap:.6rem;min-height:82px;padding:1rem 1rem 1rem 1.15rem;display:flex}.sidebar .brand{min-width:0}.sidebar .brand-mark{color:#123e39;background:#d7f1e8;flex:0 0 43px;width:43px;height:43px;box-shadow:0 8px 20px #072a2633}.brand-copy{white-space:nowrap;transition:opacity .16s,width .2s;overflow:hidden}.brand-copy strong{font-size:1.15rem}.brand-copy small{color:#bcd6d0;opacity:1}.sidebar-pin,.icon-button{color:#fff;background:#ffffff1f;border:1px solid #ffffff57;border-radius:11px;place-items:center;width:38px;height:38px;padding:0;display:grid}.sidebar-pin:hover,.icon-button:hover{color:#123e39;background:#d7f1e8}.nav-icon{flex:0 0 20px;width:20px;height:20px;display:block}.sidebar-pin .nav-icon{width:17px;height:17px}.sidebar-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffffb3 #ffffff1f;flex:auto;min-height:0;padding:.9rem .7rem 1.2rem;overflow:hidden auto}.sidebar-scroll::-webkit-scrollbar{width:7px}.sidebar-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:9px}.sidebar-scroll::-webkit-scrollbar-thumb{background:#ffffffad;border-radius:9px}.sidebar nav{margin:0;display:block}.nav-group+.nav-group{border-top:1px solid #ffffff24;margin-top:.55rem;padding-top:.55rem}.nav-group-toggle{color:#ffffffc2;letter-spacing:.105em;text-transform:uppercase;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:.55rem .75rem;font-size:.67rem;font-weight:800;display:flex}.nav-group-toggle .nav-icon{width:15px;height:15px;transition:transform .18s}.nav-group-toggle[aria-expanded=true] .nav-icon{transform:rotate(90deg)}.nav-group-links{gap:.22rem;display:grid}.sidebar nav .nav-group-links a{color:#d6e9e4;white-space:nowrap;border:1px solid #0000;border-radius:11px;align-items:center;gap:.8rem;min-height:43px;padding:.66rem .78rem;font-weight:650;transition:background .16s,color .16s,transform .16s;display:flex}.sidebar nav .nav-group-links a:hover{color:#fff;background:#ffffff21;transform:translate(2px)}.sidebar nav .nav-group-links a.router-link-active{color:#123e39;background:#d7f1e8;border-color:#ffffffa6;box-shadow:0 7px 18px #05272333}.sidebar-foot{color:#e4f8ff;border-top:1px solid #ffffff38;flex:none;margin:0;padding:1rem 1.15rem}.nav-group-links.group-closed,.sidebar.collapsed .brand,.sidebar.collapsed .nav-group-toggle,.sidebar.collapsed .nav-group-links a span,.sidebar.collapsed .sidebar-foot-label{display:none}.sidebar.collapsed .sidebar-pin,.sidebar.collapsed .nav-group-links.group-closed{display:grid}.sidebar.collapsed .sidebar-header{justify-content:center;padding-inline:.7rem}.sidebar.collapsed .sidebar-scroll{padding-inline:.65rem}.sidebar.collapsed .nav-group+.nav-group{margin-top:.5rem;padding-top:.5rem}.sidebar.collapsed .nav-group-links a{justify-content:center;padding:.7rem}.sidebar.collapsed .sidebar-foot{justify-content:center;padding-inline:.4rem}.topbar{color:var(--ink);border-color:var(--line);background:#fffffff0;box-shadow:0 7px 24px #1839340e}.topbar .environment,.topbar .user-block small{color:var(--muted)}.topbar .live-dot{background:#2fa174;box-shadow:0 0 0 4px #d9f0e7}.employee-header{color:#fff;background:#103b37;border-color:#ffffff2e}.employee-header .user-block small{color:#bcd6d0}.topbar .icon-button{color:#fff;background:#174a45;border-color:#174a45}.button{color:var(--ink);border-color:var(--line);box-shadow:none;background:#fff;transition:background .16s,border-color .16s,color .16s}.button:hover{color:var(--ink);box-shadow:none;background:#f6faf8;border-color:#97aaa5;transform:none}.button.primary{color:#fff;background:#174a45;border-color:#174a45}.button.primary:hover{color:#fff;background:#103b37;border-color:#103b37}.button.ghost{color:var(--ink);border-color:var(--line);background:0 0}.button.ghost:hover{color:#174a45;background:#edf6f3;border-color:#b8d5ce}.button.danger{color:var(--danger);background:#fff;border-color:#e3b4b0}.button.danger:hover{color:#842b24;background:#fff0ee;border-color:#d99a94}.button:disabled{box-shadow:none;transform:none}.eyebrow{color:#39726b}.spinner{border-top-color:#174a45}@media (width<=900px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar,.sidebar.collapsed{width:284px;height:100dvh;transition:left .22s;position:fixed;left:-304px}.sidebar.open,.sidebar.collapsed.open{left:0}.sidebar.collapsed .brand,.sidebar.collapsed .brand-copy{display:flex}.sidebar.collapsed .sidebar-pin{display:none}.sidebar.collapsed .nav-group-toggle{display:flex}.sidebar.collapsed .nav-group-links.group-closed{display:none}.sidebar.collapsed .nav-group-links a span,.sidebar.collapsed .sidebar-foot-label{display:inline}.sidebar.collapsed .sidebar-header{justify-content:space-between;padding:1rem 1rem 1rem 1.15rem}.sidebar.collapsed .sidebar-scroll{padding:.9rem .7rem 1.2rem}.sidebar.collapsed .nav-group-links a{justify-content:flex-start;padding:.66rem .78rem}.sidebar.collapsed .sidebar-foot{justify-content:space-between;padding:1rem 1.15rem}.menu-button{display:grid}.backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0423307a}}.legend-dot.sick{background:#477aa4}.calendar-event.sick_leave{color:#365f87;background:#e7eff9}.checkbox-card{cursor:pointer;background:#f5faf8;border:1px solid #cbdad5;border-radius:12px;align-items:flex-start;gap:.8rem;padding:1rem;display:flex!important}.checkbox-card input{width:18px;height:18px;accent-color:var(--brand);margin-top:.1rem}.checkbox-card span{gap:.25rem;display:grid}.checkbox-card small{color:var(--muted);font-weight:400}.request-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#051b1894;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.request-modal{border-left:0;width:min(760px,100%);max-height:calc(100vh - 2.5rem);margin:0;overflow:auto;box-shadow:0 24px 80px #041f1b4d}@media (width<=620px){.request-modal-backdrop{place-items:end center;padding:.5rem}.request-modal{border-radius:18px 18px 0 0;max-height:92vh}.request-modal .form-grid{grid-template-columns:1fr}.request-modal .span-two{grid-column:auto}}
