/* V84 requested UI, photo panels, task centre and override controls. */
.party-wordmark{font-family:var(--tvk-font-stack)!important;letter-spacing:normal!important;line-height:1.5}
.town-photo-panel{overflow:hidden}
.town-photo-panel img{display:block;width:100%;height:clamp(250px,34vw,430px);object-fit:cover;object-position:center;border-radius:14px;background:#f4efe8}
.town-illustration.town-photo-panel{padding:.65rem;background:#fff;border-color:#e8ded2}
.town-illustration.town-photo-panel img{max-height:none;height:clamp(240px,32vw,390px);object-fit:cover}
.town-school-illustration.town-photo-panel img{height:clamp(230px,29vw,350px)}
.hero-img.town-photo-panel img{height:auto;aspect-ratio:16/10;object-fit:cover;padding:0;background:transparent}
.town-photo-panel figcaption{font-size:.8rem;line-height:1.8}
/* Login-only three-person strip: keep image alt text for accessibility, no visible names. */
.admin-login-leader-strip{display:flex;align-items:center;justify-content:flex-start;gap:.65rem;max-width:330px;margin:0 0 .9rem;padding:0}
.admin-login-leader-strip figure{display:block;margin:0;width:76px;height:76px;overflow:hidden;border-radius:14px;border:2px solid #e8c875;background:#fff;box-shadow:0 5px 16px #2a0d1926}
.admin-login-leader-strip img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.admin-login-leader-strip figcaption{display:none!important}
body.console-authenticated .admin-login-leader-strip{display:none!important}
/* Super Admin avatar uses the requested remote portrait. It falls back to initials if unavailable. */
.console-user-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto;background:#fff;border-radius:12px}
.console-user-avatar .super-admin-remote-portrait{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:center 18%;background:#fff;border-radius:inherit}
.console-user-avatar .console-user-initial{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.console-user-avatar .console-user-initial[hidden]{display:none!important}
/* Personal task centre */
.task-center{display:grid;gap:1rem;min-width:0}
.task-center-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.1rem 1.2rem;border-radius:16px;background:linear-gradient(130deg,#fff9ef,#fff);border:1px solid #eadcc8}
.task-center-header h3{margin:.12rem 0;font-size:1.25rem;color:#5c1730}
.task-center-header p{margin:.2rem 0 0;color:#715e62;font-size:.8rem;line-height:1.7}
.task-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}
.task-summary-grid article{display:grid;gap:.4rem;min-width:0;padding:.9rem 1rem;border-radius:13px;background:#fff;border:1px solid #e9dfd2;box-shadow:0 5px 15px #4a1a2808}
.task-summary-grid span{font-size:.72rem;line-height:1.6;color:#755e62}
.task-summary-grid b{font:800 1.65rem/1.2 var(--tvk-font-stack);color:#721b37}
.task-number-alert{color:#b42318!important}
.task-section{display:grid;gap:.8rem;padding:1rem;border:1px solid #eadfce;border-radius:16px;background:#fff}
.task-section-heading{display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.task-section-heading h4,.membership-task-panel h4{margin:0;color:#5b2038;font-size:1rem}
.task-section-heading p,.membership-task-panel p{margin:.18rem 0 0;color:#78666a;font-size:.75rem;line-height:1.7}
.task-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.task-card{display:grid;align-content:start;gap:.48rem;min-width:0;padding:.9rem;border:1px solid #e8dfd4;border-radius:12px;background:#fffdfa}
.task-card-overdue{border-color:#e5a3a3;background:#fff8f7}
.task-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}
.task-card-top>b{overflow-wrap:anywhere;color:#54243a;font-size:.86rem}
.task-chip{display:inline-flex;flex:0 0 auto;padding:.18rem .5rem;border-radius:20px;background:#f4ead9;color:#6e4a27;font-size:.65rem;line-height:1.6}
.task-card-meta{display:flex;flex-wrap:wrap;gap:.35rem .7rem;color:#78696b;font-size:.68rem}
.task-card p{margin:0;color:#5f5054;font-size:.77rem;line-height:1.75;overflow-wrap:anywhere}
.task-card .task-card-brief,.task-draft-preview{padding:.55rem .65rem;border-left:3px solid #c99b49;background:#fff8e9;border-radius:5px;white-space:pre-wrap}
.task-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}
.task-card details{padding-top:.35rem;border-top:1px solid #eee3d5}
.task-card summary{cursor:pointer;color:#71354c;font-size:.75rem;font-weight:700}
.task-card .small{font-size:.7rem}
.membership-task-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#f9fbff;border-color:#dfe7f1}
.task-center-note{margin:0;color:#887579;font-size:.68rem;line-height:1.7}
.task-center-dialog{width:min(760px,calc(100vw - 24px));max-height:min(88vh,900px);overflow:auto}
.task-workflow-dialog{width:min(920px,calc(100vw - 20px));max-height:90vh;overflow:auto}
.task-workflow-dialog .complaint-workflow{padding:.3rem}
/* Audited emergency override controls are visually distinct from ordinary workflow actions. */
.super-override-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid #dba1a1;border-left:4px solid #a52b35;border-radius:12px;background:#fff7f6}
.super-override-panel b{color:#8f1d2b;font-size:.85rem}
.super-override-panel p{margin:.2rem 0 0;color:#725a5d;font-size:.7rem;line-height:1.7}
.super-override-form{border:1px solid #e2b1b1;border-radius:12px;padding:1rem;background:#fffafa}
.super-override-form [hidden]{display:none!important}
.super-override-form textarea{min-height:84px}
.super-override-form .btn-danger{background:#9b2632;color:#fff;border-color:#9b2632}
@media(max-width:760px){
 .task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .task-list{grid-template-columns:1fr}
 .task-center-header,.task-section-heading,.membership-task-panel,.super-override-panel{align-items:stretch;flex-direction:column}
 .task-center-header .btn,.task-section-heading .btn,.membership-task-panel .btn,.super-override-panel .btn{align-self:flex-start}
 .admin-login-leader-strip figure{width:62px;height:62px;border-radius:11px}
 .town-photo-panel img,.town-illustration.town-photo-panel img{height:245px}
}

.task-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.task-pagination{display:flex;align-items:center;justify-content:center;gap:.85rem;padding:.75rem 0;color:#735f64;font-size:.75rem}
.task-pagination button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:980px){.task-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* V94: Field Staff-only simplified workspace and assisted actions. */
.field-task-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.field-task-summary article{min-height:88px;align-content:space-between;background:linear-gradient(145deg,#fffdf8,#fff);border-color:#e8dcc9}.field-task-summary article b{font-size:1.55rem}.field-help-section{border-color:#d9c59e;background:#fffdfa}.field-help-card{border-left:4px solid #b48b42}.field-help-response{padding:.7rem;border:1px solid #d8e6d7;border-radius:9px;background:#f5faf3}.field-help-response b{color:#315b38;font-size:.75rem}.field-help-response p{margin:.35rem 0 0}.field-help-form textarea{min-height:100px}.field-help-form [data-task-form-error]{color:#a22635}.task-center-live-notice{padding:.75rem .9rem;border-left:4px solid #277348;border-radius:8px;background:#edf7ef;color:#205b36;font-size:.8rem;line-height:1.8}.task-center-updated{margin:0;color:#887982;font-size:.66rem;line-height:1.8}.task-center-note{padding:.7rem .8rem;border-left:3px solid #c5a365;background:#fffaf0;border-radius:6px}.task-card-actions .btn{min-height:44px;white-space:normal}.task-center-dialog .admin-dialog-bar button{min-width:44px;min-height:44px}
@media(max-width:760px){.field-task-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.field-task-summary article:last-child{grid-column:1/-1}.task-card-actions{display:grid;grid-template-columns:1fr}.task-card-actions .btn{width:100%;justify-content:center}.field-help-form .live-member-actions{display:grid;grid-template-columns:1fr}.field-help-form .live-member-actions .btn{width:100%;min-height:46px}.task-center-updated{font-size:.72rem}}
/* V94: one connected flow from the Field Staff task card to its protected evidence and action controls. */
.field-task-workflow-body{display:grid;gap:1rem;padding:1rem;overflow:auto;max-height:calc(90vh - 76px)}
.field-task-workflow-evidence,.field-task-workflow-actions{min-width:0;padding:.9rem;border:1px solid #eadfce;border-radius:12px;background:#fffdf9}
.field-task-workflow-evidence h3,.field-task-workflow-actions h3{margin:0 0 .45rem;color:#6e1b37;font-size:.9rem}
.field-task-workflow-evidence>p{margin:.25rem 0 .75rem}
.field-task-workflow-body .proof-workspace{padding:0;border:0;background:transparent;box-shadow:none}
.field-task-workflow-body .complaint-workflow{padding:0;border:0;background:transparent}
@media(max-width:600px){.field-task-workflow-body{padding:.65rem}.field-task-workflow-evidence,.field-task-workflow-actions{padding:.7rem}.field-task-workflow-body .proof-upload .btn{width:100%;min-height:48px}}
.field-proof-registered{margin:.4rem 0;padding:.7rem .8rem;border-left:4px solid #28764b;border-radius:8px;background:#eef7f0;color:#215c39;font-size:.78rem;line-height:1.7}
/* V108 Field Staff operation completion: responsive filters, correction requests and notification controls. */
.field-task-filter-form,.field-revisit-filter-form{display:grid;grid-template-columns:minmax(160px,1.5fr) repeat(3,minmax(130px,1fr)) auto;gap:.55rem;align-items:center;width:100%;margin:.75rem 0 1rem}
.field-task-filter-form input,.field-task-filter-form select,.field-revisit-filter-form input,.field-revisit-filter-form select{width:100%;min-width:0;min-height:42px;border:1px solid #ded2c9;border-radius:9px;padding:.55rem .7rem;background:#fff;color:#493a40;font-size:.76rem}
.field-revisit-filter-form{grid-template-columns:minmax(140px,.8fr) minmax(180px,1.5fr) auto;margin:0;max-width:520px}
.field-correction-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .85rem;margin:0;padding:.85rem 1rem;border:1px solid #e5d9ce;border-radius:10px;background:#fffdf9;min-width:0}
.field-correction-checks legend{padding:0 .35rem;color:#6d1e38;font-size:.76rem;font-weight:800}
.field-correction-checks label{display:flex;align-items:flex-start;gap:.55rem;min-width:0;color:#584950;font-size:.76rem;line-height:1.65}
.field-correction-checks input{flex:none;width:18px;height:18px;margin:.1rem 0 0;accent-color:#811f3e}
.field-intake-correction-card{border-left:4px solid #b58b45}
.field-intake-correction-section{border-color:#ead9bc;background:#fffdfa}
.field-revisit-section{border-color:#e2d6c5;background:#fffdfa}
.field-correction-request-form textarea{min-height:90px}
.field-correction-request-form [data-task-form-error]{color:#a22635}
.field-workspace-correction-note{display:grid;gap:.45rem;padding:.8rem .9rem;border:1px solid #ead8b9;border-left:4px solid #b58b45;border-radius:9px;background:#fffaf0;color:#59454a;font-size:.75rem;line-height:1.75}
.field-workspace-correction-note p{margin:0;overflow-wrap:anywhere}
.field-workspace-correction-note.is-submitted{border-color:#cbded0;border-left-color:#43805a;background:#f5faf6}
.field-correction-body{display:grid;gap:.9rem;padding:1rem;max-height:calc(88vh - 72px);overflow:auto}
.field-correction-body .live-member-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.field-correction-body .full{grid-column:1/-1}
@media(max-width:760px){
 .field-task-filter-form{grid-template-columns:1fr 1fr}
 .field-task-filter-form input{grid-column:1/-1}
 .field-task-filter-form button{grid-column:1/-1;width:100%;min-height:46px}
 .field-revisit-filter-form{grid-template-columns:1fr 1fr;width:100%;max-width:none}
 .field-revisit-filter-form input{grid-column:1/-1}
 .field-revisit-filter-form button{grid-column:1/-1;width:100%;min-height:44px}
 .field-correction-checks{grid-template-columns:1fr}
 .field-correction-body{padding:.7rem}
 .field-correction-body .live-member-form{grid-template-columns:1fr}
 .field-correction-body .full{grid-column:auto}
 .field-correction-body .live-member-actions{display:grid;grid-template-columns:1fr}
 .field-correction-body .live-member-actions .btn{width:100%;min-height:46px}
}
