:root{color:#17201b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink:#17201b;--ink-soft:#566159;--surface:#f8f9f5;--surface-muted:#eff2ed;--line:#d8ddd6;--line-dark:#b9c1b9;--forest:#1d3829;--forest-deep:#12261b;--acid:#c7f36b;--white:#fff;--danger:#a13c32;background:#eff2ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--surface-muted);min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,summary{cursor:pointer}a{color:inherit;text-decoration:none}::selection{color:var(--forest-deep);background:var(--acid)}:focus-visible{outline-offset:3px;outline:3px solid #c7f36bb8}.brand-mark{width:38px;height:38px;color:var(--forest-deep);background:var(--acid);border-radius:10px;flex:0 0 38px;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:700;display:grid}.eyebrow{color:#657169;letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:750}.eyebrow-light{color:#a7b7aa}.button{border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 18px;font-size:.9rem;font-weight:700;transition:transform .15s,background-color .15s,opacity .15s;display:inline-flex}.button:not(:disabled):active{transform:translateY(1px)}.button:disabled{cursor:wait;opacity:.68}.button-primary{color:#f8fbf7;background:var(--forest)}.button-primary:not(:disabled):hover{background:var(--forest-deep)}.login-page{background:var(--surface);grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100svh;display:grid}.login-brand{color:#eef5ef;background:linear-gradient(#ffffff0b 1px, transparent 1px), linear-gradient(90deg, #ffffff0b 1px, transparent 1px), var(--forest-deep);background-size:52px 52px;flex-direction:column;justify-content:space-between;min-height:100svh;padding:clamp(28px,4vw,58px);display:flex;position:relative;overflow:hidden}.login-brand:after{content:"";border:1px solid #c7f36b42;border-radius:50%;width:42vw;min-width:420px;height:42vw;min-height:420px;position:absolute;bottom:-20vw;right:-12vw;box-shadow:0 0 0 70px #c7f36b09,0 0 0 140px #c7f36b06}.login-brand-topline{z-index:1;letter-spacing:-.02em;align-items:center;gap:13px;font-size:.98rem;font-weight:750;display:flex;position:relative}.login-brand-copy{z-index:1;max-width:720px;padding:80px 0;position:relative}.login-brand-copy h1{letter-spacing:-.07em;max-width:760px;margin:18px 0 28px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.8rem,7vw,7.8rem);font-weight:400;line-height:.88}.login-brand-copy>p:last-child{color:#aebbb1;max-width:430px;margin:0;font-size:1.05rem;line-height:1.65}.login-brand-foot{z-index:1;color:#87988c;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:700;position:relative}.login-panel{place-items:center;min-height:100svh;padding:48px clamp(28px,7vw,112px);display:grid}.login-form-wrap{width:min(100%,410px);animation:.5s cubic-bezier(.22,1,.36,1) both rise-in}.login-icon{border:1px solid var(--line);width:42px;height:42px;color:var(--forest);border-radius:50%;place-items:center;margin-bottom:24px;display:grid}.login-form-wrap h2{letter-spacing:-.055em;margin:10px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.65rem,5vw,4.25rem);font-weight:400}.login-lead{max-width:360px;color:var(--ink-soft);margin:0 0 38px;line-height:1.6}.login-form{gap:20px;display:grid}.login-form label{color:#39443d;gap:8px;font-size:.78rem;font-weight:700;display:grid}.login-form input{border:1px solid var(--line-dark);width:100%;height:50px;color:var(--ink);background:var(--white);border-radius:9px;outline:0;padding:0 14px;font-size:.95rem;font-weight:500;transition:border-color .15s,box-shadow .15s}.login-form input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382917}.login-pin-input{display:block;position:relative}.login-pin-input>svg{z-index:1;color:#728078;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.login-pin-input input{letter-spacing:.45em;height:64px;padding-left:50px;font-size:1.2rem;font-weight:800}.password-field{display:block;position:relative}.password-field input{padding-right:48px}.password-toggle{color:#6f7b73;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover{color:var(--forest);background:var(--surface-muted)}.login-submit{width:100%;margin-top:6px}.form-error{color:var(--danger);margin:-4px 0 0;font-size:.82rem;line-height:1.45}.login-note{color:#7b857f;margin:24px 0 0;font-size:.78rem;line-height:1.5}.bootstrap-toggle{color:#66736b;text-underline-offset:3px;background:0 0;border:0;margin:18px auto 0;font-size:.72rem;text-decoration:underline;display:block}.bootstrap-form{border-top:1px solid var(--line);margin-top:18px;padding-top:20px}.bootstrap-form>p{color:var(--ink-soft);margin:0;font-size:.75rem;line-height:1.55}.app-frame{background:var(--surface-muted);grid-template-columns:248px minmax(0,1fr);min-height:100svh;display:grid}.sidebar{z-index:30;color:#dae4dc;background:var(--forest-deep);border-right:1px solid #ffffff14;flex-direction:column;height:100svh;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:84px;padding:0 22px;display:flex}.sidebar-brand>span:nth-child(2),.sidebar-footer>span:last-child{display:grid}.sidebar-brand strong{color:#f4f7f4;font-size:.9rem}.sidebar-brand small{color:#839589;letter-spacing:.16em;margin-top:3px;font-size:.68rem;font-weight:700}.sidebar-close{color:#dbe5dd;background:0 0;border:0;margin-left:auto;display:none}.sidebar-nav{flex-direction:column;flex:1;padding:28px 14px;display:flex}.nav-section-label{color:#708277;letter-spacing:.14em;text-transform:uppercase;padding:0 10px 10px;font-size:.62rem;font-weight:750}.nav-section-spaced{margin-top:28px}.nav-link{color:#a8b7ad;border-radius:8px;align-items:center;gap:12px;min-height:42px;padding:0 10px;font-size:.86rem;font-weight:620;transition:color .15s,background-color .15s;display:flex}.nav-link:hover,.nav-link.active{color:#f4f7f4;background:#ffffff12}.nav-link.active:before{background:var(--acid);content:"";border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 4px #c7f36b14}.nav-link.active svg{display:none}.nav-link-disabled{cursor:default;opacity:.48}.nav-link-disabled small{color:#77877c;text-transform:uppercase;margin-left:auto;font-size:.62rem}.sidebar-footer{border-top:1px solid #ffffff14;align-items:center;gap:10px;min-height:74px;margin:0 14px;padding:0 10px;display:flex}.sidebar-footer strong{color:#c8d4cb;font-size:.72rem}.sidebar-footer small{color:#73847a;margin-top:2px;font-size:.66rem}.environment-dot{background:var(--acid);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #c7f36b14}.app-main{flex-direction:column;min-width:0;min-height:100svh;display:flex}.app-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f9f5d1;justify-content:space-between;align-items:center;min-height:84px;padding:0 clamp(24px,4vw,64px);display:flex}.app-topbar>div:first-child{gap:4px;display:grid}.app-topbar>div:first-child strong{font-size:.9rem}.topbar-context{color:#748078;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.account-menu{position:relative}.account-menu summary{align-items:center;gap:10px;list-style:none;display:flex}.account-menu summary::-webkit-details-marker{display:none}.account-avatar{color:#f2f7f3;background:var(--forest);border-radius:50%;place-items:center;width:34px;height:34px;font-size:.78rem;font-weight:750;display:grid}.account-copy{max-width:220px;line-height:1.25;display:grid}.account-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.account-copy small{color:#7c867f;font-size:.66rem}.account-popover{z-index:20;border:1px solid var(--line);background:var(--white);border-radius:10px;width:178px;padding:7px;position:absolute;top:calc(100% + 14px);right:0;box-shadow:0 18px 50px #1520191f}.account-popover button,.account-popover a{color:#354038;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;width:100%;height:38px;padding:0 10px;font-size:.8rem;text-decoration:none;display:flex}.account-popover button:hover,.account-popover a:hover{background:var(--surface-muted)}.mobile-nav-trigger,.nav-backdrop{display:none}.workspace{flex:1;width:min(1120px,100% - 48px);margin:0 auto;padding:clamp(56px,8vw,112px) 0 72px}.workspace-hero{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:end;gap:clamp(48px,8vw,120px);padding-bottom:clamp(62px,9vw,112px);display:grid}.workspace-hero h1{letter-spacing:-.07em;margin:16px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,7.4vw,7.5rem);font-weight:400;line-height:.88}.workspace-intro{color:var(--ink-soft);margin:0 0 4px;font-size:clamp(.95rem,1.5vw,1.08rem);line-height:1.72}.foundation-list{border-top:1px solid var(--line-dark)}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:62px;display:flex}.section-heading h2{letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.76rem}.section-heading span{color:#778179;font-size:.72rem}.foundation-row{border-bottom:1px solid var(--line);min-height:92px;animation:.42s cubic-bezier(.22,1,.36,1) both row-in;animation-delay:var(--delay);grid-template-columns:52px 42px 1fr auto;align-items:center;gap:16px;transition:padding .18s,background-color .18s;display:grid}.foundation-row:hover{background:#ffffff75;padding:0 14px}.foundation-index{color:#98a29a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem}.foundation-icon{border:1px solid var(--line);width:36px;height:36px;color:var(--forest);background:#ffffff7a;border-radius:9px;place-items:center;display:grid}.foundation-copy{gap:5px;display:grid}.foundation-copy strong{font-size:.93rem}.foundation-copy small{color:#748078;font-size:.75rem}.foundation-status{color:#426043;align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:inline-flex}.foundation-status svg{color:var(--forest-deep);background:var(--acid);border-radius:50%;padding:2px}.next-step{color:#edf4ee;background:var(--forest-deep);grid-template-columns:minmax(260px,1.1fr) minmax(240px,.7fr) auto;align-items:end;gap:clamp(32px,6vw,88px);margin-top:clamp(72px,10vw,132px);padding:clamp(28px,4vw,48px);display:grid}.next-step h2{letter-spacing:-.055em;max-width:540px;margin:14px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,4rem);font-weight:400;line-height:1}.next-step p:not(.eyebrow){color:#9eaea2;margin:0;font-size:.86rem;line-height:1.65}.next-step .eyebrow{color:var(--acid)}.next-step-action{color:var(--acid);white-space:nowrap;align-items:center;gap:10px;font-size:.78rem;font-weight:750;display:inline-flex}.app-footer{border-top:1px solid var(--line);color:#7e8881;justify-content:space-between;align-items:center;min-height:58px;padding:0 clamp(24px,4vw,64px);font-size:.68rem;display:flex}.app-footer span:last-child{align-items:center;gap:6px;display:inline-flex}.pin-lock-page{background:linear-gradient(#ffffff0a 1px, transparent 1px), linear-gradient(90deg, #ffffff0a 1px, transparent 1px), var(--forest-deep);background-size:52px 52px;place-items:center;min-height:100svh;padding:32px;display:grid}.pin-lock-card{background:var(--surface);border:1px solid #ffffff1f;border-radius:18px;width:min(100%,390px);padding:28px clamp(24px,5vw,42px) 34px;animation:.42s cubic-bezier(.22,1,.36,1) both rise-in;box-shadow:0 28px 90px #040c0752}.pin-lock-brand{color:var(--forest-deep);align-items:center;gap:11px;margin-bottom:42px;font-size:.88rem;font-weight:750;display:flex}.pin-lock-brand .brand-mark{border-radius:9px;flex-basis:34px;width:34px;height:34px;font-size:1rem}.pin-lock-icon,.pin-dialog-icon{border:1px solid var(--line-dark);width:44px;height:44px;color:var(--forest);border-radius:50%;place-items:center;margin-bottom:20px;display:grid}.pin-lock-card h1,.pin-dialog h2{letter-spacing:-.06em;margin:10px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,7vw,4rem);font-weight:400;line-height:1}.pin-lock-user{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin:0 0 26px;font-size:.82rem;overflow:hidden}.pin-code-input{border:1px solid var(--line-dark);width:100%;height:62px;color:var(--forest-deep);background:var(--white);letter-spacing:.55em;text-align:center;border-radius:11px;outline:0;padding:0 15px 0 25px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.75rem;font-weight:700}.pin-code-input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382917}.pin-keypad{grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0 18px;display:grid}.pin-keypad button{border:1px solid var(--line);min-height:50px;color:var(--ink);background:#ffffff9e;border-radius:9px;place-items:center;font-size:1.02rem;font-weight:700;transition:border-color .14s,background-color .14s,transform .14s;display:grid}.pin-keypad button:not(:disabled):hover{background:var(--white);border-color:#acb8af}.pin-keypad button:not(:disabled):active{transform:scale(.97)}.pin-keypad button:disabled{opacity:.35}.pin-error{color:var(--danger);text-align:center;margin:0 0 14px;font-size:.78rem;line-height:1.45}.pin-unlock-button{width:100%}.pin-switch-user{color:#748078;text-underline-offset:3px;background:0 0;border:0;margin:20px auto 0;font-size:.75rem;text-decoration:underline;display:block}.pin-dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08110b94;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.pin-dialog{border:1px solid var(--line);background:var(--surface);border-radius:16px;width:min(100%,460px);max-height:calc(100svh - 48px);padding:clamp(28px,5vw,44px);animation:.28s cubic-bezier(.22,1,.36,1) both rise-in;position:relative;overflow-y:auto;box-shadow:0 28px 90px #040c074d}.pin-dialog-close{color:#67736b;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:18px;right:18px}.pin-dialog-close:hover{color:var(--forest);background:var(--surface-muted)}.pin-dialog h2{font-size:clamp(2.6rem,7vw,3.8rem)}.pin-dialog-lead{color:var(--ink-soft);margin:0 0 28px;font-size:.88rem;line-height:1.6}.pin-setup-form{gap:18px;display:grid}.pin-setup-form label{color:#39443d;gap:8px;font-size:.76rem;font-weight:700;display:grid}.pin-setup-form input{border:1px solid var(--line-dark);width:100%;height:54px;color:var(--forest-deep);background:var(--white);letter-spacing:.5em;border-radius:9px;outline:0;padding:0 15px 0 24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;font-weight:700}.pin-setup-form input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382917}.pin-remove-button{width:100%;color:var(--danger);background:0 0;border:0;margin-top:16px;padding:10px;font-size:.76rem;font-weight:700}.pin-remove-button:disabled{opacity:.5}.system-screen{min-height:100svh;color:var(--ink);background:var(--surface-muted);place-items:center;padding:32px;display:grid}.system-screen>div>p{color:#6d7971;font-size:.82rem}.loading-mark{width:46px;height:46px;color:var(--forest-deep);background:var(--acid);border-radius:13px;place-items:center;margin:auto auto 16px;font-family:Georgia,Times New Roman,serif;font-weight:700;animation:1.4s ease-in-out infinite breathe;display:grid}.system-message{max-width:600px}.system-kicker{color:#6c776f;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:750}.system-message h1{letter-spacing:-.06em;margin:16px 0 20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,7vw,6rem);font-weight:400;line-height:.95}.system-message p{color:var(--ink-soft);margin:0 0 28px;line-height:1.65}.spin{animation:.7s linear infinite spin}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes row-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{50%{opacity:.72;transform:scale(.94)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-brand{min-height:360px}.login-brand-copy{padding:48px 0}.login-brand-copy h1{font-size:clamp(3.4rem,11vw,6rem)}.login-panel{min-height:auto;padding-top:72px;padding-bottom:88px}.app-frame{display:block}.sidebar{width:min(300px,100vw - 42px);transition:transform .22s cubic-bezier(.22,1,.36,1);position:fixed;left:0;transform:translate(-102%)}.sidebar-open{transform:translate(0)}.sidebar-close,.mobile-nav-trigger{place-items:center;display:grid}.mobile-nav-trigger{z-index:25;border:1px solid var(--line);width:40px;height:40px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f9f5f0;border-radius:9px;position:fixed;top:22px;left:18px}.nav-backdrop{z-index:29;background:#0a120d6b;border:0;position:fixed;inset:0}.app-topbar{padding-left:74px}.workspace-hero,.next-step{grid-template-columns:1fr}.workspace-hero{align-items:start}.workspace-intro{max-width:560px}.next-step-action{margin-top:6px}}@media (width<=600px){.login-brand{min-height:330px;padding:24px}.login-brand-copy{padding:42px 0 26px}.login-brand-copy h1{margin-bottom:20px;font-size:clamp(3rem,15vw,4.5rem)}.login-brand-copy>p:last-child{font-size:.9rem}.login-panel{padding:56px 24px 76px}.app-topbar{min-height:84px;padding-right:18px}.account-copy{display:none}.workspace{width:min(100% - 32px,1120px);padding-top:52px}.workspace-hero{gap:32px;padding-bottom:56px}.workspace-hero h1{font-size:clamp(3.15rem,16vw,5.2rem)}.foundation-row{grid-template-columns:34px 1fr auto;gap:12px;min-height:86px}.foundation-index{display:none}.foundation-copy small{max-width:150px}.foundation-status{font-size:0}.foundation-status svg{width:19px;height:19px}.next-step{margin-left:-16px;margin-right:-16px;padding:32px 24px}.app-footer{padding:0 18px}.pin-lock-page{background:var(--surface);align-items:stretch;padding:0}.pin-lock-card{width:100%;min-height:100svh;box-shadow:none;border:0;border-radius:0;padding:24px 24px 30px}.pin-lock-brand{margin-bottom:52px}.pin-dialog-backdrop{align-items:end;padding:0}.pin-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;width:100%;max-height:92svh;padding:34px 24px 30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.module-page{flex:1;width:min(1320px,100% - 56px);margin:0 auto;padding:46px 0 68px}.wide-page{width:min(1660px,100% - 48px)}.module-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:34px;display:flex}.module-header h1{letter-spacing:-.065em;margin:8px 0 7px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,5vw,5.25rem);font-weight:400;line-height:.95}.module-header>div:first-child>p:last-child{color:var(--ink-soft);margin:0;font-size:.88rem}.header-actions{gap:9px;display:flex}.secondary-button{border:1px solid var(--line-dark);color:var(--ink);background:var(--white)}.secondary-button:hover{background:var(--surface-muted)}.danger-button{color:#fff;background:var(--danger)}.compact-button{min-height:40px;padding:0 14px;font-size:.78rem}.icon-button{border:1px solid var(--line);color:#607068;background:var(--white);border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.icon-button:hover{color:var(--forest-deep);border-color:var(--line-dark)}.text-button{color:var(--forest);background:0 0;border:0;align-items:center;gap:6px;padding:7px 0;font-size:.75rem;font-weight:750;display:inline-flex}.toolbar{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line);align-items:center;gap:20px;min-height:62px;margin-bottom:14px;padding:0 4px;display:flex}.search-field{border:1px solid var(--line);color:#6f7b73;background:#ffffff8c;border-radius:9px;align-items:center;gap:9px;width:min(300px,100%);height:40px;padding:0 12px;display:flex}.search-field:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px #1d382912}.search-field input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:.8rem}.filter-tabs{align-items:center;gap:4px;display:flex;overflow-x:auto}.filter-tabs button{color:#68746c;white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:.72rem;font-weight:700;display:inline-flex}.filter-tabs button span{background:#0000000e;border-radius:10px;place-items:center;min-width:20px;height:20px;font-size:.65rem;display:grid}.filter-tabs button.active{color:#f5f8f5;background:var(--forest)}.data-surface{border:1px solid var(--line);background:#ffffffa8;border-radius:13px;overflow:hidden;box-shadow:0 12px 40px #19291e09}.table-scroll{overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:.78rem}.data-table th{border-bottom:1px solid var(--line-dark);color:#627068;letter-spacing:.055em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f1f3ef;height:48px;padding:0 16px;font-size:.65rem;font-weight:800}.data-table td{border-bottom:1px solid var(--line);color:#364139;vertical-align:middle;height:66px;padding:10px 16px}.data-table tbody tr:last-child td{border-bottom:0}.employee-table tbody tr{cursor:pointer;transition:background-color .14s}.employee-table tbody tr:hover,.employee-table tbody tr:focus{background:#c7f36b1a;outline:0}.employee-table tbody tr.employee-row-inactive{background:#f0f2ef}.employee-table tbody tr.employee-row-inactive td,.employee-table tbody tr.employee-row-inactive .person-cell strong{color:#778078}.employee-table tbody tr.employee-row-inactive .person-avatar,.employee-table tbody tr.employee-row-inactive .category-label{color:#68716a;background:#dfe3de}.employee-table tbody tr.employee-row-inactive:hover,.employee-table tbody tr.employee-row-inactive:focus{background:#e8ebe7}.person-cell{align-items:center;gap:11px;min-width:190px;display:inline-flex}.person-cell>span:last-child{gap:3px;display:grid}.person-cell strong{color:var(--ink);font-size:.83rem}.person-cell small{color:#7d8981;font-size:.66rem}.person-avatar{color:#274132;background:#e1e8df;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:.68rem;font-weight:800;display:grid}.category-label,.activity-chip,.status-dot{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:.66rem;font-weight:750;display:inline-flex}.category-label{color:#425248;background:#e8ece7}.status-active{color:#27482f;background:#e4f1df}.status-inactive{color:#717a74;background:#e8eae7}.boolean-status{color:#8a948d;place-items:center;display:inline-grid}.missing-value{color:#986123;font-size:.69rem;font-weight:700}.table-loading,.inline-error,.empty-state{color:#66736b;text-align:center;padding:38px;font-size:.8rem}.inline-error{color:var(--danger)}.empty-state h2{color:var(--ink);margin:8px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:400}.empty-state p{margin:0}.drawer-backdrop,.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08110b7a;animation:.18s ease-out both backdrop-in;position:fixed;inset:0}.drawer-backdrop{justify-content:flex-end;display:flex}.detail-drawer{background:var(--surface);flex-direction:column;width:min(700px,100%);height:100%;animation:.28s cubic-bezier(.22,1,.36,1) both drawer-in;display:flex;box-shadow:-30px 0 80px #050e0838}.drawer-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:112px;padding:0 34px;display:flex}.drawer-header h2{letter-spacing:-.045em;margin:6px 0 0;font-family:Georgia,Times New Roman,serif;font-size:2.1rem;font-weight:400}.drawer-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.drawer-scroll{scrollbar-gutter:stable;flex:1;min-height:0;padding:0 34px 32px;overflow-y:auto}.form-section{border-bottom:1px solid var(--line);padding:32px 0}.form-section:last-of-type{border-bottom:0}.form-section-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.form-section-heading h3{margin:0;font-size:.86rem}.form-section-heading p,.form-section-heading>span{color:#829087;margin:4px 0 0;font-size:.66rem}.form-grid,.inline-form,.edit-time-grid{gap:16px;display:grid}.two-columns,.rate-form,.document-form,.edit-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-form-title{color:var(--ink);grid-column:1/-1;margin:0;font-size:.78rem;font-weight:800}.rate-form-actions{grid-column:1/-1;justify-content:flex-end;gap:9px;display:flex}.field{color:#4d5951;gap:7px;font-size:.69rem;font-weight:750;display:grid}.field-span-2{grid-column:span 2}.field input,.field select,.field textarea,.small-date-field input,.date-control input,.date-range-control input{border:1px solid var(--line-dark);width:100%;min-height:42px;color:var(--ink);background:var(--white);border-radius:8px;outline:0;padding:0 11px;font-size:.8rem;font-weight:500}.field textarea{resize:vertical;padding-top:10px}.field input:focus,.field select:focus,.field textarea:focus,.small-date-field input:focus,.date-control input:focus,.date-range-control input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382913}.toggle-row{gap:24px;margin:20px 0;display:flex}.toggle-row label{color:#445047;align-items:center;gap:8px;font-size:.75rem;font-weight:700;display:inline-flex}.toggle-row input{width:17px;height:17px;accent-color:var(--forest)}.inline-form{background:#edf1eb;border:1px solid #cdd5cc;border-radius:10px;margin:-4px 0 22px;padding:18px}.history-list,.document-list{display:grid}.history-row{border-bottom:1px solid var(--line);grid-template-columns:1.35fr repeat(3,1fr) 32px;align-items:center;gap:16px;min-height:58px;display:grid}.history-row:last-child,.document-row:last-child{border-bottom:0}.history-row>span{gap:3px;display:grid}.history-row small,.document-row small{color:#7c8980;font-size:.64rem}.history-row strong{color:#344039;font-size:.74rem}.history-row .rate-row-actions{justify-content:flex-end;display:flex}.rate-row-actions button{color:#627067;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.rate-row-actions button:hover,.rate-row-actions button:focus-visible{color:var(--forest-deep);background:#e7ebe5}.document-row{border-bottom:1px solid var(--line);grid-template-columns:24px 1fr 34px 34px;align-items:center;gap:9px;min-height:60px;display:grid}.document-row>span{gap:3px;min-width:0;display:grid}.document-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.document-row button,.row-actions button{color:#627067;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.document-row button:hover,.row-actions button:hover{background:#e7ebe5}.danger-icon{color:var(--danger)!important}.empty-inline,.panel-note{color:#7a867e;margin:0;padding:16px 0;font-size:.74rem}.panel-note{border-left:3px solid var(--acid);background:#eef3e9;margin-top:24px;padding:16px;line-height:1.55}.panel-error{background:#f7e8e5;border-radius:8px;margin-top:16px;padding:12px 14px}.drawer-actions{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f9f5f0;flex:none;justify-content:flex-end;gap:10px;padding:16px 34px;display:flex}.date-control,.date-range-control{border:1px solid var(--line-dark);color:#637068;background:#ffffff9e;border-radius:10px;align-items:center;gap:9px;min-height:48px;padding:0 12px;display:flex}.date-control span,.date-range-control label{color:#66726a;font-size:.68rem;font-weight:750}.date-control input,.date-range-control input{background:0 0;border:0;width:auto;min-height:34px;padding:0 6px;font-weight:700}.daily-metrics-strip{border:1px solid var(--line);background:#f5f7f2;border-radius:12px;grid-template-columns:1.2fr repeat(3,minmax(100px,.65fr)) minmax(200px,1.5fr);align-items:end;gap:18px;margin-bottom:16px;padding:18px 20px;display:grid}.metrics-title{align-items:center;gap:11px;padding-bottom:2px;display:flex}.metrics-title>span:last-child{gap:3px;display:grid}.metrics-title strong{font-size:.8rem}.metrics-title small{color:#7d8981;font-size:.64rem}.metric-icon{width:34px;height:34px;color:var(--forest-deep);background:var(--acid);border-radius:9px;place-items:center;display:grid}.daily-metrics-strip>label{color:#627068;gap:6px;font-size:.65rem;font-weight:750;display:grid}.daily-metrics-strip input{border:1px solid var(--line-dark);background:var(--white);border-radius:7px;outline:0;width:100%;height:38px;padding:0 10px;font-size:.76rem}.time-entry-surface{border-radius:10px}.bulk-entry-toolbar{background:#eef3ea;border:1px solid #cbd7c9;border-radius:11px;align-items:center;gap:12px;min-height:66px;margin-bottom:10px;padding:11px 14px;display:flex}.bulk-entry-icon{width:36px;height:36px;color:var(--forest-deep);background:var(--acid);border-radius:9px;flex:0 0 36px;place-items:center;display:grid}.bulk-entry-copy{flex:1;gap:3px;display:grid}.bulk-entry-copy strong{color:var(--ink);font-size:.78rem}.bulk-entry-copy small{color:#6f7d73;font-size:.66rem;line-height:1.45}.bulk-selection-count{text-align:center;gap:1px;min-width:66px;display:grid}.bulk-selection-count strong{color:var(--forest-deep);font-size:1rem}.bulk-selection-count small{color:#758179;font-size:.6rem}.bulk-clear-button:disabled{cursor:default;opacity:.45}.time-entry-table{min-width:1740px}.time-entry-table th{text-align:center;height:34px;padding:0 8px}.time-entry-table thead tr:first-child th{color:#edf4ee;background:var(--forest);border-color:#ffffff24}.time-entry-table .activity-group-start{box-shadow:inset 3px 0 #b5c0b7}.time-entry-table thead tr:first-child .activity-group-start{box-shadow:inset 3px 0 #ffffff75}.time-entry-table td{height:58px;padding:7px 8px}.time-entry-table tbody tr{transition:background-color .14s}.time-entry-table tbody tr.row-filled{background:#c7f36b13}.time-entry-table tbody tr.row-selected{background:#5b9bd521}.time-entry-table .employee-group-row th{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);color:#526058;text-align:left;background:#e7ebe4;height:38px;padding:0 12px}.time-entry-table .employee-group-row:first-child th{border-top:0}.group-select-control{cursor:pointer;align-items:center;gap:9px;display:inline-flex}.group-select-control input,.employee-entry-person>input{width:16px;height:16px;accent-color:var(--forest);cursor:pointer}.group-select-control small{color:#617067;background:#ffffffbf;border-radius:10px;place-items:center;min-width:20px;height:20px;font-size:.62rem;display:grid}.employee-entry-cell{min-width:250px}.employee-entry-person{align-items:center;gap:9px;display:flex}.employee-entry-person .compact-person{min-width:190px}.apply-row-button{min-height:26px;color:var(--forest-deep);font:inherit;cursor:pointer;background:#f7faf4;border:1px solid #b9c7b7;border-radius:6px;align-items:center;gap:5px;margin:5px 0 0 25px;padding:0 8px;font-size:.63rem;font-weight:750;display:inline-flex}.apply-row-button:hover:not(:disabled){border-color:var(--forest);background:#c7f36b33}.apply-row-button:disabled{cursor:default;opacity:.45}.compact-person{min-width:170px}.compact-person .person-avatar{flex-basis:30px;width:30px;height:30px}.time-cell{min-width:200px}.time-pair,.dialog-time-pair{align-items:center;gap:5px;display:flex}.time-pair input{background:var(--white);border:1px solid #cbd3ca;border-radius:6px;outline:0;width:84px;height:34px;padding:0 5px;font-size:.72rem}.time-pair input:focus,.table-select:focus,.note-input:focus{border-color:var(--forest);box-shadow:0 0 0 2px #1d382912}.table-select,.note-input{background:var(--white);border:1px solid #cbd3ca;border-radius:6px;outline:0;height:34px;padding:0 8px;font-size:.72rem}.table-select{width:132px}.note-input{width:150px}.sticky-save-bar{z-index:15;color:#eef4ef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#12261bf5;border:1px solid #ffffff21;border-radius:13px;justify-content:space-between;align-items:center;gap:24px;width:min(820px,100% - 28px);min-height:66px;margin:20px auto 0;padding:10px 12px 10px 20px;display:flex;position:sticky;bottom:14px;box-shadow:0 18px 50px #0a180f38}.sticky-save-bar .button-primary{color:var(--forest-deep);background:var(--acid)}.save-feedback{align-items:center;gap:8px;font-size:.75rem;line-height:1.4;display:inline-flex}.compact-summary{gap:26px;display:flex}.compact-summary>span{border-left:1px solid var(--line-dark);gap:4px;min-width:84px;padding-left:16px;display:grid}.compact-summary small{color:#7b877f;font-size:.64rem}.compact-summary strong{font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400}.evidence-toolbar{gap:10px}.evidence-bulk-actions{border:1px solid var(--line);background:#f2f4f0;border-radius:11px;align-items:center;gap:16px;min-height:62px;margin-bottom:10px;padding:10px 12px 10px 16px;display:flex}.evidence-bulk-actions>div{flex:1;gap:3px;display:grid}.evidence-bulk-actions>div strong{color:var(--ink);font-size:.78rem}.evidence-bulk-actions>div small{color:#748078;font-size:.66rem}.evidence-bulk-actions .danger-button:disabled{cursor:default;opacity:.42}.evidence-action-error{margin:0 0 10px}.toolbar-spacer{flex:1}.small-date-field{color:#69756d;align-items:center;gap:7px;font-size:.66rem;font-weight:750;display:flex}.small-date-field input{width:135px;min-height:36px}.evidence-table{min-width:1450px}.selection-column{width:48px;text-align:center!important;padding-left:14px!important;padding-right:8px!important}.selection-column input{width:16px;height:16px;accent-color:var(--forest)}.evidence-table tbody tr.evidence-row-selected{background:#5b9bd521}.activity-list{flex-wrap:wrap;gap:5px;max-width:430px;display:flex}.activity-chip{color:#526057;background:#e9ede8;font-weight:600}.activity-chip strong{color:#28352d;margin-left:3px;font-weight:750}.note-column{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden;color:#68746c!important}.row-actions{gap:2px;display:flex}.modal-backdrop{place-items:center;padding:24px;display:grid}.confirm-dialog,.edit-dialog,.import-dialog{border:1px solid var(--line);background:var(--surface);border-radius:16px;width:min(100%,510px);padding:34px;animation:.24s cubic-bezier(.22,1,.36,1) both rise-in;position:relative;box-shadow:0 30px 90px #050e0847}.edit-dialog{width:min(100%,720px);max-height:calc(100svh - 48px);overflow-y:auto}.import-dialog{border:1px solid var(--line);background:var(--surface);border-radius:16px;width:min(100%,760px);max-height:calc(100svh - 48px);padding:34px;animation:.24s cubic-bezier(.22,1,.36,1) both rise-in;position:relative;overflow-y:auto;box-shadow:0 30px 90px #050e0847}.import-dialog h2{letter-spacing:-.045em;margin:10px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:400}.import-dialog>p:not(.eyebrow){color:#657169;margin:0 0 22px;font-size:.8rem;line-height:1.55}.import-text-field{margin-top:18px}.import-text-field textarea{white-space:pre;min-height:240px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;line-height:1.5}.import-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:16px;display:grid}.import-summary span{border-right:1px solid var(--line);gap:3px;padding:14px;display:grid}.import-summary span:last-child{border-right:0}.import-summary strong{font-size:1rem}.import-summary small{color:#78857c;font-size:.62rem}.import-errors{color:var(--danger);background:#f7e8e5;border-radius:8px;margin-top:14px;padding:10px 14px;font-size:.72rem}.import-errors p{margin:4px 0}.import-success{color:#2f6038;background:#e4f1df;border-radius:8px;align-items:center;gap:8px;margin:14px 0 0;padding:12px 14px;font-size:.75rem;font-weight:700;display:flex}.confirm-dialog h2,.edit-dialog h2{letter-spacing:-.04em;margin:10px 0 15px;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400}.confirm-dialog>p:not(.eyebrow),.edit-dialog>p:not(.eyebrow){color:#657169;font-size:.82rem;line-height:1.6}.warning-mark{color:#8a571d;background:#f6e6bd;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:20px;display:grid}.dialog-close{position:absolute;top:18px;right:18px}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:26px;display:flex}.edit-time-grid{margin-top:26px}.dialog-time-pair input{min-width:0}.analytics-kpis{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);grid-template-columns:repeat(4,minmax(0,1fr)) 1.15fr;display:grid}.analytics-kpis article{border-right:1px solid var(--line);align-items:flex-start;gap:13px;min-height:138px;padding:28px 24px;display:flex}.analytics-kpis article:last-child{border-right:0}.analytics-kpis article>svg{color:#647269;margin-top:3px}.analytics-kpis article>span{gap:5px;display:grid}.analytics-kpis small{color:#748178;font-size:.65rem;font-style:normal}.analytics-kpis strong{color:var(--forest-deep);letter-spacing:-.045em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.55rem,2.4vw,2.45rem);font-weight:400}.analytics-kpis em{color:#536158;font-size:.68rem;font-style:normal;font-weight:700}.analytics-kpis .primary-kpi{color:#edf4ee;background:var(--forest-deep)}.analytics-kpis .primary-kpi svg,.analytics-kpis .primary-kpi small,.analytics-kpis .primary-kpi em{color:#a9b7ac}.analytics-kpis .primary-kpi strong{color:var(--acid)}.role-analysis{margin-top:48px}.analytics-section-heading{min-height:72px}.analytics-section-heading>div h2{font-size:.76rem}.analytics-section-heading p{color:#7a867e;margin:5px 0 0;font-size:.68rem}.role-columns{grid-template-columns:repeat(4,1fr);display:grid}.role-columns article{border-right:1px solid var(--line);border-bottom:1px solid var(--line-dark);padding:24px}.role-columns article:first-child{border-left:1px solid var(--line)}.role-columns header,.role-columns footer{justify-content:space-between;gap:12px;display:flex}.role-columns header{align-items:center;font-size:.78rem}.role-columns header span{color:#66736b;font-size:.66rem}.share-track,.mini-bar{background:#dfe4dd;border-radius:3px;height:4px;margin:18px 0 20px;display:block;overflow:hidden}.share-track span,.mini-bar span{border-radius:inherit;background:var(--forest);height:100%;display:block}.role-columns footer>span{gap:4px;display:grid}.role-columns footer small{color:#7b877f;font-size:.6rem}.role-columns footer strong{font-size:.74rem}.analytics-table-surface{margin-top:48px}.analytics-table-surface>.section-heading{padding:0 18px}.analytics-table{min-width:1500px}.analytics-table td,.analytics-table th{text-align:right}.analytics-table td:first-child,.analytics-table th:first-child{z-index:2;text-align:left;background:#f7f8f5;position:sticky;left:0}.analytics-table th:first-child{background:#f1f3ef}.analytics-table .mini-bar{width:82px;margin:0}@keyframes drawer-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@media (width<=1180px){.analytics-kpis{grid-template-columns:repeat(3,1fr)}.analytics-kpis article:nth-child(3){border-right:0}.analytics-kpis article:nth-child(-n+3){border-bottom:1px solid var(--line)}.analytics-kpis .primary-kpi{grid-column:span 2}.daily-metrics-strip{grid-template-columns:repeat(3,1fr)}.metrics-title,.metric-note{grid-column:span 3}}@media (width<=900px){.module-page,.wide-page{width:min(100% - 32px,1320px);padding-top:38px}.module-header{align-items:flex-start}.role-columns{grid-template-columns:repeat(2,1fr)}.role-columns article:nth-child(2){border-right:0}.role-columns article:nth-child(3){border-left:1px solid var(--line)}.compact-summary{display:none}}@media (width<=680px){.module-header,.toolbar,.evidence-toolbar{flex-direction:column;align-items:stretch}.module-header .button{width:100%}.header-actions{flex-direction:column;width:100%}.toolbar{padding:12px 0}.search-field{width:100%}.filter-tabs{margin:0 -4px}.drawer-header{min-height:96px;padding:0 22px}.drawer-scroll{padding:0 22px 24px}.two-columns,.rate-form,.document-form,.edit-time-grid{grid-template-columns:1fr}.field-span-2,.rate-form-actions{grid-column:auto}.history-row{grid-template-columns:repeat(2,1fr);padding:12px 0}.history-row .rate-row-actions{grid-column:2;justify-content:flex-end}.drawer-actions{padding:15px 22px}.daily-metrics-strip{grid-template-columns:repeat(2,1fr)}.evidence-bulk-actions{flex-wrap:wrap;align-items:stretch}.evidence-bulk-actions>div{min-width:calc(100% - 90px)}.evidence-bulk-actions .button{width:100%}.bulk-entry-toolbar{flex-wrap:wrap;align-items:flex-start}.bulk-entry-copy{min-width:calc(100% - 52px)}.bulk-selection-count{text-align:left;margin-left:48px}.metrics-title,.metric-note{grid-column:span 2}.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-kpis article:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.analytics-kpis article:nth-child(2n){border-right:0}.analytics-kpis .primary-kpi{border-bottom:0;grid-column:span 2}.role-columns{grid-template-columns:1fr}.role-columns article:nth-child(n){border-right:1px solid var(--line);border-left:1px solid var(--line)}.sticky-save-bar{width:100%;padding-left:14px;bottom:8px}.save-feedback{font-size:.67rem}.modal-backdrop{align-items:end;padding:0}.confirm-dialog,.edit-dialog,.import-dialog{border-radius:16px 16px 0 0;max-height:92svh}.date-range-control{flex-wrap:wrap;align-self:stretch}.date-range-control label{flex:1}}.schedules-page{max-width:1500px}.schedule-list-heading{border-top:1px solid var(--line-dark);min-height:50px;color:var(--forest);justify-content:space-between;align-items:center;font-size:.78rem;font-weight:760;display:flex}.schedule-list-heading>span{align-items:center;gap:8px;display:inline-flex}.schedule-list-heading small{color:#758078;font-size:.68rem;font-weight:700}.schedule-list-table{min-width:1040px}.schedule-list-table tbody tr{cursor:pointer;transition:background-color .14s,transform .14s}.schedule-list-table tbody tr:hover,.schedule-list-table tbody tr:focus{background:#c7f36b1a;outline:0}.schedule-list-table td:last-child{color:#7e8982;text-align:right;width:48px}.schedule-week-cell{min-width:320px;color:var(--forest);align-items:center;gap:12px;display:inline-flex}.schedule-week-cell>span{gap:4px;display:grid}.schedule-week-cell strong{color:var(--ink);font-size:.85rem}.schedule-week-cell small,.schedule-rate-warning{color:#7a867e;font-size:.65rem;display:block}.schedule-rate-warning{color:#9b6b24;margin-top:3px}.schedule-status{border:1px solid var(--line);color:#657168;white-space:nowrap;background:#f4f5f2;border-radius:999px;align-items:center;gap:7px;min-height:28px;padding:0 10px;font-size:.66rem;font-weight:780;display:inline-flex}.schedule-status i{background:#95a097;border-radius:50%;width:6px;height:6px}.schedule-status.published{color:#285b3d;background:#ebf5ee;border-color:#336f4a42}.schedule-status.published i{background:#347a4d;box-shadow:0 0 0 3px #347a4d1a}.schedule-empty-state{color:#718077;min-height:340px}.schedule-empty-state>svg{color:var(--forest);margin-bottom:8px}.schedule-empty-state .button{margin-top:14px}.schedule-create-dialog{width:min(100%,520px);position:relative}.schedule-create-dialog .field{margin:24px 0 14px}.schedule-editor-page{width:calc(100% - 32px);max-width:2200px;padding-top:24px}.schedule-editor-topline{align-items:center;gap:12px;min-height:38px;margin-bottom:18px;display:flex}.schedule-editor-topline>a{color:#637067;align-items:center;gap:7px;margin-right:4px;font-size:.72rem;font-weight:750;display:inline-flex}.unsaved-indicator,.saved-indicator{color:#7c6a35;align-items:center;gap:6px;font-size:.65rem;font-weight:720;display:inline-flex}.unsaved-indicator i{background:#d0a540;border-radius:50%;width:6px;height:6px}.saved-indicator{color:#65806e}.schedule-editor-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:26px;display:flex}.schedule-editor-header h1{letter-spacing:-.055em;margin:8px 0 7px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4.5vw,4.5rem);font-weight:400;line-height:.98}.schedule-editor-header p:last-child{color:var(--ink-soft);margin:0;font-size:.82rem}.schedule-week-summary{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(145px,1fr));margin-bottom:20px;display:grid}.schedule-week-summary>span{border-right:1px solid var(--line);align-content:center;gap:7px;min-height:86px;padding:0 20px;display:grid}.schedule-week-summary>span:last-child{border-right:0}.schedule-week-summary small{color:#748078;letter-spacing:.055em;text-transform:uppercase;font-size:.63rem;font-weight:760}.schedule-week-summary strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:400}.schedule-week-summary .primary{color:#f5f9f5;background:var(--forest)}.schedule-week-summary .primary small,.schedule-week-summary .primary strong{color:inherit}.schedule-warning{color:#76591c;background:#fff8e8;border:1px solid #ead7ad;border-radius:9px;align-items:center;gap:9px;margin:-4px 0 20px;padding:10px 13px;font-size:.72rem;font-weight:680;display:flex}.schedule-feedback{border:1px solid var(--line);background:#ffffff8f;border-radius:12px;grid-template-columns:minmax(260px,.7fr) minmax(420px,1.3fr);align-items:end;gap:44px;margin-bottom:20px;padding:22px 24px;display:grid}.schedule-feedback h2{letter-spacing:-.035em;margin:6px 0 4px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.schedule-feedback p:last-child{color:#748078;margin:0;font-size:.7rem}.schedule-feedback>label{color:#526059;gap:7px;font-size:.68rem;font-weight:760;display:grid}.schedule-feedback textarea{resize:vertical;border:1px solid var(--line-dark);width:100%;color:var(--ink);background:#fff;border-radius:9px;outline:0;padding:12px 13px;font-size:.78rem;line-height:1.5}.schedule-feedback textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382912}.schedule-board{border:1px solid var(--line-dark);background:#fff;border-radius:12px;animation:.32s cubic-bezier(.22,1,.36,1) both rise-in;overflow:hidden;box-shadow:0 16px 44px #19291e0d}.schedule-scroll{max-height:calc(100svh - 130px);overflow:auto}.schedule-grid{border-collapse:separate;border-spacing:0;color:#344038;width:100%;min-width:1720px;font-size:.7rem}.schedule-grid th,.schedule-grid td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:top;width:205px;min-width:205px}.schedule-grid tr>:last-child{border-right:0}.schedule-grid thead th{z-index:8;color:var(--ink);box-shadow:0 1px 0 var(--line-dark);background:#f1f3ef;padding:14px 12px 12px;position:sticky;top:0}.schedule-grid .schedule-employee-column{z-index:6;width:250px;min-width:250px;box-shadow:1px 0 0 var(--line-dark);background:#f8f9f6;position:sticky;left:0}.schedule-grid thead .schedule-employee-column{z-index:12;background:var(--forest);color:#f2f6f2;padding:17px 16px}.schedule-grid thead .schedule-employee-column>span,.schedule-grid thead .schedule-employee-column>small{display:block}.schedule-grid thead .schedule-employee-column>span{font-size:.78rem}.schedule-grid thead .schedule-employee-column>small{color:#9baaa0;margin-top:4px;font-size:.62rem}.schedule-day-heading{justify-content:space-between;align-items:baseline;margin-bottom:11px;display:flex}.schedule-day-heading strong{text-transform:capitalize;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:400}.schedule-day-heading span{color:#748078;font-size:.64rem;font-weight:720}.schedule-targets{grid-template-columns:1fr 1fr;gap:7px;display:grid}.schedule-targets label{color:#79847d;text-transform:uppercase;gap:4px;font-size:.57rem;font-weight:760;display:grid}.schedule-targets input{width:100%;min-width:0;height:32px;color:var(--ink);background:#fffc;border:1px solid #ced5ce;border-radius:7px;outline:0;padding:0 8px;font-size:.72rem;font-weight:740}.schedule-targets input:focus{border-color:var(--forest);box-shadow:0 0 0 2px #1d382912}.schedule-group-row th{z-index:5;color:#526159;letter-spacing:.07em;text-transform:uppercase;background:#e8ece7;border-bottom-color:#cbd2cb;height:34px;padding:0 16px;font-size:.62rem;position:sticky;left:0}.schedule-group-row th span{font-weight:820}.schedule-group-row th small{color:#879188;letter-spacing:0;text-transform:none;margin-left:8px;font-size:.58rem}.schedule-grid tbody>tr:not(.schedule-group-row)>th{padding:14px}.schedule-grid tbody>tr:not(.schedule-group-row):hover>td,.schedule-grid tbody>tr:not(.schedule-group-row):hover>th{background-color:#fbfcf9}.schedule-person{align-items:center;gap:10px;display:flex}.schedule-person>i{color:#e8efe9;background:var(--forest);border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:.58rem;font-style:normal;font-weight:780;display:grid}.schedule-person>span{gap:3px;display:grid}.schedule-person strong{color:var(--ink);font-size:.72rem}.schedule-person small{color:#7c877f;font-size:.59rem;font-weight:570}.schedule-employee-column>p{color:#8a7560;text-overflow:ellipsis;white-space:nowrap;max-width:210px;margin:8px 0 0 40px;font-size:.57rem;font-weight:570;overflow:hidden}.schedule-grid tbody td{background:#fff;padding:9px;transition:background-color .12s}.schedule-cell{background:#f7f8f5;border:1px solid #0000;border-radius:8px;min-height:75px;padding:7px;transition:border-color .14s,background-color .14s,box-shadow .14s}.schedule-cell:focus-within,.schedule-cell.active{background:#fff;border-color:#cbd7cc}.schedule-cell:focus-within{box-shadow:0 0 0 3px #1d38290f}.schedule-time-row{grid-template-columns:1fr auto 1fr;align-items:end;gap:5px;display:grid}.schedule-time-row label{gap:3px;min-width:0;display:grid}.schedule-time-row label>span,.schedule-role-row label>span{color:#8a948d;letter-spacing:.05em;text-transform:uppercase;font-size:.5rem;font-weight:760}.schedule-time-row input{width:100%;min-width:0;height:28px;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #d4dad4;border-radius:0;outline:0;padding:0 4px;font-size:.65rem;font-weight:720}.schedule-time-separator{color:#a1aaa3;padding-bottom:7px}.schedule-role-row{align-items:end;gap:5px;margin-top:7px;display:flex}.schedule-role-row label{flex:1;gap:2px;min-width:0;display:grid;position:relative}.schedule-role-row select{appearance:none;color:#526158;text-overflow:ellipsis;background:0 0;border:0;outline:0;width:100%;min-width:0;height:24px;padding:0 20px 0 0;font-size:.58rem;font-weight:690;overflow:hidden}.schedule-role-row label>svg{color:#8d978f;pointer-events:none;position:absolute;bottom:5px;right:1px}.schedule-role-row button{color:#a05a52;background:0 0;border:0;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}.schedule-role-row button:hover{background:#f8e9e7}.schedule-grid tfoot th,.schedule-grid tfoot td{vertical-align:middle;background:#f6f7f4;padding:10px 12px}.schedule-grid tfoot .schedule-employee-column{color:#657169;padding:11px 16px;font-size:.64rem;font-weight:790}.schedule-grid tfoot td>strong,.schedule-grid tfoot td>span{display:block}.schedule-grid tfoot td>strong{color:var(--ink);font-size:.7rem}.schedule-grid tfoot td>span,.schedule-summary-label-row th small{color:#7b867e;margin-top:3px;font-size:.57rem}.schedule-summary-label-row th>span,.schedule-summary-label-row th>small{display:block}.schedule-summary-label-row td,.schedule-summary-label-row th{border-top:1px solid var(--line-dark);background:#ecefeb!important}.schedule-role-counts{flex-wrap:wrap;gap:4px;display:flex}.schedule-role-counts span{color:#647168;background:#e8ebe7;border-radius:5px;padding:3px 5px;font-size:.53rem}.schedule-role-counts strong{color:var(--ink)}.schedule-grid .cost-warning{color:#9a6a21}.schedule-cost-row th,.schedule-cost-row td{border-bottom:0;background:#edf4ee!important}.schedule-cost-row td strong{color:#285a3c}.schedule-save-bar{z-index:20;color:#dce6df;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#12261bf2;border:1px solid #ffffff24;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;width:min(760px,100% - 24px);min-height:62px;margin:18px auto 0;padding:9px 10px 9px 18px;display:flex;position:sticky;bottom:12px;box-shadow:0 16px 40px #0b191138}.schedule-save-bar>span{align-items:center;gap:8px;font-size:.68rem;font-weight:650;display:inline-flex}.schedule-save-bar .button-primary{color:var(--forest-deep);background:var(--acid)}.print-only{display:none}@media (width<=980px){.schedule-editor-header{flex-direction:column;align-items:flex-start}.schedule-week-summary{grid-template-columns:repeat(3,1fr)}.schedule-week-summary>span:nth-child(3){border-right:0}.schedule-week-summary>span:nth-child(-n+3){border-bottom:1px solid var(--line)}.schedule-week-summary .primary{grid-column:span 2}.schedule-feedback{grid-template-columns:1fr;gap:18px}}@media (width<=680px){.schedule-editor-page{width:calc(100% - 20px);padding-top:18px}.schedule-editor-topline{flex-wrap:wrap}.schedule-editor-header .header-actions{width:100%}.schedule-week-summary{grid-template-columns:1fr 1fr}.schedule-week-summary>span:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:72px}.schedule-week-summary>span:nth-child(2n){border-right:0}.schedule-week-summary .primary{border-bottom:0;grid-column:span 2}.schedule-feedback{grid-template-columns:minmax(0,1fr);padding:18px}.schedule-save-bar{flex-direction:column;align-items:stretch;gap:9px;padding:12px}.schedule-save-bar .button{width:100%}}@page{size:A3 landscape;margin:8mm}@media print{:root,body{background:#fff}.sidebar,.app-topbar,.app-footer,.mobile-nav-trigger,.no-print{display:none!important}.print-only{display:flex!important}.app-frame,.app-main{background:#fff;min-height:0;display:block}.schedule-editor-page{width:100%;max-width:none;margin:0;padding:0}.schedule-editor-header{margin-bottom:10px}.schedule-editor-header h1{font-size:2rem}.schedule-editor-header p:last-child,.schedule-week-summary{display:none}.schedule-board{box-shadow:none;border:1px solid #9ba39d;border-radius:0;animation:none;overflow:visible}.schedule-scroll{max-height:none;overflow:visible}.schedule-grid{table-layout:fixed;min-width:0;font-size:7pt}.schedule-grid th,.schedule-grid td{border-color:#b7bdb8;width:auto;min-width:0;box-shadow:none!important;position:static!important}.schedule-grid .schedule-employee-column{width:15%}.schedule-grid thead th{padding:5px}.schedule-day-heading{margin-bottom:4px}.schedule-day-heading strong{font-size:10pt}.schedule-targets-print{gap:2px;font-size:6pt;display:grid!important}.schedule-targets-print span{justify-content:space-between;display:flex}.schedule-grid tbody>tr:not(.schedule-group-row)>th,.schedule-grid tbody td{padding:4px}.schedule-person>i,.schedule-employee-column>p,.schedule-role-row button,.schedule-role-row svg,.schedule-time-row label>span,.schedule-role-row label>span{display:none}.schedule-person strong{font-size:7pt}.schedule-person small{font-size:5.5pt}.schedule-cell{background:0 0;border:0;min-height:0;padding:2px}.schedule-time-row input,.schedule-role-row select{appearance:none;color:#111;border:0;height:auto;padding:0;font-size:6.5pt}.schedule-role-row{margin-top:2px}.schedule-grid tfoot th,.schedule-grid tfoot td{padding:4px;font-size:6pt}.schedule-role-counts span{background:0 0;padding:0}}.employee-portal-access{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.pin-input-wrap{display:block;position:relative}.pin-input-wrap>svg{z-index:1;color:#738078;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.pin-input-wrap input{letter-spacing:.32em;padding-left:40px;font-size:1rem;font-weight:780}.portal-access-note{color:#7b867f;margin:10px 0 0;font-size:.65rem;line-height:1.55}.portal-access-on{color:#2f7048!important;background:#e9f4ec!important}.danger-text-button{color:var(--danger);margin-top:6px}.current-portal-pin{background:#f7faf7;border:1px solid #dce4dd;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.current-portal-pin>span{gap:3px;display:grid}.current-portal-pin small{color:#748078;letter-spacing:.06em;text-transform:uppercase;font-size:.64rem;font-weight:700}.current-portal-pin strong{font-variant-numeric:tabular-nums;letter-spacing:.16em;color:#193c2a;font-size:1rem}.settings-grid{grid-template-columns:minmax(0,.82fr) minmax(380px,1.18fr);gap:18px;display:grid}.settings-card{border:1px solid var(--line);background:#ffffffb8;border-radius:16px;padding:clamp(24px,4vw,40px);position:relative}.settings-card h2{letter-spacing:-.045em;margin:10px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:400}.settings-card p:not(.eyebrow):not(.form-error):not(.settings-success){color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.65}.settings-card-icon{width:44px;height:44px;color:var(--forest);background:#edf3ed;border-radius:12px;place-items:center;margin-bottom:32px;display:grid}.admin-status{color:#795f30;background:#f7efd9;border-radius:999px;margin-top:28px;padding:7px 10px;font-size:.68rem;font-weight:800;display:inline-flex}.admin-status.configured{color:#2f7048;background:#e9f4ec}.settings-card-heading,.settings-current-pin{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-current-pin{background:#f7faf7;border:1px solid #dce4dd;border-radius:12px;margin:8px 0 22px;padding:14px 16px}.settings-current-pin>span{gap:4px;display:grid}.settings-current-pin small{color:#748078;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:750}.settings-current-pin strong{color:var(--forest);letter-spacing:.2em;font-size:1.08rem}.settings-pin-form{grid-template-columns:1fr 1fr;gap:14px;padding-top:6px;display:grid}.settings-pin-form>.form-error,.settings-pin-form>.settings-success,.settings-pin-form>.button{grid-column:1/-1}.settings-success{color:#2f7048;align-items:center;gap:7px;margin:0;font-size:.76rem;font-weight:700;display:flex}@media (width<=820px){.settings-grid{grid-template-columns:1fr}}@media (width<=520px){.settings-pin-form{grid-template-columns:1fr}}.portal-login-page{background:var(--surface);grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);min-height:100svh;display:grid}.portal-login-brand{color:#eef5ef;background:linear-gradient(#ffffff0a 1px, transparent 1px), linear-gradient(90deg, #ffffff0a 1px, transparent 1px), var(--forest-deep);background-size:58px 58px;flex-direction:column;justify-content:space-between;min-height:100svh;padding:clamp(30px,5vw,72px);display:flex;position:relative;overflow:hidden}.portal-login-brand:after{content:"";border:1px solid #c7f36b38;border-radius:50%;width:46vw;min-width:480px;height:46vw;min-height:480px;position:absolute;bottom:-20vw;right:-14vw;box-shadow:0 0 0 82px #c7f36b08,0 0 0 164px #c7f36b05}.portal-brand-lockup{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.portal-brand-lockup>span:last-child,.portal-employee-identity>span:last-child{gap:2px;display:grid}.portal-brand-lockup strong{color:inherit;font-size:.88rem}.portal-brand-lockup small{color:#809188;letter-spacing:.14em;font-size:.62rem;font-weight:760}.portal-login-brand>div:nth-child(2){z-index:1;max-width:720px;padding:70px 0;position:relative}.portal-login-brand h1{letter-spacing:-.07em;margin:17px 0 28px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.7rem,7vw,7.5rem);font-weight:400;line-height:.88}.portal-login-brand>div:nth-child(2)>p:last-child{color:#a9b7ad;max-width:460px;margin:0;font-size:1rem;line-height:1.65}.portal-login-brand>small{z-index:1;color:#7b8e82;letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:700;position:relative}.portal-login-panel{place-items:center;padding:48px clamp(28px,7vw,110px);display:grid}.portal-login-panel form{width:min(100%,410px);animation:.42s cubic-bezier(.22,1,.36,1) both rise-in}.portal-login-icon{border:1px solid var(--line);width:46px;height:46px;color:var(--forest);border-radius:50%;place-items:center;margin-bottom:24px;display:grid}.portal-login-panel h2{letter-spacing:-.055em;margin:10px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.7rem,5vw,4.3rem);font-weight:400}.portal-login-panel form>p:not(.eyebrow):not(.portal-form-error){color:var(--ink-soft);margin:0 0 32px;line-height:1.6}.portal-pin-field{color:#455149;gap:8px;font-size:.75rem;font-weight:750;display:grid}.portal-pin-field input{border:1px solid var(--line-dark);width:100%;height:66px;color:var(--ink);letter-spacing:.5em;text-align:center;background:#fff;border-radius:11px;outline:0;padding:0 20px;font-size:1.55rem;font-weight:800}.portal-pin-field input:focus{border-color:var(--forest);box-shadow:0 0 0 4px #1d382914}.portal-login-submit{width:100%;margin-top:14px}.portal-admin-link{color:#77837b;text-align:center;margin-top:24px;font-size:.7rem;font-weight:680;display:block}.portal-form-error,.portal-error{color:var(--danger);margin:11px 0 0;font-size:.72rem;line-height:1.45}.portal-system-screen{text-align:center;background:var(--surface);place-items:center;min-height:100svh;padding:30px;display:grid}.portal-system-screen>div{width:min(100%,480px)}.portal-system-screen h1{letter-spacing:-.05em;margin:10px 0;font-family:Georgia,Times New Roman,serif;font-size:3rem;font-weight:400}.employee-portal{background:var(--surface-muted);min-height:100svh}.employee-portal-header{color:#edf4ef;background:var(--forest-deep);border-bottom:1px solid #ffffff17;grid-template-columns:1fr auto auto;align-items:center;gap:28px;min-height:82px;padding:0 clamp(20px,5vw,72px);display:grid}.portal-employee-identity{align-items:center;gap:10px;display:flex}.portal-employee-identity>span:first-child{width:34px;height:34px;color:var(--forest-deep);background:var(--acid);border-radius:50%;place-items:center;font-size:.65rem;font-weight:800;display:grid}.portal-employee-identity strong{font-size:.75rem}.portal-employee-identity small{color:#87998d;font-size:.61rem}.employee-portal-header>button{color:#a9b8ae;background:0 0;border:0;align-items:center;gap:7px;padding:8px;font-size:.68rem;font-weight:700;display:inline-flex}.employee-portal-nav{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f9f5eb;justify-content:center;align-items:center;gap:6px;min-height:58px;padding:0 20px;display:flex;position:sticky;top:0}.employee-portal-nav button{color:#6b776f;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:36px;padding:0 13px;font-size:.72rem;font-weight:740;transition:color .14s,background-color .14s;display:inline-flex}.employee-portal-nav button.active{color:#f6faf7;background:var(--forest)}.employee-portal-content{width:min(1120px,100% - 40px);margin:0 auto;padding:42px 0 70px}.portal-success{color:#2d6844;background:#edf7ef;border:1px solid #cfe0d2;border-radius:9px;align-items:center;gap:9px;margin-bottom:18px;padding:11px 14px;font-size:.73rem;font-weight:700;display:flex}.portal-section{animation:.26s cubic-bezier(.22,1,.36,1) both rise-in}.portal-section-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px;display:flex}.portal-section-header h1{letter-spacing:-.06em;margin:7px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,6vw,5rem);font-weight:400;line-height:.95}.portal-section-header p:last-child{max-width:600px;color:var(--ink-soft);margin:0;font-size:.8rem}.portal-date-range{gap:8px;display:flex}.portal-date-range label,.portal-absence-form>label{color:#617068;gap:6px;font-size:.62rem;font-weight:760;display:grid}.portal-date-range input,.portal-absence-form input,.portal-absence-form select,.portal-absence-form textarea,.portal-spec-list textarea{border:1px solid var(--line-dark);min-height:42px;color:var(--ink);background:#fff;border-radius:8px;outline:0;padding:0 11px;font-size:.76rem}.portal-date-range input:focus,.portal-absence-form input:focus,.portal-absence-form select:focus,.portal-absence-form textarea:focus,.portal-spec-list textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #1d382912}.portal-hours-summary{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:20px;display:grid}.portal-hours-summary>span{border-right:1px solid var(--line);align-content:center;gap:6px;min-height:88px;padding:0 20px;display:grid}.portal-hours-summary>span:last-child{border-right:0}.portal-hours-summary small{color:#758179;letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:760}.portal-hours-summary strong{font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:400}.portal-log-list,.portal-request-list,.portal-spec-list{border-top:1px solid var(--line-dark)}.portal-log-list article{border-bottom:1px solid var(--line);grid-template-columns:130px minmax(0,1fr) 110px;align-items:center;gap:20px;min-height:84px;padding:13px 4px;display:grid}.portal-log-list time,.portal-log-total,.portal-work-activities span{gap:4px;display:grid}.portal-log-list time strong{color:var(--forest);text-transform:capitalize;font-family:Georgia,Times New Roman,serif;font-size:1.12rem;font-weight:400}.portal-log-list time span,.portal-log-total small,.portal-work-activities small{color:#7a867e;font-size:.62rem}.portal-work-activities{flex-wrap:wrap;gap:9px 24px;display:flex}.portal-work-activities strong{font-size:.7rem}.portal-log-total{text-align:right}.portal-log-total strong{font-size:.88rem}.portal-empty{color:#77837b;text-align:center;align-content:center;place-items:center;gap:7px;min-height:180px;font-size:.73rem;display:grid}.portal-absence-form{border:1px solid var(--line);background:#ffffff94;border-radius:11px;grid-template-columns:minmax(170px,.7fr) minmax(150px,.6fr) minmax(150px,.6fr) auto;align-items:end;gap:14px;margin-bottom:42px;padding:22px;display:grid}.portal-absence-form textarea,.portal-spec-list textarea{resize:vertical;min-height:82px;padding:10px 11px;line-height:1.45}.portal-form-wide{grid-column:1/-1}.portal-list-title{justify-content:space-between;align-items:center;min-height:58px;display:flex}.portal-list-title h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.portal-list-title>span{color:#eef4ef;background:var(--forest);border-radius:50%;place-items:center;min-width:26px;height:26px;font-size:.63rem;font-weight:780;display:grid}.portal-request-list article{border-bottom:1px solid var(--line);grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:78px;padding:12px 4px;display:grid}.portal-request-list article>span:nth-child(2){gap:4px;display:grid}.portal-request-list article small,.portal-request-list article em{color:#77837b;font-size:.63rem;font-style:normal}.portal-request-list article em{color:#51665a}.portal-request-type,.portal-request-status{color:#56635b;white-space:nowrap;background:#e9ece8;border-radius:999px;align-items:center;width:fit-content;min-height:27px;padding:0 9px;font-size:.62rem;font-weight:760;display:inline-flex}.portal-request-type.sick_leave{color:#8a4a43;background:#f7e9e7}.portal-request-status.approved{color:#2e6b45;background:#e7f3ea}.portal-request-status.rejected{color:#924b43;background:#f7e9e7}.portal-request-status.pending{color:#806323;background:#faf2dd}.portal-spec-list>label{border-bottom:1px solid var(--line);grid-template-columns:minmax(210px,.55fr) minmax(0,1.45fr);align-items:start;gap:30px;padding:20px 4px;display:grid}.portal-spec-list>label>span{gap:5px;display:grid}.portal-spec-list>label strong{font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:400}.portal-spec-list>label small,.portal-spec-save>span{color:#7b867f;font-size:.62rem}.portal-spec-save{justify-content:space-between;align-items:center;gap:20px;margin-top:18px;display:flex}.employee-requests-page{max-width:1380px}.request-tabs{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line);align-items:center;gap:6px;min-height:58px;margin-bottom:22px;display:flex}.request-tabs button{color:#647168;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:36px;padding:0 12px;font-size:.73rem;font-weight:740;display:inline-flex}.request-tabs button.active{color:#f5f8f6;background:var(--forest)}.request-tabs button>span{min-width:19px;height:19px;color:var(--forest);background:var(--acid);border-radius:50%;place-items:center;font-size:.58rem;display:grid}.request-surface{border-top:1px solid var(--line-dark)}.request-section-heading{justify-content:space-between;align-items:center;gap:20px;min-height:82px;display:flex}.request-section-heading h2{margin:0 0 5px;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:400}.request-section-heading p{color:#748078;margin:0;font-size:.7rem}.request-section-heading>span{color:#7b867e;font-size:.68rem;font-weight:730}.admin-request-list{border-top:1px solid var(--line)}.admin-request-list article{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(190px,.8fr) minmax(260px,1.3fr) 120px auto;align-items:center;gap:14px;min-height:78px;padding:11px 12px;display:grid}.admin-request-list article.pending{background:#faf2dd66}.admin-request-list article>span:nth-child(2),.admin-request-list article>span:nth-child(3){gap:4px;display:grid}.admin-request-list article small{color:#7b867f;font-size:.62rem}.request-review-dialog{position:relative}.request-review-summary{grid-template-columns:.7fr 1.3fr;gap:12px;margin:22px 0 16px;display:grid}.request-review-summary span{border:1px solid var(--line);border-radius:8px;gap:5px;padding:12px;display:grid}.request-review-summary small{color:#79847d;text-transform:uppercase;font-size:.6rem}.request-review-summary strong{font-size:.74rem}.request-review-dialog blockquote{border-left:3px solid var(--acid);color:#56635b;background:#f2f4f0;margin:0 0 18px;padding:13px 15px;font-size:.76rem;line-height:1.55}.request-review-actions{justify-content:space-between}.admin-spec-weeks{gap:26px;display:grid}.admin-spec-weeks>section{border-top:1px solid var(--line-dark)}.admin-spec-weeks>section>header{justify-content:space-between;align-items:center;min-height:72px;display:flex}.admin-spec-weeks h3{margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400}.admin-spec-weeks header>span{color:#78847c;font-size:.65rem;font-weight:720}.admin-spec-weeks article{border-top:1px solid var(--line);grid-template-columns:36px 210px minmax(0,1fr);align-items:center;gap:13px;min-height:68px;padding:10px 4px;display:grid}.admin-spec-weeks article>span:nth-child(2){gap:3px;display:grid}.admin-spec-weeks article small{color:#7b867f;font-size:.6rem}.admin-spec-weeks article p{color:#4f5d55;margin:0;font-size:.72rem;line-height:1.5}@media (width<=900px){.portal-login-page{grid-template-columns:1fr}.portal-login-brand{display:none}.portal-login-panel{min-height:100svh}.employee-portal-header{grid-template-columns:1fr auto}.employee-portal-header .portal-employee-identity{grid-area:2/1/auto/-1;padding-bottom:14px}.portal-section-header{flex-direction:column;align-items:flex-start}.portal-absence-form{grid-template-columns:1fr 1fr}.portal-absence-form>label:first-child{grid-column:1/-1}.admin-request-list article{grid-template-columns:38px 1fr auto}.admin-request-list article>span:nth-child(3){grid-column:2/-1}}@media (width<=620px){.employee-portal-header{gap:12px;padding:14px 16px 0}.employee-portal-header .portal-brand-lockup small,.employee-portal-header>button{font-size:0}.employee-portal-header>button svg{width:19px;height:19px}.employee-portal-nav{justify-content:flex-start;padding:0 12px;overflow-x:auto}.employee-portal-nav button{white-space:nowrap}.employee-portal-content{width:calc(100% - 28px);padding-top:30px}.portal-section-header .button,.portal-date-range{width:100%}.portal-date-range label{flex:1;min-width:0}.portal-date-range input{width:100%}.portal-hours-summary{grid-template-columns:1fr 1fr}.portal-hours-summary>span:nth-child(2){border-right:0}.portal-hours-summary>span:last-child{border-top:1px solid var(--line);grid-column:1/-1}.portal-log-list article{grid-template-columns:100px 1fr}.portal-log-total{text-align:left;grid-column:2}.portal-absence-form{grid-template-columns:1fr;padding:17px}.portal-absence-form>label:first-child,.portal-form-wide{grid-column:auto}.portal-request-list article{grid-template-columns:1fr auto}.portal-request-list article>.portal-request-type{grid-column:1/-1}.portal-spec-list>label{grid-template-columns:1fr;gap:12px}.portal-spec-save{flex-direction:column;align-items:stretch}.employee-portal-access{grid-template-columns:1fr}.admin-request-list article{grid-template-columns:36px 1fr}.admin-request-list article>span:nth-child(3),.admin-request-list article>span:nth-child(4),.admin-request-list article>button{grid-column:2}.admin-request-list article>button{width:100%}.admin-spec-weeks article{grid-template-columns:36px 1fr}.admin-spec-weeks article p{grid-column:2}}
