/* Presentation only: domain wording, canonical labels and save handlers stay intact. */
.survey-workspace main{max-width:1180px;width:100%}
.survey-workspace .top{padding-bottom:18px;border-bottom:1px solid #cbd8cf}
.survey-workspace #status{padding:10px 14px;background:#e8f1eb;border-radius:6px;color:#244c3a}
.survey-workspace #status.error{background:#fff0f1;border-left:4px solid #a61c28}
.survey-position{font-weight:700;font-size:14px;color:#285342;margin:0 0 20px}
.survey-position span{display:block;font-weight:400;font-size:13px;color:#52685d;margin-top:5px}
.survey-workspace #content>section{box-shadow:0 2px 5px #183b3205;padding:28px;margin:22px 0}
.survey-workspace #content>section>h2{font-size:23px;max-width:48ch}
.survey-workspace #content>section>h2:not(:first-of-type){margin-top:32px;padding-top:24px;border-top:1px solid #d5e0d8}
.survey-workspace .canonical-ids{font-size:5pt!important;color:#52685d;margin:5px 0 16px;line-height:1.5;overflow-wrap:anywhere}
.survey-workspace .record-scope{background:#eaf1e9;border-left:4px solid #557c5c}
.survey-workspace #content>.record-scope{padding:16px 22px}
.survey-workspace .record-scope p{margin:6px 0}
.survey-workspace .record-scope h2{margin:0;font-size:16px}
.survey-workspace input,.survey-workspace select,.survey-workspace textarea{border-color:#8ca698;border-radius:7px;line-height:1.5}
.survey-workspace label{line-height:1.5;margin:12px 0}
.survey-workspace .choice{padding:10px 12px;border:1px solid #d4dfd7;border-radius:7px;background:#fbfcfa;gap:12px}
.survey-workspace .choice:has(input:checked){background:#e7f0e8;border-color:#4c7659}
.survey-workspace .choice input{min-height:20px;accent-color:#215e47}
.survey-workspace fieldset{background:#fafbf8;padding:20px;border-color:#c3d3c7}
.survey-workspace legend{font-weight:700}
.survey-workspace .source-prompts{background:#f1f5ee;border-left:3px solid #b2c8a8;padding:14px 18px;color:#34513e}
.survey-workspace .save-feedback{font-size:13px}
.survey-workspace .validation-summary,.survey-workspace .validation-detail{border-radius:5px;font-size:14px}
.survey-workspace .section-error-highlight{box-shadow:0 0 0 3px #a61c2812}
.survey-workspace [aria-invalid=true]{border:2px solid #a61c28!important;background:#fff4f4}
.survey-workspace [data-group]{flex:1 1 150px;text-align:left;font-size:14px}
.survey-workspace .stage-footer{border-top:4px solid #557c5c}
@media(min-width:1001px){.survey-workspace .record-scope .scope-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .survey-workspace main{padding:22px 16px 36px}
 .survey-workspace .top .actions{gap:8px}
 .survey-workspace .top .actions button{font-size:14px;padding:10px}
 .survey-workspace #content>section{padding:20px 16px;margin:18px 0}
 .survey-workspace #content>section>h2{font-size:21px}
 .survey-workspace #content>.record-scope{padding:14px 16px}
 .survey-workspace .scope-grid{gap:8px}
 .survey-workspace fieldset{padding:14px 12px}
 .survey-workspace .canonical-ids{font-size:5pt!important}
 .survey-workspace [data-group]{flex-basis:42%;font-size:13px}
 .survey-workspace .stage-footer .actions{display:flex;flex-wrap:wrap}
 .survey-workspace .stage-footer .actions button{flex:1 1 45%}
}

#field-location-section.field-location-invalid{border:2px solid #a52a38;padding:16px;border-radius:8px}#field-location-error{color:#a52a38}#field-location-section code{overflow-wrap:anywhere}#field-location-section .field-copy input{width:auto}

#region-section.region-invalid{border:2px solid #a52a38;padding:12px;border-radius:8px}#region-error{color:#a52a38}

#participant-consent.participant-consent-invalid{border:2px solid #a61c28;padding:16px;border-radius:8px;background:#fff8f8}#participant-consent-error{color:#a61c28;font-weight:600}

/* Keep the location-copy checkbox beside its associated wrapping label. */
#field-location-section .field-copy{display:flex;align-items:center;gap:10px;min-height:44px}
#field-location-section .field-copy input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:0;padding:0;accent-color:var(--s4s-action,#16785f)}

#whole-farm-boundary .boundary-inline-action{display:inline;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--s4s-action,#16785f);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#whole-farm-boundary .boundary-inline-action:hover{color:#123b30;background:transparent;text-decoration-thickness:2px}
#boundary-unavailable-status:empty{display:none}
/* Q24 and catalogue share one capture summary; status is conveyed by text/icons. */
#file-type-capture .grid{gap:10px}
#file-type-capture article{padding:10px;border:1px solid #cbd9ce;border-radius:8px;overflow-wrap:anywhere}
#file-type-capture article h4{margin:0}
#file-type-capture article p{margin:8px 0}

/* Persistent feedback does not block navigation or animate under reduced motion. */
.navigation-activity{position:fixed;inset:auto 1rem 1rem;z-index:1200;max-width:42rem;margin-inline:auto;box-shadow:0 4px 18px #0002;pointer-events:none;}
[aria-busy="true"]#upload-progress::before,.navigation-activity[aria-busy="true"]::before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.55em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:s4s-busy 1s linear infinite;}
@keyframes s4s-busy{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){[aria-busy="true"]#upload-progress::before,.navigation-activity[aria-busy="true"]::before{animation:none;}}

/* The open menu is a modal top layer; keep its progress inside that layer. */
dialog[open] > .navigation-activity{position:sticky;inset:auto;top:0;z-index:1;max-width:100%;margin:0 0 1rem;}
