/* Selected improvements only: navigation, incident form, state and press feedback. */
.command-shell .top-bar { gap: 10px; min-height: 64px; padding: 9px 14px; }
.top-bar strong { font-size: 17px; font-weight: 650; }
.top-bar span { font-size: 12px; }
.command-shell :is(.icon-btn, .status-pill) {
  min-height: 44px; border-radius: 13px;
  border-color: rgba(151, 204, 248, .2);
  background: linear-gradient(145deg, rgba(65, 111, 159, .45), rgba(13, 37, 65, .84));
  box-shadow: inset 0 1px rgba(220, 240, 255, .08), 0 4px 12px rgba(0, 8, 22, .14);
}
.command-shell .icon-btn { width: 44px; }
.command-shell .status-pill { font-size: 14px; font-weight: 650; }
.command-shell .app { padding: 18px 16px max(32px, env(safe-area-inset-bottom)); }
html[data-command-view="home"] .command-shell .app { padding: 0; }

/* Use the configured home cover without changing the original identity header layout. */
.command-shell .hero-home { isolation: isolate; background: #061426; }
.command-shell .hero-home > .hero-home-cover { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.command-shell .hero-home::before { z-index: -1; background: linear-gradient(180deg, rgba(4, 11, 20, .18), rgba(4, 11, 20, .82)); }

/* Form-only styling; other cards and menus keep their original appearance. */
.command-shell .incident-report .detail-top { align-items: flex-start; padding: 18px; }
.command-shell .incident-report .detail-top > div { min-width: 0; }
.command-shell .incident-report .detail-top h1 { font-size: 25px; line-height: 1.3; overflow-wrap: anywhere; }
.command-shell .incident-report .mini-btn { flex: 0 0 auto; min-height: 44px; padding: 10px 14px; border-radius: 12px; border-color: var(--line); background: rgba(117, 181, 227, .08); box-shadow: none; color: #cee6f8; font-size: 13px; font-weight: 650; }
.command-shell .incident-report .save-btn { min-height: 48px; border-radius: 13px; font-size: 15px; font-weight: 650; }
.command-shell :is(.primary-btn, .save-btn) { display: flex; align-items: center; justify-content: center; gap: 9px; }
.command-shell .incident-float { display: flex; align-items: center; justify-content: center; gap: 7px; width: auto; min-height: 48px; height: auto; padding: 12px 16px; border-radius: 16px; border-color: rgba(135, 206, 255, .48); background: #164574; box-shadow: 0 6px 22px rgba(0, 8, 22, .3); }
.command-shell .incident-float svg { width: 20px; height: 20px; }
.command-shell .incident-float span { display: inline; font-size: 14px; font-weight: 650; }
html[data-command-view="detail"] .command-shell .app { padding-bottom: max(110px, calc(env(safe-area-inset-bottom) + 96px)); }
.command-shell .incident-report { gap: 18px; padding: 0; }
.command-shell .incident-report label { gap: 9px; color: #c9dfef; font-size: 14px; }
.command-shell .incident-report :is(input, textarea) { padding: 13px 14px; border-radius: 12px; border-color: var(--line-hot); background: rgba(12, 37, 62, .8); }
.command-shell .incident-report textarea { min-height: 144px; line-height: 1.6; }
.command-shell .incident-report :is(input, textarea)::placeholder { color: #8da9bf; }
.command-shell .incident-note { font-size: 13px; color: var(--muted); line-height: 1.65; }
.command-shell .incident-attachment-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.command-shell .incident-attachment-actions .incident-file { position: relative; display: flex; align-items: center; justify-content: center; min-height: 64px; padding: 12px 8px; border-radius: 14px; background: rgba(93, 165, 217, .08); cursor: pointer; }
.command-shell .incident-file svg { width: 22px; height: 22px; flex: 0 0 22px; color: #9edcff; }
.command-shell .incident-file:focus-within { outline: 2px solid #8bdcff; outline-offset: 3px; }
.command-shell .incident-images { gap: 10px; }
.command-shell .incident-images > div { gap: 8px; }
.command-shell .incident-images img { border-radius: 12px; }
.command-shell .incident-images button { position: static; min-height: 44px; padding: 8px; border: 1px solid var(--line); border-radius: 10px; background: rgba(121, 172, 215, .08); font-size: 13px; }
.command-shell .incident-video-draft { margin: 0; padding: 14px; border-color: var(--line); background: #0c233b; border-radius: 16px; }
.command-shell .incident-video-actions button { min-height: 44px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(121, 172, 215, .08); }
.command-shell :is(.incident-error, .auth-error) { padding: 12px 14px; border: 1px solid rgba(255, 156, 146, .3); border-radius: 12px; background: rgba(120, 41, 44, .15); color: #ffc0b8; font-size: 14px; line-height: 1.6; }
.command-shell .incident-success { min-height: 65dvh; gap: 16px; padding: 40px 16px; text-align: center; align-content: center; }
.command-shell .incident-success b { font-size: 22px; line-height: 1.5; }
.command-shell .incident-success p { margin: 0 0 8px; color: var(--muted); }
.command-shell :is(button:disabled, [aria-disabled="true"], .incident-file:has(input:disabled)) { opacity: .5; cursor: not-allowed; box-shadow: none; }
.command-shell button[aria-busy="true"] { opacity: .8; cursor: progress; }
.command-shell button[aria-busy="true"]::before { content: ""; width: 16px; height: 16px; flex: 0 0 16px; border: 2px solid rgba(221, 242, 255, .3); border-top-color: #e7f6ff; border-radius: 50%; animation: command-busy-spin .7s linear infinite; }
@keyframes command-busy-spin { to { rotate: 360deg; } }

.vf-broadcast-image-preview-close { padding: 0 !important; line-height: 1 !important; }

/* Independent scale/translate preserve absolute positioning of map controls. */
:root.vf-interaction-enabled :is(button, a[href], [role="button"], .incident-file) {
  -webkit-tap-highlight-color: transparent; touch-action: manipulation;
  transition: scale 140ms cubic-bezier(.2,.8,.2,1), translate 140ms ease, filter 100ms ease, border-color 100ms ease, box-shadow 140ms ease;
}
:root.vf-interaction-enabled :is(.role-card, .choice-card, .unit-card, .mini-btn, .primary-btn, .ghost-btn, .detail-tabs button, .icon-btn):active { transform: none; }
:root.vf-interaction-enabled .point-marker:active { transform: translate(-50%, -50%); }
:root.vf-interaction-enabled .vf-pressed:not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]) {
  scale: var(--vf-press-scale, .975); translate: 0 1px; filter: brightness(1.12);
  border-color: #8bdcff !important; transition-duration: 65ms;
  box-shadow: inset 0 0 0 100vmax rgba(116, 210, 255, .14), inset 0 2px 5px rgba(0, 7, 20, .3), 0 2px 7px rgba(0, 7, 20, .15) !important;
}
:root.vf-interaction-enabled .vf-pressed[data-feedback-size="small"] { --vf-press-scale: .95; }
:root.vf-interaction-enabled .vf-pressed[data-feedback-size="card"] { --vf-press-scale: .985; }
:root.vf-interaction-enabled :is(button, a[href], input, textarea, [role="button"]):focus-visible { outline: 2px solid #8bdcff; outline-offset: 3px; }
@media (min-width: 520px) { .command-shell .incident-float { right: max(16px, calc((100vw - 430px) / 2 + 16px)); } }
@media (max-width: 360px) {
  .command-shell .app { padding-inline: 12px; }
  .command-shell .incident-file { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  :root.vf-interaction-enabled :is(button, a[href], [role="button"], .incident-file) { transition: none; }
  :root.vf-interaction-enabled .vf-pressed { scale: 1 !important; translate: none !important; }
  .command-shell button[aria-busy="true"]::before { animation: none; }
}
