*{box-sizing:border-box}body{margin:0;background:#f4f6f5;color:#253832;font:16px/1.5 system-ui,sans-serif}header{background:#123d32;color:white;padding:22px max(5vw,18px);display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-size:23px;font-weight:700}.brand small{display:block;font-size:13px;font-weight:400;color:#d9e6df}.identity{font-size:14px}.identity form{display:inline-block;margin-left:12px}nav{display:flex;gap:24px;flex-wrap:wrap;background:white;padding:14px 5vw;border-bottom:1px solid #d8e2dc}a{color:#6e233d}nav a{color:#123d32;font-weight:600;text-decoration:none}main{max-width:1120px;margin:36px auto;padding:0 20px;min-height:65vh}h1{font-size:28px;line-height:1.2}h2{font-size:19px}h3{font-size:16px}.eyebrow{font-size:12px;letter-spacing:.12em;color:#6e233d;font-weight:700}.card{display:block;background:white;border:1px solid #d8e2dc;border-radius:10px;padding:24px;margin:20px 0;box-shadow:0 3px 12px #143d3206}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.cards a{text-decoration:none;color:inherit}.cards a:hover{border-color:#6e233d}.login{max-width:440px;margin:60px auto}.form{max-width:640px}label{display:block;font-weight:600;margin:18px 0 6px}input,select{font:inherit;width:100%;padding:11px;border:1px solid #92a79b;border-radius:5px;background:#fff;color:#253832}small{font-size:13px}button,.button{font:inherit;font-weight:600;background:#6e233d;color:white;border:0;border-radius:5px;padding:11px 18px;cursor:pointer;text-decoration:none;display:inline-block}form>button{margin-top:22px}.secondary{background:#fff;color:#123d32;padding:6px 12px}.actions,.heading,.pagination{display:flex;gap:18px;align-items:center;justify-content:space-between}.actions{justify-content:flex-start;margin-top:24px}.table-wrap{overflow-x:auto;background:white;border:1px solid #d8e2dc;border-radius:8px;margin:20px 0}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:14px;border-bottom:1px solid #e1e8e4}th{background:#e9efec}.errors{background:#fff0f2;border-left:4px solid #8e294a;padding:16px}.success{padding:16px;background:#e0f2e8;border-left:4px solid #176747}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f6f5;padding:12px}footer{text-align:center;padding:20px;color:#617268;font-size:13px}:focus-visible{outline:3px solid #a24b68;outline-offset:3px}@media(max-width:650px){header{align-items:flex-start;flex-direction:column}.identity form{margin:8px 0 0;display:block}.heading{align-items:flex-start;flex-direction:column}h1{font-size:24px}.card{padding:18px}nav{gap:16px}.login{margin:20px auto}}

.contracts-page{max-width:1600px}.read-only{border:1px solid #c3d6cb;padding:5px 14px;border-radius:20px;color:#123d32;font-size:14px}.contract-filters{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-end}.contract-filters label{margin-top:0}.search-field{flex:1;min-width:230px}.contract-filters button{margin:0}.contract-filters a{padding-bottom:10px}.source-note{font-size:14px;color:#617268}.contracts-table{max-height:65vh;overflow:auto}.contracts-table table{min-width:1600px;font-size:14px}.contracts-table thead th{position:sticky;top:0;z-index:2;background:#123d32;color:#fff}.contracts-table tbody th{font-weight:600;background:#f5f8f6;min-width:105px}.contracts-table td{vertical-align:top;min-width:140px}.contracts-table .description{min-width:380px;max-width:520px;white-space:normal}.progress-cell{color:#617268}.contracts-table tbody tr:hover td{background:#f4f8f5}

textarea{font:inherit;width:100%;padding:11px;border:1px solid #92a79b;border-radius:5px;resize:vertical}.check{display:flex;gap:12px;align-items:center}.check input{width:auto}fieldset{border:1px solid #d8e2dc;margin-top:22px;padding:16px}.period-status{border-left:5px solid #123d32}.period-status p{margin-bottom:0}
progress{width:100%;height:22px;accent-color:#123d32}

.batch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.batch-grid label{margin-top:4px}.batch-panel{border-left:5px solid #6e233d}.scope-options{margin-bottom:20px}.scope-options p{margin-bottom:0}.select-cell{min-width:50px!important}.select-cell input,#select-page{width:20px;height:20px}.origin-label{display:block;color:#617268;margin-top:8px}.contracts-table th small{font-weight:400}.batch-grid select{min-width:0}

.user-tabs{padding:0;background:transparent;gap:8px;border-bottom:2px solid #d8e2dc;margin:22px 0}.user-tab{padding:12px 16px;border:1px solid #d8e2dc;border-bottom:0;border-radius:8px 8px 0 0;background:#fff}.user-tab.is-current{background:#123d32;color:#fff}.user-tab-count{display:inline-block;font-size:13px;padding:0 7px;border-radius:12px;background:#e9efec;color:#123d32;margin-left:5px}@media(max-width:650px){.user-tabs{gap:6px}.user-tab{padding:10px 12px}}

.contracts-table .contract-sort{color:inherit;display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none}.contracts-table .contract-sort:hover{text-decoration:underline}.contracts-table th[aria-sort="ascending"],.contracts-table th[aria-sort="descending"]{background:#6e233d}.contract-sort span{white-space:nowrap}

.contract-description-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;max-height:4.5em;line-height:1.5;overflow:hidden;overflow-wrap:anywhere}.descriptions-full .contract-description-text{display:block;-webkit-line-clamp:unset;line-clamp:unset;max-height:none;overflow:visible}

.resident-combobox{position:relative}.resident-combobox-control{display:flex;align-items:stretch}.resident-combobox-input{border-radius:5px 0 0 5px;min-width:0}.resident-combobox-toggle{border-radius:0 5px 5px 0;padding:8px 15px;margin:0}.resident-combobox-list{position:absolute;left:0;right:0;top:46px;z-index:20;max-height:260px;overflow-y:auto;list-style:none;margin:0;padding:5px 0;border:1px solid #92a79b;border-radius:5px;background:#fff;box-shadow:0 6px 18px #123d3226}.resident-combobox-list li{padding:10px 12px;overflow-wrap:anywhere;cursor:pointer}.resident-combobox-list li:hover,.resident-combobox-list li.is-active{background:#e0f2e8}.resident-combobox-list li[aria-selected="true"]{font-weight:700}.resident-combobox-list .resident-combobox-empty{color:#617268;cursor:default}.resident-combobox-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

.photo-info-control{margin:10px 0}.photo-info-button{background:#6f7271;color:#fff;border:1px solid #6f7271;font-size:14px;padding:7px 12px}.photo-info-dialog{width:min(92vw,520px);max-height:90vh;overflow:auto;padding:24px;border:1px solid #92a79b;border-radius:10px;color:#253832;background:#fff;box-shadow:0 12px 45px #123d3240}.photo-info-dialog::backdrop{background:#102b2466}.photo-info-dialog h2{margin-top:0}

.capture-fields{border:0;padding:0;margin:18px 0;min-width:0}.capture-fields legend{font-weight:600}.capture-fields[hidden]{display:none}
