:root{color:#173b4c;font-synthesis:none;background:#eef3f6;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:#173b4c;background:#fff;border:1px solid #bdced7;border-radius:7px;padding:.65rem 1rem;font-weight:600}button:hover{background:#e4f1f3}button:disabled{opacity:.5;cursor:not-allowed}button.primary{color:#fff;background:#146c70;border-color:#146c70}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #eaa525}header{color:#fff;background:#123c50;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 3vw;display:flex}.brand{color:#fff;letter-spacing:-.06rem;font-size:1.7rem;font-weight:800;text-decoration:none}.brand span{color:#80d4cd}.identity{flex-wrap:wrap;align-items:center;gap:.7rem;font-size:.875rem;display:flex}.identity button{color:#fff;background:0 0;border-color:#72909d}nav{background:#fff;border-bottom:1px solid #d7e3e8;gap:.5rem;padding:1rem 3vw;display:flex;overflow:auto}nav button{white-space:nowrap;border:0}nav .selected{color:#07575e;background:#dff1f0}main{max-width:1440px;margin:auto;padding:1.5rem 3vw}h1{letter-spacing:-.04rem;margin:.25rem 0 1rem;font-size:clamp(1.7rem,3vw,2.2rem)}h2{margin:.25rem 0 1rem;font-size:1.25rem}p{margin:.6rem 0 1rem;line-height:1.6}.eyebrow{letter-spacing:.14rem;color:#357080;font-size:.8rem;font-weight:700}.panel{background:#fff;border:1px solid #d4e0e6;border-radius:12px;margin:1.25rem 0;padding:1.5rem;box-shadow:0 3px 12px #173b4c05}.title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.pill{background:#def1eb;border:1px solid #b7ded2;border-radius:30px;padding:.65rem 1rem;font-size:.875rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;display:grid}label{flex-direction:column;gap:.4rem;margin-bottom:1rem;font-size:.875rem;font-weight:600;display:flex}input,select,textarea{color:#163949;background:#fbfdfe;border:1px solid #b5c8d2;border-radius:6px;width:100%;min-height:43px;padding:.7rem}small,.muted{color:#596f7b;font-size:.875rem;font-weight:400}small{line-height:1.5;display:block}input[type=checkbox]{accent-color:#146c70;width:18px;min-height:18px;margin:0}.check{flex-direction:row;align-items:center;gap:.55rem;margin:.75rem 0}.actions,.bulk{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;display:flex}.bulk{background:#f0f5f7;border-radius:8px;padding:1rem}.bulk label{flex:1;min-width:160px;margin:0}.notice{background:#dfedf8;padding:1rem 3vw;line-height:1.5}.error{color:#832d31;background:#ffe5e4}.success{color:#175d45;background:#e0f5eb}.warning{color:#654900;background:#fff0cb}.invalid{color:#a23737;font-size:.875rem}details{margin:1rem 0}summary{cursor:pointer;padding:.4rem 0;font-weight:600}textarea{resize:vertical;margin:.7rem 0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;margin:.8rem 0}th{color:#627984;text-transform:uppercase;letter-spacing:.035rem;background:#f3f7f9;font-size:.8rem}th,td{vertical-align:top;border-bottom:1px solid #dfe8ec;padding:.9rem .7rem}td input{min-width:115px}td:first-child input{min-width:190px}td:nth-child(2) input{min-width:170px}.fare{color:#086866;white-space:nowrap;font-weight:700}.login{max-width:480px;margin:8vh auto;padding:2rem}.login form{margin-top:1.5rem}.company{justify-content:space-between;gap:1rem;width:100%;margin:1rem 0;padding:1.2rem;display:flex}.stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0;display:grid}.stats div{background:#edf5f6;border-radius:8px;padding:1.4rem}.stats strong{margin-bottom:.5rem;font-size:2rem;display:block}progress{accent-color:#146c70;width:100%;height:18px}.member{border-bottom:1px solid #dce5ea;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem}footer{color:#607986;padding:2rem 3vw;font-size:.8rem}@media (width<=650px){header{align-items:flex-start}.identity{justify-content:flex-end;max-width:65%}.identity>span{text-align:right;overflow-wrap:anywhere;width:100%}.identity button{padding:.4rem .55rem}main,.panel{padding:1rem}.login{margin:2rem 1rem}.stats{grid-template-columns:1fr}.title .pill{font-size:.8rem}.form-grid{grid-template-columns:1fr}.bulk{align-items:stretch}.member{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
