/* Olsys + Ung Depresjon prototype — shared design tokens */
:root {
  /* Olsys (B2B SaaS) palette */
  --olsys-cyan: #1AC8FF;
  --olsys-blue: #2A6EFF;
  --olsys-green: #1FE093;
  --olsys-ink: #0B1B2A;
  --olsys-ink-soft: #2B3A4D;
  --olsys-mute: #6B7888;
  --olsys-line: #E6EAF0;
  --olsys-bg: #FAFBFC;
  --olsys-card: #FFFFFF;

  /* Ung Depresjon (consumer app) palette */
  --ud-navy: #0B1F3A;
  --ud-navy-2: #112A4F;
  --ud-navy-3: #1A3866;
  --ud-cyan: #22B8FF;
  --ud-blue: #2A6EFF;
  --ud-blue-deep: #1F4FE0;
  --ud-paper: #F4F7FB;
  --ud-ink: #0B1F3A;
  --ud-mute: #7A8AA0;
  --ud-line: #E2E8F0;
  --ud-amber: #F5A524;
  --ud-rose: #F43F5E;
  --ud-mint: #1FE093;

  /* Shared scale */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-xl: 28px;
  --r-pill: 999px;
}

[data-theme="dark"] {
  --olsys-bg: #0A1320;
  --olsys-card: #0F1B2D;
  --olsys-ink: #F5F8FB;
  --olsys-ink-soft: #C5D0DD;
  --olsys-mute: #8A98AA;
  --olsys-line: #1B2A3F;
  --ud-paper: #060E1B;
  --ud-line: #1B2A3F;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
  background: #E5E9F0;
  color: var(--olsys-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

button { font-family: inherit; cursor: pointer; border: 0; background: none; color: inherit; }
input, textarea { font-family: inherit; }

/* Scrollbars */
.scroll::-webkit-scrollbar { width: 10px; height: 10px; }
.scroll::-webkit-scrollbar-track { background: transparent; }
.scroll::-webkit-scrollbar-thumb { background: rgba(120,140,160,0.25); border-radius: 999px; }
.scroll::-webkit-scrollbar-thumb:hover { background: rgba(120,140,160,0.4); }

/* Animations */
@keyframes ud-pulse { 0%,100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.04); opacity: 0.85; } }
@keyframes ud-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@keyframes ud-fade-up { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ud-shimmer { 0% { background-position: -400px 0; } 100% { background-position: 400px 0; } }
@keyframes ud-coin-spin { 0% { transform: rotateY(0deg); } 100% { transform: rotateY(360deg); } }
@keyframes ud-token-pop { 0% { transform: scale(0.4); opacity: 0; } 60% { transform: scale(1.2); opacity: 1; } 100% { transform: scale(1); opacity: 1; } }
@keyframes ud-rise { 0% { transform: translateY(40px) scale(0.95); opacity: 0; } 100% { transform: translateY(0) scale(1); opacity: 1; } }
@keyframes ol-orbit { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes ol-bar { 0% { height: 12%; } 100% { height: var(--target-h, 60%); } }

.fade-up { animation: ud-fade-up 0.4s ease both; }
