html,body{color:#fff;background:#111827;margin:0;padding:0;font-family:Arial,sans-serif}html{-webkit-text-size-adjust:100%}body{min-width:0;overflow-x:hidden}*,:before,:after{box-sizing:border-box}button,input,select,textarea{font:inherit}.appHeader{z-index:1000;min-height:58px;padding:max(8px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) 8px max(20px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111827f5;border-bottom:1px solid #374151;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.appBrand{color:#fff;font-size:18px;font-weight:800}.appHeaderUser{align-items:center;gap:12px;min-width:0;display:flex}.appHeaderName{color:#d1d5db;text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:14px;overflow:hidden}a{text-decoration:none}.page{min-height:100dvh;padding:20px max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left))}.hero{min-width:0;max-width:900px;margin:0 auto;padding-top:clamp(24px,6vw,60px)}.hero h1{overflow-wrap:anywhere;margin-bottom:10px;font-size:clamp(30px,6vw,42px);line-height:1.08}.hero p{color:#d1d5db;font-size:clamp(16px,2vw,18px);line-height:1.5}.buttonRow{flex-wrap:wrap;gap:12px;margin-top:25px;display:flex}.primaryButton,.secondaryButton,.dangerButton{text-align:center;touch-action:manipulation;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:14px 18px;font-weight:700;line-height:1.2;display:inline-flex}.dangerButton{color:#fff;background:#991b1b;border-radius:10px;padding:14px 18px;font-weight:700}.statusBanner{border-left:5px solid #f97316}button.primaryButton,button.secondaryButton,button.dangerButton{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.55}.compactButton{min-height:42px;padding:9px 12px}.fullWidthButton{width:100%;margin-top:18px}.loginPage{place-items:center;display:grid}.loginHero{width:min(100%,480px);padding-top:0}.loginCard{margin-top:26px}.eyebrow{color:#fb923c;letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-weight:800}.errorText{color:#fecaca;background:#7f1d1d;border:1px solid #ef4444;border-radius:8px;padding:10px}.successText{color:#d1fae5;background:#064e3b;border:1px solid #10b981;border-radius:8px;padding:10px}.checkboxRow{align-items:center;gap:10px;min-height:48px;margin-top:12px;font-weight:700;display:flex}.checkboxRow input{flex:none;width:22px;height:22px}.roleAssignmentForm{grid-template-columns:1.2fr 1.2fr auto;align-items:end;margin:16px 0}.alignEndButton{min-height:44px}.primaryButton{color:#fff;background:#f97316}.secondaryButton{color:#fff;background:#374151}.card{overflow-wrap:anywhere;background:#1f2937;border:1px solid #374151;border-radius:14px;min-width:0;margin-top:20px;padding:18px}.input,.select,.textarea{color:#fff;box-sizing:border-box;background:#111827;border:1px solid #4b5563;border-radius:8px;width:100%;margin-top:6px;padding:12px;font-size:16px}.label{margin-top:14px;font-weight:700;display:block}.smallText{color:#9ca3af;font-size:14px}.timelineItem{border-left:4px solid #f97316;margin-top:14px;padding-top:4px;padding-bottom:4px;padding-left:12px}.wideHero{max-width:1400px}.gridTwo{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.gridThree{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.assignmentGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.assignmentBox{background:#111827;border:1px solid #374151;border-radius:12px;padding:14px}.formActionButton{margin-top:12px}.statusMessage{border-left:5px solid #38bdf8}.memberFormGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}.memberCardGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;display:grid}.memberCard{min-width:0}.memberEmail{color:#cbd5e1;overflow-wrap:anywhere}.sectionHeadingRow{justify-content:space-between;align-items:center;gap:12px;display:flex}.sectionHeadingRow h2{margin:0}.objectivesCard{min-height:170px}.objectivesCard h2{margin:0 0 10px}.inlineComposer{align-items:flex-end;gap:8px;margin-bottom:10px;display:flex}.inlineComposer .input{margin-top:0}.scrollingList{-webkit-overflow-scrolling:touch;max-height:160px;padding-right:6px;overflow-y:auto}.objectiveItem{min-height:44px;padding:10px 4px;font-size:15px}.objectiveComplete{opacity:.45;text-decoration:line-through}.chatMessages{-webkit-overflow-scrolling:touch;border:1px solid #3a4354;border-radius:10px;flex-direction:column;height:clamp(240px,40dvh,360px);margin-bottom:10px;padding:10px;display:flex;overflow-y:auto}.mapActionRow{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.incidentMap{border-radius:10px;width:100%;height:clamp(320px,55dvh,500px);margin-top:15px;overflow:hidden}.mapLegend{color:#fff;opacity:.9;flex-wrap:wrap;justify-content:center;gap:8px 14px;margin-top:10px;font-size:12px;display:flex}.modalBackdrop{z-index:3000;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:#030712d1;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.modalDialog{background:#1f2937;border:2px solid #ef4444;border-radius:16px;width:min(100%,540px);padding:clamp(18px,4vw,28px);box-shadow:0 24px 80px #0000008c}.modalDialog h2{margin-top:4px;font-size:clamp(24px,5vw,32px)}.modalActions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:22px;display:flex}@media (max-width:900px){.gridTwo,.gridThree,.assignmentGrid,.roleAssignmentForm,.memberFormGrid{grid-template-columns:1fr}.hero{padding-top:28px}}@media (max-width:640px){.appHeader{padding-right:max(12px, env(safe-area-inset-right));padding-left:max(12px, env(safe-area-inset-left));flex-wrap:wrap;align-items:flex-start;gap:8px}.appHeaderUser{justify-content:space-between;gap:8px;width:100%}.appHeaderName{flex:auto;max-width:none}.page{padding:12px max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.card{border-radius:12px;padding:14px}.buttonRow,.modalActions,.mapActionRow,.inlineComposer{flex-direction:column}.buttonRow>*,.modalActions>*,.mapActionRow>*,.inlineComposer>*{width:100%}.sectionHeadingRow{flex-direction:column;align-items:stretch}.incidentMap{height:min(62dvh,420px);min-height:300px}}@keyframes blink{50%{opacity:.2}}
