:root {
--lsp-primary: #3b82f6;
--lsp-secondary: #8b5cf6;
--lsp-accent: #22d3ee;
--lsp-font-size: 16px;
--lsp-popup-width: 520px;
--lsp-radius: 24px;
--lsp-blur: 12px;
--lsp-overlay: 0.72;
--lsp-font: 'DM Sans', system-ui, sans-serif;
--lsp-display: 'Syne', 'DM Sans', sans-serif;
}
.lsp-root {
font-family: var(--lsp-font);
font-size: var(--lsp-font-size);
color: #e2e8f0;
line-height: 1.5;
box-sizing: border-box;
-webkit-font-smoothing: antialiased;
position: relative;
}
.lsp-root *,
.lsp-root *::before,
.lsp-root *::after {
box-sizing: border-box;
}
.lsp-theme-dark {
--lsp-bg: rgba(15, 23, 42, 0.78);
--lsp-bg-solid: #0b1220;
--lsp-text: #e2e8f0;
--lsp-muted: #94a3b8;
--lsp-border: rgba(148, 163, 184, 0.16);
--lsp-card: rgba(15, 23, 42, 0.92);
}
.lsp-theme-light {
--lsp-bg: rgba(255, 255, 255, 0.82);
--lsp-bg-solid: #f8fafc;
--lsp-text: #0f172a;
--lsp-muted: #64748b;
--lsp-border: rgba(15, 23, 42, 0.1);
--lsp-card: rgba(255, 255, 255, 0.95);
color: var(--lsp-text);
} .lsp-widget {
width: min(100%, var(--lsp-popup-width));
margin: 0 auto;
padding: 28px 24px 24px;
border-radius: var(--lsp-radius);
background: var(--lsp-bg);
border: 1px solid var(--lsp-border);
box-shadow:
0 0 0 1px rgba(59, 130, 246, 0.08),
0 24px 80px rgba(2, 6, 23, 0.45),
0 0 60px rgba(59, 130, 246, 0.12);
position: relative;
overflow: hidden;
animation: lsp-rise 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}
.lsp-glass .lsp-widget {
backdrop-filter: blur(var(--lsp-blur)) saturate(140%);
-webkit-backdrop-filter: blur(var(--lsp-blur)) saturate(140%);
}
.lsp-neon .lsp-widget {
box-shadow:
0 0 0 1px rgba(34, 211, 238, 0.18),
0 24px 80px rgba(2, 6, 23, 0.5),
0 0 40px rgba(59, 130, 246, 0.25),
0 0 80px rgba(139, 92, 246, 0.12);
}
@keyframes lsp-rise {
from { opacity: 0; transform: translateY(16px) scale(0.98); }
to { opacity: 1; transform: translateY(0) scale(1); }
}
.lsp-hint {
text-align: center;
color: var(--lsp-muted);
margin: 16px 0 0;
font-size: 0.9em;
} .lsp-intro {
text-align: center;
margin: 0 0 18px;
padding: 0 4px;
}
.lsp-brand {
margin: 0 0 8px;
font-family: var(--lsp-display);
font-size: 0.78em;
font-weight: 800;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--lsp-accent);
text-shadow: 0 0 18px rgba(34, 211, 238, 0.35);
}
.lsp-headline {
margin: 0 0 8px;
font-family: var(--lsp-display);
font-size: 1.35em;
font-weight: 800;
line-height: 1.25;
letter-spacing: -0.02em;
color: var(--lsp-text);
background: linear-gradient(135deg, #fff 0%, var(--lsp-accent) 120%);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.lsp-theme-light .lsp-headline {
background: linear-gradient(135deg, #0f172a 0%, var(--lsp-primary) 100%);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.lsp-subheadline {
margin: 0;
font-size: 0.92em;
line-height: 1.45;
color: var(--lsp-muted);
}
.lsp-campaign {
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
padding: 8px 12px;
margin-bottom: 16px;
border-radius: 12px;
background: linear-gradient(90deg, rgba(59, 130, 246, 0.15), rgba(34, 211, 238, 0.1));
border: 1px solid rgba(34, 211, 238, 0.2);
font-size: 0.85em;
}
.lsp-campaign-timer {
font-family: var(--lsp-display);
font-weight: 700;
color: var(--lsp-accent);
letter-spacing: 0.04em;
} .lsp-wheel-stage {
position: relative;
width: min(100%, 360px); margin: 0 auto;
aspect-ratio: 1;
display: grid;
place-items: center;
}
.lsp-wheel-wrap {
position: relative;
width: 100%;
height: 100%;
display: grid;
place-items: center;
} .lsp-wheel-wrap::before {
content: '';
position: absolute;
inset: 3%;
border-radius: 50%;
box-shadow: 0 10px 32px rgba(2, 6, 23, 0.55);
pointer-events: none;
z-index: 0;
}
.lsp-wheel-rotator {
position: relative;
z-index: 1;
width: 100%;
height: 100%;
border-radius: 50%;
overflow: hidden;
transform: translate3d(0, 0, 0);
-webkit-transform: translate3d(0, 0, 0);
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
isolation: isolate;
contain: layout paint; pointer-events: none;
}
.lsp-wheel-canvas {
width: 100%;
height: 100%;
border-radius: 50%;
display: block;
box-shadow: none;
pointer-events: none;
transform: translateZ(0);
}
.lsp-pointer {
position: absolute;
top: -2px;
left: 50%;
transform: translateX(-50%);
width: 0;
height: 0;
border-left: 12px solid transparent;
border-right: 12px solid transparent;
border-top: 22px solid var(--lsp-accent);
z-index: 5;
filter: drop-shadow(0 0 8px rgba(34, 211, 238, 0.7));
}
.lsp-pointer::after {
content: '';
position: absolute;
top: -22px;
left: -5px;
width: 10px;
height: 10px;
background: var(--lsp-accent);
border-radius: 50%;
box-shadow: 0 0 12px var(--lsp-accent);
} .lsp-lights-ring {
position: absolute;
inset: -10px;
border-radius: 50%;
background: conic-gradient(
from 0deg,
transparent 0deg,
var(--lsp-primary) 20deg,
transparent 40deg,
var(--lsp-accent) 60deg,
transparent 80deg,
var(--lsp-secondary) 100deg,
transparent 120deg
);
opacity: 0.55;
animation: lsp-spin-lights 4s linear infinite;
z-index: 0;
mask: radial-gradient(farthest-side, transparent calc(100% - 8px), #000 calc(100% - 7px));
-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 8px), #000 calc(100% - 7px));
pointer-events: none;
}
@keyframes lsp-spin-lights {
to { transform: rotate(360deg); }
} .lsp-spin-btn {
position: absolute;
inset: 50% auto auto 50%;
transform: translate(-50%, -50%);
width: 88px;
height: 88px;
border-radius: 50%;
border: 2px solid rgba(255, 255, 255, 0.2);
cursor: pointer;
z-index: 20;
font-family: var(--lsp-display);
font-weight: 800;
font-size: 12px;
letter-spacing: 0.04em;
color: #fff;
transition: transform 0.2s ease, box-shadow 0.2s ease;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0 6px;
line-height: 1.1;
text-align: center;
overflow: hidden;
touch-action: manipulation;
-webkit-tap-highlight-color: transparent;
-webkit-user-select: none;
user-select: none;
pointer-events: auto;
}
.lsp-spin-btn.is-error {
animation: lsp-spin-btn-shake 0.45s ease;
}
@keyframes lsp-spin-btn-shake {
0%, 100% { transform: translate(-50%, -50%); }
25% { transform: translate(calc(-50% - 4px), -50%); }
75% { transform: translate(calc(-50% + 4px), -50%); }
} .lsp-spin-btn-label {
display: block !important;
max-width: 100%;
overflow: hidden;
text-overflow: clip;
white-space: nowrap;
}
.lsp-spin-btn-icon {
display: none !important;
}
.lsp-spin-btn:hover:not(:disabled) {
transform: translate(-50%, -50%) scale(1.06);
}
.lsp-spin-btn:disabled {
opacity: 0.55;
cursor: not-allowed;
}
.lsp-btn-style-gradient,
.lsp-btn-style-glow {
background: linear-gradient(135deg, var(--lsp-primary), var(--lsp-secondary));
box-shadow: 0 0 24px rgba(59, 130, 246, 0.45);
}
.lsp-btn-style-glow {
box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.15), 0 0 32px rgba(59, 130, 246, 0.55);
animation: lsp-pulse 2s ease-in-out infinite;
}
.lsp-btn-style-solid {
background: var(--lsp-primary);
}
.lsp-btn-style-outline {
background: rgba(15, 23, 42, 0.85);
border-color: var(--lsp-accent);
color: var(--lsp-accent);
}
@keyframes lsp-pulse {
0%, 100% { box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.15), 0 0 28px rgba(59, 130, 246, 0.45); }
50% { box-shadow: 0 0 0 8px rgba(34, 211, 238, 0.08), 0 0 40px rgba(59, 130, 246, 0.7); }
} .lsp-email-gate {
margin-top: 16px;
}
.lsp-email-label {
display: block;
font-size: 0.8em;
color: var(--lsp-muted);
margin-bottom: 6px;
}
.lsp-email-input {
width: 100%;
padding: 12px 14px;
border-radius: 12px;
border: 1px solid var(--lsp-border);
background: rgba(2, 6, 23, 0.4);
color: var(--lsp-text);
font: inherit;
outline: none;
transition: border-color 0.2s, box-shadow 0.2s;
}
.lsp-theme-light .lsp-email-input {
background: rgba(255, 255, 255, 0.9);
}
.lsp-email-input:focus {
border-color: var(--lsp-primary);
box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.25);
}
.lsp-email-input.is-invalid {
border-color: #f43f5e;
} .lsp-popup {
position: fixed;
inset: 0;
z-index: 999999;
display: grid;
place-items: center;
padding: 20px;
opacity: 0;
pointer-events: none;
transition: opacity 0.28s ease;
overflow: hidden;
overscroll-behavior: contain;
}
.lsp-popup.is-open {
opacity: 1;
pointer-events: auto;
}
.lsp-popup-overlay {
position: absolute;
inset: 0;
background: rgba(2, 6, 23, var(--lsp-overlay, 0.72));
backdrop-filter: blur(var(--lsp-blur, 12px));
-webkit-backdrop-filter: blur(var(--lsp-blur, 12px));
}
.lsp-popup-panel {
position: relative;
z-index: 1;
width: min(100%, calc(var(--lsp-popup-width) + 48px));
max-height: min(100%, calc(100dvh - 40px));
overflow: hidden;
overscroll-behavior: contain;
transform: translateY(20px) scale(0.96);
transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.lsp-popup.is-open .lsp-popup-panel {
transform: translateY(0) scale(1);
}
.lsp-popup-close {
position: absolute;
top: 12px;
right: 12px;
z-index: 10;
width: 36px;
height: 36px;
border-radius: 50%;
border: 1px solid var(--lsp-border, rgba(148,163,184,0.2));
background: rgba(15, 23, 42, 0.7);
color: #e2e8f0;
cursor: pointer;
display: grid;
place-items: center;
transition: background 0.2s, transform 0.2s;
}
.lsp-popup-close:hover {
background: rgba(59, 130, 246, 0.35);
transform: scale(1.05);
}
html.lsp-popup-open {
overflow: hidden;
overscroll-behavior: none;
}
html.lsp-popup-open body {
overflow: hidden;
} .lsp-result {
position: absolute;
inset: 0;
z-index: 20;
display: grid;
place-items: center;
padding: 16px;
background: rgba(2, 6, 23, 0.55);
backdrop-filter: blur(8px);
border-radius: var(--lsp-radius);
opacity: 0;
transition: opacity 0.25s ease;
overflow: hidden;
overscroll-behavior: contain;
}
.lsp-result.is-open {
opacity: 1;
}
.lsp-result-card {
width: min(100%, 360px);
max-height: min(100%, calc(100dvh - 96px));
overflow: hidden;
padding: 28px 22px 22px;
border-radius: calc(var(--lsp-radius) - 4px);
background: var(--lsp-card);
border: 1px solid var(--lsp-border);
box-shadow: 0 20px 60px rgba(2, 6, 23, 0.45), 0 0 40px rgba(59, 130, 246, 0.15);
text-align: center;
position: relative;
animation: lsp-pop 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
@keyframes lsp-pop {
from { transform: scale(0.9); opacity: 0; }
to { transform: scale(1); opacity: 1; }
}
.lsp-result-close {
position: absolute;
top: 6px;
right: 6px;
z-index: 3;
width: 36px;
height: 36px;
padding: 0;
margin: 0;
display: inline-flex;
align-items: center;
justify-content: center;
background: rgba(15, 23, 42, 0.35);
border: 0;
border-radius: 50%;
color: var(--lsp-muted);
font-size: 20px;
line-height: 1;
cursor: pointer;
overflow: hidden;
flex-shrink: 0;
}
.lsp-result-icon {
display: grid;
place-items: center;
margin: 0 auto 12px;
animation: lsp-bounce 0.6s ease;
}
.lsp-result-icon-badge {
width: 64px;
height: 64px;
border-radius: 18px;
display: grid;
place-items: center;
color: #fff;
box-shadow: 0 10px 28px rgba(2, 6, 23, 0.35);
}
.lsp-result-icon-badge--win {
background: linear-gradient(135deg, var(--lsp-primary), var(--lsp-secondary));
box-shadow: 0 10px 28px rgba(59, 130, 246, 0.4), 0 0 24px rgba(34, 211, 238, 0.2);
}
.lsp-result-icon-badge--lose {
background: linear-gradient(135deg, #334155, #1e293b);
border: 1px solid rgba(148, 163, 184, 0.25);
color: var(--lsp-accent);
}
.lsp-result.is-losing .lsp-result-icon-badge--win {
display: none !important;
}
.lsp-result.is-winning .lsp-result-icon-badge--lose {
display: none !important;
}
@keyframes lsp-bounce {
0%, 100% { transform: translateY(0); }
40% { transform: translateY(-10px); }
60% { transform: translateY(-4px); }
}
.lsp-result-title {
font-family: var(--lsp-display);
font-size: 1.45em;
font-weight: 800;
margin: 0 0 6px;
background: linear-gradient(135deg, var(--lsp-accent), var(--lsp-primary));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.lsp-result-prize {
font-size: 1.15em;
font-weight: 700;
margin: 0 0 4px;
color: var(--lsp-text);
}
.lsp-result-desc {
color: var(--lsp-muted);
margin: 0 0 16px;
font-size: 0.92em;
}
.lsp-coupon-box {
display: flex;
gap: 8px;
align-items: stretch;
margin-bottom: 12px;
padding: 6px;
border-radius: 14px;
background: rgba(59, 130, 246, 0.1);
border: 1px dashed rgba(34, 211, 238, 0.35);
}
.lsp-coupon-code {
flex: 1;
display: grid;
place-items: center;
font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
font-size: 1.05em;
font-weight: 700;
letter-spacing: 0.08em;
color: var(--lsp-accent);
padding: 10px;
}
.lsp-copy-btn {
border: 0;
padding: 0 16px;
font: inherit;
font-weight: 600;
height: 59px;
margin-top: 13px;
cursor: pointer;
color: #fff;
background: linear-gradient(135deg, var(--lsp-primary), var(--lsp-secondary));
transition: transform 0.15s, box-shadow 0.15s;
}
.lsp-copy-btn:hover {
transform: translateY(-1px);
}
.lsp-copy-btn.is-copied {
background: #10b981;
box-shadow: 0 0 20px rgba(16, 185, 129, 0.45);
}
.lsp-copy-toast {
color: #34d399;
font-size: 0.88em;
font-weight: 600;
margin: 0 0 10px;
opacity: 0;
transition: opacity 0.25s;
}
.lsp-copy-toast.is-show {
opacity: 1;
}
.lsp-countdown {
display: flex;
justify-content: center;
gap: 8px;
align-items: center;
color: var(--lsp-muted);
font-size: 0.85em;
margin-bottom: 14px;
}
.lsp-countdown strong {
color: var(--lsp-accent);
font-family: var(--lsp-display);
}
.lsp-result-actions {
display: flex;
flex-direction: column;
gap: 8px;
}
.lsp-result.is-losing .lsp-coupon-box,
.lsp-result.is-losing .lsp-copy-toast,
.lsp-result.is-losing .lsp-countdown,
.lsp-result.is-losing [data-lsp-actions-win] {
display: none !important;
}
.lsp-result.is-winning [data-lsp-actions-lose] {
display: none !important;
}
.lsp-try-again-btn {
width: 100%;
border: 0;
cursor: pointer;
}
.lsp-cta-btn {
display: block;
text-align: center;
text-decoration: none;
padding: 12px 16px;
border-radius: 12px;
font-weight: 700;
color: #fff !important;
background: linear-gradient(135deg, var(--lsp-primary), var(--lsp-secondary));
box-shadow: 0 8px 24px rgba(59, 130, 246, 0.35);
transition: transform 0.15s;
}
.lsp-cta-btn:hover {
transform: translateY(-1px);
}
.lsp-close-btn {
background: transparent;
border: 1px solid var(--lsp-border);
color: var(--lsp-muted);
border-radius: 12px;
padding: 10px;
cursor: pointer;
font: inherit;
}
.lsp-close-btn:hover {
color: var(--lsp-text);
border-color: rgba(148, 163, 184, 0.35);
} .lsp-trigger-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 22px;
border: 0;
border-radius: 999px;
font-family: var(--lsp-font);
font-weight: 700;
font-size: 15px;
color: #fff;
cursor: pointer;
background: linear-gradient(135deg, #3b82f6, #8b5cf6);
box-shadow: 0 8px 28px rgba(59, 130, 246, 0.4);
transition: transform 0.15s, box-shadow 0.15s;
}
.lsp-trigger-btn:hover {
transform: translateY(-2px);
box-shadow: 0 12px 32px rgba(59, 130, 246, 0.5);
}
.lsp-trigger-btn--outline {
background: transparent;
color: var(--lsp-primary, #3b82f6);
border: 2px solid var(--lsp-primary, #3b82f6);
box-shadow: none;
}
.lsp-trigger-btn--outline:hover {
background: rgba(59, 130, 246, 0.1);
box-shadow: none;
}
.lsp-trigger-btn--ghost {
background: transparent;
color: var(--lsp-primary, #3b82f6);
box-shadow: none;
border: 0;
text-decoration: underline;
border-radius: 0;
padding: 8px 4px;
}
.lsp-trigger-btn--ghost:hover {
transform: none;
box-shadow: none;
opacity: 0.85;
}
.lsp-trigger-btn--block {
width: 100%;
justify-content: center;
border-radius: 12px;
}
.lsp-trigger-wrap {
display: flex;
width: 100%;
}
.lsp-trigger-wrap--left { justify-content: flex-start; }
.lsp-trigger-wrap--center { justify-content: center; }
.lsp-trigger-wrap--right { justify-content: flex-end; }
.lsp-trigger-wrap--full .lsp-trigger-btn {
width: 100%;
justify-content: center;
} button.lsp-launcher,
#lsp-sticky-launcher,
.lsp-launcher {
position: fixed !important;
right: max(12px, env(safe-area-inset-right, 0px)) !important;
bottom: max(18%, 120px) !important;
left: auto !important;
top: auto !important;
z-index: 2147483000 !important;
width: 58px !important;
height: 58px !important;
min-width: 58px !important;
min-height: 58px !important;
border: 0 !important;
border-radius: 50% !important;
padding: 0 !important;
margin: 0 !important;
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
cursor: pointer !important;
color: #fff !important;
background: linear-gradient(145deg, var(--lsp-primary, #3b82f6), var(--lsp-secondary, #8b5cf6)) !important;
box-shadow: 0 10px 28px rgba(15, 23, 42, 0.28), 0 0 0 3px rgba(255, 255, 255, 0.18) !important;
transition: transform 0.2s ease, opacity 0.2s ease, box-shadow 0.2s ease, visibility 0.2s !important;
overflow: hidden !important;
opacity: 1 !important;
visibility: visible !important;
pointer-events: auto !important;
transform: none !important;
-webkit-tap-highlight-color: transparent;
touch-action: manipulation;
}
button.lsp-launcher.is-hidden,
button.lsp-launcher[hidden],
#lsp-sticky-launcher.is-hidden,
#lsp-sticky-launcher[hidden],
.lsp-launcher.is-hidden,
.lsp-launcher[hidden] {
display: none !important;
opacity: 0 !important;
visibility: hidden !important;
pointer-events: none !important;
}
button.lsp-launcher:hover,
#lsp-sticky-launcher:hover,
.lsp-launcher:hover {
transform: scale(1.05) !important;
box-shadow: 0 14px 34px rgba(15, 23, 42, 0.34), 0 0 0 4px rgba(255, 255, 255, 0.22) !important;
}
.lsp-launcher:focus-visible {
outline: 2px solid var(--lsp-accent, #22d3ee) !important;
outline-offset: 2px !important;
}
.lsp-launcher-ring {
position: absolute;
inset: 3px;
border-radius: 50%;
border: 2px dashed rgba(255, 255, 255, 0.45);
animation: lsp-launcher-spin 12s linear infinite;
pointer-events: none;
}
.lsp-launcher-icon {
position: relative;
z-index: 1;
display: block;
width: 28px;
height: 28px;
overflow: hidden;
}
@keyframes lsp-launcher-spin {
to { transform: rotate(360deg); }
} @media (max-width: 768px) {
button.lsp-launcher,
#lsp-sticky-launcher,
.lsp-launcher {
top: 42% !important;
bottom: auto !important;
right: max(10px, env(safe-area-inset-right, 0px)) !important;
width: 56px !important;
height: 56px !important;
min-width: 56px !important;
min-height: 56px !important;
}
} .lsp-confetti {
position: fixed;
inset: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1000000;
} .lsp-holiday-christmas .lsp-widget {
box-shadow: 0 0 40px rgba(34, 197, 94, 0.2), 0 24px 80px rgba(2, 6, 23, 0.45);
}
.lsp-holiday-halloween .lsp-spin-btn {
background: linear-gradient(135deg, #f97316, #7c2d12) !important;
}
.lsp-holiday-valentine .lsp-result-title {
background: linear-gradient(135deg, #fb7185, #e11d48);
-webkit-background-clip: text;
background-clip: text;
}
.lsp-holiday-newyear .lsp-lights-ring {
opacity: 0.85;
} .lsp-template-minimal .lsp-widget {
box-shadow: 0 12px 40px rgba(2, 6, 23, 0.25);
border-color: rgba(148, 163, 184, 0.12);
}
.lsp-template-classic .lsp-pointer {
border-top-color: #fbbf24;
filter: drop-shadow(0 0 6px rgba(251, 191, 36, 0.6));
}
@media (max-width: 768px) {
.lsp-lights-ring {
animation: none;
opacity: 0.35;
}
.lsp-wheel-wrap::before {
box-shadow: 0 6px 18px rgba(2, 6, 23, 0.4);
}
.lsp-wheel-canvas {
box-shadow: none;
}
} @media (max-width: 768px) {
.lsp-spin-btn {
width: 72px;
height: 72px;
font-size: 0;
padding: 0;
letter-spacing: 0; box-shadow: 0 0 0 12px transparent;
}
.lsp-spin-btn-label {
display: none !important;
}
.lsp-spin-btn-icon {
display: grid !important;
place-items: center;
width: 22px;
height: 22px;
pointer-events: none;
}
.lsp-spin-btn-icon svg {
display: block;
width: 22px;
height: 22px;
pointer-events: none;
}
.lsp-wheel-wrap {
-webkit-tap-highlight-color: transparent;
}
}
@media (max-width: 640px) {
.lsp-widget {
padding: 20px 16px 18px;
}
.lsp-wheel-stage {
width: min(100%, 280px);
}
.lsp-popup {
padding: 12px;
}
}