/* ==============================================================================
   DECODER · ECU LAB — Master Stylesheet & Component Registry
   web/styles.css
   ============================================================================== */
/* Design tokens, dark/light variables & ambient cyber canvas */
@import "./components/tokens.css?v=public-onboarding-20261106-v1";
@import "./icons/decoder-icons.css?v=proof-compact-1";
/* Core atoms: buttons, chips, status LEDs, inputs, notices, toast */
@import "./components/atoms.css?v=proof-compact-1";
@import "./components/controls.css?v=switch-align-20261105";
/* Structural components */
@import "./components/header.css?v=switch-align-20261105";
@import "./components/stage.css?v=proof-compact-1";
@import "./components/terminal.css?v=proof-compact-1";
@import "./components/more.css?v=proof-compact-1";
@import "./components/modals.css?v=proof-compact-1";
@import "./components/admin.css?v=proof-compact-1";
@import "./components/cockpit.css?v=proof-compact-1";
@import "./components/multiterminal.css?v=proof-compact-1";
@import "./components/files.css?v=proof-compact-1";
@import "./components/wallet-dialog.css?v=proof-compact-1";
/* ==============================================================================
   Responsive Layout & Accessibility Media Queries
   ============================================================================== */
@media (max-width: 560px) {
  body {
    padding: 0;
  }
  .app-shell {
    min-height: 100vh;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    padding: 10px;
  }
  .stage-heading {
    align-items: flex-start;
  }
  .stage-actions {
    flex-direction: column;
    align-items: flex-end;
  }
  .visualizer-wrap {
    height: 245px;
  }
  .job-info {
    grid-template-columns: 1fr;
    gap: 3px;
  }
  .brand {
    font-size: 12px;
  }
  .panel-actions {
    grid-template-columns: 1fr;
  }
  .terminal-output {
    height: 150px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .scan-line, .crt-roll {
    display: none !important;
  }
  .is-crt-glitch .crt-screen > * {
    animation: none !important;
  }
}
@supports not ((backdrop-filter: blur(10px)) or (-webkit-backdrop-filter: blur(10px))) {
  .theme-dark {
    --bg-container: #090b10;
    --bg-stage: #050608;
    --bg-card: #0d1017;
    --bg-subtle: #0f131a;
    --term-bg: #050608;
    --term-hdr: #0b0d12;
  }
  .theme-light {
    --bg-container: #ffffff;
    --bg-stage: #f8fafc;
    --bg-card: #ffffff;
    --bg-subtle: #f1f5f9;
    --term-bg: #ffffff;
    --term-hdr: #f8fafc;
  }
  .modal {
    background: rgba(0, 0, 0, 0.85);
  }
}
