/* Базовые классы Tailwind для Floating Offer Bar */

/* Positioning */
.relative{position:relative}
.absolute{position:absolute}
.fixed{position:fixed}
.inset-0{top:0;right:0;bottom:0;left:0}
.top-0{top:0}
.right-0{right:0}
.left-0{left:0}
.top-1\.5{top:.375rem}
.right-1\.5{right:.375rem}
.-top-16{top:-4rem}
.-left-16{left:-4rem}
.-bottom-20{bottom:-5rem}
.top-1\/2{top:50%}
.left-2\.5{left:.625rem}

/* Display */
.block{display:block}
.flex{display:flex}
.inline-flex{display:inline-flex}
.hidden{display:none}
.pointer-events-none{pointer-events:none}
.pointer-events-auto{pointer-events:auto}
.overflow-hidden{overflow:hidden}

/* Z-index */
.z-10{z-index:10}
.z-50{z-index:50}

/* Flexbox */
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.flex-shrink-0{flex-shrink:0}
.gap-2{gap:.5rem}
.gap-2\.5{gap:.625rem}
.gap-3{gap:.75rem}

/* Sizes */
.w-full{width:100%}
.w-40{width:10rem}
.w-56{width:14rem}
.w-8{width:2rem}
.w-3\.5{width:.875rem}
.h-40{height:10rem}
.h-56{height:14rem}
.h-8{height:2rem}
.h-3\.5{height:.875rem}
.min-w-0{min-width:0px}

/* Padding */
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.pb-2{padding-bottom:.5rem}
.pr-8{padding-right:2rem}
.pl-8{padding-left:2rem}
.pl-2\.5{padding-left:.625rem}

/* Margin */
.mr-2{margin-right:.5rem}

/* Border radius */
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-full{border-radius:9999px}
.rounded-md{border-radius:calc(.75rem - 2px)}

/* Borders */
.border-0{border-width:0px}
.border-primary-foreground\/10{border-color:hsl(var(--primary-foreground)/.1)}

/* Background colors */
.bg-primary{background-color:hsl(var(--primary))}
.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}
.bg-status-warning{background-color:hsl(var(--status-warning))}
.bg-status-warning\/20{background-color:hsl(var(--status-warning)/.2)}
.bg-chart-accent\/20{background-color:hsl(var(--chart-accent)/.2)}

/* Text colors */
.text-primary{color:hsl(var(--primary))}
.text-primary-foreground{color:hsl(var(--primary-foreground))}
.text-status-warning{color:hsl(var(--status-warning))}
.text-primary\/50{color:hsl(var(--primary)/.5)}

/* Typography */
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-[10px]{font-size:10px}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.uppercase{text-transform:uppercase}
.tracking-wider{letter-spacing:.05em}
.whitespace-nowrap{white-space:nowrap}
.leading-snug{line-height:1.375}
.align-middle{vertical-align:middle}

/* Gradients */
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.from-primary{--tw-gradient-from:hsl(var(--primary));--tw-gradient-to:hsl(var(--primary)/0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.via-primary{--tw-gradient-to:hsl(var(--primary)/0);--tw-gradient-stops:var(--tw-gradient-from),hsl(var(--primary)),var(--tw-gradient-to)}
.to-primary\/90{--tw-gradient-to:hsl(var(--primary)/.9)}
.from-status-warning{--tw-gradient-from:hsl(var(--status-warning));--tw-gradient-to:hsl(var(--status-warning)/0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-status-warning\/80{--tw-gradient-to:hsl(var(--status-warning)/.8)}
.to-status-warning\/70{--tw-gradient-to:hsl(var(--status-warning)/.7)}

/* Shadows */
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0 / .1),0 2px 4px -2px rgb(0 0 0 / .1)}
.shadow-primary\/40{--tw-shadow-color:hsl(var(--primary)/.4);--tw-shadow:var(--tw-shadow-colored)}
.shadow-status-warning\/30{--tw-shadow-color:hsl(var(--status-warning)/.3);--tw-shadow:var(--tw-shadow-colored)}

/* Effects */
.backdrop-blur{backdrop-filter:blur(8px)}
.blur-3xl{filter:blur(64px)}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}

/* Transform */
.-translate-y-1\/2{transform:translateY(-50%)}

/* Hover states */
.hover\:bg-primary-foreground\/10:hover{background-color:hsl(var(--primary-foreground)/.1)}
.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}
.hover\:from-status-warning\/90:hover{--tw-gradient-from:hsl(var(--status-warning)/.9)}
.hover\:to-status-warning\/70:hover{--tw-gradient-to:hsl(var(--status-warning)/.7)}

/* Focus states */
.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}
.focus\:ring-status-warning:focus{--tw-ring-color:hsl(var(--status-warning))}
.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}
.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}

/* Disabled states */
.disabled\:opacity-50:disabled{opacity:.5}
.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}

/* SVG */
.size-4{width:1rem;height:1rem}

/* Responsive - Tablet (640px) */
@media (min-width: 640px) {
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:pb-3{padding-bottom:.75rem}
  .sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}
  .sm\:py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
  .sm\:text-sm{font-size:.875rem;line-height:1.25rem}
  .sm\:inline-flex{display:inline-flex}
  .sm\:flex-row{flex-direction:row}
  .sm\:h-9{height:2.25rem}
  .sm\:px-4{padding-left:1rem;padding-right:1rem}
}

/* Responsive - Desktop (1024px) */
@media (min-width: 1024px) {
  .lg\:flex-row{flex-direction:row}
  .lg\:items-center{align-items:center}
  .lg\:gap-5{gap:1.25rem}
  .lg\:flex-1{flex:1 1 0%}
  .lg\:flex-shrink-0{flex-shrink:0}
  .lg\:w-auto{width:auto}
  .lg\:w-72{width:18rem}
  .lg\:pr-0{padding-right:0}
}

/* Container */
.container{width:100%;margin-left:auto;margin-right:auto}
@media (min-width: 1400px){.container{max-width:1400px}}
.mx-auto{margin-left:auto;margin-right:auto}

/* Дополнительные классы которые могут понадобиться */
.cursor-pointer{cursor:pointer}
.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}
.file\:border-0::file-selector-button{border-width:0}
.file\:bg-transparent::file-selector-button{background-color:transparent}
.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}
.file\:font-medium::file-selector-button{font-weight:500}
.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}
.placeholder\:text-primary\/40::placeholder{color:hsl(var(--primary)/.4)}
.uppercase{text-transform:uppercase}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}

/* Ваш существующий ID стиль */
#float-bar{z-index:9999}
.object-contain{object-fit:contain}

/* Уменьшаем плашку на мобильном примерно на 20% (шрифты и отступы, без scale) */
@media (max-width: 640px) {
    #float-bar .text-\[13px\] { font-size: 12px; }
    #float-bar .text-\[11px\] { font-size: 12px; }

    #float-bar .px-3:not(input):not(button) { padding-left: 9.6px; padding-right: 9.6px; }
    #float-bar .pb-2 { padding-bottom: 6.4px; }
    #float-bar .px-4 { padding-left: 12.8px; padding-right: 12.8px; }
    #float-bar .py-2\.5 { padding-top: 8px; padding-bottom: 8px; }
    #float-bar .py-2:not(input):not(button) { padding-top: 6.4px; padding-bottom: 6.4px; }
    #float-bar .p-1 { padding: 3.2px; }

    #float-bar .gap-2 { gap: 6.4px; }
    #float-bar .gap-2\.5 { gap: 8px; }

    #float-bar .h-8 { height: 25.6px; }
}