/* MoneyMate - theme promenne + doplnky k Tailwindu */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root, html.dark {
  --mm-bg: #0B0E1A;
  --mm-card: #12172b;
  --mm-card2: #1a2038;
  --mm-border: #232c4b;
  --mm-ink: #eef1fa;
  --mm-muted: #8b93b0;
  color-scheme: dark;
}

html.light {
  --mm-bg: #f4f6fb;
  --mm-card: #ffffff;
  --mm-card2: #eef1f8;
  --mm-border: #dfe4f0;
  --mm-ink: #101527;
  --mm-muted: #5d6780;
  color-scheme: light;
}

[x-cloak] { display: none !important; }

/* Tabulkove cislice pro vsechna velka cisla */
.tabnum { font-variant-numeric: tabular-nums; font-feature-settings: 'tnum'; }

/* Safe area pro iPhone notch */
.safe-top { padding-top: env(safe-area-inset-top); }
.safe-bottom { padding-bottom: env(safe-area-inset-bottom); }

/* Karty */
.mm-card {
  background: var(--mm-card);
  border: 1px solid var(--mm-border);
  border-radius: 1.25rem;
}

/* Inputy */
.mm-input {
  background: var(--mm-card2);
  border: 1px solid var(--mm-border);
  border-radius: 0.75rem;
  padding: 0.625rem 0.875rem;
  color: var(--mm-ink);
  width: 100%;
  outline: none;
  transition: border-color .15s;
}
.mm-input:focus { border-color: #8b5cf6; }
.mm-input::placeholder { color: var(--mm-muted); }

/* Progress bar s animaci plneni */
.mm-progress { height: 8px; border-radius: 999px; background: var(--mm-card2); overflow: hidden; }
.mm-progress > div {
  height: 100%; border-radius: 999px;
  transition: width .8s cubic-bezier(.22,1,.36,1);
}

/* Skeleton loading */
@keyframes mm-shimmer { 0% { background-position: -400px 0; } 100% { background-position: 400px 0; } }
.mm-skeleton {
  border-radius: .75rem;
  background: linear-gradient(90deg, var(--mm-card2) 25%, var(--mm-border) 50%, var(--mm-card2) 75%);
  background-size: 800px 100%;
  animation: mm-shimmer 1.4s infinite linear;
}

/* Karta v inbox decku */
@keyframes mm-card-out {
  to { transform: translateX(120%) rotate(8deg); opacity: 0; }
}
.mm-card-leaving { animation: mm-card-out .35s ease-in forwards; }

@keyframes mm-card-in {
  from { transform: translateY(16px) scale(.97); opacity: 0; }
  to { transform: none; opacity: 1; }
}
.mm-card-entering { animation: mm-card-in .3s ease-out; }

/* Gradient text */
.mm-grad-text {
  background: linear-gradient(100deg, #a78bfa, #60a5fa);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Progress kruh (cile) */
.mm-ring { transform: rotate(-90deg); }
.mm-ring circle { transition: stroke-dashoffset 1s cubic-bezier(.22,1,.36,1); }

/* Jemny scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: var(--mm-border); border-radius: 4px; }
::-webkit-scrollbar-track { background: transparent; }
