
    .spinner-container.svelte-ds7hcv {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    .ship-wheel-svg.svelte-ds7hcv {
        width: var(--wheel-size);
        height: var(--wheel-size);
        animation: svelte-ds7hcv-spin var(--spin-duration) linear infinite;
    }

    .rim.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-rim);
        stroke-width: calc(var(--rim-thickness) * 1.35);
    }

    .rim-outline.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-outline);
        stroke-width: calc(var(--rim-thickness) * 1.65);
    }

    .spoke.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-spoke);
        stroke-linecap: round;
        stroke-width: calc(var(--rim-thickness) * 0.85);
    }

    .spoke-outline.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-outline);
        stroke-linecap: round;
        stroke-width: calc(var(--rim-thickness) * 1.1);
    }

    .knob.svelte-ds7hcv {
        fill: var(--wheel-rim);
    }

    .knob-outline.svelte-ds7hcv {
        fill: var(--wheel-outline);
    }

    .hub-ring.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-main);
        stroke-width: calc(var(--rim-thickness) * 0.8);
    }

    .hub-ring-outline.svelte-ds7hcv {
        fill: none;
        stroke: var(--wheel-outline);
        stroke-width: calc(var(--rim-thickness) * 1.05);
    }

    .hub-core.svelte-ds7hcv {
        fill: var(--wheel-hub);
    }

    .hub-core-outline.svelte-ds7hcv {
        fill: var(--wheel-outline);
    }

    @keyframes svelte-ds7hcv-spin {
        to { transform: rotate(360deg); }
    }

    @media (prefers-reduced-motion: reduce) {
        .ship-wheel-svg.svelte-ds7hcv {
            animation-duration: 6s;
        }
    }
