﻿/* === Design tokens ============================================================ */
:root {
  --c-primary:     #1565c0;
  --c-primary-lt:  #e3f2fd;
  --c-primary-dk:  #003c8f;
  --c-teal:        #00897b;
  --c-teal-lt:     #e0f2f1;
  --c-amber:       #e65100;
  --c-amber-lt:    #fff3e0;
  --c-bg:          #eef2f7;
  --c-surface:     #ffffff;
  --c-border:      #dde3ec;
  --c-text:        #1c2b3a;
  --c-text-1:      #1c2b3a;
  --c-text-2:      #637083;
  --c-hover:       #f0f2f5;
  --c-accent:      #1565c0;
  --c-ok:          #2e7d32;
  --c-ok-bg:       #e8f5e9;
  --c-ok-border:   #66bb6a;
  --c-err:         #b71c1c;
  --c-err-bg:      #ffebee;
  --c-err-border:  #ef5350;
  --shadow:        0 2px 8px rgba(21,101,192,.10);
  --shadow-sm:     0 1px 4px rgba(0,0,0,.07);
  --r:             8px;
  --r-sm:          4px;
}

/* === Base reset ============================================================== */
*, *::before, *::after { box-sizing: border-box; }
html, body {
  margin: 0;
  height: 100%;
  overflow: hidden;
}
body {
  font-family: 'Segoe UI', Arial, sans-serif;
  background: var(--c-bg);
  color: var(--c-text);
  font-size: 14px;
  display: flex;
  flex-direction: column;
}

/* === Global progress bar ==================================================== */
.progress-wrap {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  height: 28px;
  background: rgba(0,30,80,.82);
  backdrop-filter: blur(3px);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
}
.progress-bar {
  height: 6px;
  width: 0%;
  background: #42a5f5;
  border-radius: 3px;
  transition: width .15s linear;
  flex-shrink: 0;
  min-width: 120px;
}
.progress-bar--indeterminate {
  width: 30% !important;
  animation: progress-slide 1.1s ease-in-out infinite alternate;
}
.top-panel-github-icon { vertical-align: -1px; }

@keyframes progress-slide {
  from { margin-left: 0%;  width: 30%; }
  to   { margin-left: 65%; width: 30%; }
}
.progress-label {
  font-size: 11px;
  color: #cfe8ff;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.ui-blocker {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9998;
  cursor: wait;
}

/* === Global utilities ======================================================== */
.resize-overlay { position: fixed; inset: 0; z-index: 50; cursor: col-resize; }

