.crew-page{display:grid;gap:14px;padding-bottom:28px}.crew-day-line{margin:0;color:var(--muted);font-weight:600}.crew-section{margin:10px 0 0;font-size:19px}.crew-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 16px;border:1px solid var(--hair);border-radius:12px;background:var(--surface);color:var(--petrol);font:inherit;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer}.crew-button.is-primary{border-color:var(--petrol);background:var(--petrol);color:#fff}.crew-button.is-notice{justify-content:flex-start;border-color:#f2d48a;background:#fff6dc;color:#6b4a00}.crew-button-icon{width:20px;height:20px;flex:none}.crew-job{display:grid;gap:6px;padding:16px;border:1px solid var(--hair);border-radius:16px;background:var(--surface)}.crew-job.is-next{border-color:var(--petrol);box-shadow:0 0 0 1px var(--petrol) inset,0 6px 18px #00000014}.crew-job[data-phase=done]{opacity:.75}.crew-job-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.crew-job-time{font-weight:800;font-variant-numeric:tabular-nums;font-size:18px}.crew-job-flag{padding:2px 10px;border-radius:999px;background:var(--petrol);color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.crew-job-flag.is-done{background:#2e7d4f}.crew-job-flag.is-paused{background:#8a6d1f}.crew-job-title{margin:2px 0 0;font-size:20px;line-height:1.25}.crew-job-customer,.crew-job-address{margin:0}.crew-job-customer{font-weight:600}.crew-job-address{color:var(--muted)}.crew-job-access{margin:0;padding:8px 10px;border-radius:10px;background:#f3f5f2;font-size:16px}.crew-job-worked{margin:0;font-weight:600;color:var(--petrol);font-variant-numeric:tabular-nums}.crew-job-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:6px}.crew-job-more{margin-top:4px;border-top:1px solid var(--hair);padding-top:8px}.crew-job-more summary{min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--petrol);cursor:pointer}.crew-job-more h4{margin:14px 0 6px;font-size:16px}.crew-job-text{margin:0}.crew-check,.crew-materials,.crew-docs,.crew-stops{list-style:none;margin:0;padding:0;display:grid;gap:6px}.crew-check label{display:flex;align-items:center;gap:12px;min-height:44px}.crew-check input{width:24px;height:24px;accent-color:var(--petrol);flex:none}.crew-check-photo{width:24px;text-align:center;flex:none}.crew-check-photo.is-done{color:#2e7d4f;font-weight:800}.crew-materials li,.crew-docs li{display:flex;align-items:center;gap:10px;justify-content:space-between;min-height:40px;padding:6px 0;border-bottom:1px solid var(--hair)}.crew-materials small,.crew-docs small{color:var(--muted);font-size:14px;text-align:right}.crew-docs li{justify-content:flex-start}.crew-docs small{margin-left:auto}.crew-photos{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.crew-photos img{width:76px;height:76px;object-fit:cover;border-radius:10px}.crew-issue{display:grid;gap:8px}.crew-issue select,.crew-issue textarea{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid var(--hair);border-radius:10px;font:inherit;font-size:16px;background:#fff;color:var(--ink)}.crew-hint{margin:4px 0 0;color:var(--muted);font-size:14px}.crew-tomorrow{margin:0;padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--hair)}.crew-stops a{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--hair);border-radius:14px;background:var(--surface);color:var(--ink);text-decoration:none}.crew-stops small{color:var(--petrol);font-weight:700}.crew-message{padding:14px 16px;border:1px solid var(--hair);border-radius:14px;background:var(--surface)}.crew-message.is-new{border-color:#f2d48a;background:#fff9e8}.crew-message h3{margin:4px 0;font-size:18px}.crew-message p{margin:0}.crew-message small,.crew-contact small{color:var(--muted);font-weight:600}.crew-contact{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--hair);border-radius:14px;background:var(--surface)}.crew-contact h3{margin:0;font-size:18px}.crew-contact p{margin:0;color:var(--muted)}.crew-emergency{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 16px;border-radius:14px;background:#b42318;color:#fff;font-weight:800;text-decoration:none}.crew-toast{position:fixed;left:16px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:50;margin:0 auto;max-width:480px;padding:12px 16px;border-radius:12px;background:var(--ink);color:#fff;font-weight:600;box-shadow:0 8px 24px #00000040}.crew .viewer-header .viewer-brand{max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.viewer-stage>.crew-map{position:absolute;top:0;right:0;bottom:0;left:0}.crew-pin{width:36px;height:36px;border:3px solid #fff;border-radius:50%;background:var(--petrol);color:#fff;font:800 15px/1 system-ui,sans-serif;box-shadow:0 2px 8px #00000059;cursor:pointer;display:grid;place-items:center}.crew-pin:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%}.crew-pin.is-done{background:#2e7d4f}.crew-pin.has-access:after{content:"";position:absolute;top:-4px;right:-4px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#f2b705}.crew-map-access{margin:0;padding:8px 10px;border-radius:10px;background:#fff6d6;color:#5c4400;font-size:14px;line-height:1.35}.crew-pin.is-chosen{outline:3px solid #f2b705;outline-offset:1px}.crew-map-card{position:absolute;left:10px;right:10px;bottom:12px;z-index:6;display:grid;gap:6px;padding:14px 16px;border-radius:16px;background:var(--surface);box-shadow:0 10px 28px #00000038}.crew-map-card[hidden]{display:none}.crew-map-card .is-ghost{position:absolute;top:8px;right:8px;min-height:40px;padding:0 10px;border:0;background:none;color:var(--muted);font-size:14px}#viewer.has-tabs:not([data-area=map]) .crew-map-card{display:none}.crew-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.crew-figure{display:grid;gap:2px;padding:12px;border:1px solid var(--hair);border-radius:14px;background:var(--surface);text-align:center}.crew-figure strong{font-size:18px;font-variant-numeric:tabular-nums}.crew-figure span{color:var(--muted);font-size:14px}.crew-capture{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.crew-capture .cap-btn{min-height:48px;border-radius:12px;font:inherit;font-size:16px;font-weight:700}.crew-scan-count{padding:6px 10px;border-radius:999px;background:#eef3ef;color:var(--petrol);font-weight:700;font-size:14px}.crew-capture .cap-btn{border:1px solid var(--hair);background:var(--surface);color:var(--petrol)}.crew-job-flag.is-overdue{background:#fff1d6;color:#7a4b00;text-transform:none;letter-spacing:0}.viewer-sat-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.viewer-sat-toggle[aria-pressed=true]{background:#e8f1f6;color:#0b1726}@media(min-width:900px){body.crew{background:#e9ece9}body.crew #viewer:not([data-area=map]){max-width:640px;margin:0 auto;box-shadow:0 0 0 1px var(--hair),0 20px 60px #00000014}body.crew #viewer[data-area=map] .viewer-tabs{width:640px;justify-self:center;border:1px solid var(--hair);border-bottom:0;border-radius:16px 16px 0 0}}
