/* Sisyphus Terminal navigation fixes. Loaded after the shared theme bundle so
   the operational rail remains usable at every viewport size. */

@media screen {
  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar {
    z-index: 1000 !important;
  }

  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']):not([data-mode='dark']) body :is(#app-view, #mobile-floating-content) > .sidebar {
    background: linear-gradient(180deg, #f0efe7, #d7d7d0) !important;
    color: #10282a !important;
    border-right-color: rgba(0, 75, 80, .42) !important;
  }

  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']):not([data-mode='dark']) body :is(#app-view, #mobile-floating-content) > .sidebar :is(.brand strong, .brand span, .nav-item, .sidebar-foot, .sidebar-foot .muted, .nav-reorder-hint) {
    color: #10282a !important;
  }

  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']):not([data-mode='dark']) body :is(#app-view, #mobile-floating-content) > .sidebar :is(.nav-item, .nav-reorder-btn) {
    background: transparent !important;
    color: #10282a !important;
    border-color: rgba(0, 75, 80, .42) !important;
    box-shadow: none !important;
  }

  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']):not([data-mode='dark']) body :is(#app-view, #mobile-floating-content) > .sidebar :is(.nav-item > span:first-child, .nav-item span, .nav-reorder-btn) {
    color: #004b50 !important;
  }

  html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']):not([data-mode='dark']) body :is(#app-view, #mobile-floating-content) > .sidebar .nav-item.active {
    background: linear-gradient(180deg, rgba(0, 107, 112, .16), rgba(0, 107, 112, .07)) !important;
    color: #10282a !important;
    border-color: rgba(0, 75, 80, .58) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8) !important;
  }

  @media (max-width: 900px) {
    /* The Terminal jitter transform creates a containing block for fixed
       descendants. Disable that one effect on phones so the dock stays pinned
       to the viewport instead of drifting into the document flow. */
    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) #app-view {
      animation: none !important;
      transform: none !important;
      translate: none !important;
      filter: none !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar {
      position: fixed !important;
      inset: auto 0 0 !important;
      width: auto !important;
      height: auto !important;
      min-height: 0 !important;
      padding: 4px 8px !important;
      display: block !important;
      overflow: visible !important;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar > nav {
      display: flex !important;
      flex-wrap: wrap !important;
      gap: 4px 6px !important;
      width: 100% !important;
      height: auto !important;
      min-height: 0 !important;
      overflow: visible !important;
      flex: 0 0 auto !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .brand,
    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .sidebar-foot,
    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .nav-item {
      display: none !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .mobile-nav-dock-tools {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) minmax(132px, .9fr) !important;
      gap: 6px !important;
      width: 100% !important;
      min-width: 0 !important;
      flex: 1 1 100% !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .mobile-nav-selector-control {
      display: grid !important;
      min-width: 0 !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar #mobile-nav-select {
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
      width: 100% !important;
      min-height: 42px !important;
      background: linear-gradient(180deg, #f0efe7, #d7d7d0) !important;
      color: #10282a !important;
      border: 2px solid #004b50 !important;
    }

    html:is([data-world='sisyphus-terminal'], [data-theme='sisyphus-terminal']) body :is(#app-view, #mobile-floating-content) > .sidebar .nav-room-search input {
      min-width: 0 !important;
      color: #10282a !important;
    }
  }
}

/* Terminal console refresh. The verified world-card-sisyphus-terminal
   keyframes, 15s cadence and sibling phase offsets stay in the shared source.
   This late, world-scoped sheet only refines the console around those cards. */
@media screen {
  html[data-world='sisyphus-terminal'][data-theme][data-mode] {
    --terminal-ink:var(--world-text);
    --terminal-muted:var(--world-secondary);
    --terminal-line:color-mix(in srgb,var(--world-border) 62%,transparent);
    --terminal-key:var(--world-elevated);
    --terminal-bright:clamp(0%,calc((var(--tuner-bg-brightness-number,1) - 1) * 100%),22%);
    --terminal-shade:clamp(0%,calc((1 - var(--tuner-bg-brightness-number,1)) * 100%),22%);
    --terminal-background:color-mix(in srgb,color-mix(in srgb,var(--world-background) calc(100% - var(--terminal-bright)),white var(--terminal-bright)) calc(100% - var(--terminal-shade)),black var(--terminal-shade));
    --terminal-cyan:var(--world-accent);
    --terminal-card-period:15s;
    --terminal-done-ink:#a0e8be;
    --terminal-amber:#f6c573;
    --terminal-red:var(--world-danger);
    --terminal-shadow:inset 0 1px 0 color-mix(in srgb,var(--world-text) 8%,transparent),0 9px 20px -16px #000;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode='light'] {
    --terminal-amber:#805000;
    --terminal-done-ink:#215d3b;
    --terminal-shadow:inset 0 1px 0 #ffffffa6,0 9px 20px -16px #35403e66;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(body,.workspace) {
    background:linear-gradient(135deg,var(--terminal-background),color-mix(in srgb,var(--terminal-background) 92%,var(--world-border))) !important;
    color:var(--terminal-ink);
  }
  /* Readable work plane: no whole-screen jitter, rapid scan or random static. */
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.workspace,#app-view) { animation:none !important; translate:none !important; filter:none !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .workspace::before,
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .workspace::after { display:none !important; animation:none !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .world-atmosphere { opacity:.18; }

  html[data-world='sisyphus-terminal'][data-theme][data-mode] #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.arrival-tier):not(.early-tier):not(.finished):not(.card-dragging):not(:where(.print-preview-sheet *,#print-run-root *)) {
    background:linear-gradient(145deg,color-mix(in srgb,var(--world-surface) 96%,var(--world-text)),var(--world-surface)) !important;
    border-color:var(--terminal-line) !important;
    box-shadow:var(--terminal-shadow) !important;
    text-shadow:none;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] #app-view .view .panel > .panel-head {
    background:linear-gradient(90deg,color-mix(in srgb,var(--world-elevated) 68%,transparent),transparent) !important;
    border-bottom-color:var(--terminal-line) !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(h1,h2,h3,.panel-head strong,.eyebrow,.topbar h1,.brand strong) {
    color:var(--terminal-ink) !important;
    text-shadow:none !important;
    letter-spacing:.015em;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.muted,.secondary,.faint,.brand span) { color:var(--terminal-muted) !important; text-shadow:none; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .housekeeper-greeting {
    text-align:left; font-family:var(--font-sans,system-ui,sans-serif); font-size:clamp(22px,2.2vw,30px); line-height:1.35;
    margin:24px 0 20px; padding:0 0 16px; border-bottom:1px solid var(--terminal-line) !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .housekeeper-greeting em { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-style:normal; font-size:.86em; color:var(--world-accent) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.metric strong,.metric-value,.room-number,.checkin-countdown) { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-variant-numeric:tabular-nums; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .metric { padding:18px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .metric > span:first-child { font-size:12px; color:var(--terminal-muted); }

  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.topbar,.mobile-nav-bar,#mobile-nav-sheet,.notification-panel,dialog) {
    background:linear-gradient(180deg,var(--world-surface),var(--world-elevated)) !important;
    color:var(--terminal-ink) !important;
    border-color:var(--terminal-line) !important;
    box-shadow:var(--terminal-shadow) !important;
    text-shadow:none;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .topbar { border-radius:0 10px 0 10px !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .topbar h1 { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:20px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .topbar::before { background:linear-gradient(90deg,var(--world-accent) 0 36px,var(--terminal-line) 36px 100%) !important; opacity:.65; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar {
    background:var(--world-surface) !important; color:var(--terminal-ink) !important; border-color:var(--terminal-line) !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .sidebar nav { padding-bottom:8px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .sidebar::after { display:none !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar :is(.brand strong,.brand span,.sidebar-foot,.sidebar-foot .muted) { color:var(--terminal-ink) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar :is(.nav-item,.nav-reorder-btn) {
    font-family:var(--font-sans,system-ui,sans-serif); font-size:13px; font-weight:600; letter-spacing:0;
    background:transparent !important; border-color:transparent !important; color:var(--terminal-ink) !important; box-shadow:none !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar :is(.nav-item.active,.nav-item:hover) {
    background:color-mix(in srgb,var(--world-accent) 12%,var(--world-surface)) !important;
    border-color:color-mix(in srgb,var(--world-accent) 42%,transparent) !important;
    box-shadow:inset 3px 0 var(--world-accent) !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar .nav-item span { color:var(--terminal-muted) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .mobile-nav-selector-label { color:var(--terminal-muted) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.mobile-nav-sheet-head strong,.mobile-nav-sheet-item,.mobile-nav-sheet-reorder,.nav-reorder-hint) { color:var(--terminal-ink) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.mobile-nav-sheet-item.active,.mobile-nav-sheet-item:hover) { background:color-mix(in srgb,var(--world-accent) 12%,var(--world-surface)) !important; border-color:var(--world-accent) !important; }

  /* Neutral command keys; accent signals selection, amber signals caution. */
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button,button,select,input,textarea) {
    font-family:var(--font-sans,system-ui,sans-serif);
    background:var(--terminal-key) !important; color:var(--terminal-ink) !important;
    border-color:var(--terminal-line) !important; box-shadow:inset 0 1px 0 color-mix(in srgb,var(--world-text) 6%,transparent) !important;
    text-shadow:none; animation:none !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button,button):hover {
    background:color-mix(in srgb,var(--world-accent) 10%,var(--terminal-key)) !important;
    border-color:var(--world-accent) !important; box-shadow:none !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button.primary,button.primary) { background:var(--world-accent) !important; color:var(--world-on-accent) !important; border-color:var(--world-accent) !important; font-weight:700; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button.warning,button.warning) { color:var(--terminal-amber) !important; border-color:var(--terminal-amber) !important; background:color-mix(in srgb,var(--terminal-amber) 10%,var(--world-surface)) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button.danger,button.danger) { color:var(--world-danger) !important; border-color:var(--world-danger) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.button.success,button.success) { color:var(--world-success) !important; border-color:var(--world-success) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(button,.button):disabled { opacity:.5; cursor:not-allowed; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.stripped-button,.bedmade-button,.finished-button,.messaged-button):disabled {
    opacity:1; color:var(--terminal-done-ink) !important; border-color:color-mix(in srgb,var(--terminal-done-ink) 50%,transparent) !important;
    background:color-mix(in srgb,var(--terminal-done-ink) 10%,var(--world-surface)) !important; filter:none;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(input,textarea,select) { color-scheme:inherit; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(input,textarea)::placeholder { color:var(--terminal-muted) !important; opacity:.9; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(button,.button,input,textarea,select,summary):focus-visible { outline:2px solid var(--world-accent) !important; outline-offset:3px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .nav-room-search { min-width:0; border-radius:2px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .nav-room-search input { width:100%; min-width:0; font-size:12px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.status-badge,.badge,.room-list-count) { box-shadow:none !important; text-shadow:none; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .status-badge.waiting { color:var(--terminal-amber) !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .terminal-alert-slam { animation:none !important; }

  html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-dialog { width:min(760px,calc(100vw - 28px)) !important; max-width:calc(100vw - 28px) !important; padding:0 !important; overflow:hidden !important; border-radius:0 12px 0 12px; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] :is(.theme-tuner-section,.theme-tuner-head,.theme-tuner-foot) { border-color:var(--terminal-line); }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-section { border-radius:2px; background:var(--world-surface); }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-field input[type='range'] { accent-color:var(--world-accent); box-shadow:none !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-field .theme-tuner-reset { background:transparent !important; color:var(--terminal-muted) !important; border:0; box-shadow:none !important; }

  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-theme-tuner-motion='low'] { --terminal-card-period:30s; }
  /* Restore the same bounded card glitch on touch devices. Card text opacity
     remains 1; its rare displacement is at most two pixels, never a page flash. */
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations='on'] #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging):not(:where(.print-preview-sheet *,#print-run-root *)) {
    animation-name:world-card-sisyphus-terminal !important;
    animation-duration:calc(var(--terminal-card-period) / var(--tuner-motion-speed,1)) !important;
    animation-timing-function:steps(2,end) !important;
    animation-iteration-count:infinite !important;
  }
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations='on'] #app-view .view :is(.panel,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):nth-child(3n + 2) { animation-delay:-3.2s !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations='on'] #app-view .view :is(.panel,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):nth-child(3n) { animation-delay:-6.4s !important; }
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations]:is([data-decorative-animations='off'],[data-theme-tuner-motion='off']) #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging),
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations] #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging):focus-within,
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations]:has(dialog[open],.room-status-menu:not([hidden]),#notification-panel:not([hidden]),#mobile-nav-sheet:not([hidden])) #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging) { animation:none !important; translate:none; filter:none; }
  html.world-page-hidden[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations] #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging) { animation-play-state:paused !important; }

  @media (min-width:901px) {
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .mobile-nav-selector-control { display:none !important; }
  }
  @media (max-width:900px) {
    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar { background:transparent !important; border:0 !important; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar .mobile-nav-dock-tools {
      box-sizing:border-box; align-items:end; padding:5px; background:var(--world-surface); border:1px solid var(--terminal-line); border-radius:0 8px 0 8px; box-shadow:var(--terminal-shadow);
    }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .mobile-nav-selector-label { display:none !important; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar .nav-room-search { margin:0; padding:0; gap:0; min-height:44px; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar .nav-room-search button { width:44px; height:44px; min-width:44px; }

    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar #mobile-nav-select {
      background:var(--world-surface) !important; color:var(--terminal-ink) !important; border:1px solid var(--world-border) !important;
      font-family:var(--font-sans,system-ui,sans-serif); font-size:14px;
    }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] body :is(#app-view,#mobile-floating-content) > .sidebar .nav-room-search input { color:var(--terminal-ink) !important; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .housekeeper-greeting { margin:16px 0; padding-bottom:12px; font-size:22px; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .metric { padding:14px 12px; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .topbar h1 { font-size:18px; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-head h2 { font-size:20px; line-height:1.3; overflow-wrap:anywhere; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] dialog :is(button,.button) { min-height:44px; }
    html[data-world='sisyphus-terminal'][data-theme][data-mode] .theme-tuner-field .theme-tuner-reset { min-width:44px; }
  }
}
@media (prefers-reduced-motion:reduce) {
  html[data-world='sisyphus-terminal'][data-theme][data-mode][data-decorative-animations] #app-view .view :is(.panel,.room-card,.metric,.employee-bubble,.prod-score-card,.summary-card,.metric-card):not(.card-dragging) { animation:none !important; translate:none; filter:none; }
}
