/* 
 * Main Styles Entry Point
 * Imports all modular CSS components
 */

/* Variables (design tokens) */
@import url('css/variables.css');

/* Base styles */
@import url('css/components/base.css');

/* Scrollbar styles */
@import url('css/components/scrollbars.css?v=20260703');

/* Component Partials (individual components with dedicated JS) */
@import url('css/partials/topbar.css?v=20260318');
@import url('css/partials/sidebar.css');
@import url('css/partials/footer.css');

/* Layout components */
@import url('css/components/layout.css');
@import url('css/components/navigation.css?v=20260803');
@import url('css/components/page-header.css');
@import url('css/components/list-shell.css');
@import url('css/components/unified-search.css?v=20260504a');

/* UI components */
@import url('css/components/buttons.css');
@import url('css/components/forms.css');
@import url('css/components/form-page.css');
@import url('css/components/booking-page-settings.css');
@import url('css/components/search.css');
@import url('css/components/cards.css');
@import url('css/components/modals.css');
@import url('css/components/drawer.css');
@import url('css/components/import-anything.css');
/* Note: mobile-bottom-sheet.css removed - content migrated to css/mobile/ */
@import url('css/components/task-drawer.css?v=20260318');
@import url('css/components/version-history.css');
@import url('css/components/tables.css');
@import url('css/components/table-manager.css');
@import url('css/components/table-rowcards.css');
@import url('css/components/searchable-select.css');
@import url('css/components/queue-tabs.css');

/* Feature-specific styles */
@import url('css/components/auth.css');
/* @import url('css/components/dashboard.css'); */
@import url('css/admin/settings.css');
@import url('css/admin/agentConfig.css');
@import url('css/admin/harnessOps.css');
@import url('css/users/users.css');
@import url('css/crm/vendors.css');
@import url('css/crm/customers.css');
@import url('css/crm/leads.css');
@import url('css/projects/projects.css?v=20260703');
@import url('css/projects/program-hub.css');
@import url('css/operations/procurement.css?v=20260703');
@import url('css/calendar/calendar.css?v=20260703');
@import url('css/projects/tasks.css');
@import url('css/files/files.css');
/* Messaging CSS — css/messages/** was DELETED in messaging-v2-port Phase 9b
   (2026-08-02), after Phase 9 removed the v1 messaging JS. The 30,859 lines were
   filtered down to the rules live surfaces still render (channels-v2, the shared
   rich-text-editor popups, attachment preview, task-drawer comment bubbles,
   agent-authored message cards, the call overlays in views/index.ejs) and split
   into the three files below. THE ORDER IS THE OLD CASCADE ORDER — do not
   reshuffle: -shared was messages-layout…messages-features, -floating was
   messages-floating (still immediately after the generic window engine), and
   -overrides was messages-advanced + threads-hub + sidebar-v2, which deliberately
   override -shared. */
@import url('css/components/messaging-shared.css');
/* Generic floating-window engine (generic-windows.js) — carved out of
   messages-floating.css in messaging-v2-port Phase 8. MUST stay immediately
   before messaging-floating.css: that is the cascade position these rules
   occupied. */
@import url('css/components/floating-windows.css?v=20260730');
@import url('css/components/messaging-floating.css');
@import url('css/components/messaging-overrides.css'); /* incl. the sleek sidebar skin — MUST be the last messaging import */
@import url('css/components/mention-modal.css');
@import url('css/components/image-viewer.css?v=20260318');
@import url('css/finance/finance.css?v=20260703');
@import url('css/support/knowledgeBase.css?v=20260722');
@import url('css/finance/expenses.css');
@import url('css/finance/contracts.css?v=20260723');
@import url('css/finance/contract-ledger.css');
@import url('css/components/permissions.css');
@import url('css/projects/risks.css');
@import url('css/admin/admin-metrics.css');
@import url('css/admin/moderationReports.css');
@import url('css/components/emoji-picker.css');
@import url('css/components/emoji-builder.css');
@import url('css/components/reactions.css?v=20260318');
@import url('css/components/system-types.css');
@import url('css/components/mentions.css');
@import url('css/components/terminal-channel.css');
@import url('css/components/comment-thread.css');
@import url('css/components/email-ledger.css');
@import url('css/components/qais-panel.css');
@import url('css/components/qcoin.css');
@import url('css/components/assistant-toggle.css');

/* Emergency Operations — Evacuation Command moved to /modules/evacuation-command/styles.css,
   loaded via <link> in views/index.ejs (manifest assets[] allow-list). Old
   public/css/evacuation/evacuation.css kept on disk as rollback insurance. */

/* Utility classes */
@import url('css/components/utilities.css');
/* Note: responsive.css removed - content migrated to mobile2026.css */
/* Note: mobile.css removed - content migrated to mobile2026.css */

/* Mobile — reorganized into css/mobile/ (loaded last for proper cascade) */
@import url('css/mobile/index.css');
/* ═══════════════════════════════════════════════════════════════
   Reduced motion — global fallback (2026-07-12 perf/a11y audit).
   185 infinite animations exist across the CSS layer and only ~24% of files
   honored the preference. Near-zero durations (not `none`) so animation-fill
   states and JS animationend/transitionend handlers still fire.
   ═══════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
