:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17352f;background:#eff5f2;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 10% 8%,rgb(96 174 143 / 18%),transparent 30rem),radial-gradient(circle at 92% 90%,rgb(232 181 98 / 16%),transparent 34rem),#eff5f2}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:#17684f;font-weight:650;text-underline-offset:.18em}a:hover{color:#0f503c}:focus-visible{outline:3px solid #e5a641;outline-offset:3px}h1,h2,p{margin-top:0}h1{margin-bottom:.85rem;color:#17352f;font-size:clamp(2rem,5vw,3.35rem);line-height:1.03;letter-spacing:-.045em}h2{color:#17352f;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.12;letter-spacing:-.025em}.eyebrow{margin-bottom:.65rem;color:#557069;font-size:.75rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase}.lede{max-width:38rem;margin-bottom:1.75rem;color:#526a63;font-size:1rem;line-height:1.65}.brand{display:inline-flex;align-items:center;gap:.7rem;color:#17352f;font-size:1rem;font-weight:780;text-decoration:none}.brand__mark{display:grid;width:2.65rem;height:2.65rem;place-items:center;border-radius:.85rem .85rem .85rem .28rem;color:#fff;background:#1d6b55;font-size:1.1rem;box-shadow:0 .55rem 1.2rem #1d6b5533}.public-shell{width:min(100%,80rem);min-height:100vh;margin:0 auto;padding:clamp(1rem,3vw,2.5rem)}.public-shell__header{min-height:3rem}.public-shell__main{display:grid;min-height:calc(100vh - 8rem);grid-template-columns:minmax(0,34rem) minmax(18rem,1fr);gap:clamp(2rem,7vw,7rem);align-items:center;justify-content:center;padding:2rem 0}.auth-card{width:100%;padding:clamp(1.5rem,4vw,3.25rem);border:1px solid rgb(23 53 47 / 10%);border-radius:1.6rem;background:#ffffffe5;box-shadow:0 1.8rem 5rem #1c43391c;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem)}.public-shell__aside{max-width:34rem;padding:2rem 0}.public-shell__aside p:not(.eyebrow){color:#5a716b;font-size:1.05rem;line-height:1.7}.form{display:grid;gap:1.2rem}.field{display:grid;gap:.45rem}.field label,.label-row{color:#273f39;font-size:.9rem;font-weight:720}.label-row{display:flex;gap:1rem;align-items:baseline;justify-content:space-between}.label-row a{font-size:.83rem}.field input,.field select{width:100%;min-height:3.1rem;padding:.75rem .9rem;border:1px solid #b8c9c3;border-radius:.7rem;color:#17352f;background:#fff;transition:border-color .12s ease,box-shadow .12s ease}.field input:hover,.field select:hover{border-color:#75988d}.field input:focus,.field select:focus{border-color:#1d6b55;outline:none;box-shadow:0 0 0 3px #1d6b5524}.field input[aria-invalid=true]{border-color:#ad4e42}.field select{appearance:none;padding-right:2.5rem;background-image:linear-gradient(45deg,transparent 50%,#526a63 50%),linear-gradient(135deg,#526a63 50%,transparent 50%);background-position:calc(100% - 1rem) 1.35rem,calc(100% - .7rem) 1.35rem;background-repeat:no-repeat;background-size:.32rem .32rem}.field-error,.field-hint{margin:0;font-size:.8rem;line-height:1.45}.field-error{color:#983d34;font-weight:620}.field-hint{color:#647972}.button{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;padding:.72rem 1.15rem;border:1px solid #1d6b55;border-radius:.72rem;color:#fff;background:#1d6b55;font-weight:730;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:background .12s ease,transform .12s ease}.button:hover:not(:disabled){color:#fff;background:#155440}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.58}.button--secondary{width:fit-content;color:#1d604d;background:#fff}.button--secondary:hover:not(:disabled){color:#174c3e;background:#f0f7f4}.button--quiet{min-height:2.65rem;color:#1d604d;background:transparent}.button--quiet:hover:not(:disabled){color:#fff}.alert{padding:.85rem 1rem;border:1px solid;border-radius:.7rem;font-size:.9rem;line-height:1.5}.alert--error{border-color:#e4bbb5;color:#7f3028;background:#fff4f2}.alert--success{border-color:#b8daca;color:#195c47;background:#f1faf5}.alert--warning{margin:1rem 0 1.25rem;border-color:#dfc27e;color:#694f18;background:#fff9e9}.metadata-card{display:grid;gap:.85rem;margin:1.4rem 0;padding:1rem;border:1px solid #d4e2dd;border-radius:.85rem;background:#f5faf8}.metadata-card div{display:grid;gap:.15rem}.metadata-card span,.account-summary span{color:#687d76;font-size:.75rem}.metadata-card strong{overflow-wrap:anywhere;font-size:.9rem}.success-panel{display:grid;gap:.65rem;padding-top:.8rem}.success-panel p{color:#526a63;line-height:1.6}.card-footer{margin:1.5rem 0 0;color:#61756f;font-size:.9rem}.page-state{display:grid;min-height:100vh;place-items:center;align-content:center;gap:1rem;padding:2rem;color:#526a63;text-align:center}.page-state--card{width:min(calc(100% - 2rem),38rem);min-height:auto;margin:12vh auto;padding:clamp(2rem,5vw,4rem);border:1px solid rgb(23 53 47 / 10%);border-radius:1.5rem;background:#fff;box-shadow:0 1.8rem 5rem #1c43391c}.spinner{width:2rem;height:2rem;border:3px solid #c8d8d2;border-top-color:#1d6b55;border-radius:50%;animation:spin .7s linear infinite}.app-shell{min-height:100vh}.app-header{display:flex;min-height:5.5rem;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);border-bottom:1px solid rgb(23 53 47 / 10%);background:#ffffffe0;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem)}.account-summary{display:flex;align-items:center;gap:1.25rem}.account-summary div{display:grid;gap:.15rem;text-align:right}.account-summary strong{font-size:.88rem}.app-main{width:min(100%,76rem);margin:0 auto;padding:clamp(2rem,7vw,6rem) clamp(1rem,4vw,3rem)}.welcome-panel{padding:clamp(1.5rem,5vw,4rem);border:1px solid rgb(23 53 47 / 10%);border-radius:1.8rem;background:#ffffffe0;box-shadow:0 1.8rem 5rem #1c43391a}.account-security{display:grid;gap:1.25rem;margin-top:clamp(2rem,5vw,4rem)}.section-heading{max-width:42rem}.section-heading h2,.security-card__heading h3{margin-bottom:.55rem}.section-heading>p:last-child,.security-card__heading p,.confirmation-panel p{margin-bottom:0;color:#5a716b;line-height:1.6}.security-card{display:grid;gap:1.5rem;padding:clamp(1.35rem,4vw,2.4rem);border:1px solid rgb(23 53 47 / 10%);border-radius:1.25rem;background:#ffffffe5;box-shadow:0 1rem 3rem #1c433912}.security-card--danger{border-color:#e1bcb5;background:snow}.security-form{max-width:48rem}.security-form__new-passwords{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.security-form__submit{width:fit-content}.button--danger{width:fit-content;border-color:#a7463b;background:#a7463b}.button--danger:hover:not(:disabled){color:#fff;background:#87352d}.confirmation-panel{display:grid;gap:.75rem;padding:1rem;border:1px solid #dfb2aa;border-radius:.85rem;background:#fff4f2}.confirmation-panel__actions{display:flex;flex-wrap:wrap;gap:.75rem}.status-card{display:flex;width:fit-content;align-items:flex-start;gap:.85rem;padding:1rem 1.1rem;border:1px solid #b8daca;border-radius:1rem;background:#f1faf5}.status-dot{flex:0 0 auto;width:.7rem;height:.7rem;margin-top:.32rem;border-radius:50%;background:#27805e;box-shadow:0 0 0 .3rem #27805e1f}.status-card strong,.status-card span{display:block}.status-card div>span{margin-top:.25rem;color:#687c76;font-size:.85rem}.admin-header__navigation{display:flex;align-items:center;gap:1rem}.admin-header__navigation span{display:grid;gap:.15rem;text-align:right}.admin-header__navigation small{color:#687d76;font-size:.72rem}.admin-header__navigation strong{font-size:.88rem}.admin-main{display:grid;gap:clamp(2rem,5vw,4rem)}.admin-introduction{max-width:52rem}.admin-section{display:grid;gap:1.25rem;padding:clamp(1.35rem,4vw,2.5rem);border:1px solid rgb(23 53 47 / 10%);border-radius:1.35rem;background:#ffffffeb;box-shadow:0 1rem 3rem #1c433912}.admin-section .page-state{min-height:12rem}.organization-management__forms,.employee-management__forms,.employee-management__scope{display:grid;gap:1rem;padding:1.25rem;border:1px solid #d4e2dd;border-radius:1rem;background:#f8fbfa}.organization-edit,.employee-edit,.dependent-edit{display:grid;gap:1rem;padding:1.25rem;border:1px solid #b8daca;border-radius:1rem;background:#f1faf5}.organization-edit h3,.employee-edit h3,.dependent-edit h4{margin:0}.dependent-management{display:grid;gap:1rem;padding:clamp(1.1rem,3vw,1.75rem);border:2px solid #b8daca;border-radius:1.15rem;background:#f8fbfa}.benefit-configuration__form,.benefit-edit,.benefit-offerings,.benefit-tiers{margin-top:1.25rem}.benefit-edit,.benefit-offerings,.benefit-tiers{display:grid;gap:1rem;padding:1.25rem;border:1px solid #b8daca;border-radius:1rem;background:#f8fbfa}.benefit-edit textarea,.benefit-tiers textarea{min-height:7rem;resize:vertical}.eligibility-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));margin-top:1rem}.eligibility-grid>div{border:1px solid #b8daca;border-radius:1rem;padding:1rem;background:#f8fbfa}.dependent-management__form{padding-bottom:1rem;border-bottom:1px solid #d4e2dd}.table-actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-form,.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.admin-form__wide{grid-column:1 / -1}.admin-form>.button,.filter-grid>.button{width:fit-content;align-self:end}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.5rem}.pagination .button{min-height:2.45rem;padding:.5rem .8rem}.pagination span{color:#647972;font-size:.78rem}.table-scroll{overflow-x:auto;border:1px solid #d4e2dd;border-radius:.9rem}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:.9rem;border-bottom:1px solid #e1eae6;vertical-align:top;text-align:left}th{color:#526a63;background:#f3f8f6;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}td{min-width:9rem;color:#425b54;font-size:.85rem;line-height:1.45}tr:last-child td{border-bottom:0}td strong,td span{display:block}td strong{overflow-wrap:anywhere;color:#17352f}.button--compact{min-height:2.35rem;padding:.45rem .75rem;font-size:.8rem}.status-badge{width:fit-content;padding:.25rem .55rem;border-radius:999px;background:#edf3f1;font-size:.75rem;font-weight:720}.status-badge--pending{color:#6b5019;background:#fff4d6}.status-badge--accepted{color:#195c47;background:#e7f6ee}.status-badge--revoked{color:#7f3028;background:#fff0ed}.status-badge--expired{color:#555f5c;background:#ecefed}.empty-state{margin:0;padding:2rem;border:1px dashed #b8c9c3;border-radius:.85rem;color:#5a716b;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px){.public-shell__main{grid-template-columns:1fr;gap:1rem}.public-shell__aside{order:-1;padding:1rem 0 0}.public-shell__aside h2{margin-bottom:.5rem;font-size:1.6rem}.public-shell__aside p:not(.eyebrow){font-size:.95rem}.app-header{align-items:flex-start}.account-summary{align-items:flex-end;flex-direction:column;gap:.6rem}.security-form__new-passwords,.admin-form,.filter-grid{grid-template-columns:1fr}.admin-form__wide{grid-column:auto}}@media(max-width:480px){.public-shell{padding:1rem}.public-shell__main{min-height:auto;padding-top:1.5rem}.auth-card,.welcome-panel{padding:1.4rem;border-radius:1.15rem}.brand>span:last-child{display:none}.account-summary strong{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-header__navigation{align-items:flex-end;flex-direction:column-reverse;gap:.5rem}.admin-header__navigation strong{display:block;max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagination{justify-content:flex-start}.pagination span{width:100%;order:-1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
