```lua
if CLIENT then
    -- Отключаем стандартный HUD
    hook.Add("HUDShouldDraw", "BFStyleHud_HideDefault", function(name)
        if name == "CHudHealth" or name == "CHudBattery" then
            return false
        end
    end)

    -- Создаем шрифты
    surface.CreateFont("BF_HUD_Label", {
        font = "Montserrat",
        size = 22,
        weight = 600,
        antialias = true,
        extended = true
    })

    surface.CreateFont("BF_HUD_Value", {
        font = "Montserrat",
        size = 36,
        weight = 800,
        antialias = true,
        extended = true
    })

    -- Параметры HUD и позиционирование
    local hud = {}
    hud.x = 50
    hud.y = ScrH() - 160  -- чуть выше, чтобы было пространство снизу
    hud.width = 320
    hud.height = 60
    hud.barGap = 18         -- увеличил отступ между полосами
    hud.cornerRadius = 8
    hud.barHeight = 28      -- чуть повыше для лучшей читаемости
    hud.segmentCount = 10

    -- Размер иконок
    local iconSize = 36

    -- Общий отступ между иконкой и полосой
    local iconToBarGap = 14

    -- Глобальные переменные плавного отображения полос
    local lerpHealth = 100
    local lerpArmor = 100

    -- Загрузка иконок
    local matHealthIcon = Material("icon16/heart.png")
    local matArmorIcon = Material("icon16/shield.png")

    local function DrawSegmentedBar(x, y, width, height, maxValue, currentValue, segments, bgColor, segmentColor)
        local segWidth = (width - (segments - 1) * 4) / segments
        local fullSegments = math.floor(currentValue / (maxValue / segments))
        local partialSegmentPercent = (currentValue % (maxValue / segments)) / (maxValue / segments)

        -- Фон
        draw.RoundedBox(8, x, y, width, height, bgColor)

        for i = 0, segments - 1 do
            local segmentX = x + i * (segWidth + 4)

            local alpha = 255
            if i + 1 > fullSegments + (partialSegmentPercent > 0 and 1 or 0) then
                alpha = 60
            elseif i + 1 == fullSegments + 1 and partialSegmentPercent > 0 then
                alpha = 60 + 195 * partialSegmentPercent
            end

            draw.RoundedBox(6, segmentX, y, segWidth, height, Color(segmentColor.r, segmentColor.g, segmentColor.b, alpha))
        end
    end

    hook.Add("HUDPaint", "BFStyleModernHUD", function()
        local ply = LocalPlayer()
        if not IsValid(ply) then return end

        local hp = math.Clamp(ply:Health(), 0, 100)
        local ar = math.Clamp(ply:Armor(), 0, 100)

        -- Плавное обновление значений
        lerpHealth = Lerp(FrameTime() * 8, lerpHealth, hp)
        lerpArmor = Lerp(FrameTime() * 8, lerpArmor, ar)

        local x, y = hud.x, hud.y
        local barHeight = hud.barHeight
        local gap = hud.barGap

        -- Фон всей панели (увеличен по высоте для иконок)
        draw.RoundedBox(hud.cornerRadius, x - iconSize - iconToBarGap - 14, y - 20, hud.width + iconSize + iconToBarGap + 28, hud.height + 40, Color(0, 0, 0, 150))

        -- === HEALTH BAR ===
        -- Иконка здоровья с альфа и тенью
        surface.SetDrawColor(255, 255, 255, 220)
        surface.SetMaterial(matHealthIcon)
        surface.DrawTexturedRect(x - iconSize - iconToBarGap - 8, y + (barHeight - iconSize) / 2, iconSize, iconSize)

        -- Текст "HEALTH"
        draw.SimpleText("HEALTH", "BF_HUD_Label", x, y - 6, Color(225, 225, 225, 180), TEXT_ALIGN_LEFT, TEXT_ALIGN_BOTTOM)

        -- Полоса здоровья (правая часть полосы - отступ для числа)
        local barWidth = hud.width
        local healthColor = Color(
            math.Clamp(510 - 5.1 * lerpHealth, 0, 255),
            math.Clamp(5.1 * lerpHealth, 0, 255),
            0,
            220
        )
        DrawSegmentedBar(x, y, barWidth, barHeight, 100, lerpHealth, hud.segmentCount, Color(50, 50, 50, 150), healthColor)

        -- Значение здоровья справа (с отступом, чтобы не выходило правее полосы)
        draw.SimpleText(tostring(math.floor(lerpHealth)), "BF_HUD_Value", x + barWidth - 10, y + barHeight / 2, Color(255, 255, 255, 230), TEXT_ALIGN_RIGHT, TEXT_ALIGN_CENTER)

        -- === ARMOR BAR ===
        local armorY = y + barHeight + gap

        -- Иконка брони
        surface.SetDrawColor(100, 180, 255, 220)
        surface.SetMaterial(matArmorIcon)
        surface.DrawTexturedRect(x - iconSize - iconToBarGap - 8, armorY + (barHeight - iconSize) / 2, iconSize, iconSize)

        -- Текст "ARMOR"
        draw.SimpleText("ARMOR", "BF_HUD_Label", x, armorY - 6, Color(180, 220, 255, 180), TEXT_ALIGN_LEFT, TEXT_ALIGN_BOTTOM)

        -- Полоса брони
        local armorColor = Color(70, 150, 255, 220)
        DrawSegmentedBar(x, armorY, barWidth, barHeight, 100, lerpArmor, hud.segmentCount, Color(30, 40, 50, 120), armorColor)

        -- Значение брони справа
        draw.SimpleText(tostring(math.floor(lerpArmor)), "BF_HUD_Value", x + barWidth - 10, armorY + barHeight / 2, Color(180, 220, 255, 230), TEXT_ALIGN_RIGHT, TEXT_ALIGN_CENTER)
    end)
end
```
Худ выглядит мультяшно, сделай его строгим, как альянс из half life 2