:root{color-scheme:dark}
.application-expanded .hero-grid{grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr)}
.application-expanded .hero-copy{position:sticky;top:110px}
.application-expanded .hero-copy h1{font-size:clamp(33px,4vw,52px)}
.section-intro{margin-bottom:18px}.section-intro h3{font-size:17px}
.section-intro p,.repeat-heading p{font-size:12px;line-height:1.55;color:var(--muted);margin-top:5px}
.repeat-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:24px 0 12px}.repeat-heading h3{font-size:16px}
.repeat-card,.document-record{border:1px solid var(--line2);border-radius:12px;padding:16px;margin:0 0 18px;min-width:0;background:rgba(4,14,26,.2)}
.repeat-card legend,.document-record legend{padding:0 7px;font-size:12px;color:var(--teal);font-weight:800}
.repeat-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}
.repeat-controls>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted2)}
.text-button{border:0;background:transparent;color:var(--teal);font-size:11px;padding:6px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.text-button.danger{color:var(--red)}
.check-line{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);margin-top:15px;line-height:1.5}.check-line input{accent-color:var(--teal);width:16px;height:16px;flex:none}
.info-strip{margin:16px 0;padding:12px;border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:8px;color:var(--muted);font-size:11px;line-height:1.6}
.readout{padding:11px 12px;font-size:12px;border:1px solid var(--line);border-radius:9px;color:var(--teal)}
.document-sections{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.document-group{border:1px solid var(--line2);border-radius:11px;overflow:hidden;background:rgba(4,14,26,.15)}
.document-group summary{padding:15px 14px;cursor:pointer;font-size:12px;font-weight:750;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.document-group summary:before{content:"+";font-size:17px;font-weight:400;color:var(--teal)}.document-group[open] summary:before{content:"−"}
.document-group summary>span{flex:1;min-width:0}.document-group summary small{font-size:10px;font-weight:400;color:var(--muted)}.document-group summary em{display:inline-block;font-style:normal;font-size:9px;color:var(--orange);margin-left:5px}
.document-group-body{border-top:1px solid var(--line);padding:15px}.document-group-body>.help{margin:0 0 15px}
.document-record{padding:13px;margin:4px 0 17px;background:rgba(4,14,26,.18)}.field{min-width:0}.field select{max-width:100%;padding-right:28px}.field label{font-size:11px;line-height:1.4}
.upload-pick{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px dashed var(--teal2);padding:13px;border-radius:9px;margin:15px 0 9px;cursor:pointer}
.upload-pick strong{font-size:12px;color:var(--teal)}.upload-pick span{font-size:10px;color:var(--muted)}
.upload-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.upload-pick:has(+.upload-input:focus-visible){outline:2px solid var(--teal);outline-offset:2px}
.attachment-list{padding:0;margin:8px 0;list-style:none}.attachment{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid var(--line)}
.attachment>div:first-child{min-width:0}.attachment span{display:block;font-size:11px;overflow-wrap:anywhere}.attachment small{font-size:9px;color:var(--muted2)}
.attachment-actions{display:flex;gap:2px;flex-shrink:0}
.record-summary{padding:12px;margin:11px 0;border:1px solid var(--line);border-radius:9px}.record-summary strong{display:block;font-size:12px;overflow-wrap:anywhere;margin-top:3px}
.record-summary p{font-size:11px;color:var(--muted);line-height:1.5;margin-top:6px;overflow-wrap:anywhere}.record-summary small{font-size:10px;color:var(--muted2)}
.consent span{font-size:11px;line-height:1.5;color:var(--muted)}.form-card button:disabled{opacity:.5;cursor:wait}.activity-row svg{width:13px;height:13px}
@media(max-width:1000px){.application-expanded .hero-grid{grid-template-columns:1fr}.application-expanded .hero-copy{position:static}}
@media(max-width:680px){.repeat-card,.document-record{padding:12px}.document-group-body{padding:12px}.repeat-heading{align-items:flex-start;flex-wrap:wrap}.document-group summary{padding:13px 10px}.attachment{align-items:flex-start;flex-direction:column}.attachment-actions{align-self:flex-end}}

.info-strip.warning{border-left-color:#e9ad62;color:#f4ce9f}.info-strip a{color:var(--teal);text-decoration:underline}.info-strip strong{display:inline}.admin .info-strip{margin-bottom:18px}.admin .btn:disabled{opacity:.5;cursor:wait}.login-actions{flex-wrap:wrap}
