/* Supplemental styles layered on top of Tailwind (loaded via CDN). */
[x-cloak] { display: none !important; }

html { -webkit-text-size-adjust: 100%; }

/* Smooth number transitions on price updates */
.price-flash { animation: priceFlash 0.4s ease; }
@keyframes priceFlash {
    0%   { transform: scale(1.06); color: #1f66f1; }
    100% { transform: scale(1); }
}

/* Custom scrollbar for sidebars */
.thin-scroll::-webkit-scrollbar { width: 8px; height: 8px; }
.thin-scroll::-webkit-scrollbar-thumb { background: rgba(100,116,139,.4); border-radius: 9999px; }

/* Toast container */
#toast-root {
    position: fixed;
    inset: auto 1rem 1rem auto;
    z-index: 60;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
.toast {
    min-width: 240px;
    padding: .75rem 1rem;
    border-radius: .75rem;
    color: #fff;
    font-size: .875rem;
    box-shadow: 0 10px 25px -5px rgba(0,0,0,.25);
    animation: toastIn .25s ease;
}
.toast--success { background: #059669; }
.toast--error   { background: #e11d48; }
.toast--info    { background: #1f66f1; }
@keyframes toastIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

/* Loading spinner */
.spinner {
    width: 1rem; height: 1rem;
    border: 2px solid rgba(255,255,255,.4);
    border-top-color: #fff;
    border-radius: 9999px;
    animation: spin .6s linear infinite;
    display: inline-block;
}
@keyframes spin { to { transform: rotate(360deg); } }
