.photo-panel,.notes-panel{margin-bottom:25px}.photo-panel>.section-heading{margin:0 0 23px}.photo-panel h2 small{font-size:14px;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.photo-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#0c192a}.photo-card>a{display:block}.photo-card img{display:block;width:100%;height:165px;object-fit:cover;background:#07101b}.photo-meta{padding:13px}.photo-meta>strong{font-size:12px;overflow-wrap:anywhere;display:block}.photo-meta>small{display:block;color:var(--muted);font-size:10px;margin:8px 0}.photo-meta details{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;font-size:10px;color:var(--muted)}.photo-meta details summary{cursor:pointer}.photo-meta form{margin-top:10px}.photo-meta input{max-width:100%;width:100%;font-size:12px;background:#091625;border:1px solid var(--line);border-radius:7px;padding:8px;color:var(--ink);margin-bottom:9px}.empty-media{padding:25px;border:1px dashed #36516b;border-radius:12px;color:var(--muted);font-size:13px;line-height:1.8}.upload-section,.removed-section{margin-top:23px;padding-top:19px;border-top:1px solid var(--line)}.upload-section>summary,.removed-section>summary{cursor:pointer;color:var(--accent);font-size:13px}.upload-section form{padding-top:20px;max-width:640px}.removed-photo{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:19px 0;border-top:1px solid var(--line);font-size:12px}.removed-photo p{margin:5px 0;font-size:12px}.removed-photo small{color:var(--muted);font-size:10px;display:block}.removed-photo a{display:block;margin-top:8px}.photo-lightbox,.location-dialog{color:var(--ink);background:#0e1a2b;border:1px solid #42617c;border-radius:16px;padding:0;max-width:95vw;box-shadow:0 25px 100px #0008}.photo-lightbox::backdrop,.location-dialog::backdrop{background:#020815c7;backdrop-filter:blur(4px)}.photo-lightbox{width:1100px}.photo-lightbox header,.location-dialog header{padding:15px 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.photo-lightbox h2{font-size:14px;margin:0;overflow-wrap:anywhere}.photo-lightbox img{display:block;max-height:72vh;width:100%;object-fit:contain;background:#030a12}.photo-lightbox footer,.location-dialog footer{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.photo-lightbox button,.location-dialog button{background:#172d42;color:var(--ink);border:1px solid #3c5e78;border-radius:9px;min-height:42px;padding:9px 15px;font-size:12px}.photo-lightbox button:disabled,.location-dialog button:disabled{opacity:.4;cursor:not-allowed}.photo-lightbox a{font-size:12px}.location-dialog{width:900px}.location-dialog h2{font-size:20px;margin:4px 0}.location-dialog small{color:var(--accent);letter-spacing:2px;font-size:9px}.location-dialog .picker-map{height:52vh;min-height:310px}.location-dialog footer>div{display:flex;gap:10px}.location-dialog output{font-size:12px;color:var(--accent)}.location-tools{padding:16px;margin-bottom:22px;border:1px solid #2e5b68;background:#11313c55;border-radius:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.location-tools output{font-size:11px;color:var(--muted)}.application-form{max-width:850px}.application-form textarea{min-height:100px}.task-columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:25px;align-items:start}.task-main,.task-aside{min-width:0}.task-columns .photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-info{margin-bottom:25px}.task-info dl{display:grid;grid-template-columns:1fr 2.3fr;gap:10px 15px;font-size:12px}.task-info dt{color:var(--muted);font-size:11px}.task-info dd{overflow-wrap:anywhere;white-space:pre-wrap}.task-info h2{font-size:24px}.task-info .button{margin-top:10px}.task-mini-map{height:270px;margin:17px -10px 0;border-radius:12px;background:#0a1727;overflow:hidden}.no-map-location{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}.coordinate-text{font-size:11px;color:var(--accent);font-variant-numeric:tabular-nums;text-align:center;margin:12px 0}.task-aside>.panel{margin-bottom:23px}.task-aside .panel h2{font-size:22px}.location-panel .notice{margin:15px 0 0;font-size:11px}.task-actions form+form{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.task-actions>h2{margin-bottom:20px}.task-actions .secondary-action{margin-top:20px}.admin-action{margin-top:22px;border-top:1px solid var(--line);padding-top:15px}.admin-action summary{cursor:pointer;font-size:12px;color:var(--muted)}.admin-action form{padding-top:17px}.task-history article{border-bottom:1px solid var(--line);padding:14px 0;font-size:12px}.task-history article strong,.task-history article small{display:block}.task-history article small{color:var(--muted);font-size:10px;margin-top:6px}.task-history article p{margin-top:9px;font-size:12px;white-space:pre-wrap}.note-list{margin-top:25px}.note-list article{padding:17px 0;border-top:1px solid var(--line)}.note-list strong{font-size:12px}.note-list time{display:block;font-size:10px;color:var(--muted);margin-top:3px}.note-list p,.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.note-list p{margin:10px 0 0;font-size:13px}.leaflet-container{font:12px "Segoe UI",Arial,sans-serif;color:#20374b}.leaflet-control-layers{background:#fafdfdf5;color:#20374b;border:1px solid #b1c4cf!important;border-radius:9px!important;padding:7px 10px;box-shadow:0 3px 15px #0002;color-scheme:light}.leaflet-control-layers label{display:block;font-size:12px;color:#20374b}.leaflet-control-layers input{accent-color:#247c85}.leaflet-control-attribution{font-size:9px!important}.leaflet-control-attribution a{color:#176b80}.leaflet-popup-content-wrapper{background:#fbfdfd;color:#20374b}.task-popup{min-width:150px}.task-popup>strong{font-size:16px;color:#176b80}.task-popup p{margin:8px 0!important;font-size:12px}.task-popup small{display:block;color:#476075}.task-popup .button{margin-top:13px;color:#e8f7fd;min-height:36px}.task-marker-wrapper{background:none;border:none}.task-marker{display:block;width:25px;height:25px;border-radius:50% 50% 50% 0;background:#138d8c;transform:rotate(-45deg);border:3px solid white;box-shadow:0 3px 12px #12384f70}.task-marker.application{background:#8361c0}.task-marker.taken{background:#4373b5}.task-marker.finished{background:#62917a}.map-error{position:absolute;left:15px;right:15px;bottom:25px;z-index:450;background:#213a4de8;color:#f0f8ff;border-radius:8px;padding:10px 14px;font-size:11px;margin:0}.location-dialog .map-error{position:static;border-radius:0}.field-page .app-main{max-width:1600px;padding:20px 3vw}.field-page .period-bar{padding-bottom:13px;margin-bottom:15px}.field-heading{margin:5px 0 19px}.field-heading h1{font-size:32px;margin-top:9px}.field-heading p{font-size:12px}.field-top-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.sync-status{font-size:10px;color:#9ad8cb}.field-counters .metric{text-align:left;cursor:pointer;padding:12px 20px;transition:border-color .2s}.field-counters .metric:hover{border-color:#75dbd1}.field-counters .metric strong{font-size:29px;margin:4px 0 0}.field-counters .metric span{font-size:11px}.field-counters .purple{border-left-color:#b798ec}.field-counters .purple strong{color:#cfbbf6}.field-filters{margin-top:19px}.field-filter-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.field-filter-row>input,.field-filter-row>select{min-height:42px;background:#101e30;color:var(--ink);border:1px solid #354e69;border-radius:9px;padding:9px 12px;font-size:12px}.field-filter-row>input[type=search]{flex:1;min-width:210px}.field-filter-row>select{flex:1;min-width:145px}.infrastructure-pills{display:flex;gap:7px;align-items:center;border:0;padding:0;margin:0;flex-wrap:wrap}.infrastructure-pills label{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #34506a;border-radius:8px;background:#101f30;cursor:pointer;font-size:11px}.infrastructure-pills input{accent-color:var(--accent);width:15px;height:15px}.month-control{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted);margin-left:auto}.month-control input{background:#101e30;color:var(--ink);padding:8px 10px;min-height:42px;border:1px solid #354e69;border-radius:8px;font-size:12px;max-width:155px}.field-count-hint{font-size:10px;margin:12px 0 18px}.field-workspace{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;height:62vh;min-height:480px}.field-job-list{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#0b1727;padding:15px}.list-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px;font-size:12px}.list-heading>span{font-size:10px;color:var(--muted)}.field-map-panel{position:relative;overflow:hidden;border:1px solid #39546c;border-radius:14px;background:#d7e0e9}#field-map{height:100%;width:100%}.field-job-card{padding:15px;margin-bottom:12px;border:1px solid #2c485f;border-left:3px solid #56cfc2;border-radius:12px;background:linear-gradient(125deg,#172b3d,#101d2f)}.field-job-card.application{border-left-color:#a98ae1}.field-job-card.problem{border-left-color:#e08a77}.job-card-header{display:flex;gap:10px;align-items:center;justify-content:space-between}.job-card-header>strong{color:#adf3e7;font-size:16px;letter-spacing:.6px}.job-card-header .badge{font-size:9px;padding:4px 9px}.field-job-card h3{font-size:12px;margin:12px 0 7px;font-weight:600}.field-job-card>p{font-size:11px;color:var(--muted);margin-bottom:10px;overflow-wrap:anywhere}.job-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;color:#abc3d8}.job-card-meta .distance{color:var(--accent)}.job-owner{font-size:11px;margin-top:13px;border-top:1px solid #2b4259;padding-top:11px}.job-readiness{display:flex;gap:12px;font-size:10px;margin:9px 0 14px}.job-card-actions{display:flex;gap:7px;flex-wrap:wrap}.job-card-actions .button{font-size:10px;padding:7px 10px;min-height:36px}.good-text{color:#98dfc4}.warning-text{color:#e0bd85}.field-empty{font-size:13px;color:var(--muted);padding:30px 15px;line-height:1.8}.map-legend{position:absolute;z-index:450;bottom:25px;left:15px;display:flex;gap:13px;flex-wrap:wrap;padding:8px 12px;background:#0a1b2bea;border:1px solid #527486;border-radius:10px;color:#d9e9f5;font-size:10px}.map-legend span{display:flex;align-items:center;gap:5px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#42c7bc}.legend-dot.application{background:#b395e8}.legend-dot.taken{background:#77a0d7}.legend-dot.done{background:#9bc4ab}.field-mobile-tabs{display:none}.field-filter-row button[aria-pressed=true]{border-color:#e6bd77;color:#f2d49e;background:#3a302a}.field-page .field-count-hint+.field-mobile-tabs{margin-top:10px}
@media(max-width:1100px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-columns{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:18px}.task-columns .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-workspace{grid-template-columns:320px minmax(0,1fr)}.field-top-actions{justify-content:flex-start}.month-control{margin-left:0}.task-columns .panel{padding:22px}}
@media(max-width:800px){.worker-header nav{display:none}.photo-grid,.task-columns .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-card img{height:145px}.photo-meta{padding:11px}.photo-meta strong{font-size:11px}.photo-meta input{font-size:16px}.task-columns{display:flex;flex-direction:column}.task-main,.task-aside{width:100%}.task-aside{order:-1}.task-mini-map{height:240px}.task-info h2{font-size:21px}.task-info dl{grid-template-columns:1fr 1.7fr}.photo-lightbox{max-width:97vw;width:97vw}.photo-lightbox h2{font-size:12px;max-width:80%}.photo-lightbox img{max-height:65vh}.photo-lightbox footer{gap:6px;padding:12px}.photo-lightbox footer a{font-size:11px}.photo-lightbox button{font-size:11px;padding:8px 11px}.location-dialog{max-width:96vw;width:96vw}.location-dialog header{padding:13px}.location-dialog h2{font-size:16px}.location-dialog .picker-map{height:48vh;min-height:270px}.location-dialog footer{flex-direction:column;align-items:stretch;padding:13px}.location-dialog footer>div{display:flex;justify-content:space-between}.location-tools .button{width:100%}.removed-photo{align-items:flex-start;flex-direction:column}.field-page .app-main{padding:16px}.field-heading{gap:13px}.field-heading h1{font-size:28px}.field-top-actions{gap:10px}.field-top-actions .button{font-size:11px}.field-counters .metric{padding:10px 14px}.field-counters .metric strong{font-size:27px}.field-counters .metric span{font-size:10px}.field-filter-row>input,.field-filter-row>select{font-size:16px;min-height:44px}.field-filter-row>input[type=search]{flex-basis:100%}.field-filter-row>select{min-width:130px}.infrastructure-pills{width:100%}.infrastructure-pills label{flex:1;justify-content:center;font-size:10px;min-height:42px;padding:7px}.month-control{flex:1}.month-control input{font-size:16px;max-width:170px}.field-filter-row>.button{flex:1;font-size:10px;white-space:nowrap}.field-count-hint{font-size:10px;line-height:1.6;margin-bottom:13px}.field-mobile-tabs{display:flex;gap:8px;margin-bottom:12px}.field-mobile-tabs .button{flex:1}.field-workspace{display:block;height:60vh;min-height:420px}.field-job-list{display:none;height:100%}.field-map-panel{height:100%}.field-workspace.show-list .field-job-list{display:block}.field-workspace.show-list .field-map-panel{display:none}.map-legend{gap:7px;left:8px;right:8px;font-size:9px;bottom:23px;justify-content:center}.field-job-card .job-card-actions .button{min-height:42px;font-size:11px}.leaflet-control-layers{font-size:11px;padding:6px 9px}.leaflet-control-layers label{font-size:11px}}
@media(prefers-reduced-motion:reduce){.field-counters .metric{transition:none}}
