/* KASKOW Lab — Kurs */
.lfx-card { padding: 18px; border-radius: 20px; border: 1px solid var(--lab-line); background: radial-gradient(30rem 10rem at 50% -3rem, color-mix(in srgb, var(--lab-acc) 12%, transparent), transparent 70%), var(--lab-card); display: flex; flex-direction: column; gap: 16px; }
.lfx-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr) auto minmax(0, 1.3fr); gap: 12px; align-items: end; }
.lfx-amt { height: 52px; font-size: 1.4rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.lfx-grid select.lab-in { height: 52px; font-weight: 700; }
.lfx-swap { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; border: 1px solid var(--lab-line); background: var(--lab-card); color: var(--lab-acc); cursor: pointer; transition: transform .25s, background .15s; }
.lfx-swap:hover { background: var(--lab-soft); transform: rotate(180deg); }
.lfx-out { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 18px 20px; border-radius: 16px; color: #fff; background: linear-gradient(140deg, var(--lab-acc2), var(--lab-acc)); box-shadow: 0 18px 34px -22px var(--lab-acc); min-height: 110px; justify-content: center; }
.lfx-out small { font-size: .86rem; font-weight: 600; opacity: .9; }
.lfx-out b { font-size: clamp(1.8rem, 5vw, 2.6rem); font-weight: 800; line-height: 1.15; font-variant-numeric: tabular-nums; letter-spacing: -.02em; word-break: break-word; }
.lfx-out b span { font-size: .55em; opacity: .85; }
.lfx-out em { font-style: normal; font-size: .8rem; opacity: .9; }
.lfx-out .lab-btn { margin-top: 6px; background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.35); color: #fff; }
.lfx-out .lab-btn:hover { background: rgba(255,255,255,.28); }
.lfx-out .lab-err { color: #fff; background: rgba(0,0,0,.18); border: 0; }
.lfx-load { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.lfx-load .pv-spin { width: 22px; height: 22px; border-radius: 50%; border: 3px solid rgba(255,255,255,.4); border-top-color: #fff; animation: laiSpin2 .8s linear infinite; }
@keyframes laiSpin2 { to { transform: rotate(360deg); } }
.lfx-fav { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.lfx-fav > span { font-size: .76rem; font-weight: 700; color: var(--muted); margin-right: 2px; }
.lfx-fav .lab-btn.on { border-color: var(--lab-acc); color: var(--lab-acc); background: var(--lab-soft); }
.lab-note a { color: var(--lab-acc); font-weight: 700; }
@media (max-width: 860px) { .lfx-grid { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); } .lfx-grid > .lab-field:first-child { grid-column: 1 / -1; } }
