@font-face{font-family:"LT Kai";src:url('/assets/LTKai-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--auth-teal:#0c5557;--auth-teal-dark:#083e40;--auth-cream:#f9f4ef;--auth-ink:#34281d;--auth-muted:#766e65;--auth-line:#e5e0d9}
.auth-page{margin:0;color:var(--auth-ink);background:var(--auth-cream);font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
.auth-page *{box-sizing:border-box}.auth-page [hidden]{display:none!important}.auth-page button,.auth-page input{font:inherit}.auth-page button{cursor:pointer}.auth-page button:disabled{cursor:wait;opacity:.65}.auth-page a{color:inherit}.auth-page button:focus-visible,.auth-page a:focus-visible{outline:3px solid #ad8b53;outline-offset:4px}.auth-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);min-height:100dvh}.auth-story{position:relative;min-height:100dvh;display:flex;flex-direction:column;padding:50px 58px;overflow:hidden;background:#eae5dc}.auth-brand{position:relative;z-index:2;display:inline-flex;flex-direction:column;align-items:flex-start;width:max-content;text-decoration:none}.auth-brand img{width:224px;height:auto;display:block}.auth-brand>span{font-size:9px;letter-spacing:3.8px;color:var(--auth-ink);margin:9px 0 0 5px}.auth-story-copy{position:relative;z-index:2;margin:auto 0 57%;padding-top:70px}.auth-eyebrow{font-size:9px;letter-spacing:2.3px;color:#7e725f}.auth-story h1{font:400 clamp(38px,4vw,65px)/1.09 "LT Kai",Georgia,serif;letter-spacing:-1.4px;margin:23px 0 22px}.auth-story p{font-size:14px;line-height:1.8;color:#665b4e;margin:0}.auth-story-photo{position:absolute;z-index:1;bottom:0;left:0;width:100%;height:42%;background:linear-gradient(180deg,#eae5dc 0%,#eae5dc00 35%,#261e1770 100%),url('/assets/vascobelo-coffee-hero.webp') center 55%/cover no-repeat}.auth-story-footer{position:absolute;bottom:28px;left:58px;z-index:2;color:#fff9f0;font-size:8px;letter-spacing:2.5px}.auth-form-panel{background:#fffdfb;position:relative;display:flex;align-items:center;justify-content:center;padding:70px 56px 110px;min-height:100dvh}.auth-card{max-width:380px;width:100%}.auth-emblem{height:42px;width:42px;display:grid;place-items:center;border:1px solid #d8c8ae;color:var(--auth-teal);font:25px/1 Georgia,serif;margin-bottom:35px;border-radius:50%}.auth-section-label{font-size:9px;letter-spacing:2px;color:#8b7b63;margin:0 0 14px}.auth-card h2{font:400 39px/1.15 "LT Kai",Georgia,serif;letter-spacing:-.7px;margin:0 0 13px}.auth-card h2:focus{outline:none}.auth-description{font-size:14px;line-height:1.6;color:var(--auth-muted);margin:0 0 31px}.auth-form{display:flex;flex-direction:column;gap:21px}.auth-field{display:flex;flex-direction:column;gap:8px}.auth-field label{font-size:12px;font-weight:600;color:#564b40}.auth-field input{width:100%;min-height:49px;border:1px solid #dcd6ce;border-radius:6px;background:#fff;padding:13px 14px;color:var(--auth-ink);outline:none;transition:border-color .15s,box-shadow .15s}.auth-field input:focus{border-color:var(--auth-teal);box-shadow:0 0 0 3px #0c555710}.auth-field input:invalid:not(:placeholder-shown):not(:focus){box-shadow:none}.auth-field input::placeholder{color:#aaa197;font-size:13px}.auth-field small{font-size:11px;color:#82786d;line-height:1.5}.auth-password{position:relative}.auth-password input{padding-right:65px}.auth-password-toggle{position:absolute;right:9px;top:8px;min-height:33px;border:0;background:transparent;font-size:11px!important;color:#6e776f;padding:0 8px;border-radius:4px}.auth-text-button{border:0;background:transparent;color:var(--auth-teal);padding:0;font-size:12px!important;text-underline-offset:3px}.auth-text-button:hover{text-decoration:underline}.auth-forgot{align-self:flex-end;margin-top:-8px}.auth-submit{width:100%;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--auth-teal);border-radius:6px;background:var(--auth-teal);color:#fff;padding:13px 17px;font-size:13px!important;font-weight:600!important;transition:background .15s}.auth-submit:hover{background:var(--auth-teal-dark)}.auth-submit>span:last-child{font-size:20px;line-height:1;font-weight:400}.auth-back{align-self:center;margin-top:3px}.auth-message{padding:13px 14px;border-radius:6px;border:1px solid #d2e1d7;background:#eef5f0;color:#315b43;font-size:12px;line-height:1.6;margin:0 0 22px;overflow-wrap:anywhere}.auth-message[data-kind="error"]{border-color:#e4c6be;background:#fcf2ef;color:#843f32}.auth-message[data-kind="info"]{border-color:#d9e5e4;background:#eff5f4;color:var(--auth-teal)}.auth-access-note{font-size:11px;line-height:1.8;color:#91877d;border-top:1px solid var(--auth-line);margin:30px 0 0;padding-top:22px}.auth-footer{position:absolute;bottom:35px;left:25px;right:25px;color:#9b9389;font-size:10px;display:flex;justify-content:center;align-items:center;gap:7px}.auth-footer svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.5;fill:none}.auth-checking{display:flex;align-items:center;gap:13px;color:var(--auth-muted);font-size:13px;min-height:100px}.auth-spinner{width:18px;height:18px;border:2px solid #dbe6e2;border-top-color:var(--auth-teal);border-radius:50%;animation:auth-spin .8s linear infinite}.auth-mobile-brand{display:none}
@keyframes auth-spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.auth-story{padding-left:85px;padding-right:85px}.auth-story-footer{left:85px}.auth-card{max-width:410px}.auth-story-copy{margin-bottom:52%}}
@media(max-width:1000px){.auth-layout{grid-template-columns:.85fr 1.15fr}.auth-story{padding:42px 34px}.auth-brand img{width:185px}.auth-story-copy{margin-bottom:68%}.auth-story h1{font-size:43px}.auth-story-footer{left:34px}.auth-form-panel{padding-left:38px;padding-right:38px}}
@media(max-width:760px){.auth-layout{display:block}.auth-story{display:none}.auth-form-panel{min-height:100dvh;padding:135px 28px 95px;align-items:flex-start;background:linear-gradient(160deg,#fffdfb 0%,#fffdfb 65%,#f6f0e9 100%)}.auth-mobile-brand{display:flex;flex-direction:column;align-items:flex-start;position:absolute;top:34px;left:28px}.auth-mobile-brand img{width:165px;height:auto}.auth-mobile-brand span{font-size:8px;letter-spacing:3px;margin:7px 0 0 3px;color:#85765f}.auth-card{max-width:420px;margin:auto 0}.auth-emblem{display:none}.auth-card h2{font-size:35px}.auth-card .auth-description{margin-bottom:27px}.auth-field input{font-size:16px}.auth-footer{bottom:27px}}
@media(prefers-reduced-motion:reduce){.auth-page *{animation:none!important;transition:none!important}}

/* Account controls in the CRM. Authentication is separate from the employee filter. */
.session-account{position:relative;margin-left:3px;flex-shrink:0}.session-account>summary{list-style:none;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #e5e0d9;border-radius:50%;background:#f9f4ef;color:#0c5557;font-size:10px;font-weight:650;cursor:pointer}.session-account>summary::-webkit-details-marker{display:none}.session-account>summary:focus-visible{outline:2px solid #0c5557;outline-offset:3px}.session-account[open]>summary{background:#0c5557;color:#fff}.session-account-menu{position:absolute;right:0;top:43px;width:250px;padding:17px;border:1px solid #e5e0d9;border-radius:9px;background:#fffdfb;box-shadow:0 12px 35px #34281d1a;color:#34281d;z-index:70;font-size:12px}.session-account-menu small{font-size:9px;letter-spacing:1px;color:#8a7e70;display:block}.session-account-email{font-size:12px;font-weight:600;display:block;overflow-wrap:anywhere;margin-top:5px}.session-account-role{display:block;color:#8a7e70;font-size:10px;margin-top:4px}.session-account-menu button{display:block;width:100%;text-align:left;padding:10px 0 0;border:0;border-top:1px solid #e5e0d9;margin-top:14px;background:none;color:#0c5557;font:inherit;cursor:pointer}.session-account-menu a{display:block;margin-top:10px;color:#0c5557;text-decoration:underline}.session-notice{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:1000;max-width:620px;width:calc(100vw - 34px);border:1px solid #d8bd94;border-radius:10px;padding:17px 19px;background:#fff9ee;box-shadow:0 8px 40px #34281d25;color:#5e482d;font:12px/1.6 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.session-notice[hidden]{display:none}.session-notice strong{font-weight:650;display:block;font-size:13px}.session-notice p{margin:4px 0 10px}.session-notice-actions{display:flex;flex-wrap:wrap;gap:10px}.session-notice a,.session-notice button{display:inline-block;font:inherit;padding:7px 11px;border:1px solid #d5c4aa;border-radius:5px;background:#fffdfb;color:#0c5557;cursor:pointer;text-decoration:none}.session-notice a{border-color:#0c5557;background:#0c5557;color:white}.employee-filter-label{font-size:9px;color:#74817b}@media(max-width:1000px){.employee-filter-label{display:none}}@media(max-width:760px){.session-account>summary{width:29px;height:29px}.session-account-menu{right:0;width:230px}.session-account{margin-left:0}.session-notice{bottom:12px}}
