.survey-legend{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.survey-legend span{padding:6px 9px;border-radius:99px;background:#fff;border:1px solid #d7e4da;font-size:10px;font-weight:800}.survey-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.survey-mini-grid span{padding:8px;background:#f5f8f5;border-radius:7px;font-size:10px}.survey-mini-grid b{display:block;margin-top:3px}.survey-page{width:min(960px,calc(100% - 24px));margin:30px auto 70px}.survey-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:20px 0}.survey-title h1{font-size:30px}.survey-title p{margin:5px 0}.survey-title>div>span,.survey-status{font-weight:900}.survey-status{padding:8px 12px;background:#edf5ee;border-radius:99px}.survey-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.survey-kpis article{background:#fff;border:1px solid #d7e4da;padding:15px;border-radius:10px}.survey-kpis span,.survey-kpis strong{display:block}.survey-kpis span{font-size:10px;color:#60756b}.survey-kpis strong{margin-top:8px}.survey-information dl{display:grid;grid-template-columns:180px 1fr;gap:8px 15px}.survey-information dd{margin:0}.operation-tags{display:flex;flex-wrap:wrap;gap:6px}.operation-tags span{padding:6px 9px;background:#eee;color:#777;border-radius:99px;font-size:10px}.operation-tags span.done{background:#dff2e3;color:#146632;font-weight:900}.survey-photo{display:block;width:100%;max-height:480px;object-fit:contain;margin:15px 0;background:#f3f5f3}.decision-buttons{display:flex;gap:8px}.decision-buttons .danger{background:#a7352e!important}.survey-comments article{padding:10px 0;border-bottom:1px solid #e2e8e3}.survey-comments small{display:block;color:#687b71;font-size:10px}.survey-dashboard{margin-top:14px;padding:22px;background:#fff;border:1px solid #dfe6df}.survey-flag-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:16px 0}.survey-flag-grid a{display:grid;gap:4px;padding:13px;border:1px solid #dfe6df;background:#f9fbf8}.survey-flag-grid span{font-size:18px}.survey-flag-grid strong{font-size:25px}.survey-flag-grid small{color:#65766f}

/* Shared survey detail form. Scoped so existing portal/admin forms do not change. */
.survey-page>.panel{margin-top:16px;border-radius:14px;box-shadow:0 8px 28px rgba(22,79,59,.05)}
.survey-form{padding:0;overflow:hidden}
.survey-form>summary{padding:18px 22px;background:#f2f7f2;border-bottom:1px solid #d7e4da;font-size:16px;font-weight:900;color:#164f3b;cursor:pointer;list-style-position:inside}
.survey-form:not([open])>summary{border-bottom:0}
.survey-form .mobile-form,.survey-comments .mobile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px}
.survey-form .mobile-form>.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;grid-column:1/-1}
.survey-form .mobile-form>label,.survey-comments .mobile-form>label{display:grid;align-content:start;gap:7px;min-width:0;font-size:12px;font-weight:800;color:#294d40}
.survey-form .mobile-form>label:has(textarea),.survey-form .mobile-form>fieldset,.survey-form .mobile-form>button{grid-column:1/-1}
.survey-form input,.survey-form select,.survey-form textarea,.survey-comments textarea{display:block;width:100%;min-width:0;min-height:46px;padding:11px 12px;border:1px solid #c8d8cd;border-radius:9px;background:#fff;color:#17352c;font:500 14px Manrope,system-ui,sans-serif;outline:none;transition:border-color .15s,box-shadow .15s}
.survey-form textarea,.survey-comments textarea{min-height:92px;resize:vertical}
.survey-form input:focus,.survey-form select:focus,.survey-form textarea:focus,.survey-comments textarea:focus{border-color:#6c3ca0;box-shadow:0 0 0 3px rgba(108,60,160,.12)}
.survey-form input[type=file]{padding:8px;background:#f7faf7;font-size:12px}.survey-form input[type=file]::file-selector-button{margin-right:10px;padding:8px 11px;border:0;border-radius:6px;background:#e8f0e9;color:#164f3b;font-weight:800;cursor:pointer}.survey-form label>small{font-weight:500;line-height:1.5;color:#687b71}
.survey-form fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;grid-column:1/-1;padding:14px 16px 16px;border:1px solid #d7e4da;border-radius:10px;background:#fafcf9}.survey-form fieldset legend{padding:0 7px;font-size:12px;font-weight:800;color:#294d40}.survey-form .check-row{display:flex!important;align-items:center;gap:8px;margin:0;padding:9px 10px;border-radius:8px;background:#fff;border:1px solid #e1e9e3;font-size:12px;font-weight:700;cursor:pointer}.survey-form .check-row input{width:18px;min-height:18px;height:18px;margin:0;accent-color:#6c3ca0}
.survey-form .mobile-form>button,.survey-comments .mobile-form>button{min-height:48px;padding:12px 18px;border:0;border-radius:9px;background:#6c3ca0;color:#fff;font:800 14px Manrope,system-ui,sans-serif;cursor:pointer;box-shadow:0 5px 14px rgba(108,60,160,.18)}.survey-form .mobile-form>button:hover,.survey-comments .mobile-form>button:hover{filter:brightness(.94)}
.survey-save-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;grid-column:1/-1}.survey-save-actions button{min-height:48px;padding:12px 18px;border:0;border-radius:9px;background:#6c3ca0;color:#fff;font:800 14px Manrope,system-ui,sans-serif;cursor:pointer;box-shadow:0 5px 14px rgba(108,60,160,.18)}.survey-save-actions button.draft{background:#fff;color:#6c3ca0;border:1px solid #6c3ca0;box-shadow:none}.survey-save-actions button:hover{filter:brightness(.95)}
.survey-comments{padding:22px}.survey-comments h2{font-size:30px;margin-bottom:14px}.survey-comments .mobile-form{grid-template-columns:1fr auto;align-items:end;padding:18px 0 0}.survey-comments .mobile-form>button{min-width:150px}

@media(max-width:700px){.survey-kpis,.survey-flag-grid{grid-template-columns:1fr 1fr}.survey-title{align-items:flex-start}.survey-information dl{grid-template-columns:1fr}.survey-information dd{margin-bottom:6px}.survey-page{width:min(100% - 16px,960px);margin-top:16px}.survey-form .mobile-form{grid-template-columns:1fr;padding:16px}.survey-form .mobile-form>.form-row{grid-template-columns:1fr;gap:12px}.survey-form .mobile-form>label{grid-column:1}.survey-form fieldset{grid-template-columns:1fr 1fr}.survey-comments{padding:16px}.survey-comments .mobile-form{grid-template-columns:1fr}.survey-comments .mobile-form>button{width:100%}}
@media(max-width:430px){.survey-form fieldset{grid-template-columns:1fr}.survey-form>summary{padding:15px 16px}.survey-comments h2{font-size:26px}.survey-save-actions{grid-template-columns:1fr}}
.partial-land-summary{padding:20px}.partial-land-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.partial-land-heading span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#31945a}.partial-land-heading h2{margin:4px 0 0}.partial-land-heading>div:last-child{display:grid;text-align:right}.partial-land-heading>div:last-child strong{font-size:24px}.partial-land-heading small{color:#687b71}.partial-land-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.partial-land-totals span{display:grid;gap:4px;padding:11px;background:#f3f8f4;border-radius:9px;color:#60756b;font-size:11px}.partial-land-totals b{color:#163d30;font-size:14px}.partial-land-list{display:grid;gap:8px}.partial-land-list a{display:grid;grid-template-columns:minmax(100px,.7fr) 1.3fr 1fr;gap:12px;align-items:center;padding:12px;border:1px solid #d7e4da;border-radius:9px;color:#173d30;text-decoration:none}.partial-land-list a.current{border:2px solid #31945a;background:#f3fbf5}.partial-land-list span,.partial-land-list small{font-size:11px}.partial-land-list small{color:#687b71}.partial-land-control{grid-column:1/-1;margin:0;padding:12px;border-radius:9px;background:#fff8e4;color:#73550c;font-size:12px}@media(max-width:600px){.partial-land-totals{grid-template-columns:1fr}.partial-land-list a{grid-template-columns:1fr;gap:4px}}

/* Survey capture controls also apply on the shared Super Admin layout. */
.photo-source-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}.photo-source-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.photo-source-actions button,.location-button{min-height:44px;border:1px solid #9fc4aa;border-radius:9px;background:#fff;color:#145c3c;font-weight:800;padding:9px;cursor:pointer}.photo-source-actions .take-photo,.location-button{background:#145c3c;color:#fff}.photo-source-actions small{grid-column:1/-1;color:#65786e;font-weight:500}.photo-source-actions img{grid-column:1/-1;width:100%;max-height:260px;object-fit:contain;border-radius:9px;background:#eef4ef}.location-button{width:100%}.location-button.captured{background:#287c43}.location-help{display:block;color:#65786e;margin-top:-7px}.camera-dialog{position:fixed;z-index:500;inset:0;background:#000c;padding:16px;display:grid;place-items:center}.camera-dialog[hidden]{display:none}.camera-card{width:min(560px,100%);background:#fff;border-radius:14px;padding:12px}.camera-card video{display:block;width:100%;max-height:70vh;background:#111;border-radius:10px}.camera-card p{font-size:12px}.camera-card>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.camera-card button{min-height:46px;border:1px solid #aac7b2;border-radius:9px;background:#fff;font-weight:800}.camera-card button.primary{background:#145c3c;color:#fff}@media(max-width:420px){.photo-source-actions{grid-template-columns:1fr}}
